Maaaring maging mahirap ang pamamahala sa lahat ng maraming bahagi ng iyong application kung gumagamit ka Kubernetes, gaya ng malamang alam mo. Doon pumapasok si Helm; ito ay isang solusyon na ginagawang mas simple para sa iyo na pamahalaan ang iyong mga Kubernetes app.
Magagawa mong tukuyin at i-install ang iyong application at ang bawat bahagi ng bahagi nito gamit ang feature na "mga chart" ng Helm.
Sa artikulong ito, gagabayan kita gamit ang mga Helm chart. Magagawa mong gamitin ang mga ito sa iyong sarili. Kahit na baguhan ka sa Kubernetes, naniniwala akong makikinabang ka sa tutorial na ito sa pagpapabuti ng kahusayan at pamamahala ng iyong mga deployment ng Kubernetes.
Pangkalahatang-ideya ng Helm
timon ay isang Kubernetes package manager na ginagawang mas simple ang pamamahala at pag-deploy ng mga app. Ang paggamit ng "mga chart" ay nagbibigay-daan sa mga user na lumikha, mag-install, at mag-upgrade ng mga sopistikadong Kubernetes application. Maaaring madaling ibahagi ang isang koleksyon ng mga mapagkukunan at configuration ng Kubernetes.
Ang mga mapagkukunang ito ay maaaring magamit muli sa ilang mga application at ang mga ito ay tinukoy ng mga chart, na nagsisilbing mga template. Ang Helm ay isang mahalagang tool para sa pag-deploy ng Kubernetes. Mayroon din itong ilang iba pang mga function kabilang ang rollback, bersyon, at pamamahala ng dependency.
Mga Tsart ng Helm
Ang mga Helm chart ay paunang na-configure na mga pakete ng mapagkukunan ng Kubernetes. Maaari lamang silang i-install at palitan gamit ang Helm. Binubuo ang mga chart ng ilang bahagi, kabilang ang mga template, value file, at metadata file na tumutukoy sa iba't ibang mapagkukunan na bumubuo sa chart.
Maaaring i-save ang mga chart ng helm sa isang repository ng chart, na isang koleksyon ng mga chart na maaaring ibahagi at ipamahagi sa maraming kapaligiran. Sinusuportahan din ng Helm ang pag-bersyon, na nagbibigay-daan sa mga user na subaybayan ang maraming bersyon ng kanilang mga chart.
Kaya, maaari lang nilang ibalik sa mga naunang bersyon kung kinakailangan.
Helm chart at ang kanilang mga bahagi
Ang mga Helm chart ay binubuo ng isang koleksyon ng mga file na tumutukoy sa mga mapagkukunan ng Kubernetes na binubuo ng isang application. Nagbibigay ang mga file na ito ng mga template na tumutukoy sa maraming mapagkukunan ng Kubernetes na bumubuo sa chart, gaya ng mga deployment, serbisyo, at pod.
Maaaring i-edit ng mga user ang mga template na ito at tukuyin ang mga partikular na parameter para sa iba't ibang sitwasyon gamit ang mga value ng file. Metadata file, gaya ng Tsart. yaml, isama ang impormasyon tungkol sa chart, gaya ng pangalan, bersyon, at mga dependency nito.
Imbakan at bersyon ng mga chart
Maaaring i-host ang mga imbakan ng tsart sa iba't ibang mga site, kabilang ang GitHub, GitLab, at Amazon S3, at maaaring idagdag sa Helm gamit ang helm repo add command.
Sinusuportahan din ng Helm ang pag-bersyon, na nagbibigay-daan sa mga user na subaybayan ang maraming bersyon ng kanilang mga chart at i-roll back lang sa mga naunang bersyon kung kinakailangan.
Pinapasimple nito ang pamamahala at pag-deploy ng ilang bersyon ng isang application sa iba't ibang setting tulad ng pag-develop, pagtatanghal, at produksyon.
Mga pakinabang ng paggamit ng mga Helm chart
Ang mga Helm chart ay may ilang mga pakinabang para sa pagkontrol sa mga Kubernetes application. Bilang panimula, binibigyang-daan ng mga chart ang mga user na mabilis na makipagpalitan at gumamit muli ng mga setup sa ilang app, na nakakatipid ng oras at pagsisikap kapag namamahala ng mga kumplikadong pag-install.
Ang mga chart ay maaari ding i-bersyon at i-save sa isang chart repository, na nagbibigay-daan para sa simpleng pamamahagi at pagpapanatili ng maraming bersyon ng isang application.
Maaaring gamitin ang mga value na file para ayusin ang mga chart, na ginagawang simple ang pag-deploy ng parehong application sa maraming setting na may iba't ibang configuration. Sa pangkalahatan, pinapasimple at pinapalaki ng mga Helm chart ang pamamahala ng mga kumplikadong setup ng Kubernetes.
Paggawa ng Helm Chart
Maaaring gumawa ng Helm chart sa ilang madaling hakbang. Upang magsimula, dapat ay mayroon kang Helm CLI na naka-install sa iyong lokal na computer. Pagkatapos nito, maaari mong simulan ang pagbuo ng iyong tsart.
Isang step-by-step na gabay sa paggawa ng Helm chart
Patakbuhin ang command helm create para makabuo ng bagong chart. Gagawa ito ng bagong direktoryo na may napiling pangalan ng chart, na isasama ang mga file na kailangan para sa iyong chart.
Maaari kang maglagay ng metadata tungkol sa iyong chart sa mga Chart.yaml na file, gaya ng kanilang pangalan, bersyon, at paglalarawan.
Ang mga default na setting para sa iyong chart ay tinukoy sa values.yaml file. Kapag na-install ang chart, maaaring mabago ang mga setting na ito, na nagbibigay-daan para sa pag-personalize.
Kasama sa mga template/ direktoryo ang mga YAML file na tumutukoy sa mga mapagkukunan ng Kubernetes na gagawin kapag na-install mo ang chart. Maaaring i-customize ang mga file na ito upang matugunan ang mga natatanging kinakailangan ng iyong aplikasyon.
Pagkatapos mong gawin ang iyong chart, gamitin ang helm package command para i-package ito. Bubuo ito ng a.tgz file, na maaaring i-save sa isang chart repository at i-install gamit ang helm install command.
Iba't ibang Bahagi ng Helm Chart, gaya ng mga template at value na file
Kapag gumagawa ng Helm chart, kakailanganin mong maging pamilyar sa ilang natatanging bahagi.
Maaari kang maglagay ng metadata tungkol sa iyong chart sa mga Chart.yaml na file, gaya ng kanilang pangalan, bersyon, at paglalarawan. Para sa lahat ng mga tsart, ang file na ito ay kinakailangan.
Ang mga default na setting para sa iyong chart ay tinukoy sa values.yaml file. Kapag na-install ang chart, maaaring mabago ang mga setting na ito, na nagbibigay-daan para sa pag-personalize. Ang lahat ng mga chart ay nangangailangan din ng file na ito.
Kasama sa mga template/ direktoryo ang mga YAML file na tumutukoy sa mga mapagkukunan ng Kubernetes na gagawin kapag na-install mo ang chart. Maaaring i-customize ang mga file na ito upang matugunan ang mga natatanging kinakailangan ng iyong aplikasyon.
Mga praktikal na halimbawa upang matulungan ang mga user na lumikha ng kanilang mga Helm chart
Maraming halimbawa ng Helm chart na naa-access online na maaaring magamit bilang panimulang punto para sa pagbuo ng iyong mga chart. Ang Helm docs at ang opisyal na Helm chart repository ay parehong nagbibigay ng ilang halimbawa.
Ang paggawa ng Helm chart para sa isang pangunahing Node.js application ay isang praktikal na halimbawa. Kakailanganin ng diagram na isama ang mga mapagkukunan ng Kubernetes tulad ng Deployment, Serbisyo, at ConfigMap. Upang tukuyin ang larawan ng application, port, at anumang mga variable ng kapaligiran, gamitin ang values.yaml file.
Ang mga user ay maaaring gumawa ng sarili nilang mga Helm chart para sa kanilang mga Kubernetes application sa pamamagitan ng pagsunod sa mga pamamaraan na nakasaad sa itaas at paggamit ng mga praktikal na halimbawa bilang isang sanggunian.
Pag-install at Pag-upgrade gamit ang Helm
Maaari mong gamitin ang iyong Helm chart upang i-install at pamahalaan ang mga Kubernetes app pagkatapos mong mabuo ang mga ito. Upang mag-install ng tsart, gamitin ang helm install
command, na sinusundan ng pangalan ng chart at anumang iba pang mga setting.
Upang mag-upgrade ng kasalukuyang chart, gamitin ang helm upgrade
utos na palitan ang lumang release ng bago. Ang Helm ay mayroon ding isang helm rollback
utos na maaaring gamitin upang i-undo ang isang pag-upgrade.
Mga Advanced na Tampok ng Helm
Ang Helm ay mayroon ding ilang karagdagang mga kakayahan na maaaring makatulong sa iyo sa pamamahala ng iyong mga Kubernetes application. Isa sa mga bentahe na ito ay ang kakayahang gumamit ng mga variable ng kapaligiran upang baguhin ang iyong mga Helm chart.
Maaaring gamitin ang mga variable ng kapaligiran upang mag-imbak ng sensitibong data na hindi mo gustong isama sa iyong code, gaya ng mga password o mga kredensyal ng API.
Ang isa pang sopistikadong aspeto ng Helm ay ang pagiging tugma nito sa mga workflow ng CI/CD. Maaaring makatulong ito sa iyo sa pag-automate ng iyong mga pag-deploy ng application at pagtiyak ng pare-pareho sa lahat ng kapaligiran.
Upang magamit ang Helm na may pipeline ng CI/CD, sumulat ng script na nag-i-install o nag-a-upgrade sa iyong chart gamit ang helm
utos.
Pag-customize ng mga Helm chart na may mga variable ng kapaligiran
Maaari mong tukuyin ang mga variable sa values.yaml file na kasama sa chart upang magdagdag ng mga variable ng kapaligiran sa iyong mga Helm chart. Ang mga variable sa mga template ng iyong chart ay maaaring i-refer sa paggamit ng {{ .Values.variableName }} syntax.
Paggamit ng Helm na may mga pipeline ng CI/CD
Kailangan mo munang magsulat ng script na gumagamit ng helm
command na i-install o i-upgrade ang iyong chart kung gusto mong gumamit ng Helm na may CI/CD workflow.
Kapag gusto mong mag-deploy ng bagong bersyon ng iyong application, maaari mong isama ang script na ito sa iyong pipeline at tawagan ito.
Konklusyon
Nag-aalok ang mga chart ng Helm ng isang praktikal na paraan upang mag-package at ipamahagi ang mga mapagkukunan ng Kubernetes, at ang Helm ay isang malakas na tool para sa pamamahala ng mga application ng Kubernetes.
Dapat ay mayroon ka na ngayong matatag na kaalaman kung paano bumuo, mag-install, at mangasiwa ng mga Helm chart pagkatapos sundin ang mga tagubiling ibinigay sa artikulong ito.
Magagawa ng Helm na mas simple ang iyong mga deployment ng Kubernetes at mas madaling pangasiwaan ang iyong mga application, developer ka man o isang system administrator.
Mag-iwan ng Sagot