Polaris presentouse para manter os clústeres de Kubernetes saudables

Nota. transl.: O orixinal deste texto foi escrito por Rob Scott, un enxeñeiro SRE líder en ReactiveOps, que está detrás do desenvolvemento do proxecto anunciado. A idea da validación centralizada do que se desprega en Kubernetes está moi preto de nós, polo que seguimos este tipo de iniciativas con interese.

Polaris presentouse para manter os clústeres de Kubernetes saudables

Encantado de presentar Polaris é un proxecto de código aberto que axuda a manter a saúde dun clúster de Kubernetes. Creamos Polaris para automatizar algunhas das mellores prácticas utilizadas en ReactiveOps para manter os clústeres funcionando de forma segura e fiable nun gran número de clientes. É hora de abrir o código.

Unha e outra vez, vimos que erros de configuración aparentemente menores provocaban problemas importantes que manteñen os enxeñeiros despiertos pola noite. Algo moi sinxelo, por exemplo, a configuración de solicitudes de recursos que se esqueceron por esquecemento (solicitudes de recursos) — podería romper o escalado automático e incluso provocar que as cargas de traballo queden sen recursos. Se antes erros menores na configuración provocaban interrupcións na produción, agora Polaris permíteche evitalos por completo.

Polaris axúdache a evitar problemas de configuración que afectan á estabilidade, fiabilidade, escalabilidade e seguridade das túas aplicacións. Facilita a identificación de fallos nas configuracións de implantación e evita problemas futuros. Con Polaris, podes durmir tranquilo sabendo que as túas aplicacións están implantadas mediante un conxunto de estándares ben probados.

Polaris consta de dous compoñentes clave:

  1. un panel de vixilancia que proporciona información sobre como están configuradas as implantacións existentes no clúster;
  2. un webhook de probas experimentais que impide que se implementen despregamentos que non cumpran o estándar aceptado.

Panel de control Polaris

O panel de control de Polaris creouse para ofrecer un xeito sinxelo e visual de ver o estado actual das implementacións de Kubernetes e obter recomendacións para mellorar. Ofrece unha visión xeral completa do clúster e tamén desglosa os resultados por categoría, espazo de nomes e implantación.

Polaris presentouse para manter os clústeres de Kubernetes saudables

Os estándares predeterminados de Polaris son bastante altos, así que non te sorprendas se a túa puntuación é inferior á que esperabas. O principal obxectivo de Polaris é establecer altos estándares e esforzarse por unha excelente configuración predeterminada. Se a configuración proposta parece demasiado ríxida, pódese corrixir durante o proceso de configuración da implantación, optimizándoa para cargas de traballo específicas.

Como parte da publicación Polaris, decidimos non só presentar a ferramenta en si, senón tamén describir en detalle as probas que se inclúen nela. Cada revisión inclúe unha ligazón á documentación relacionada, que explica por que cremos que é importante e ofrece ligazóns a recursos adicionais sobre o tema.

Polaris Webhook

Se o panel axuda a obter unha visión xeral da configuración actual das implementacións, entón o webhook garante o cumprimento dos estándares para todas as implementacións que se implementarán no clúster.

Unha vez corrixidos os problemas identificados polo panel, podes utilizar un webhook para asegurarte de que a configuración nunca máis cae por debaixo do estándar establecido. O webhook non permitirá despregamentos no clúster cuxa configuración conteña desviacións significativas (o nivel de "erro").

O potencial deste webhook é emocionante, pero aínda requirirá probas exhaustivas para considerarse listo para a produción. Esta é actualmente unha función experimental e parte dun proxecto de código aberto completamente novo. Dado que pode interferir coa actualización das implementacións, úsao con precaución.

introdución

Espero que, dado que aínda estás lendo este anuncio, Polaris sexa unha ferramenta que che pode resultar útil. Queres probar o Dashboard por ti mesmo? Implementar un panel nun clúster é moi sinxelo. Instálase con dereitos mínimos (só lectura) e todos os datos permanecen dentro. Para implementar o panel usando kubectl, executa:

kubectl apply -f https://raw.githubusercontent.com/reactiveops/polaris/master/deploy/dashboard.yaml

Agora cómpre configurar o reenvío de portos para acceder ao panel a través do porto local 8080:

kubectl port-forward --namespace polaris svc/polaris-dashboard 8080:80

Por suposto, hai moitas outras formas de usar e implementar Polaris, incluíndo Helm. Podes aprender sobre isto e moito máis Repositorio de Polaris en GitHub.

Este é só o comezo

Estamos entusiasmados co que Polaris construíu ata agora, pero a historia non remata aí. Hai moitas probas novas no camiño que nos gustaría engadir para ampliar a funcionalidade. Tamén buscamos unha mellor forma de implementar regras de verificación de excepcións a nivel de espazo de nomes ou recursos. Se queres máis información sobre os nosos plans, consulta mapa de estradas.

Se tes a impresión de que Polaris pode ser útil, tómate o tempo para probalo. Aceptaremos con gusto calquera idea, comentario, pregunta ou solicitude de extracción. Podes contactar connosco en sitio do proxectoEn GitHub ou chilro.

PS do tradutor

Lea tamén no noso blog:

Fonte: www.habr.com

Engadir un comentario