Nós amamos Kubernetes (microsserviços)

Nós amamos Kubernetes (microsserviços)
Nós amamos Kubernetes (microsserviços)

Kubernetes compreende um universos de microsserviços que mudaram a face do desenvolvimento de aplicativos. Várias organizações já experimentam microsserviços há um tempo e um grande número dessas empresas já mudou a maneira como desenvolvem aplicativos.

Entenda microsserviços e contêiners

Microsserviços e contêineres são feitos apenas um para o outro. Contêineres são componentes menores de um aplicativo que levam menos tempo para configurar e usar muito menos recursos que as VMs. Os contêineres também são completamente isolados e isso ajuda seu aplicativo baseado em microsserviços a funcionar melhor. No entanto, as cargas de trabalho tornaram-se complexas nos últimos dois anos, à medida que a confiança nos microsserviços aumentou. Isso levou a problemas com escalabilidade e gerenciamento. A configuração de contêineres não é difícil, o problema real é operá-los e gerenciá-los. E, à medida que o número de contêineres implantados aumenta, a expansão pode se tornar um pouco de dor de cabeça. Foi aqui que o Kubernetes entrou.

KUBERNETES DIAGRAMA
KUBERNETES DIAGRAMA

O Kubernetes é uma ferramenta de orquestração de contêiner (microsserviços) de código-fonte aberto que ajuda as organizações a automatizar a implantação, o dimensionamento e o gerenciamento de cargas de trabalho em contêiner.

Qual o motivo do sucesso dos kubernetes?

Desde o desembarque em cena, o Kubernetes conquistou muitos seguidores e se tornou a ferramenta de orquestração de contêineres mais popular. Há uma comunidade movimentada de desenvolvedores que ajudam o Kubernetes a crescer e evoluir para uma versão cada vez mais impressionante de si mesma. Depois de ser desenvolvido pelo Google, o Kubernetes tornou-se parte da CNCF (Cloud Native Computing Foundation), que é a prova do sucesso desse projeto. O Kubernetes ajuda as organizações a gerenciar e monitorar seus contêineres para garantir alta disponibilidade. O Kubernetes permite que os clientes montem qualquer tipo de armazenamento, seja local, nuvem pública ou armazenamento em rede. O Kubernetes também é auto-reparável, o que significa que reinicia os contêineres que falham e também mata os contêineres que não respondem às verificações de saúde e os mantém longe dos clientes até que sejam consertados. O Kubernetes também executa lançamentos progressivos de atualizações e também realiza reversões automatizadas caso as alterações levem à falha.

Vejamos alguns estudos de caso das principais organizações que usam o Kubernetes para ajudar a resolver os desafios que enfrentaram ao adotar microsserviços.

Pinterest

O popular mecanismo de descoberta visual tornou-se parte da comunidade Kubernetes. O Pinterest tem mais de 250 milhões de usuários ativos mensais para os quais fornece mais de 10 bilhões de recomendações. O Pinterest possui uma enorme frota de servidores e mais de 300 petabytes de dados. Está na nuvem desde o primeiro dia. No entanto, à medida que a empresa cresceu, tornou-se uma missão importante liberar a sobrecarga do gerenciamento de VMs. É por isso que eles avaliaram várias plataformas e finalmente acabaram escolhendo o Kubernetes, quando é necessário executarem microsserviços.

Kubernetes ajudou o Pinterest a aumentar sua velocidade de entrega reduzindo o tempo de colocação no mercado para apenas alguns minutos. O aprendizado de máquina é um caso de uso importante para o Pinterest, pois ele aciona seu mecanismo de descoberta visual. O Kubernetes permite ao Pinterest criar, dimensionar, implantar e iterar seus modelos de maneira rápida e fácil. O Kubernetes também ajuda a fornecer ao Pinterest uma abstração limpa, pois cuida de vários trabalhos manuais anteriormente e permite que os desenvolvedores se concentrem na inovação. Isso mostra como o Kubernetes ajuda as organizações a minimizar o trabalho manual e remove a desordem.

Spotify

O Spotify é o serviço de streaming de música mais popular, com mais de 200 milhões de usuários ativos mensais. O Spotify adotou microsserviços há muito tempo. Ele está executando microsserviços em contêineres em suas próprias VMs com uma plataforma de orquestração de contêineres doméstica, a Helios. O Spotify queria aproveitar o Kubernetes como uma solução complementar ao Helios, para compensar os recursos que sua própria plataforma não possuía.

O Spotify está ativamente realizando a migração de suas cargas de trabalho para a plataforma Kubernetes. Eles começaram pequenos com uma pequena porcentagem para experimentar a plataforma de código aberto antes de mergulhar fundo. Depois de adotar o Kubernetes, os desenvolvedores do Spotify exigem menos esforço no provisionamento manual de capacidade e podem gastar mais tempo fornecendo novos recursos.

O Spotify também obteve maior velocidade e custos reduzidos com a adoção do Kubernetes. Os serviços que levaram uma hora para criar e executar na produção agora exigem apenas minutos ou até segundos. O maior serviço em execução no Kubernetes recebe 10 milhões de solicitações por segundo. O Kubernetes também ajuda a melhorar a utilização da CPU, em grande medida. O Spotify esclareceu que sua migração para o Kubernetes continuará em paralelo com o Helios para causar o mínimo de interrupção nas cargas de trabalho existentes. Isso é um testemunho de como o Kubernetes é adaptável e como ele pode coexistir com sua pilha existente, oferecendo a máxima flexibilidade.

Bose

A Bose produz dispositivos conectados há vários anos. No entanto, quando a demanda começou a crescer, a Bose começou a construir uma plataforma do zero para acomodá-la. A Bose precisava de uma maneira mais rápida de prototipar e implantar serviços na produção, mantendo também a neutralidade do fornecedor. Para isso, eles avaliaram várias plataformas e finalmente escolheram o Kubernetes devido à sua plataforma como serviço de IoT dimensionada em execução na AWS.

A nova plataforma foi lançada juntamente com o Prometheus para atender cerca de 3 milhões de dispositivos conectados. Hoje, a Bose possui mais de 1.800 namespaces e 340 nós de trabalhadores em um de seus clusters de produção ao vivo. A Bose tem cerca de 100 engenheiros trabalhando nessa plataforma e esta ajuda a fazer 30.000 implantações que não são de produção a cada ano. Bose ficou impressionado que, com o Kubernetes, um serviço pode passar do conceito à produção em questão de duas semanas e meia. Este estudo de caso mostra como o Kubernetes pode ser usado para dimensionar até suas cargas de trabalho complexas de IoT.

Adidas

A Adidas é uma das empresas de artigos esportivos mais populares do mundo e também depende muito da Kubernetes para alimentar sua pilha de tecnologias. O principal requisito para a Adidas era criar VMs. No processo antigo, a criação de uma máquina virtual às vezes levava dias ou semanas, o que impactaria a produtividade dos desenvolvedores. O Kubernetes ajudou a se livrar da sobrecarga que vem com uma infraestrutura baseada em VM, pois os microsserviços podem ser implementados rapidamente.

A Adidas entende que configurar um serviço não é difícil, são as tarefas do dia 2 que podem se tornar um fardo para os desenvolvedores. O Kubernetes assumiu essas atividades do dia 2, ajudando os desenvolvedores a se concentrarem na criação de aplicativos mais novos, com mais rapidez. As implantações que costumavam levar de quatro a cinco dias agora podem ser implantadas quatro a cinco vezes por dia com a ajuda do Kubernetes. Atualmente, a Adidas possui mais de 4.000 pods rodando no Kubernetes, atingindo a velocidade necessária para desenvolver aplicativos mais rapidamente do que nunca.

Porque Kubernetes e microsserviços fazem tanto sucesso?

O Kubernetes está sendo adotado pelas empresas devido à sua flexibilidade e facilidade de aplicação a vários casos de uso. E isso é por causa da comunidade por trás disso. Várias organizações acham atraente o uso de uma plataforma de código aberto para gerenciar seus microsserviços em contêiner. A maior parte disso tem a ver com a comunidade ativa que segue o Kubernetes. Há também um ecossistema crescente de ferramentas em torno do Kubernetes que o torna ideal para empresas que desejam testar as águas.

Hoje, as cargas de trabalho podem se tornar extremamente complexas e a expansão pode se tornar tediosa e, às vezes, impossível. Com o Kubernetes, você cria uma pilha de infraestrutura que evolui à medida que suas cargas de trabalho evoluem. Você pode usá-lo para executar um aplicativo pequeno ou uma enorme carga de trabalho com vários servidores e milhares de serviços. O Kubernetes também garante maior disponibilidade de seus serviços, através da divisão de tarefas por microsserviços. Vários fornecedores fornecem suporte ao Kubernetes devido à sua popularidade nas bolas de neve. E, pelo que parece, está aqui para ficar.

Fonte: http://techgenix.com

Conheça mais sobre a tecnologia acessando os links abaixo:

Kubernetes e a segurança

Kubernetes, uma solução Google/Redhat.

Canonical aprimora confiabilidade dos Kubernetes para IoT