helm - adfinis sygroup...what is helm? helm is a tool for managing kubernetes charts. charts are...
TRANSCRIPT
![Page 1: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/1.jpg)
Helm
![Page 2: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/2.jpg)
Besmart.Thinkopensource.
![Page 3: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/3.jpg)
![Page 4: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/4.jpg)
WhatisHelm?HelmisatoolformanagingKubernetescharts.
Chartsarepackagesofpre-configuredresources.
Thinkofitlikeapt/yum/homebrewforKubernetes.
![Page 5: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/5.jpg)
WhyHelm?
De-factostandardfortemplatingk8sconfigsOfficialKubernetesprojectmaintainedbyCNCFRepeatableapplicationinstallationsPainlessupdatesShipswithreadytousechartsmadebythecommunitybestpracticesarebakedintoofficalcharts
![Page 6: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/6.jpg)
What'swrongwithkubectl?
ResourcesneedtobemutatedafteradeployYoucan kubectledit<resource>
But,needtoimplementyourownupdatingandrollbackordependonvendorspecifictoolingforlifecyclemanagement
Helmhelpswithlifecyclemanagmentwhileallowingyoutodefineyourinfrastructureascode
![Page 7: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/7.jpg)
HelmBasics
![Page 8: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/8.jpg)
Architecture
helmclienttillerserver-sidecomponent
![Page 9: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/9.jpg)
Demo:Quickstart#deploytillertokube-systemnamespacehelminit#usethe`-c`flagifyourclusteradminhasalreadydeployed#andconfiguredtillerforyou,thisprepares~/.helmhelminit-c#Deployapostgresqlinstancehelminstallstable/postgresql
![Page 10: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/10.jpg)
Inspectinghelmmanagedresources#Showdeployshelmlist#Getinformationonareleasehelmstatusmy-release
![Page 11: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/11.jpg)
HelmreleasesDifferentiatemultipledeploysofachartwithreleases.
Possiblevaluescouldbe.
production , stage , integration
<customer>-production
<app>-postgresql
Thisdependsonyourorganizationsstructureandwhatyouusetheclusterfor.
![Page 12: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/12.jpg)
Whatdidwejustdeploy?
Deploymentbasedon postgres imageNetworkPolicyallowingaccess.PersistentVolumeClaimforstoringdataSecretcontainingautogeneratedpostgres-password
Servicetoexposedatabaseincluster
![Page 13: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/13.jpg)
Addingmetricshelmupgrademy-releasestable/postgresql\--set'metrics.enabled=true'
Wejustdeployedapostgres_exportersidecarcontainerexposingmetricsforPrometheus!
![Page 14: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/14.jpg)
Rollback#simulaterollbackhelmrollback--dry-runmy-releaseold-version#actualrollbackhelmrollbackmy-releaseold-version
![Page 15: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/15.jpg)
Writinghelmcharts
![Page 16: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/16.jpg)
IntializeemptyCharthelmcreatemy-app
my-app/├──charts├──Chart.yaml├──templates│├──deployment.yaml│├──_helpers.tpl│├──ingress.yaml│├──NOTES.txt│└──service.yaml└──values.yaml
![Page 17: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/17.jpg)
TemplatingTheHelmtemplatelanguageisimplementedinthestronglytypedGolanguage.
EachHelmchartcontainsatemplatesdirectorythatcontainsrelevanttemplates.
![Page 18: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/18.jpg)
NamingTemplates
Use .yaml or .tpl suffixforfilesDasherizefilenamesReflectresourcekindinnames
![Page 19: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/19.jpg)
NamingExamples
Good Badfoo-pod.yaml foo-pod.yml
my-example-podtemplates.yaml MyExamplePodTemplates.yaml
my-example-svc.yaml my-example.yaml
![Page 20: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/20.jpg)
Built-inObjects
Everythingbelow Release
Chart variablewithinfosfrom Chart.yaml
Values withdatafrom values.yaml ,thecliandothersources
AcompletelistisintheHelmdocs
![Page 21: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/21.jpg)
ReleaseandChartVariables#Currentrelease{{.Release.Revision}}#Chartinfos{{.Chart.version}}
![Page 22: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/22.jpg)
ValuesThebuilt-inobjectValuesisemptybydefault.Chartsanduserscanaddtoitthrough values.yaml ,user-suppliedfilesandontheCLI.
Let'sseehowvaluesgetpopulatedwithasimpletemplate.
echo'{{.Values.hello.world}}'>templates/hello.tpl
![Page 23: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/23.jpg)
Defaultvaluesareinthecharts values.yaml
#values.yamlhello:world:Hello!
helmtemplate.-xtemplates/hello.yaml
---#Source:my-chart/templates/hello.yamlHello!
![Page 24: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/24.jpg)
OverridingvaluesontheCLIhelmtemplate.--executetemplates/hello.yaml\--set'hello.world=Hallo!'
---#Source:my-chart/templates/hello.yamlHallo!
![Page 25: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/25.jpg)
LocallyoverridingvalueswithaspecificYAMLfile#local.yamlhello:world:Здравствуй!
helmtemplate.--executetemplates/hello.yaml\--valueslocal.yaml
---#Source:my-chart/templates/hello.yamlЗдравствуй!
![Page 26: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/26.jpg)
FunctionsandPipelinesHelmhasover60availablefunctions.SomeofthemarefromGotemplate,somefromSprigtemplatelibrary.
echo'var:{{quote.Values.myvar}}'>templates/quote.yaml
helmtemplate.--executetemplates/quote.yaml\--set'myvar=Thisisastring'
---#Source:my-chart/templates/quote.yamlvar:"Thisisaastring"
![Page 27: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/27.jpg)
FlowControl
if / else forcreatingconditionalblockswith tospecifyascoperange ,whichprovidesa"foreach"-styleloop
![Page 28: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/28.jpg)
if / else
{{-if.Values.ingress.enabled-}}apiVersion:extensions/v1beta1kind:Ingress#...{{-end-}}
![Page 29: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/29.jpg)
range
#...spec:rules:{{-range.Values.server.ingress.hosts}}-host:{{.}}{{-end-}}#...
![Page 30: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/30.jpg)
DebuggingTemplates#verifythatchartfollowsbestpracticeshelmlint#letserverrendertemplatesandreturnresultingmanifesthelminstall--dry-run--debug.#Seewhattemplatesareinstalledontheserverhelmgetmanifestmy-release
![Page 31: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/31.jpg)
NamedTemplates
define declaresanewnamedtemplateinsideofyourtemplateinclude usesanamedtemplateblock declaresaspecialkindoffillabletemplatearea
Templatesareusuallydefinedin templates/_helpers.tpl
![Page 32: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/32.jpg)
The name Template{{/*Expandthenameofthechart.*/}}{{-define"my-chart.name"-}}{{-default.Chart.Name.Values.nameOverride|trunc63|trimSuffix"-"-}}{{-end-}}
![Page 33: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/33.jpg)
The fullname Template{{/*Createadefaultfullyqualifiedappname.Wetruncateat63charsbecausesomeKubernetesnamefieldsarelimitedtothis(bytheDNSnamingspec).*/}}{{-define"my-chart.fullname"-}}{{-$name:=default.Chart.Name.Values.nameOverride-}}{{-printf"%s-%s".Release.Name$name|trunc63|trimSuffix"-"-}}{{-end-}}
The fullname templateisusuallyusedaspartofthein-clusterDNSname.
![Page 34: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/34.jpg)
UsingNamedTemplatesmetadata:name:{{include"my-chart.fullname".}}labels:app:{{include"my-chart.name".}}
metadata:name:my-release-my-chartlabels:app:mychart
![Page 35: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/35.jpg)
HelmHooks
Hookcanbeusedtohookintotheinstall,updateanddeletelifecycleHooksareregulartemplatesTheyarecreatedusingannotationsYoushouldopttoputthemintothe templates/hooks subdirAvailabilitydependsonhelmversion
![Page 36: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/36.jpg)
Hookannotationsmetadata:annotations:"helm.sh/hook":"<hook-type>"
![Page 37: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/37.jpg)
InstallHooks
pre-installpost-install
![Page 38: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/38.jpg)
UpgradeHooks
pre-upgradepost-upgrade
![Page 39: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/39.jpg)
RollbackHooks
pre-rollbackpost-rollback
![Page 40: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/40.jpg)
DeleteHooks
pre-deletepost-delete
![Page 41: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/41.jpg)
CRDHooks
crd-install
UsedonCustomResourceDefinitionstoensurethattheyaredefinedbeforetheyareusedbyothermanifestsinthechart.
![Page 42: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/42.jpg)
TestHooks
test-success
![Page 43: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/43.jpg)
AdditionalAnnotationsmetadata:annotations:"helm.sh/hook-weight":"<num>""helm.sh/hook-delete-policy":"before-hook-creation,hook-succeeded"
![Page 44: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/44.jpg)
Demo:Let'swritesomeinfra
![Page 45: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/45.jpg)
Inthisexamplewewillcreateachartforglances.
Glancescanbescheduledonplaindockerasfollows:
dockerrun\--rm\--detach\--publish61208-61209:61208-61209\--envGLANCES_OPT="-w"\--volume/var/run/docker.sock:/var/run/docker.sock:ro\--pidhost\docker.io/nicolargo/glances
Let'slookatitonlocalhosttoseewhatisdoes.
![Page 46: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/46.jpg)
helmcreateglancescdglances
Forthisexamplewemakesomechangestothedefaultchartgeneratedbyhelm.
![Page 47: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/47.jpg)
values.yamlimage:#pathtodockerhubcontainerrepository:nicolargo/glancesservice:#matchporttoEXPOSEfromimageport:61208
![Page 48: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/48.jpg)
templates/deployment.yamlspec:template:spec:containers:-name:{{.Chart.Name}}#addenvironmenttocontainerenv:-name:GLANCES_OPTvalue:-w
![Page 49: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/49.jpg)
template/NOTES.tpl#changesourceportforport-forwardexampleecho"Visithttp://127.0.0.1:{{.Values.service.internalPort}}touseyourapplication"kubectlport-forward$POD_NAME{{.Values.service.internalPort}}:{{.Values.service.internalPort}}
![Page 50: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/50.jpg)
deploytok8shelminstall.--nameglances-test
![Page 51: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/51.jpg)
BestPractices
UseSemVer2torepresentversionnumber.Indentyamlwith2spaces(andnevertabs).SpecifyatillerVersionSemVercontraintinyouchart.
tillerVersion:">=2.4.0"
uselabelssok8scanidentifyressourcesandtoexposeoperatorsforthepurposeofquerying
Theofficalbestpracticesguidehasmorepointersyoushouldfollow
![Page 52: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/52.jpg)
AdvancedHelming
![Page 53: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/53.jpg)
Composingsystemswithsubcharts
Chartscandependonothercharts.Dependenciesaredescribedin requirements.yaml .helmdepbuild creates requirements.lock .
![Page 54: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/54.jpg)
#downloaddependencieshelmdepbuildstable/redmine
#installredminewithpostgresqlhelminstallstable/redmine\--setdatabaseType.mariadb=false,databaseType.postgresql=true
![Page 55: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/55.jpg)
SubchartsandValues
subchartscannotdependontheirparentchartsvalues.parentchartscanoverridevaluesforsubcharts.globalvaluescanbeaccessedfromanychart.
![Page 56: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/56.jpg)
#overridepostgresqlvaluespostgresql:postgresPassword:muchsecretverysecure
#definesomeglobalvariablesglobal:myVariable:myValue
Pleaseplanaheadwhenusingglobalsordon'tusethematall.Officialchartsrarelyusethem.
![Page 57: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/57.jpg)
UsingyourownStarterYoucansupplyyouownstarterfor helmcreate .
mkdir-p~/.helm/starters/my-starter/templatescd~/.helm/starters/my-startervimtemplates/deployment.yamlcd~/git.repos/helmcreate-pmy-startermy-chart
![Page 58: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/58.jpg)
ManagingvendorspecificresourcesHelmcanbeusedtomanageanyresourcesthatareavailablethroughak8sstyleAPIendpoint.
apiVersion:apps.openshift.io/v1kind:DeploymentConfigmetadata:name:{{.Values.name|quote}}annotations:description:Defineshowtodeploytheapplicationservertemplate.alpha.openshift.io/wait-for-ready:'true'spec:#...
MoreinfosareontheOpenShiftblog.
![Page 59: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/59.jpg)
Thanks
![Page 61: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/61.jpg)
FeelfreetoContactuswww.adfinis-sygroup.ch
GitHub
![Page 62: Helm - Adfinis SyGroup...What is Helm? Helm is a tool for managing Kubernetes charts. Charts are packages of pre-configured resources. Think of it like apt/yum/homebrew for Kubernetes](https://reader033.vdocuments.us/reader033/viewer/2022042709/5f46e50f6261b55c7c59fe98/html5/thumbnails/62.jpg)