Changes for page Rancher 2

Last modified by Diana Strebkova on 2026/04/20 09:21

From version 1.1
edited by DOaaS Operator
on 2025/02/05 11:33
Change comment: Imported from XAR
To version 25.1
edited by Diana Strebkova
on 2026/04/20 09:18
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -xwiki:XWiki.sdcloud-admin-0
1 +xwiki:XWiki.dianastrebkovat-systemscom
Content
... ... @@ -156,8 +156,12 @@
156 156  
157 157  = Helm charts =
158 158  
159 -== Add public helm charts ==
159 +== Add public helm chart ==
160 160  
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 with "PKEY-helm" naming convention. For internal harbor repos, use new approach to add OCI chart repositories in rancher.
163 +{{/warning}}
164 +
161 161  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.
162 162  
163 163  (% id="HCreateAppRepositoryinRancher" class="p1" %)
... ... @@ -173,7 +173,10 @@
173 173  (% class="p1" %)
174 174  [[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"]]
175 175  
176 -(% class="p1" %)
180 +To add public oci-repository, navigate to repository create button and click it. For target, use OCI Repository like shown below:
181 +
182 +[[image:1765207154466-828.png||height="298" width="821"]]
183 +
177 177  In the "Repository: Create" dialog, simply fill in the following fields. Authentication is not required.
178 178  
179 179  (% class="wrapped" %)
... ... @@ -185,7 +185,7 @@
185 185  |=(((
186 186  Name
187 187  )))|(((
188 -devops-as-a-service
195 +devopsaas-jenkins-auto-agent
189 189  )))
190 190  |=(((
191 191  Description
... ... @@ -195,18 +195,19 @@
195 195  |=(((
196 196  Index URL
197 197  )))|(((
198 -[[https:~~/~~/registry.sdc.t-systems.net/chartrepo/devopsaas/>>url:https://registry.sdc.t-systems.net/chartrepo/devopsaas/||shape="rect"]]
199 -)))
205 +oci:~/~/registry.sdc.t-systems.net/devopsaas-helm/**<chartname>**, for example:
200 200  
201 -[[image:attach:image-2024-2-27_14-29-17.png||data-xwiki-image-style-border="true" queryparams="effects=drop-shadow" width="540"]]
207 +oci:~/~/registry.sdc.t-systems.net/devopsaas-helm/jenkins-auto-agent
202 202  
203 -(% class="p1" %)
204 -Finally, click Create.
209 +{{box}}
210 +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 is not supported in rancher.
211 +{{/box}}
212 +)))
205 205  
206 -The repository is now listed:
214 +{{info}}
215 +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.**//
216 +{{/info}}
207 207  
208 -[[image:Screenshot 2024-07-03 at 15.13.55.png||data-xwiki-image-style-border="true" height="149" width="785"]]
209 -
210 210  === Deploy Helm charts ===
211 211  
212 212  Now go to Apps>Charts and filter if necessary for the devops-as-a-service Helm chart repository. Like shown below, a list of available charts is displayed. Simply click on one of the tiles to deploy them to your cluster.
... ... @@ -217,12 +217,11 @@
217 217  
218 218  == Add private chart repository ==
219 219  
220 -
221 221  === Create a robot account in Harbor ===
222 222  
223 223  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:
224 224  
225 -* Read Helm Chart
232 +* Read Artifact
226 226  * Pull Repository
227 227  
228 228  (% id="HCreateAppRepositoryinRancher-1" class="p1" %)
... ... @@ -230,27 +230,145 @@
230 230  
231 231  (% class="p1" %)
232 232  In Rancher UI, switch to the intended cluster and go to Apps/Repositories using the left side menu.
240 +
233 233  [[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"]]
234 234  
235 235  (% class="p1" %)
236 236  Create a new Repository by pressing the Create button.
237 237  
238 -(% class="p1" %)
246 +(% class="p1" id="HTarget:http28s29URL-1" %)
239 239  [[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"]]
240 -\\A name for the Repository has to be set. In the screenshot, the project name CITEST is used, which corresponds to our example from above.
241 -Choose http(s) URL to an index generated by Helm and provide the Index URL ##https:~/~/registry-<domain>.devops.t-systems.net/chartrepo/<project>/##
242 242  
249 +(% id="HTarget:http28s29URL-1" class="p1" %)
250 +==== ====
251 +
252 +{{info}}
253 +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.**//
254 +{{/info}}
255 +
243 243  (% class="p1" %)
244 -Replace ##<domain>## and ##<project>## as necessary to match your set-up.
257 +Choose OCI repository in Target and for url, use  ##oci:~/~/registry-<domain>.devops.t-systems.net/<project>-helm/<chartname>##
245 245  
259 +(% class="box" %)
260 +(((
261 +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.
262 +)))
263 +
246 246  (% class="p1" %)
247 247  For Authentication, select "Create a HTTP Basic Auth Secret" and provide the Username and Password of the Harbor robot account from the previous section.
248 -[[image:attach:Screenshot 2023-04-26 at 18.10.15.png||data-xwiki-image-style-border="true" queryparams="effects=drop-shadow" height="468" width="1100"]]
249 249  
250 -(% class="p1" %)
267 +(% class="wikigeneratedid" %)
268 +[[image:1765208347952-345.36.18.png||height="449" width="849"]]
269 +
270 +(% class="wikigeneratedid" %)
251 251  Click Create.
252 252  
273 +(% class="wrapped" %)
274 +|=(((
275 +Field
276 +)))|=(((
277 +Value
278 +)))
279 +|=(((
280 +Name
281 +)))|(((
282 +sdcloud-sdportal
283 +)))
284 +|=(((
285 +Description
286 +)))|(((
287 +Sdportal charts of sdcloud project
288 +)))
289 +|=(((
290 +Index URL
291 +)))|(((
292 +oci:~/~/registry.sdc.t-systems.net/sdcloud-helm/sdportal
253 253  
294 +{{info}}
295 +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.
296 +{{/info}}
297 +)))
298 +
299 +== Migrating chart repositories in rancher to new OCI Repository format ==
300 +
301 +(% class="box warningmessage" %)
302 +(((
303 +ChartMuseum is deprecated. **All harbor charts are removed from ChartMuseum**, and **old HTTP(S)-based chart repositories no longer work in Rancher (for internal harbor charts)**.
304 +)))
305 +
306 +(% class="box" %)
307 +(((
308 +**All your charts are available in the corresponding  `<pkey>-helm` OCI project.**
309 +)))
310 +
311 +There are two ways to migrate your repositories:
312 +
313 +1. ##Direct Transition (Editing the Existing Repository)##
314 +1*. Change the target to “OCI Repository”.
315 +1*. Update the URL as required (the repository name cannot be changed) and add a new robot account for helm project, check documentation above
316 +1*. After saving, installed apps will automatically start using the updated repository.
317 +1*. (% class="box" %)
318 +(((
319 +Important limitation: OCI repositories must point directly to a single chart repository, not to a parent folder.
320 +If your old repository included several charts (for example “bitbucket” and “jira”), then after switching to OCI you can only target one chart (e.g. “bitbucket”).
321 +The other charts will no longer receive updates through this repo, and you will still need to create additional repositories for each individual chart.
322 +)))
323 +1. Add New Repositories One by One (Recommended), preserve the old one till the end. This approach allows a smooth transition while the old ChartMuseum repository continues to function. You can:
324 +1*. Create a new OCI repository for each chart,
325 +1*. Keep the old ChartMuseum repo enabled during the migration,
326 +1*. Migrate applications gradually following the steps described here.
327 +1*. This avoids disruptions and allows controlled migration.
328 +
329 +1. //Special Case: Old Repo Targeting Multiple Chart Repos//
330 +If your existing repository targets multiple chart repositories and you need the new OCI setup to behave the same way, please **contact support.**
331 +
332 +| Term | Meaning
333 +| **Old Repository** | The existing HTTP/HTTPS Harbor ChartMuseum repository.
334 +| **New Repository** | The new OCI-based Helm chart repository created for your project (e.g. `<chart-repo-name>` in `<pkey>-helm`).
335 +
336 +##__**Why This Migration Is Required:**__##
337 +
338 +* ##ChartMuseum is deprecated.##
339 +* ##Applications deployed from old repos keep a reference to that repo inside their labels.##
340 +* ##Without updating the application to point to the new OCI repo, **Rancher will not detect new chart versions from new repository**.##
341 +
342 +## Migration Steps:##
343 +
344 +1. ##Create the New OCI Repository in Rancher##
345 +11. Go to **Apps → Repositories**.
346 +11. Add a new repository of type **OCI**.
347 +11. Name it similarly to your old repo name (e.g. `<chart-repo-name>-oci`). __**You can't name it the same and can't rename it later.**__
348 +11. Point it to the new OCI endpoint.
349 +1. ##Disable the Old ChartMuseum Repository Temporarily## 
350 +##This step ensures that Rancher resolves charts from the new OCI repo.##
351 +11. Go to **Apps → Repositories**.
352 +11. Disable the old HTTP(S)-based repository.
353 +11. Keep it disabled until the migration is done.
354 +[[image:1765548124989-482.59.06.png||height="152" width="485"]]
355 +1. ##Update Existing Applications to Use the New OCI Repo##
356 +Applications deployed with the old repository still contain the old repo name in their metadata. You must upgrade them once to transition.
357 +11. Go to **Apps → Installed Apps**.
358 +11. Open the application that was deployed using the old repo.
359 +11. Click **Edit/Upgrade**.
360 +[[image:1765548598644-830.png||height="138" width="811"]]
361 +11. In the list of available chart repositories (scroll to the bottom), select the **new OCI repository**. Or enter the chart name in search bar:
362 +[[image:1765548750604-334.png||height="293" width="308"]]
363 +11. Choose the chart version you want to deploy (same or newer).
364 +11. Click **Upgrade**.
365 +1. ##Re-enable the Old Repository (Optional) ##
366 +If you still need the old repo for other apps, re-enable it after the migration steps above.
367 +**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
368 +
369 +##If you want to move an app back to the old repository:##
370 +
371 +1. Temporarily disable the new OCI repo.
372 +1. Enable the old ChartMuseum repo.
373 +1. Open the application → **Upgrade**.
374 +1. Select the chart from the old repo.
375 +1. Save.
376 +
377 +This will reconnect the app to the old repository.
378 +
254 254  = Automated deployments with Jenkins =
255 255  
256 256  In this section, we describe(% style="color:#172b4d" %) how to set-up **automated builds, tests and deployments** for Jenkins.
1765206888644-487.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.dianastrebkovat-systemscom
Size
... ... @@ -1,0 +1,1 @@
1 +142.4 KB
Content
1765207032873-684.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.dianastrebkovat-systemscom
Size
... ... @@ -1,0 +1,1 @@
1 +142.1 KB
Content
1765207154466-828.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.dianastrebkovat-systemscom
Size
... ... @@ -1,0 +1,1 @@
1 +143.6 KB
Content
1765208347952-345.36.18.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.dianastrebkovat-systemscom
Size
... ... @@ -1,0 +1,1 @@
1 +199.3 KB
Content
1765548124989-482.59.06.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.dianastrebkovat-systemscom
Size
... ... @@ -1,0 +1,1 @@
1 +64.4 KB
Content
1765548598644-830.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.dianastrebkovat-systemscom
Size
... ... @@ -1,0 +1,1 @@
1 +153.4 KB
Content
1765548750604-334.png
Author
... ... @@ -1,0 +1,1 @@
1 +xwiki:XWiki.dianastrebkovat-systemscom
Size
... ... @@ -1,0 +1,1 @@
1 +103.0 KB
Content