Mora sy mora ve ny manomana cluster Kubernetes? Manambara addon-operator

Mora sy mora ve ny manomana cluster Kubernetes? Manambara addon-operator

rehefa shell-operator manolotra ny zokiny lahy izahay - addon-operator. Ity dia tetikasa Open Source izay ampiasaina hametrahana singa rafitra ao anaty cluster Kubernetes, izay azo antsoina hoe add-ons.

Nahoana no misy fanampiny mihitsy?

Tsy tsiambaratelo fa Kubernetes dia tsy vokatra vita amin'ny iray manontolo, ary ny fananganana vondrona "olon-dehibe" dia mila fanampiana isan-karazany. Addon-operator dia hanampy anao hametraka, hanamboatra ary hitazona ireo add-on ireo ho vaovao.

Ny filana singa fanampiny ao amin'ny cluster dia ambara ao tatitra mpiara-miasa driusha. Raha fintinina, ny zava-misy miaraka amin'i Kubernetes amin'izao fotoana izao dia toy izany ho an'ny fametrahana tsotra "milalao" azonao atao miaraka amin'ireo singa ivelan'ny boaty, ho an'ny mpamorona sy ny fitsapana azonao atao ny manampy Ingress, fa ho an'ny fametrahana feno, momba izay azonao atao ny milaza hoe "vonona ny famokaranao", mila ampiana fanampiny ampolony ianao: zavatra ho an'ny fanaraha-maso, zavatra ho an'ny logging, aza adino ny ingress sy ny cert-manager, mifantina vondrona nodes, ampio ny politikan'ny tambajotra, vanim-potoana miaraka amin'ny fikandrana sysctl sy pod autoscaler...

Mora sy mora ve ny manomana cluster Kubernetes? Manambara addon-operator

Inona no mampiavaka ny fiaraha-miasa amin'izy ireo?

Araka ny asehon'ny fanao dia tsy voafetra amin'ny fametrahana iray ihany ny raharaha. Mba hiasa tsara amin'ny cluster, mila havaozina ny add-ons, kilemaina (esorina amin'ny cluster), ary te-hizaha toetra ny sasany alohan'ny hametrahana azy ao amin'ny cluster famokarana.

Noho izany, mety ho ampy eto ny Ansible? Angamba. SAINGY Amin'ny ankapobeny, ny add-on feno dia tsy miaina tsy misy fanovana. Ireo toe-javatra ireo dia mety tsy hitovy arakaraka ny karazana cluster (aws, gce, azure, bare-metal, do, ...). Ny toe-javatra sasany dia tsy azo faritana mialoha; tsy maintsy alaina avy amin'ny cluster. Ary ny cluster dia tsy static: ho an'ny toe-javatra sasany dia tsy maintsy manara-maso ny fiovana ianao. Ary eto dia efa tsy hita ny Ansible: mila programa mipetraka ao anaty cluster ianao, i.e. Kubernetes Operator.

Ireo nanandrana izany tany am-piasana shell-operator, dia holazain'izy ireo fa ny asa fametrahana sy fanavaozana ny add-ons sy ny fanaraha-maso dia azo voavaha tanteraka amin'ny fampiasana fihantonana ho an'ny shell-operator. Azonao atao ny manoratra script izay hanao fepetra kubectl apply ary manara-maso, ohatra, ny ConfigMap, izay hitehirizana ny fandrindrana. Izany dia eo ho eo izay ampiharina amin'ny addon-operator.

Ahoana no fandaminana izany ao amin'ny addon-operator?

Rehefa namorona vahaolana vaovao dia niroso tamin'ireto fitsipika manaraka ireto izahay:

  • Ny installer add-on dia tsy maintsy manohana templating sy dΓ©clarative configuration. Tsy manao script majika izay mametraka add-ons izahay. Addon-operator dia mampiasa Helm hametraka addons. Raha te-hametraka dia mila mamorona tabilao ianao ary mifantina ny soatoavina izay hampiasaina amin'ny fanamafisana.
  • Mety ho mamorona amin'ny fametrahana, azony atao mahazo avy amin'ny cluster, na mandray fanavaozana, manara-maso loharanon-karena cluster. Ireo asa ireo dia azo ampiharina amin'ny fampiasana hooks.
  • Mety ho mitahiry ao anaty cluster. Mba hitehirizana ny toe-javatra ao amin'ny cluster, dia misy ConfigMap/addon-operator ary ny Addon-operator dia manova an'io ConfigMap io. Addon-operator dia manome fidirana amin'ny fiompiana amin'ny alΓ lan'ny fivoriambe tsotra.
  • Ny fanampiny dia miankina amin'ny toe-javatra. Raha niova ny toe-javatra, dia ny Addon-operator dia mamoaka ny tabilao Helm miaraka amin'ny soatoavina vaovao. Nantsoinay ny fitambaran'ny tabilao Helm, ny soatoavina ho azy ary ny fametahana maody (jereo eto ambany raha mila fanazavana fanampiny).
  • Fampisehoana. Tsy misy script famoahana majika. Ny mekanika fanavaozana dia mitovy amin'ny fampiharana mahazatra - manangona add-ons sy addon-operators ao anaty sary iray, asio marika azy ireo ary avoaka.
  • Fanaraha-maso ny vokatra. Addon-operator dia afaka manome metrika ho an'ny Prometheus.

Inona no atao hoe padding amin'ny addon-operator?

Ny fanampim-panampiana dia azo raisina ho zavatra izay manampy asa vaovao amin'ny cluster. Ohatra, ny fametrahana Ingress dia ohatra tsara amin'ny add-on. Ity dia mety ho mpandraharaha na mpanara-maso manana CRD azy manokana: prometheus-operator, cert-manager, kube-controller-manager, sns. Na zavatra kely, nefa mora ampiasaina - ohatra, copier miafina, izay mandika ny tsiambaratelon'ny rejisitra amin'ny sehatra vaovao, na sysctl tuner, izay manitsy sysctl masontsivana amin'ny nodes vaovao.

Mba hampiharana add-ons, Addon-operator dia manome hevitra maromaro:

  • Sarin'ny familiana ampiasaina hametrahana rindrambaiko isan-karazany ao anaty cluster - ohatra, Prometheus, Grafana, nginx-ingress. Raha manana tabilao Helm ny singa ilaina, dia ho tena tsotra ny fametrahana azy amin'ny fampiasana Addon-operator.
  • Fitehirizana sanda. Ny sarin'ny fiarovan-doha matetika dia manana toe-javatra maro samihafa izay mety hiova rehefa mandeha ny fotoana. Addon-operator dia manohana ny fitahirizana ireo fanovana ireo ary afaka manara-maso ny fiovan'izy ireo mba hamerenana ny tabilao Helm miaraka amin'ny soatoavina vaovao.
  • fihantonana dia rakitra azo tanterahana izay ataon'ny Addon-operator amin'ny hetsika ary miditra amin'ny fivarotana sanda. Ny hook dia afaka manara-maso ny fiovana ao amin'ny cluster ary manavao ny soatoavina ao amin'ny fivarotana sanda. Ireo. Amin'ny fampiasana hooks, azonao atao ny mahita ny fanangonana sanda avy amin'ny cluster amin'ny fanombohana na araka ny fandaharam-potoana, na afaka manao fikarohana mitohy ianao, manangona sanda avy amin'ny cluster mifototra amin'ny fiovan'ny cluster.
  • Module dia fitambaran'ny tabilao Helm, fivarotana sanda ary hooks. Ny Modules dia azo alefa na kilemaina. Ny famafana ny maody dia midika famafana ny famoahana tabilao Helm rehetra. Ny Modules dia afaka mamela ny tenany amin'ny fomba mavitrika, ohatra, raha toa ka alefa ny maody rehetra ilainy na raha nahita ny mari-pamantarana ilaina ao amin'ny hooks ny detection - izany dia atao amin'ny alΓ lan'ny script auxiliary.
  • Global hooks. Ireo dia hooks "ho azy ireo", tsy tafiditra ao amin'ny modules izy ireo ary afaka miditra amin'ny fivarotana soatoavina manerantany, ny soatoavina izay azon'ny hooks rehetra ao amin'ny modules.

Ahoana no iarahan'ireo tapany ireo? Andeha hojerentsika ny sary avy amin'ny antontan-taratasy:

Mora sy mora ve ny manomana cluster Kubernetes? Manambara addon-operator

Misy scenario asa roa:

  1. Ny fihantsiana manerantany dia ateraky ny hetsika iray - ohatra, rehefa miova ny loharano ao amin'ny cluster. Ity hook ity dia mamadika ny fanovana ary manoratra ny soatoavina vaovao amin'ny fivarotana soatoavina manerantany. Addon-operator dia manamarika fa niova ny fitahirizana eran-tany ary manomboka ny maody rehetra. Ny module tsirairay, amin'ny fampiasana ny farangony, dia mamaritra raha tokony ho alefa izy io ary manavao ny fivarotana sandany. Raha alefa ny maody, dia manomboka mametraka ny tabilao Helm ny Addon-operator. Amin'ity tranga ity, ny tabilao Helm dia afaka miditra amin'ny soatoavina avy amin'ny fitahirizana mody sy avy amin'ny fitahirizana manerantany.
  2. Ny scenario faharoa dia tsotra kokoa: ny hook module dia ateraky ny hetsika iray ary manova ny soatoavina ao amin'ny fivarotana soatoavin'ny module. Manamarika izany ny Addon-operator ary mandefa ny tabilao Helm miaraka amin'ny soatoavina nohavaozina.

Ny fanampiny dia azo ampiharina ho hook tokana, na ho toy ny Helm tabilao, na na dia toy ny modules miankina maromaro aza - izany dia miankina amin'ny fahasarotan'ny singa apetraka ao amin'ny cluster sy ny haavon'ny flexibility tiana. Ohatra, ao amin'ny repository (/ohatra) misy add-on sysctl-tuner, izay ampiharina amin'ny fomba tsotra miaraka amin'ny hook sy tabilao Helm, ary amin'ny fampiasana ny fivarotana soatoavina, izay ahafahana manampy ny fanovana amin'ny alΓ lan'ny fanitsiana ConfigMap.

Fanaterana fanavaozana

Teny vitsivitsy momba ny fandaminana ny fanavaozana singa napetraky ny Addon-operator.

Mba hampandehanana Addon-operator ao anaty cluster dia mila manangana sary misy fanampiny amin'ny endrika fichier tabilao hook sy Helm, ampio rakitra mimari-droa addon-operator ary izay rehetra ilainao amin'ny hooks: bash, kubectl, jq, python Sns Avy eo ity sary ity dia azo avoaka amin'ny cluster ho fampiharana mahazatra, ary azo inoana fa te handamina tetika fametahana iray na hafa ianao. Raha vitsy ny cluster, dia mety ny fomba mitovy amin'ny fampiharana: famoahana vaovao, dikan-teny vaovao, mandehana any amin'ny cluster rehetra ary ahitsio ny sarin'ny Pods. Na izany aza, amin'ny trangan'ny famoahana ho an'ny vondron'olona marobe, ny hevitra momba ny fanavaozana tena avy amin'ny fantsona iray dia mety kokoa ho antsika.

Toy izao no ataontsika:

  • Ny fantsona dia tena famantarana izay azo apetraka amin'ny zavatra rehetra (ohatra, dev/stage/ea/stable).
  • Ny anaran'ny fantsona dia ny marika sary. Rehefa mila mamoaka fanavaozam-baovao amin'ny fantsona iray ianao, dia misy sary vaovao miangona ary nasiana marika miaraka amin'ny anaran'ny fantsona.
  • Rehefa misy sary vaovao miseho ao amin'ny rejisitra, Addon-operator dia averina ary atomboka miaraka amin'ny sary vaovao.

Tsy fanao tsara indrindra izany, araka ny voasoratra ao Documentation Kubernetes. Tsy soso-kevitra ny hanao izany, fa miresaka momba izany fampiharana mahazatra izay miaina ao anaty cluster iray ihany. Amin'ny raharaha Addon-operator, ny fampiharana dia Deployments be dia be miparitaka manerana ny cluster, ary manampy betsaka sy manamora ny fiainana ny fanavaozana ny tena.

Manampy sy amin'ny fitsapana: raha misy cluster auxiliary dia azonao atao ny manamboatra azy amin'ny fantsona stage ary ampidiro ao anatiny ny fanavaozana alohan'ny hanolorana azy amin'ny fantsona ea ΠΈ stable. Raha misy cluster eo amin'ny fantsona ea nisy lesoka nitranga, azonao atao ny manova azy io stable, raha mbola eo am-panadihadiana ny olana amin'ity cluster ity. Raha esorina amin'ny fanohanana mavitrika ny cluster, dia mifindra amin'ny fantsona "mangatsiaka" izy - ohatra, freeze-2019-03-20.

Ho fanampin'ny fanavaozana ny hooks sy ny tabilao Helm, mety ilainao izany fanavaozana sy singa fahatelo. Ohatra, nahatsikaritra bibikely tao amin'ny mpanondrana node misy fepetra ianao ary nahafantatra ny fomba hametahana azy mihitsy aza. Avy eo, nanokatra ny PR ianao ary miandry ny famoahana vaovao hamakivaky ny cluster rehetra ary hampitombo ny dikan-tsary. Mba tsy hiandry mandritra ny fotoana tsy voafetra dia azonao atao ny manangana ny node-mpanondrana anao ary mifamadika aminy alohan'ny hanaiky ny PR.

Amin'ny ankapobeny dia azo atao izany raha tsy misy Addon-operator, fa miaraka amin'ny Addon-operator dia ho hita ao amin'ny tahiry iray ny maody fametrahana node-exporter, ny Dockerfile amin'ny fananganana ny sarinao dia azo tazonina eo, ho mora kokoa ho an'ny mpandray anjara rehetra. ny fizotry ny fahafantarana ny zava-mitranga... Ary raha misy cluster maromaro, dia lasa mora kokoa ny mitsapa ny PR-nao ary mamoaka dikan-teny vaovao!

Ity fandaminana fanavaozana ny singa ity dia miasa soa aman-tsara ho antsika, fa izay tetika hafa mety dia azo ampiharina - na izany aza Amin'ity tranga ity, Addon-operator dia rakitra binary tsotra.

famaranana

Ny fitsipika napetraka ao amin'ny Addon-operator dia ahafahanao manangana dingana mangarahara amin'ny famoronana, fitsapana, fametrahana ary fanavaozana fanampiny ao anaty cluster, mitovy amin'ny fizotran'ny fampivoarana ny fampiharana mahazatra.

Add-ons ho an'ny Addon-operator amin'ny endrika maody (Helm chart + hooks) dia azo atao ampahibemaso. Izahay, orinasa Flant, dia mikasa ny hamoaka ny fivoaranay amin'ny endrika fanampiny toy izany mandritra ny fahavaratra. Midira amin'ny fampandrosoana amin'ny GitHub (shell-operator, addon-operator), manandrama manao fanampim-panananao manokana mifototra amin'ny ohatra ΠΈ tahirin-kevitra, miandry ny vaovao momba ny HabrΓ© sy ny anay fantsona YouTube!

Sal

Vakio ihany koa ao amin'ny bilaoginay:

Source: www.habr.com

Add a comment