Changes for page Rancher 2
Last modified by Diana Strebkova on 2025/12/12 14:23
From version 10.6
edited by Diana Strebkova
on 2025/12/12 11:48
on 2025/12/12 11:48
Change comment:
There is no comment for this version
To version 11.1
edited by Diana Strebkova
on 2025/12/12 12:08
on 2025/12/12 12:08
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -268,7 +268,7 @@ 268 268 269 269 == Add private chart repository == 270 270 271 -Create a robot account in Harbor 271 +=== Create a robot account in Harbor === 272 272 273 273 To add project specific helm charts to Rancher, a Harbor robot account is needed, that is able to read helm charts and pull repositories. If you don't have such an account yet, please follow the instructions given in the [[Create Robot Account section of the Harbor documentation>>doc:Harbor.Harbor 2\.7 Robot Accounts.WebHome||anchor="create_robot_account"]] and make sure to grant at least the following permissions: 274 274 ... ... @@ -280,6 +280,9 @@ 280 280 281 281 (% class="p1" %) 282 282 In Rancher UI, switch to the intended cluster and go to Apps/Repositories using the left side menu. 283 + 284 +(% class="p1" %) 285 + 283 283 [[image:attach:Screenshot 2023-04-25 at 13.11.48.png||data-xwiki-image-style-border="true" queryparams="effects=drop-shadow" height="400" width="209"]] 284 284 285 285 (% class="p1" %) ... ... @@ -292,7 +292,7 @@ 292 292 ==== Target: http(s) URL ==== 293 293 294 294 {{warning title="Chartmuseum Deprecation"}} 295 -Chartmuseum in Harbor is deprecated, meaning we won't be able to add repositories to Rancher that way anymore. Instead use Target: OCI repository. 298 +Chartmuseum in Harbor is deprecated, meaning we won't be able to add internal harbor repositories to Rancher that way anymore. Instead use Target: OCI repository. 296 296 {{/warning}} 297 297 298 298 (% class="p1" %) ... ... @@ -313,14 +313,16 @@ 313 313 ==== Target: OCI Repository ==== 314 314 315 315 {{info}} 316 -Now all internal helm charts are stored in harbor folders with -helm suffix. Adding the whole public project doesn't work natively anymore, so each separate chart should be added as a separate repo. 319 +Now all internal helm charts are stored in harbor folders with -helm suffix. Adding the whole public project doesn't work natively anymore, so each separate chart should be added as a separate repo.//** If you have a real need to add the whole project, please contact support for finding a possible solution.**// 317 317 {{/info}} 318 318 319 319 (% class="p1" %) 320 -Choose OCI repository in Target and for url, use ##oci:~/~/registry-<domain>.devops.t-systems.net/<project>-helm/<chatname>## 323 +Choose OCI repository in Target and for url, use ##oci:~/~/registry-<domain>.devops.t-systems.net/<project>-helm/<chartname>## 321 321 322 -(% class="p1" %) 323 -Replace ##<domain>## , ##<project>## and ##<chatname> ##as necessary to match your set-up. 325 +(% class="box" %) 326 +((( 327 +Replace ##<domain>## , ##<project>## and ##<chartname> ##as necessary to match your set-up. Your charts should be stored in ##<project>-helm ##repository in Harbor, which is created by default when project is created in portal. 328 +))) 324 324 325 325 (% class="p1" %) 326 326 For Authentication, select "Create a HTTP Basic Auth Secret" and provide the Username and Password of the Harbor robot account from the previous section. ... ... @@ -331,6 +331,130 @@ 331 331 (% class="wikigeneratedid" %) 332 332 Click Create. 333 333 339 + 340 +(% class="wrapped" %) 341 +|=((( 342 +Field 343 +)))|=((( 344 +Value 345 +))) 346 +|=((( 347 +Name 348 +)))|((( 349 +sdcloud-sdportal 350 +))) 351 +|=((( 352 +Description 353 +)))|((( 354 +Sdportal charts of sdcloud project 355 +))) 356 +|=((( 357 +Index URL 358 +)))|((( 359 +oci:~/~/registry.sdc.t-systems.net/sdcloud-helm/sdportal 360 + 361 +{{info}} 362 +Now we should target a chart repo directly, not the whole project. In you need to reference the whole project with a lot of repos, please contact support to find a possible solution. 363 +{{/info}} 364 +))) 365 + 366 +=== Migrating chart repositories in rancher to new OCI Repository format === 367 + 368 +# Migration Guide: ChartMuseum → OCI-based Chart Repositories in Rancher 369 + 370 +## Overview 371 +ChartMuseum is being deprecated. After the migration is complete, **all charts will be removed from ChartMuseum**, and **old HTTP(S)-based chart repositories will no longer work in Rancher**. 372 + 373 +To ensure a smooth transition, each project should **add an OCI-based repository alongside the existing ChartMuseum repository** during the migration phase. 374 + 375 +We will make your charts available in the corresponding new `<pkey>-helm` OCI projects. 376 + 377 +--- 378 + 379 +## Terminology 380 +| Term | Meaning | 381 +|------|---------| 382 +| **Old Repository** | The existing HTTP/HTTPS ChartMuseum repository. | 383 +| **New Repository** | The new OCI-based Helm chart repository created for your project (e.g. `<chart-repo-name>` in `<pkey>-helm`). | 384 + 385 +--- 386 + 387 +## Why This Migration Is Required 388 +- ChartMuseum is deprecated and will be removed. 389 +- Applications deployed from old repos keep a reference to that repo inside their labels. 390 +- Without updating the application to point to the new OCI repo, **Rancher will not detect new chart versions**. 391 + 392 +--- 393 + 394 +## Migration Steps 395 + 396 +### 1. Create the New OCI Repository in Rancher 397 +1. Go to **Apps → Repositories**. 398 +2. Add a new repository of type **OCI**. 399 +3. Name it exactly like your old repo name (e.g. `<chart-repo-name>`). 400 +4. Point it to the new OCI endpoint. 401 + 402 +--- 403 + 404 +### 2. Disable the Old ChartMuseum Repository Temporarily 405 +This step ensures that Rancher resolves charts from the new OCI repo. 406 + 407 +1. Go to **Apps → Repositories**. 408 +2. Disable the old HTTP(S)-based repository. 409 +3. Keep it disabled until the migration is done. 410 + 411 +--- 412 + 413 +### 3. Update Existing Applications to Use the New OCI Repo 414 +Applications deployed with the old repository still contain the old repo name in their metadata. 415 +You must upgrade them once to transition. 416 + 417 +1. Go to **Apps → Installed Apps**. 418 +2. Open the application that was deployed using the old repo. 419 +3. Click **Upgrade**. 420 +4. In the list of available chart repositories (scroll to the bottom), select the **new OCI repository**. 421 +5. Choose the chart version you want to deploy (same or newer). 422 +6. Click **Upgrade**. 423 + 424 +After this upgrade: 425 +- Your application is now linked to the **new OCI repository**. 426 +- Rancher will show upgrade notifications only for versions available in the new repo. 427 + 428 +--- 429 + 430 +### 4. Re-enable the Old Repository (Optional) 431 +If you still need the old repo for other apps, re-enable it after the migration steps above. 432 + 433 +> Note: Even if a newer chart version exists in the old repository, your migrated app **will not see it**, because it is no longer connected to that repo. 434 + 435 +--- 436 + 437 +## Reverting the Migration (If Needed) 438 +If you want to move an app back to the old repository: 439 +1. Temporarily disable the new OCI repo. 440 +2. Enable the old ChartMuseum repo. 441 +3. Open the application → **Upgrade**. 442 +4. Select the chart from the old repo. 443 +5. Save. 444 + 445 +This will reconnect the app to the old repository. 446 + 447 +--- 448 + 449 +## Summary 450 +- Add new OCI repo → disable old repo → upgrade apps → reconnect to OCI repo. 451 +- After upgrade, apps no longer track versions from the old repository. 452 +- Old repository will stop functioning after ChartMuseum shutdown, so migration is required. 453 + 454 +--- 455 + 456 +If you want, I can also generate: 457 +- a shorter version (1-pager), 458 +- a diagram, 459 +- a Rancher UI screenshot guide, 460 +- or a version tailored for your team’s internal wiki. 461 + 462 + 334 334 = Automated deployments with Jenkins = 335 335 336 336 In this section, we describe(% style="color:#172b4d" %) how to set-up **automated builds, tests and deployments** for Jenkins.