Garden v0.10.0: el vostre ordinador portàtil no necessita Kubernetes

Nota. transl.: Amb els entusiastes de Kubernetes del projecte Garden ens vam conèixer en un acte recent KubeCon Europe 2019, on ens van causar una agradable impressió. Aquest material d'ells, escrit sobre un tema tècnic d'actualitat i amb un notable sentit de l'humor, n'és una clara confirmació, i per això hem decidit traduir-lo.

Parla del principal (del mateix nom) producte empresa, la idea de la qual és automatitzar els fluxos de treball i simplificar el desenvolupament d'aplicacions a Kubernetes. Per fer-ho, la utilitat us permet desplegar fàcilment (literalment amb una ordre) nous canvis fets al codi al clúster de desenvolupament i també proporciona recursos/cachés compartits per accelerar la creació i prova del codi per part de l'equip. Fa dues setmanes el Jardí va acollir versió 0.10.0, en què es va fer possible utilitzar no només un clúster local de Kubernetes, sinó també un de remot: aquest és l'esdeveniment al qual es dedica aquest article.

El que menys m'agrada fer és treballar amb Kubernetes al meu portàtil. El "timoner" es consumeix el processador i la bateria, fa que els refrigeradors giren sense parar i és difícil de mantenir.

Garden v0.10.0: el vostre ordinador portàtil no necessita Kubernetes
Fotografia d'estoc en el tema per a un efecte afegit

Minikube, kind, k3s, Docker Desktop, microk8s, etc. - excel·lents eines creades per fer que l'ús de Kubernetes sigui el més còmode possible, i gràcies a ells per això. De debò. Però no importa com ho miris, una cosa està clara: Kubernetes no és adequat per funcionar al meu ordinador portàtil. I el portàtil en si no està dissenyat per funcionar amb un grup de contenidors escampats per capes de màquines virtuals. El pobre està fent tot el possible, però clarament no li agrada aquesta activitat, mostrant la seva insatisfacció amb els udols de les neveres i intentant cremar-se les cuixes quan imprudentment el poso de genolls.

Diguem: portàtil - portàtil.

Garden és una eina per a desenvolupadors que ocupa el mateix nínxol que Skaffold i Draft. Simplifica i accelera el desenvolupament i les proves d'aplicacions Kubernetes.

Des que vam començar a treballar a Garden, fa uns 18 mesos, ho sabíem locals El desenvolupament de sistemes distribuïts és una solució temporal, de manera que Garden va incorporar una gran flexibilitat i una base sòlida.

Ara estem preparats per admetre entorns Kubernetes tant locals com remots. La feina s'ha tornat molt més fàcil: ara el muntatge, el desplegament i les proves es poden dur a terme en un clúster remot.

En poques paraules:

Amb Garden v0.10, podeu oblidar-vos completament d'un clúster local de Kubernetes i, tot i així, rebre una resposta ràpida als canvis de codi. Tot això és gratuït i de codi obert.

Garden v0.10.0: el vostre ordinador portàtil no necessita Kubernetes
Gaudeix de la mateixa experiència en entorns locals i remots

T'ha cridat l'atenció?

I m'alegro d'això, perquè tenim moltes més funcions interessants! L'ús general dels clústers de desenvolupament té implicacions més àmplies, especialment per als equips col·laboratius i els pipelines CI.

Com és això?

En primer lloc, es comparteixen el col·lector intra-clúster, ja sigui un dimoni Docker estàndard o Kaniko, així com el registre intra-clúster. per a tot el clúster. El vostre equip pot compartir un clúster de desenvolupament, amb memòria cau de creació i imatges disponibles per a tots els desenvolupadors. Com que les imatges d'etiquetes de Garden basades en hash d'origen, les etiquetes i les capes es defineixen de manera única i coherent.

Això vol dir que una vegada que un desenvolupador crea una imatge, es converteix en a disposició de tot l'equip. Dia rere dia, baixem les mateixes imatges base i fem les mateixes compilacions als nostres ordinadors. Teniu curiositat quant de trànsit i electricitat es malgasta?...

El mateix es pot dir de les proves: els seus resultats estan disponibles per a tot el clúster i tots els membres de l'equip. Si un dels desenvolupadors ha provat una versió determinada del codi, no cal tornar a executar la mateixa prova.

En altres paraules, no es tracta només de no executar minikube. Aquest salt obre el camí per al vostre equip molts oportunitats d'optimització: no hi ha més compilacions i proves innecessàries!

Què passa amb CI?

La majoria de nosaltres estem acostumats al fet que CI i el desenvolupament local són dos mons separats que s'han de configurar per separat (i no comparteixen una memòria cau). Ara podeu combinar-los i desfer-vos de l'excés:

Podeu executar les mateixes ordres en CI i en el procés de desenvolupament, així com utilitzar un únic entorn, memòria cau i resultats de proves.

Bàsicament, el vostre CI es converteix en un bot de desenvolupador que treballa al mateix entorn que vosaltres.

Garden v0.10.0: el vostre ordinador portàtil no necessita Kubernetes
Elements del sistema; desenvolupament i proves sense problemes

Les configuracions del pipeline CI es poden simplificar significativament. Per fer-ho, només cal que executeu Garden des de CI per a compilacions, proves i desplegaments. Com que vostè i el CI feu servir el mateix entorn, és molt menys probable que trobeu problemes de CI.

Excavant innombrables línies de configuracions i scripts, després empènyer, esperar, esperar i repeticions interminables... Tot això és en el passat. Només estàs fent desenvolupament. Sense moviments innecessaris.

I per acabar aclarint la situació: quan tu o un altre membre de l'equip vas crear o provar alguna cosa amb Garden, va passar el mateix amb CI. Si no heu canviat res des que s'executa la prova, no cal que feu proves (ni fins i tot compilacions) per a CI. Garden ho fa tot ell mateix i després passa a altres tasques, com ara organitzar l'entorn previ al llançament, impulsar artefactes, etc.

Sona temptador. Com provar?

Benvingut a el nostre repositori GitHub! Instal·la Garden i juga amb els exemples. Per a aquells que ja utilitzen Garden o volen conèixer-lo millor, oferim Guia remota de Kubernetes. Uneix-te a nosaltres al canal #jardí a Kubernetes Slack, si tens preguntes, problemes o simplement vols xatejar. Sempre estem preparats per ajudar i rebre comentaris dels usuaris.

PS del traductor

Aviat també publicarem una ressenya d'utilitats útils per als desenvolupadors d'aplicacions que operen a Kubernetes, que inclou altres projectes interessants a més de Garden... Mentrestant, llegiu també al nostre blog:

Font: www.habr.com

Afegeix comentari