Combine Docker Swarm e Kubernetes

12

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.

EvanM
fonte
1
As palavras operativas aqui são "me intrigam". Você faz parte de um negócio. Deve haver um motivo comercial válido para fazer isso. Não é do seu interesse, não é técnica, uma razão comercial sólida para combinar os dois. Se não existe uma razão comercial para começar, inventá-la é simplesmente antiética. O que você está propondo está levando ao desperdício de recursos comerciais por motivos pessoais e, eticamente, é semelhante a peculato.
Jiri Klouda
Pensei em responder ou não a isso porque, francamente, sinto que essa conversa é uma perda de tempo. Sim, sou parte dos negócios, sim, isso me intriga, não, não estou inventando nada e a atitude que você teve desde o início é injustificada. A intriga é o que impulsiona a tecnologia, procurar por razões pelas quais / por que não faz parte do trabalho e simplesmente fazer perguntas às pessoas que foram antes de você é uma prática recomendada. Esta pergunta foi criada para obter feedback de pessoas que realmente fizeram trabalho nessas plataformas e têm opiniões válidas sobre o assunto.
precisa saber é o seguinte
Não estou procurando um debate filosófico sobre palavras chatas ou acrônimos engraçados. Estou procurando benefícios técnicos ou deficiências e onde as lacunas podem ser preenchidas, se necessário. Tudo publicado foi uma opinião sem argumentos factuais. Eu apreciaria se você pudesse explicar qual tecnologia você usa para resolver a conteinerização e orquestração e as falhas que você encontrou com ela. Nesse momento, cabe a mim e a minha empresa decidir qual é o melhor caminho a seguir. A pesquisa não é peculato ou roubo, é chamada duediligência e é como a boa tecnologia se transforma em grandes soluções.
precisa saber é o seguinte
Você pode estar perguntando em um fórum errado então. O DevOps é uma disciplina sobre como tornar os negócios mais eficientes por meio de cultura, processo e meios técnicos. Temos uma animada discussão sobre tecnologia, mas é dessa perspectiva. Se você está procurando uma resposta do ponto de vista estritamente técnico, tenho certeza de que há muitos grupos de trabalho técnico para o Kubernetes que podem dar a resposta que você procura.
Jiri Klouda

Respostas:

9

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.

Jiri Klouda
fonte
Eu não diria que quero 'brincar' com o Kubernetes. Existem razões comerciais pelas quais prefiro o Swarm. Uma delas é a comunidade e sua suposição de que eu só quero fazer algo está errada. Não discordo do seu comentário de porco-espinho, vindo de uma posição de engenheiro de sistemas que já vi / impedi muitas vezes, ou pelo menos tentei. Você não forneceu nenhuma indicação de que trabalhou com as lições aprendidas, nem detalhes técnicos sobre o motivo; Não acho que isso atenda à minha pergunta.
EvanM
Eu uso 'brincar com' em vez de 'trabalhar com', algumas vezes no sentido de trabalhar divertido e parcialmente baseado no favorito da minha mãe: "Você apenas brinca com computadores o dia todo e nunca faz nenhum trabalho real". :)
Jiri Klouda
Entendi, eu faço o mesmo. Só queria deixar claro que não se tratava de uma tentativa de meio risco de forçar Kubernetes pelas gargantas da minha empresa. Daí a questão. Intuição é que não há razão 'boa', mas também não pude ignorar esse artigo.
EvanM
1
Olha, todos nós já estivemos lá. Os negócios planejam seguir uma tecnologia, quando você pensa que a outra é melhor e deseja, de alguma forma, continuar trabalhando com a outra ou pelo menos com as duas e mostrar a eles como a sua escolha foi muito melhor. É um clássico. Não importa o que você pensa, não combine os dois para fazê-lo ou para provar que está certo. Mesmo que você possa justificá-lo, seu trabalho é projetar a solução para evitar isso. BEIJO. Faça com que funcione com o Swarm, convença todos a usar o Kubernetes ou saia e trabalhe no local onde eles usarão o Kubernetes.
Jiri Klouda 12/04
0

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.

O Gato de Botas
fonte