Changes for page Rancher 2

Last modified by Diana Strebkova on 2025/12/12 14:23

From version 9.1
edited by Diana Strebkova
on 2025/12/08 15:43
Change comment: There is no comment for this version
To version 12.2
edited by Diana Strebkova
on 2025/12/12 12:25
Change comment: There is no comment for this version

Summary

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.
... ... @@ -218,11 +218,9 @@
218 218  
219 219  [[image:Screenshot 2024-07-03 at 15.13.55.png||data-xwiki-image-style-border="true" height="149" width="785"]]
220 220  
221 -==== ====
222 -
223 223  ==== Target: OCI Repository ====
224 224  
225 -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:
226 226  
227 227  [[image:1765207154466-828.png||height="298" width="821"]]
228 228  
... ... @@ -247,13 +247,17 @@
247 247  |=(((
248 248  Index URL
249 249  )))|(((
250 -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:
251 251  
252 -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}}
253 253  )))
254 254  
255 255  {{info}}
256 -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.**//
257 257  {{/info}}
258 258  
259 259  === Deploy Helm charts ===
... ... @@ -266,7 +266,6 @@
266 266  
267 267  == Add private chart repository ==
268 268  
269 -
270 270  === Create a robot account in Harbor ===
271 271  
272 272  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:
... ... @@ -279,6 +279,8 @@
279 279  
280 280  (% class="p1" %)
281 281  In Rancher UI, switch to the intended cluster and go to Apps/Repositories using the left side menu.
283 +
284 +
282 282  [[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"]]
283 283  
284 284  (% class="p1" %)
... ... @@ -288,11 +288,10 @@
288 288  ==== [[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"]] ====
289 289  
290 290  (% id="HTarget:http28s29URL-1" class="p1" %)
291 -====
292 -Target: http(s) URL ====
294 +==== 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.
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.
296 296  {{/warning}}
297 297  
298 298  (% class="p1" %)
... ... @@ -309,17 +309,20 @@
309 309  (% class="p1" %)
310 310  Click Create.
311 311  
314 +(% id="HTarget:OCIRepository-1" class="p1" %)
312 312  ==== Target: OCI Repository ====
313 313  
314 314  {{info}}
315 -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.**//
316 316  {{/info}}
317 317  
318 318  (% class="p1" %)
319 -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>##
320 320  
321 -(% class="p1" %)
322 -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 +)))
323 323  
324 324  (% class="p1" %)
325 325  For Authentication, select "Create a HTTP Basic Auth Secret" and provide the Username and Password of the Harbor robot account from the previous section.
... ... @@ -330,6 +330,106 @@
330 330  (% class="wikigeneratedid" %)
331 331  Click Create.
332 332  
338 +(% class="wrapped" %)
339 +|=(((
340 +Field
341 +)))|=(((
342 +Value
343 +)))
344 +|=(((
345 +Name
346 +)))|(((
347 +sdcloud-sdportal
348 +)))
349 +|=(((
350 +Description
351 +)))|(((
352 +Sdportal charts of sdcloud project
353 +)))
354 +|=(((
355 +Index URL
356 +)))|(((
357 +oci:~/~/registry.sdc.t-systems.net/sdcloud-helm/sdportal
358 +
359 +{{info}}
360 +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.
361 +{{/info}}
362 +)))
363 +
364 +=== Migrating chart repositories in rancher to new OCI Repository format ===
365 +
366 +(% class="box warningmessage" %)
367 +(((
368 +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)**.
369 +)))
370 +
371 +To ensure a smooth transition, we recommend to **add an OCI-based repository alongside the existing ChartMuseum repository** during the migration phase.
372 +
373 +(% class="box" %)
374 +(((
375 +**We will make your charts available in the corresponding new `<pkey>-helm` OCI projects.**
376 +)))
377 +
378 +| Term | Meaning
379 +| **Old Repository** | The existing HTTP/HTTPS Harbor ChartMuseum repository.
380 +| **New Repository** | The new OCI-based Helm chart repository created for your project (e.g. `<chart-repo-name>` in `<pkey>-helm`).
381 +
382 +##__**Why This Migration Is Required:**__##
383 +
384 +* ##ChartMuseum is deprecated and will be removed.##
385 +* ##Applications deployed from old repos keep a reference to that repo inside their labels.##
386 +* ##Without updating the application to point to the new OCI repo, **Rancher will not detect new chart versions from new repository**.##
387 +
388 +## Migration Steps:##
389 +
390 +1. ##Create the New OCI Repository in Rancher##
391 +11. Go to **Apps → Repositories**.
392 +11. Add a new repository of type **OCI**.
393 +11. Name it similarly to your old repo name (e.g. `<chart-repo-name>-oci`). You can't name it the same.
394 +11. Point it to the new OCI endpoint.
395 +1. ##Disable the Old ChartMuseum Repository Temporarily##. ##This step ensures that Rancher resolves charts from the new OCI repo.##
396 +11. Go to **Apps → Repositories**.
397 +11. Disable the old HTTP(S)-based repository.
398 +11. Keep it disabled until the migration is done.
399 +1. ##Update Existing Applications to Use the New OCI Repo##
400 +##Applications deployed with the old repository still contain the old repo name in their metadata. You must upgrade them once to transition.##
401 +11. Go to **Apps → Installed Apps**.
402 +11. Open the application that was deployed using the old repo.
403 +11. Click **Upgrade**.
404 +11. In the list of available chart repositories (scroll to the bottom), select the **new OCI repository**.
405 +11. Choose the chart version you want to deploy (same or newer).
406 +11. Click **Upgrade**.
407 +1. ##Re-enable the Old Repository (Optional) If you still need the old repo for other apps, re-enable it after the migration steps above.##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
408 +
409 +----
410 +
411 +## Reverting the Migration (If Needed)
412 +If you want to move an app back to the old repository:##
413 +
414 +1. Temporarily disable the new OCI repo.
415 +1. Enable the old ChartMuseum repo.
416 +1. Open the application → **Upgrade**.
417 +1. Select the chart from the old repo.
418 +1. Save.
419 +
420 +This will reconnect the app to the old repository.
421 +
422 +----
423 +
424 +## Summary
425 +- Add new OCI repo → disable old repo → upgrade apps → reconnect to OCI repo.
426 +- After upgrade, apps no longer track versions from the old repository.
427 +- Old repository will stop functioning after ChartMuseum shutdown, so migration is required.##
428 +
429 +----
430 +
431 +If you want, I can also generate:
432 +- a shorter version (1-pager),
433 +- a diagram,
434 +- a Rancher UI screenshot guide,
435 +- or a version tailored for your team’s internal wiki.
436 +
437 +
333 333  = Automated deployments with Jenkins =
334 334  
335 335  In this section, we describe(% style="color:#172b4d" %) how to set-up **automated builds, tests and deployments** for Jenkins.