Fomba fanao 7 tsara indrindra amin'ny fampiasana kaontenera araka ny Google

Fanamarihana. transl.: Ny mpanoratra ny lahatsoratra tany am-boalohany dia i ThΓ©o Chamley, Google Cloud Solutions Architect. Ao amin'ity lahatsoratra ity ho an'ny bilaogy Google Cloud, dia manome famintinana ny torolΓ lana amin'ny antsipiriany bebe kokoa momba ny orinasany izy, antsoina hoe "Fomba fanao tsara indrindra ho an'ny kaontenera miasa" Ao anatin'izany, nanangona fomba fanao tsara indrindra amin'ny fampandehanana kaontenera ao anatin'ny tontolon'ny fampiasana ny Google Kubernetes Engine sy ny maro hafa ireo manam-pahaizana Google, mikasika lohahevitra isan-karazany: manomboka amin'ny fiarovana ka hatrany amin'ny fanaraha-maso sy ny firaketana an-tsoratra. Ka inona avy ireo fomba fanao kaontenera manan-danja indrindra araka ny Google?

Fomba fanao 7 tsara indrindra amin'ny fampiasana kaontenera araka ny Google

Kubernetes Engine (Serivisy miorina amin'ny Kubernetes amin'ny fampandehanana ny rindranasa voatahiry ao amin'ny Google Cloud - eo ho eo FANDIKAN-TENY) dia iray amin'ireo fomba tsara indrindra hampandehanana ny enta-mavesatry ny asa mila ampitomboina. Kubernetes hiantoka ny fampandehanana tsara ny ankamaroan'ny fampiharana raha toa ka voatahiry izy ireo. Fa raha tianao ho mora tantana ny fampiharanao ary te hanararaotra tanteraka ny Kubernetes, dia mila manaraka ny fanao tsara indrindra ianao. Izy ireo dia hanatsotra ny fiasan'ny fampiharana, ny fanaraha-maso sy ny debugging, ary koa hampitombo ny fiarovana.

Ato amin'ity lahatsoratra ity, handeha hamaky lisitr'ireo zavatra tokony ho fantatrao sy ataonao izahay mba hampandehanana ireo kaontenera amin'ny fomba mahomby amin'ny Kubernetes. Ireo izay te hianatra lalindalina kokoa dia tokony hamaky ilay lahatsoratra Fomba fanao tsara indrindra ho an'ny kaontenera miasa, ary tandremo koa ny anay lahatsoratra teo aloha momba ny fanangonana kaontenera.

1. MampiasΓ  rafitra fitehirizam-bokatra ho an'ny kaontenera

Raha mandeha amin'ny kluster Kubernetes ny fampiharana dia tsy dia ilaina loatra ny logs. Misy rafitra fandraketana ivon-toerana azo inoana fa efa natsangana ao amin'ny cluster ampiasainao. Raha ny fampiasana Kubernetes Engine dia tompon'andraikitra izany Stackdriver Logging. (Fanamarihana. transl.: Ary raha mampiasa ny fametrahana Kubernetes anao manokana ianao, dia manoro hevitra izahay mba hijery akaiky ny vahaolana Open Source - loghouse.) Ataovy tsotra ny fiainanao ary ampiasao ny mekanisma fitehirizam-bokatra. Manorata logs amin'ny stdout sy stderr - horaisina ho azy ireo, hotehirizina ary hosoratana.

Raha tianao dia azonao atao koa ny manoratra logs amin'ny format json. Ity fomba fiasa ity dia hanamora ny fampidirana metadata amin'izy ireo. Ary miaraka amin'izy ireo, ny Stackdriver Logging dia hanana fahafahana hikaroka amin'ny alΓ lan'ny logs amin'ny fampiasana ity metadata ity.

2. Ataovy azo antoka fa tsy misy fanjakana sy tsy miova ny kaontenera

Mba hahafahan'ny kaontenera miasa tsara ao amin'ny cluster Kubernetes, dia tsy maintsy tsy misy fanjakana sy tsy azo ovaina izy ireo. Rehefa feno ireo fepetra ireo dia afaka manao ny asany i Kubernetes, mamorona sy mamotika ireo sampan-draharahan'ny fampiharana amin'ny fotoana sy amin'ny fotoana ilaina.

tsy manan-tanindrazana midika fa ny fanjakana rehetra (angona maharitra amin'ny karazana rehetra) dia voatahiry ivelan'ny container. Mba hanaovana izany, arakaraka ny filana, dia azo ampiasaina ny karazana fitahirizana ivelany: Cloud Storage, Kapila maharitra, Redis, Cloud SQL na angon-drakitra hafa tantanana. (Fanamarihana. transl.: Vakio bebe kokoa momba izany ato amin'ny lahatsoratray β€œOperators ho an'ny Kubernetes: ahoana ny fomba fampandehanana ny fampiharana amin'ny fanjakana".)

loha tsy mety miova midika fa tsy hovana mandritra ny androm-piainany ny kaontenera: tsy misy fanavaozam-baovao, paty, fanovana fanovana. Raha mila manavao ny kaody fampiharana anao ianao na mampihatra patch, mamorona sary vaovao ary apetraho izany. Manoro hevitra ny hamindra ny fanefena kaontenera (seranan-tseranana fihainoana, safidy tontolo iainana runtime, sns) any ivelany - ho Secrets ΠΈ ConfigMaps. Afaka havaozina izy ireo nefa tsy mila manangana sary fitoeran-javatra vaovao. Mba hamoronana pipelines mora amin'ny fanangonana sary dia azonao ampiasaina Cloud Build. (Fanamarihana. transl.: Mampiasa fitaovana Open Source izahay ho an'ireo tanjona ireo dapp.)

Fomba fanao 7 tsara indrindra amin'ny fampiasana kaontenera araka ny Google
Ohatra iray amin'ny fanavaozana ny fikirakirana Deployment ao amin'ny Kubernetes amin'ny fampiasana ConfigMap napetraka ao anaty pods ho config.

3. Halaviro ny kaontenera manokana

Tsy mampiasa rindranasa toy ny faka amin'ny lohamilinao ianao, sa tsy izany? Raha miditra ao amin'ny rindranasa ny mpanafika dia hahazo fidirana amin'ny fakany izy. Ny fiheverana mitovy amin'izany dia mihatra amin'ny tsy fampandehanana kaontenera manana tombontsoa. Raha mila manova ny toe-javatra amin'ny mpampiantrano ianao dia azonao omena manokana ilay fitoeran-javatra fahaiza-manao mampiasa ny safidy securityContext amin'ny Kubernetes. Raha mila miova ianao sysctls, Kubernetes manana abstract misaraka ho an'ity. Amin'ny ankapobeny, miezaha hanararaotra ao anatiny- ary kaontenera sidecar mba hanaovana asa tombontsoa mitovy. Tsy mila idirana amin'ny fifamoivoizana anatiny na ivelany izy ireo.

Raha mitantana cluster ianao dia azonao ampiasaina Politika fiarovana Pod ho an'ny fameperana amin'ny fampiasana kaontenera manokana.

4. Aza mihazakazaka toy ny faka

Efa noresahina ny kaontenera manana tombontsoa, ​​​​saingy ho tsara kokoa izany raha toa ka, ankoatra an'io, dia tsy mampandeha fampiharana ao anaty container ho root ianao. Raha misy mpanafika mahita vulnerable lavitr'ezaka amin'ny rindranasa misy zon'ny faka izay mamela ny famonoana kaody, aorian'izay dia afaka mandao ilay fitoeran-javatra amin'ny alΓ lan'ny vulnerability mbola tsy fantatra izy, dia hahazo faka amin'ny mpampiantrano.

Ny fomba tsara indrindra hialana amin'izany dia ny tsy mihazakazaka na inona na inona ho fototry ny toerana voalohany. Mba hanaovana izany dia azonao ampiasaina ny torolΓ lana USER Π² Dockerfile na runAsUser amin'ny Kubernetes. Ny mpitantana cluster dia afaka manitsy ny fitondran-tena fampiharana amin'ny fampiasana Politika fiarovana Pod.

5. Ataovy mora ny fanaraha-maso ny fampiharana

Tahaka ny fanoratana, ny fanaraha-maso dia ampahany manan-danja amin'ny fitantanana ny fampiharana. Vahaolana fanaraha-maso malaza ao amin'ny vondrom-piarahamonina Kubernetes dia Prometheus - rafitra iray mamantatra ho azy ireo pods sy serivisy mila fanaraha-maso. (Fanamarihana. transl.: Jereo koa ny antsika tatitra amin'ny antsipiriany momba ny lohahevitra fanaraha-maso amin'ny fampiasana Prometheus sy Kubernetes.) Stackdriver dia afaka manara-maso ireo cluster Kubernetes ary ahitana ny dikan-teny Prometheus manokana ho an'ny fanaraha-maso fampiharana.

Fomba fanao 7 tsara indrindra amin'ny fampiasana kaontenera araka ny Google
Dashboard Kubernetes amin'ny Stackdriver

Manantena ny Prometheus handefa metrika mankany amin'ny teboka HTTP ny fampiharana. Misy amin'ity Tranomboky mpanjifa Prometheus. Ny endrika mitovy dia ampiasain'ny fitaovana hafa toy ny OpenCensus ΠΈ Istio.

6. Ataovy azo antoka ny fahasalaman'ny fampiharana

Ny fitantanana ny fampiharana amin'ny famokarana dia manampy amin'ny fahaizany mampita ny fanjakany amin'ny rafitra manontolo. Mandeha ve ny fampiharana? mety ve? Vonona ve ianao handray fifamoivoizana? Ahoana ny fitondran-tenany? Ny fomba mahazatra indrindra hamahana ity olana ity dia ny fampiharana ny fisavana ara-pahasalamana (fanamarinana ara-pahasalamana). Misy karazany roa ny Kubernetes: fahavitrihana sy fahavononana fanadihadiana.

Ho an'ny fanadihadiana velona (fanamarinana ny fahavitrihana) ny fampiharana dia tsy maintsy manana teboka faran'ny HTTP izay mamerina valiny "200 OK" raha toa ka miasa izy ary afa-po ny fiankinana fototra. Ho an'ny fahavononana fanadihadiana (fanamarinana ny fahavononan'ny serivisy) ny fampiharana dia tsy maintsy manana teboka farany HTTP hafa izay mamerina valiny "200 OK" raha toa ka ao anatin'ny toe-pahasalamana tsara ny fampiharana, vita ny dingana fanombohana ary tsy miteraka hadisoana ny fangatahana manan-kery. Ny Kubernetes dia hampita ny fifamoivoizana mankany amin'ny kaontenera raha toa ka vonona ny fampiharana araka ireo fisavana ireo. Ny teboka roa dia azo atambatra raha tsy misy fahasamihafana eo amin'ny toetry ny fahavelomana sy ny fahavononana.

Azonao atao ny mamaky bebe kokoa momba izany ao amin'ny lahatsoratra mifandraika avy amin'i Sandeep Dinesh, Mpanolotsaina Mpandrindra avy amin'ny Google: "Fomba fanao tsara indrindra Kubernetes: Mametraka fitsirihana ara-pahasalamana miaraka amin'ny fahavononana sy fanadihadiana momba ny fiainana".

7. Fidio tsara ny dikan-tsaryo

Ny ankamaroan'ny sary ho an'ny daholobe sy tsy miankina dia mampiasa rafitra famaritana mitovy amin'ilay voalaza ao Fomba fanao tsara indrindra amin'ny fananganana kaontenera. Raha mampiasa rafitra akaiky ny sary fandikana semantika, ilaina ny mandinika ny mari-pamantarana momba ny fametahana. Ohatra, tag latest afaka mihetsika matetika avy amin'ny sary mankany amin'ny sary - tsy azo ianteherana raha mila fanamboarana sy fametrahana azo vinavinaina sy azo averina.

Azonao atao ny mampiasa ny tag X.Y.Z (saika tsy miova foana izy ireo), fa amin'ity tranga ity, araho ny paty rehetra sy ny fanavaozana ny sary. Raha misy marika ny sary ampiasainao X.Y, safidy tsara ho an'ny volamena midika izany. Amin'ny fisafidianana azy dia mahazo paty ho azy ianao ary miantehitra amin'ny dikan-tsarimihetsika miorina amin'ny fampiharana.

PS avy amin'ny mpandika teny

Vakio ihany koa ao amin'ny bilaoginay:

Source: www.habr.com

Add a comment