“Visão geral dos recursos do Kubespray”: A diferença entre a versão original e nosso fork

Em 23 de setembro, às 20.00h, horário de Moscou, Sergey Bondarev realizará um webinar gratuito “Visão geral dos recursos do Kubespray", onde ele lhe dirá como preparar o kubespray para que funcione de forma rápida, eficiente e tolerante a falhas.

Sergey Bondarev lhe dirá a diferença entre a versão original e nosso fork:

“Visão geral dos recursos do Kubespray”: A diferença entre a versão original e nosso fork

A diferença entre a versão original e o nosso fork.

Aqueles que já encontraram o cubespray provavelmente agora estão se perguntando por que estou contrastando o kubeadm com o cubespray, porque o cubespray para criar um cluster chama o kubeadm e à primeira vista parece um script para instalação de pacotes e inicialização automatizada.

Mas nem sempre foi assim; inicialmente, o cubespray instalou todos os componentes de forma independente:

  • cluster etcd montado;
  • cubelets instalados, certificados gerados, configurações e tokens de acesso para pods de plano de controle estático e outros componentes de serviço;
  • criou contas de serviço para nós do trabalhador e os conectou ao cluster.

Mas no ano retrasado eles cortaram essa funcionalidade, deixando apenas o kubadm. O que na época não era muito bom. Me senti ofendido e fiz meu próprio fork, no qual mantive o modo de instalação clássico, e na verdade agora mantenho esse fork atualizado, escolhendo commits do cubespray original para mim mesmo. Ao longo do caminho, finalizando o modo clássico para novas mudanças.

Como resultado, a diferença entre os clusters criados pelo meu fork e o original é o kube-proxy e o período de validade dos certificados.

Na minha bifurcação, tudo permanece como antes - o cubo proxy é iniciado como um pod estático, os certificados são emitidos por 100 anos.

No Kubeadm, o cubo proxy é iniciado como um daemonset e os certificados são emitidos por 1 ano e devem ser renovados periodicamente. kubeadm finalmente aprendeu como fazer isso com um comando.

A diferença é pequena e hoje utilizamos as duas opções.

Características (desvantagens) durante a operação industrial:

O script é universal, por isso não é muito rápido. Você pode acelerar significativamente o seu próprio, eliminando verificações e iniciando a partir de uma imagem pronta.

O roteiro é complexo, há lugares ilógicos, um legado pesado. Instalação de adicional controladores e software via cubespray - bom para treinamento e teste. No baile. Para operação, depender de um cubespray não é uma ideia muito boa, além disso a atualização do software é implementada usando o método “mate-o e faça um novo” - o que significa uma interrupção no serviço.

Só é possível adicionar nós de trabalho, com mestres existem algumas nuances com certificados e o script não resolve todos os possíveis problemas que possam surgir.

Por exemplo, tive um problema com o kubeadm quando ele travou ao adicionar o segundo e o terceiro master e, depois disso, o cubespray redefiniu o kubeadm no nó e tentou adicionar o master novamente.

O único problema foi que no momento em que ocorreu a falha, a segunda instância do etcd já havia conseguido se registrar e, como também foi excluída após a redefinição, acabamos com um pesadelo - um cluster etcd de dois nós, um dos quais foi excluído e o segundo não aceita mais clientes. Como resultado, o cluster morreu sem nascer.

Código aberto como é.

Tudo isso e muito mais no webinar gratuito "Visão geral dos recursos do Kubespray» 23 de setembro, 20.00h, horário de Moscou.

Присоединяйтесь!

Fonte: habr.com

Adicionar um comentário