Minha empresa está tentando recuperar o atraso no espaço do DevOps. Tenho pesquisado bastante a conteinerização de aplicativos e os sistemas de orquestração que o acompanham. Me deparei com um artigo (que eu gostaria de ter salvo) em que eles estavam falando sobre combinar o Swarm com o Kubernetes para obter uma melhor funcionalidade. Neste artigo, eles não definiram o que ganharam ao fazer isso.
Eu me perguntava que benefícios isso proporcionaria? A adição de uma camada extra de complexidade realmente lhe dará muito retorno?
EDIT: Eu estou procurando por profissionais técnicos / contrários. O KISS é um bom lema, mas não se sustenta em um debate com seu CEO ou Conselho.
Estou quase certo de que estaremos selecionando o Docker para nossos contêineres e o Swarm para uma orquestração. No entanto, gostaria de ver o Kubernetes em nosso espaço, de modo que a proposição de que você poderia mesclar as tecnologias para uma solução mais robusta me intriga.
Respostas:
Atualização: o Docker acaba de lançar o suporte ao Kubernetes como agendador, o que muda a situação e torna o Kubernetes apenas um agendador alternativo ao Docker Swarm.
TL; DR: NÃO FAÇA. Os engenheiros sempre tentam criar esses porcos de cachorro. Toda tecnologia desnecessária que você trouxer trará outro conjunto de falhas. Se você pode escolher um, escolha um e fique feliz por não precisar fazer os dois. Se você gosta de jogar com o Kubernetes, basta ter uma conta privada no Google Cloud e brincar com ela o quanto quiser. Mas não faça com que todos na sua empresa sofram complicações desnecessárias.
Essas são duas tecnologias paralelas e principalmente equivalentes . Se sua empresa tinha motivos comerciais legítimos para implantar em vários provedores de nuvem por questões de confiabilidade, por exemplo, e queria implantar no AWS ECS (Elastic Container Service - baseado no Docker) e no Google GKE (Container Engine - baseado no Kubernetes) e você estava perguntando como você cria um pipeline, que construiria seu software e pacote em contêineres para implantação em ambos , isso seria outra coisa, mas fazê-lo apenas porque você deseja jogar com uma nova tecnologia é muito irresponsável.
fonte
Um motivo para o Kubernetes como agendador se você usar ou considerar o Azure como um provedor de nuvem é o serviço AKS relativamente novo (kubernetes gerenciados). Nesse caso, você não combinaria kubernetes com enxame de encaixe.
Isso para mim é uma indicação clara de onde a comunidade está indo. Eu não gostaria de aprender algo que mais tarde precisaria jogar na lata de lixo.
fonte