O Kubernetes pode ser gratuito para baixar e executar, mas dificilmente é gratuito para possuir. Assim como outras grandes plataformas de código aberto que são “grátis” apenas em um sentido simplista, o Kubernetes quase certamente custará dinheiro para você implantar e operar.
Quanto dinheiro depende de vários fatores, como a forma como você implanta o Kubernetes e quais ferramentas e processos você usa para gerenciá-lo. Para algumas organizações, o Kubernetes é quase gratuito. Para outros, pode acabar gerando muito mais despesas totais do que uma plataforma de software proprietária.
Para ajudar você a avaliar quanto o Kubernetes custará à sua equipe, este artigo explicará quais fatores contribuem para as despesas do Kubernetes e como determinar seus custos totais para o Kubernetes.
Para calcular o custo total de uma instalação do Kubernetes, você precisa ponderar cada um dos fatores que contribuem para os custos do Kubernetes. Nem todas elas se aplicam a todas as situações, mas são variáveis a serem consideradas ao projetar uma estratégia Kubernetes econômica.
Ao contrário do Linux, por exemplo, não existe uma distribuição Kubernetes totalmente gratuita e com suporte da comunidade. ( OKD , uma distribuição comunitária patrocinada pela Red Hat, pode ser a exceção.) Em vez disso, há uma variedade de distribuições comerciais do Kubernetes. A maioria deles oferece níveis gratuitos para clusters de pequena escala, mas cobram taxas por instalações de nível de produção e/ou por serviços de suporte profissional.
Portanto, o primeiro fator de custo a ser considerado para o Kubernetes são as taxas de licenciamento associadas à distribuição que você usa. A menos que você planeje executar um cluster de uma dúzia de nós ou menos, espere pagar pela sua distribuição.
O Kubernetes precisa de servidores para ser executado. Ele transforma esses servidores em nós e os utiliza para construir seus clusters.
Seus nós podem estar em seus próprios servidores locais ou em servidores baseados em nuvem. De qualquer forma, você pagará por eles.
Obviamente, as estruturas de custos associadas à sua infraestrutura Kubernetes variam dependendo do tipo de servidor que você usa. Para hardware local, você tem um grande custo de aquisição inicial e, depois, custos de manutenção contínua relativamente pequenos. Para servidores em nuvem, não há despesa de capital inicial, mas você pagará taxas contínuas mensalmente.
Se você executar o Kubernetes na nuvem usando máquinas virtuais que você mesmo gerencia, (na maioria dos casos) terá que pagar não apenas pelos servidores virtuais que alimentam seus nós, mas também pelas taxas de rede associadas à saída de dados.
Em geral, esses custos serão relativamente baixos para clusters que mantêm a maior parte de seus dados na mesma nuvem. No entanto, se você usar o Kubernetes para hospedar aplicativos que enviam muitos dados para fora da nuvem, essas taxas de saída aumentarão.
Da mesma forma, você precisa pagar pelo armazenamento para hospedar seus dados do Kubernetes. Se você executar apenas aplicativos sem estado, suas necessidades e custos de armazenamento de dados serão pequenos. Mas para aplicativos que consomem ou produzem muitos gigabytes de dados, você precisará pagar por sua própria mídia de armazenamento local para hospedar tudo ou hospedá-los em um serviço de armazenamento em nuvem.
Provavelmente você também deseja fazer backup dos seus dados do Kubernetes, o que pode facilmente dobrar ou triplicar seus custos gerais de armazenamento, pois exige que você mantenha várias cópias dos dados.
Sua equipe precisa investir tempo na manutenção do cluster do Kubernetes. O tempo gasto varia dependendo de quanto suporte de manutenção e gerenciamento sua distribuição do Kubernetes oferece. Algumas distribuições, como Canonical Kubernetes ou OpenShift Dedicated, oferecem serviços Kubernetes abrangentes e totalmente gerenciados. Com outros, como o OpenShift básico, a maior parte da carga de manutenção recai sobre você.
Você também pode usar um serviço de gerenciamento Kubernetes de terceiros (como o da Platform9) para automatizar grande parte do fluxo de trabalho de gerenciamento. Mas seus engenheiros ainda precisarão estar envolvidos na gestão. Não existe experiência totalmente passiva no Kubernetes.
Portanto, as despesas associadas ao tempo da equipe para gerenciar o Kubernetes podem variar significativamente, mas sempre existirão.
Quanto mais rápido você puder implantar aplicativos no seu cluster, mais valor você obterá do Kubernetes e mais econômica será sua estratégia de Kubernetes. Por esse motivo, vale a pena pensar em como é seu processo de implantação, quão manual ele é e quantos lançamentos você pode manipular por dia ou por semana. Embora esse seja um custo um tanto intangível, um pipeline de implantação de aplicativos que pode gerenciar apenas uma implantação por semana custará muito mais por implantação do que um que implanta uma ou mais vezes por dia.
O Kubernetes é gratuito somente se seus servidores, redes, soluções de armazenamento e funcionários fizerem seu trabalho de graça – o que provavelmente não acontece. É por isso que, antes de se comprometer com uma estratégia do Kubernetes, é importante avaliar os vários fatores que impactam o custo do Kubernetes e também garantir que a abordagem adotada minimize suas despesas e alcance o desempenho que você exige de seus clusters.
Volterra pode ajudar. Ao fornecer uma plataforma de gerenciamento de infraestrutura e aplicativos para monitorar todo e qualquer cluster do Kubernetes, não importa qual tipo de infraestrutura você usa para hospedá-los (seja nuvem única, multinuvem ou local), o Volterra elimina muitas das suposições do planejamento e gerenciamento do Kubernetes. O Volterra não tornará seus clusters Kubernetes totalmente gratuitos — você ainda pagará pela infraestrutura, licenças e tempo da equipe — mas reduzirá a quantidade de esforço necessária para implantar e gerenciar o Kubernetes, ao mesmo tempo em que aumentará o ritmo de implantação de aplicativos. Isso resulta em menor custo total do Kubernetes e maior valor geral.