Changes for page Rancher 2
Last modified by Diana Strebkova on 2025/12/12 14:23
From version 10.1
edited by Diana Strebkova
on 2025/12/08 15:45
on 2025/12/08 15:45
Change comment:
There is no comment for this version
To version 11.2
edited by Diana Strebkova
on 2025/12/12 12:09
on 2025/12/12 12:09
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -159,7 +159,7 @@ 159 159 == Add public helm chart == 160 160 161 161 {{warning width="70" title="Chartmuseum Deprecation"}} 162 -Chartmuseum is deprecated in new Harbor versions, we are migrating all helm charts to oci-compatible repositories in Harbor !New approach to add chart repositories in rancher.162 +Chartmuseum is deprecated in new Harbor versions, we are migrating all helm charts to oci-compatible repositories in Harbor with "PKEY-helm" naming convention. For internal harbor repos, use new approach to add OCI chart repositories in rancher. 163 163 {{/warning}} 164 164 165 165 In this section, we describe (% style="color:#172b4d" %)how to add public helm charts like the one of DevOps-as-a-Service to a cluster to allow manual deployments. ... ... @@ -220,7 +220,7 @@ 220 220 221 221 ==== Target: OCI Repository ==== 222 222 223 -To add public oci-repository, navigate to repository create button and click it. 223 +To add public oci-repository, navigate to repository create button and click it. For target, use OCI Repository like shown below: 224 224 225 225 [[image:1765207154466-828.png||height="298" width="821"]] 226 226 ... ... @@ -245,13 +245,17 @@ 245 245 |=((( 246 246 Index URL 247 247 )))|((( 248 -oci: [[~~/~~/registry.sdc.t-systems.net/chartrepo/devopsaas-helm/>>url:https://registry.sdc.t-systems.net/chartrepo/devopsaas/||shape="rect"]]chartname,for example:248 +oci:~/~/registry.sdc.t-systems.net/devopsaas-helm/**<chartname>**, for example: 249 249 250 -oci:[[~~/~~/registry.sdc.t-systems.net/>>url:https://registry.sdc.t-systems.net/chartrepo/devopsaas/||shape="rect"]][[devopsaas-helm/jenkins-lib>>url:https://registry-manoni.devops.t-systems.net/harbor/projects/139/repositories/jenkins-lib]] 250 +oci:~/~/registry.sdc.t-systems.net/devopsaas-helm/jenkins-lib 251 + 252 +{{info}} 253 +Take into account, that all internal harbor repositories with helm charts have PKEY-helm naming convention, adding repo with both docker images and helm charts may not be supported in rancher. 254 +{{/info}} 251 251 ))) 252 252 253 253 {{info}} 254 -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. 258 +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 need in adding the whole project with many repositories, please contact support for finding a possible solution.**// 255 255 {{/info}} 256 256 257 257 === Deploy Helm charts === ... ... @@ -264,7 +264,6 @@ 264 264 265 265 == Add private chart repository == 266 266 267 - 268 268 === Create a robot account in Harbor === 269 269 270 270 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: ... ... @@ -277,6 +277,8 @@ 277 277 278 278 (% class="p1" %) 279 279 In Rancher UI, switch to the intended cluster and go to Apps/Repositories using the left side menu. 283 + 284 + 280 280 [[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"]] 281 281 282 282 (% class="p1" %) ... ... @@ -285,11 +285,11 @@ 285 285 (% id="HTarget:http28s29URL-1" class="p1" %) 286 286 ==== [[image:attach:Screenshot 2023-04-25 at 13.30.33.png||data-xwiki-image-style-border="true" queryparams="effects=drop-shadow" height="127" width="1100"]] ==== 287 287 288 -(% class="p1" %) 293 +(% id="HTarget:http28s29URL-1" class="p1" %) 289 289 ==== Target: http(s) URL ==== 290 290 291 291 {{warning title="Chartmuseum Deprecation"}} 292 -Chartmuseum in Harbor is deprecated, meaning we won't be able to add repositories to Rancher that way anymore. Instead use Target: OCI repository. 297 +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. 293 293 {{/warning}} 294 294 295 295 (% class="p1" %) ... ... @@ -306,18 +306,20 @@ 306 306 (% class="p1" %) 307 307 Click Create. 308 308 309 -(% class="p1" %) 314 +(% id="HTarget:OCIRepository-1" class="p1" %) 310 310 ==== Target: OCI Repository ==== 311 311 312 312 {{info}} 313 -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. 318 +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.**// 314 314 {{/info}} 315 315 316 316 (% class="p1" %) 317 -Choose OCI repository in Target and for url, use ##oci:~/~/registry-<domain>.devops.t-systems.net/<project>-helm/<chatname>## 322 +Choose OCI repository in Target and for url, use ##oci:~/~/registry-<domain>.devops.t-systems.net/<project>-helm/<chartname>## 318 318 319 -(% class="p1" %) 320 -Replace ##<domain>## , ##<project>## and ##<chatname> ##as necessary to match your set-up. 324 +(% class="box" %) 325 +((( 326 +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. 327 +))) 321 321 322 322 (% class="p1" %) 323 323 For Authentication, select "Create a HTTP Basic Auth Secret" and provide the Username and Password of the Harbor robot account from the previous section. ... ... @@ -328,6 +328,132 @@ 328 328 (% class="wikigeneratedid" %) 329 329 Click Create. 330 330 338 + 339 +(% class="wrapped" %) 340 +|=((( 341 +Field 342 +)))|=((( 343 +Value 344 +))) 345 +|=((( 346 +Name 347 +)))|((( 348 +sdcloud-sdportal 349 +))) 350 +|=((( 351 +Description 352 +)))|((( 353 +Sdportal charts of sdcloud project 354 +))) 355 +|=((( 356 +Index URL 357 +)))|((( 358 +oci:~/~/registry.sdc.t-systems.net/sdcloud-helm/sdportal 359 + 360 +{{info}} 361 +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. 362 +{{/info}} 363 +))) 364 + 365 +=== Migrating chart repositories in rancher to new OCI Repository format === 366 + 367 +(% class="wikigeneratedid" %) 368 + 369 +##ChartMuseum is being deprecated. After the migration is complete, **all harbor charts will be removed from ChartMuseum**, and **old HTTP(S)-based chart repositories will no longer work in Rancher (for internal harbor charts)**.## 370 + 371 +To ensure a smooth transition, we recomment should **add an OCI-based repository alongside the existing ChartMuseum repository** during the migration phase. 372 + 373 +We will make your charts available in the corresponding new `<pkey>-helm` OCI projects. 374 + 375 +----- 376 + 377 +## Terminology## 378 + 379 +| Term | Meaning | 380 +| |-| 381 +| **Old Repository** | The existing HTTP/HTTPS ChartMuseum repository. | 382 +| **New Repository** | The new OCI-based Helm chart repository created for your project (e.g. `<chart-repo-name>` in `<pkey>-helm`). | 383 + 384 +----- 385 + 386 +## Why This Migration Is Required 387 +- ChartMuseum is deprecated and will be removed. 388 +- Applications deployed from old repos keep a reference to that repo inside their labels. 389 +- Without updating the application to point to the new OCI repo, **Rancher will not detect new chart versions**.## 390 + 391 +----- 392 + 393 +## Migration Steps## 394 + 395 +### 1. Create the New OCI Repository in Rancher## 396 + 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 + 440 +1. Temporarily disable the new OCI repo. 441 +2. Enable the old ChartMuseum repo. 442 +3. Open the application → **Upgrade**. 443 +4. Select the chart from the old repo. 444 +5. Save. 445 + 446 +This will reconnect the app to the old repository. 447 + 448 +----- 449 + 450 +## Summary 451 +- Add new OCI repo → disable old repo → upgrade apps → reconnect to OCI repo. 452 +- After upgrade, apps no longer track versions from the old repository. 453 +- Old repository will stop functioning after ChartMuseum shutdown, so migration is required.## 454 + 455 +----- 456 + 457 +If you want, I can also generate: 458 +- a shorter version (1-pager), 459 +- a diagram, 460 +- a Rancher UI screenshot guide, 461 +- or a version tailored for your team’s internal wiki. 462 + 463 + 331 331 = Automated deployments with Jenkins = 332 332 333 333 In this section, we describe(% style="color:#172b4d" %) how to set-up **automated builds, tests and deployments** for Jenkins.