11 eines que milloren Kubernetes

11 eines que milloren Kubernetes

No totes les plataformes de servidor, fins i tot les més potents i escalables, satisfan totes les necessitats tal com són. Tot i que Kubernetes funciona molt bé per si mateix, pot ser que no tinguin les peces adequades per estar complet. Sempre trobareu un cas especial que ignora la vostra necessitat o en què Kubernetes no funcionarà en una instal·lació predeterminada, com ara el suport de la base de dades o el funcionament del CD.

Aquí és on apareixen complements, extensions i altres avantatges per a aquest orquestrator de contenidors, amb el suport de la comunitat més àmplia. En aquest article, hi haurà 11 de les millors coses que hem trobat. Nosaltres mateixos hi estem Southbridge són molt interessants, i pensem tractar-los de manera pràctica: desmuntar-los en cargols i femelles i veure què hi ha dins. Alguns d'ells complementaran perfectament qualsevol clúster de Kubernetes, mentre que altres ajudaran a resoldre tasques particulars que no s'implementen a la distribució típica de Kubernetes.

Gatekeeper: gestió de polítiques

Projecte Obriu l'agent de polítiques (OPA) ofereix la possibilitat de crear polítiques a la part superior de les piles d'aplicacions al núvol a Kubernetes, des de l'entrada fins a la malla de servei. Gatekeeper ofereix a Kubernetes la capacitat nativa d'aplicar polítiques al clúster automàticament i també proporciona inspecció per a qualsevol esdeveniment o recurs que infringeixi la política. Tot això el gestiona el mecanisme Kubernetes relativament nou, el gestor d'admissions de Webhooks, que s'activa quan canvien els recursos. Amb Gatekeeper, les polítiques OPA es converteixen en una part més de l'estat del vostre clúster de Kubernetes sense necessitat d'una supervisió constant.

Gravetat: Clústers de Kubernetes portàtils

Si voleu desplegar una aplicació a Kubernetes, moltes aplicacions tenen un gràfic Helm que guia i automatitza aquest procés. Però, què passa si voleu agafar el vostre clúster de Kubernetes "tal com està" i desplegar-lo en un altre lloc?

Gravetat fa instantànies dels clústers de Kubernetes, el seu registre d'imatges de contenidors, així com les aplicacions en execució anomenades "paquets d'aplicacions". Aquest paquet, que és un fitxer normal .tar, pot replicar el clúster allà on es pugui executar Kubernetes.

Gravity també comprova que la infraestructura de destinació es comporta igual que la infraestructura d'origen i també que l'entorn Kubernetes de l'objectiu estigui disponible. La versió de pagament de Gravity també afegeix funcions de seguretat, com ara RBAC i la possibilitat de sincronitzar la configuració de seguretat en diferents desplegaments de clúster.

La darrera versió important, Gravity 7, pot empènyer una imatge de Gravity a un clúster de Kubernetes existent, en lloc de fer girar un clúster completament nou a partir de la imatge. Gravity 7 també pot funcionar amb clústers instal·lats sense utilitzar la imatge de Gravity. Gravity també admet SELinux i funciona de manera nativa amb la passarel·la SSH de Teleport.

Kaniko: Construcció de contenidors en un clúster de Kubernetes

La majoria d'imatges de contenidors es construeixen en sistemes fora de la pila de contenidors. Tanmateix, de vegades necessiteu crear la imatge dins d'una pila de contenidors, com ara en algun lloc d'un contenidor en execució o en un clúster de Kubernetes.

Kaniko construeix contenidors dins d'un entorn de contenidors, però sense dependre d'un servei de contenidorització, com ara Docker. En canvi, Kaniko extreu el sistema de fitxers de la imatge base, executa totes les ordres de creació d'espai d'usuari a la part superior del sistema de fitxers extret, prenent una instantània del sistema de fitxers després de cada ordre.

Nota: Kaniko és actualment (maig de 2020, aprox. traductor) no pot crear contenidors de Windows.

Kubecost: opcions de costos inicials de Kubernetes

La majoria de les eines d'administració de Kubernetes se centren en la facilitat d'ús, la supervisió, la comprensió del comportament dins d'un pod, etc. Però, què passa amb el seguiment del cost, en rubles i copecs, associat al llançament de Kubernetes?

Kubecost processa els paràmetres de Kubernetes en temps real, donant lloc a informació de costos actualitzada dels clústers en execució als principals proveïdors de núvol, que es mostra en un tauler amb el cost mensual per clúster. Els preus de RAM, temps de CPU, GPU i subsistema de disc es desglossen per components de Kubernetes (contenidor, pod, servei, etc.)

Kubecost també fa un seguiment del cost dels recursos que no són del clúster, com ara els cubs d'Amazon S3, tot i que això està limitat per AWS. Les dades de costos es poden enviar a Prometheus perquè pugueu utilitzar-les per canviar el comportament del clúster de manera programàtica.

Kubecost és d'ús gratuït si teniu prou 15 dies de dades de registre. Per a funcions addicionals, el preu comença a partir de 199 dòlars mensuals per supervisar 50 nodes.

KubeDB: execució de bases de dades de batalla a Kubernetes

Les bases de dades també són difícils d'executar de manera espectacular a Kubernetes. Trobareu operadors de Kubernetes per a MySQL, PostgreSQL, MongoDB i Redis, però tots tenen inconvenients. A més, el conjunt de funcions típic de Kubernetes no aborda directament la majoria dels problemes de base de dades definits.

KubeDB us ajuda a crear les vostres declaracions de Kubernetes per a la gestió de bases de dades. L'execució de còpies de seguretat, la clonació, la supervisió, les instantànies i la creació de bases de dades declaratives són les seves parts constitutives. Tingueu en compte que el suport de funcions depèn de la base de dades. Per exemple, la creació d'un clúster funciona per a PostgreSQL, però no per a MySQL (ja n'hi ha, com s'ha assenyalat amb raó dnbstd, aprox. traductor).

Kube-monkey: Chaos Monkey per a Kubernetes

Es considera que el mètode més lliure d'errors de proves d'estrès són les avaries aleatòries. Aquesta teoria es troba al cor del Chaos Monkey de Netflix, una eina d'enginyeria caòtica que tanca aleatòriament màquines virtuals i contenidors d'entorns de producció per "incentivar" els desenvolupadors a construir sistemes més resistents. kube-mono - Implementació de la mateixa teoria bàsica de proves d'estrès per a clústers Kubernetes. Funciona eliminant de manera aleatòria els mòduls del clúster que designeu i també es pot configurar per executar-se en un interval de temps específic.

Controlador d'entrada Kubernetes per a AWS

Kubernetes ofereix un equilibrador de càrrega extern i serveis de xarxa de clúster mitjançant un servei anomenat Ingrés AWS ofereix funcions d'equilibri de càrrega, però no les agrupa automàticament amb les mateixes funcions de Kubernetes. Controlador d'entrada Kubernetes per a AWS tanca aquesta bretxa.

Gestiona automàticament els recursos d'AWS per a cada entrada al clúster, crea equilibradors de càrrega per a nous recursos d'entrada i suprimeix equilibradors de càrrega quan s'eliminen recursos. Utilitza CloudFormation per assegurar-se que l'estat del clúster es manté coherent. També admet la configuració d'alarma de CloudWatch i gestiona automàticament altres elements utilitzats al clúster, com ara certificats SSL i grups d'escala automàtica EC2.

Kubespray: instal·lació automàtica de Kubernetes

Kubespray automatitza la instal·lació d'un clúster Kubernetes preparat per a la producció, des de la instal·lació en servidors de maquinari fins a núvols públics importants. Utilitza Ansible (Vagrant opcional) per iniciar el desplegament i crear un clúster d'alta disponibilitat des de zero amb els complements de xarxa que escolliu (com Flannel, Calico, etc.) a la vostra distribució popular de Linux quan s'instal·la als servidors de maquinari.

Skaffold: desenvolupament iteratiu per a Kubernetes

Bastida - una de les eines de Google utilitzades per organitzar els CD d'aplicacions a Kubernetes. Tan bon punt feu canvis al codi font, skaffold ho detecta automàticament, comença a crear i desplegar-vos i us avisa si hi ha errors. Skaffold s'executa completament al costat del client, de manera que hi pot haver petits matisos amb la instal·lació o l'actualització. Es pot utilitzar amb pipelines CICD existents, així com interactuar amb algunes eines de creació externes, principalment Bazel de Google.

Teresa: El PaaS més senzill de Kubernetes

Teresa és un sistema de desplegament d'aplicacions que executa un PaaS senzill a sobre de Kubernetes. Els usuaris en equip poden implementar i gestionar les seves pròpies aplicacions. Això facilita una mica les coses per a les persones que confien en aquesta aplicació i no volen tractar amb Kubernetes i totes les seves complexitats.

Inclinació: reprodueix actualitzacions de contenidors als clústers de Kubernetes

Inclinar, desenvolupat per Windmill Engineering, supervisa els canvis a diferents Dockerfiles i després desplega progressivament els contenidors adequats al clúster de Kubernetes. En essència, us permet actualitzar el clúster de producció en temps real simplement actualitzant els Dockerfiles. Tilt es construeix dins del clúster, el codi font és tot el que cal canviar. També podeu fer una instantània de l'estat del clúster i capturar les condicions d'error directament des de Tilt per compartir-les amb els membres de l'equip per a la depuració.

PD: Totes aquestes eines les hem utilitzat repetidament Southbridge sondat amb les nostres mans curioses. Per presentar pràctiques reals ja (esperem!) als intensius offline al febrer. Base Kubernetes 8–10 de febrer de 2021. I Kubernetes Mega 12-14 de febrer. Sincerament, també vam trobar a faltar l'atmosfera càlida i carregada d'energia de l'aprenentatge fora de línia. Per molt avançades que siguin les tecnologies, no substituiran la comunicació humana en directe i una atmosfera especial quan es reuneixin persones amb idees afins.

Font: www.habr.com

Afegeix comentari