Categoria: Education

Cloud Education Serverless

Cultura – Transformação Ágil – Desafios e caminho para o sucesso

Hoje falaremos sobre um tema que é comum para times de tecnologia: A Transformação Ágil. Em poucas palavras, se pudermos definir a transformação ágil, seria: estimular o conhecimento e o compartilhamento do mesmo, aprimorar processos internos, dar visibilidade às pessoas e entregar soluções com valor para o negócio. Se você acredita em tudo isso, então você acredita em transformação ágil.O mercado está vivendo a premissa: “Ou mude ou morra”, concorda? Cada vez mais empresas que tinham o seu mercado intocável, estão sofrendo com as inovadoras startups que vêm, literalmente, engolindo o mercado. Neste artigo, vamos citar algumas coisas para as quais uma equipe de projeto deve estar preparada ao migrar para o Agile.Transformação ágil. O que é?Apesar de numerosos estudos de casos provarem a sua eficácia, o que sabemos em torno do ágil ainda é um pouco nebuloso, gerando dúvidas devido às demandas não muito compreendidas e aplicadas de forma incorreta.Aspectos Chave na Transformação ÁgilOs benefícios da transformação ágil são:Mantenha as coisas simples, sendo criativoAgregue valor aos clientes continuamente, entregando software funcionalMitigue riscos através de sprints com timeboxEvite longas horas de trabalho / evitando estresseAprenda continuamente usando técnicas e ferramentas, seguindo as normas do manifesto ágilPontos de DorAlguns dos principais pontos problemáticos da aplicação da metodologia Ágil ao modelo offsite são:Mudança de mentalidade – O grande desafio na metodologia ágil é a mudança de mentalidade para mudar velhos hábitos. Isso requer orientação consciente até que a maturidade desejada seja alcançada. Para que isso aconteça, é indicado a realização de treinamentos com foco em agile, para que a organização passe a compreender as mudanças necessárias para avançar para o próximo nível.Reorganização – A transição para ágil requer uma definição de funções e a maneira como o projeto é executado. Os papéis tradicionais precisam evoluir / transformar. Os papéis devem ser mais multifuncionais do que especializados.Diferença de fuso horário e localidades – Um grande obstáculo na transformação ágil é ajustar a diferença de fuso horário. Como agilidade requer comunicação continua, é importante assegurar que a comunicação seja fluida, mesmo quando pessoas estão em cidades ou até mesmo países diferentes, com diferença de fuso horário.Mapeamento de funções – Na metodologia ágil, existem algumas funções que devem ser conhecidas por todos, como o Scrum Master, Product Owner e a equipe de desenvolvimento.Embora a metodologia ágil tenha como objetivo tornar a equipe enxuta e auto-organizada, ela ainda precisa das diferentes habilidades necessárias para que um projeto de TI se torne, efetivamente, bem sucedido.A ênfase aqui é tornar a equipe em forma de “T” para que cada membro da equipe tenha uma habilidade primária e desenvolva habilidades secundárias em paralelo.Uma versão típica sobre ágil e como evitar a interferência de “velhos hábitos”A seguir, vamos mostrar um fluxo típico quando falamos sobre a metodologia Agile.Roadmap de lançamento – O roadmap de lançamento proporciona uma visão panorâmica de um produto mínimo viável (MVP), que será lançado. A velocidade da equipe, dando prioridade ao negócio, são levadas em consideração nesta fase de preparação do roadmap de lançamento.Backlog grooming / refinement – Este é um processo contínuo em que as histórias de usuários são gradualmente finalizadas com base na prioridade.Durante esse processo, as seguintes ações são executadas:As histórias de usuários são formuladas com um objetivo e critérios de aceitação.Suporte (como mockups, metadata mapping) são enviados para histórias de usuários.As subtarefas técnicas necessárias para conclusão de uma história do usuário são identificadasAs histórias de usuários são divididas se não puderem ser completadas em um terço de um sprint.Ao contrário da metodologia tradicional de cascata, o trabalho de desenvolvimento começa cedo e a equipe não descansa até que todos os requisitos sejam cumpridos.Execução de SprintA execução do sprint começa com o planejamento do sprint, onde toda a equipe concorda com o escopo do sprint. O escopo do sprint é bloqueado durante a execução do sprint. O sprint é geralmente de duas a quatro semanas e produz um recurso completo e independente que agrega valor ao negócio.Durante o sprint, a equipe completa as user stories (histórias do usuário), uma de cada vez. Quaisquer impedimentos são destacados para o scrum master. Se uma história de usuário não atender aos critérios de aceitação parcial ou totalmente, ela será movida para o próximo sprint.Ao contrário da metodologia tradicional, em cascata por exemplo, o sistema evolui e reflete essas necessidades e prioridades de negócios em constante mudança.UAT – Durante a fase de UAT, os usuários finais de negócios testam o MVP de liberação e assinam os recursos. Durante essa fase, o feedback dos usuários finais de negócios é levado em consideração e definido como histórias de usuários para as versões subsequentes.Nesse estágio, é possível avaliar se a metodologia ágil foi bem-sucedida, avaliando se os recursos têm valor comercial real e, ao mesmo tempo, eliminam o desperdício.Versão de Produção – Como um pré-requisito para a versão de produção, os itens na lista de “Definição de Concluído” são revisados e marcados como concluídos. Uma reunião de retrospectiva é realizada após o lançamento da versão de produção para entender pontos problemáticos e áreas de melhoria.Mapa Mental ÁgilFerramentas e RecursosFerramentas de trabalho, como o JIRA por exemplo, são extremamente importantes para a execução de projetos ágil, uma vez que ele suporta diferentes metodologias ágeis como Scrum ou Kanban ou qualquer outra metodologia customizada. A ferramenta deve suportar os quatro pilares da metodologia ágil.Planejamento de sprintStand-upsGerenciamento de SprintsRetrospectivaDevOpsOs métodos DevOps, em combinação com metodologias ágeis comprovadas, podem ajudar a cumprir os princípio de agilidade.BenefíciosEquipe de desenvolvimento – A equipe de desenvolvimento tem a oportunidade de preparar os requisitos com frequência e destacar o feedback e as restrições. A carga de trabalho fica mais equilibrada e a equipe consegue automatizar as funções de rotina.Usuários finais – Os usuários finais conseguem fornecer feedback à medida que a aplicação evolui. Isso garante que a correção do curso seja feita no início de alguma funcionalidade que não funcione de acordo com as suas necessidades.Caminhos em direção ao futuroEstá ocorrendo muita inovação ao redor do Ágil e estas inovações continuarão a acontecer cada vez mais no futuro. As metodologias que giram em volta do Agile, podem ajudar as empresas a avançarem para o próximo nível. Alguns dos principais aspectos que ajudarão nessa transformação são:Modelos Mentais  – Construções de modelos mentais que ajudam a eliminar o preconceito humano para tomar melhores decisões. As falhas do projeto geralmente resultam da tomada de decisões erradas ou da incapacidade de enxergar a imagem real até que o problema de fato ocorra.Mentalidade ágil como um hábito – A mentalidade ágil é algo difícil de se alcançar, já que estamos acostumados a pensar e usar velhos hábitos prejudiciais. Assim, o aprendizado continuo é necessário para reforçar a verdadeira mentalidade ágil. Na maioria dos casos, o Agile falha quando as pessoas pensam que estão seguindo o Agile, quando em realidade não estão.Conhecimento indisciplinar – É comprovado o conhecimento interdisciplinar leva a insights profundos e dá origem a novas ideias. As equipes ágeis devem ser treinadas em habilidades com o objetivo de aprender “como aprender”.Automação – A automação de tarefas repetitivas pode liberar o tempo da equipe para concentrar seus esforços de maneiras criativas, aumentando a produtividade.Trabalho remoto – O trabalho remoto ajuda a alavancar recursos, o que contribuí para a construção da equipe certa em um curto período de tempo. Graças aos avançaos  na tecnologia, membros de equipe conseguem trabalhar em lugares distintos, garantindo a mesma produtividade que se estivessem on-site. n

LER MAIS ARTIGOS

Acompanhe a Kumulus nas redes sociais:

Facebook

Instagram

Youtube

Envelope

Cloud Education Serverless

Parte 3/3 – Learn: Desvendando o poderoso Kubernetes – Casos de Uso Reais

Desvendando o Kubernetes – Casos de Uso ReaisNos artigos anteriores, da nossa série sobre Kubernetes, você aprendeu o que é Kubernetes, como ele funciona, e aprendeu também quais são os principais componentes do Kubernetes.Neste terceiro artigo e último da nossa série sobre Kubernetes, você vai conhecer casos de uso reais usando Kubernetes. Como empresas como Spotify, China Unicom, NAV e APPdirect adoratam Kubernetes como orquestrador de containers, reduzindo custos de TI e otimizando tempo em processos complexos.Caso de uso: SpotifyO serviço de streaming mais popular do mundo está migrando toda a sua orquestração de containers para o Kubernetes (k8s)Criada em 2008, o Spotify, é a plataforma de streaming mais popular do mundo, que, nos últimos 10 anos, cresceu mais de 200 milhões de usuários ativos mensais em todo o mundo.O DESAFIO:“Nosso objetivo é capacitar criadores de conteúdo e possibilitar uma real experiência imersiva auditiva nos consumidores que temos hoje – e esperamos também, que isto aconteça com os consumidores que teremos no futuro”, diz Jai Chakrabarti, Diretor de Engenharia, Infraestrutura e Operações da Spotify.Você pode ler também:Learn: Desvendando o poderoso Kubernetes – nodes, containers e clustersLearn: Desvendando o poderoso Kubernetes – Por dentro dos seus componentesAo iniciar a adoção dos microsserviços e Docker, o Spotify tinha microsserviços em contêineres dentro de todas as suas VMs, usando um sistema de orquestração de containers caseiro, chamado Helios.A SOLUÇÃO:“Nós vimos uma incrível comunidade crescendo a cerca do Kubernetes e queríamos muito fazer parte dela”, diz Chakrabarti.”Kubernetes é mais rico em recursos do que o Helios e mais, “Queríamos nos beneficiar da velocidade adicional e do custo reduzido, além de nos alinharmos com o restante do setor nas melhores práticas e ferramentas”. Ao mesmo tempo, o time queria contribuir com a sua experiência e influência no crescimento da comunidade Kubernetes. “A migração, que pode acontecer em paralelo com o Helios rodando, acontece sem problemas já que o “Kubernetes se encaixa muito bem como um complemento e agora como um substituto do Helios”, diz Chakrabarti.OS RESULTADOS:O time de cloud passou a maior parte do tempo de 2018 abordando os principais problemas tecnológicos, necessários para uma migração que, segundo Chakrabarti, começou tarde naquele ano, mas que está sendo o foco principal agora em 2019.“Uma pequena porcentagem da nossa frota foi migrada para o Kubernetes, e algumas das coisas que estamos ouvindo dos nossos times, são que eles estão tendo menos necessidade de se focar no provisionamento de capacidade manual, e mais tempo focando na entrega de recursos para o Spotify”, diz Chakrabarti.”O maior serviço atualmente em execução no Kubernetes recebe cerca de 10 milhões de solicitações por segundo como um serviço agregado e beneficia muito no autoescalonamento” diz o Engenheiro de Confiabilidade do Site, James Wen.Ele acrescenta, “Antes, os times tinham que esperar uma hora para criar um novo serviço e obter um host operacional para executá-lo na produção, mas com o Kubernetes, eles podem fazer isso em minutos”. Além do mais, com os recursos de empacotamento de lixo e multilocação do Kubernetes, a utilização da CPU melhorou em média de duas até três vezes.” Caso de uso: China UnicomEntenda como a China Unicom implementou containers, usando o Kubernetes para aumentar a eficiência e diminuir custos de TIAgora vamos mostrar o caso de uso da China Unicom, uma das principais operadoras de telecomunicação da China, com cerca de 300 milhões de usuários ativos.O DESAFIO: A China Unicom executa vários data centers, com milhares de servidores em cada um usando os contêineres de Docker, VMWare e infraestrutura do OpenStack, desde 2016.“Infelizmente, a taxa de utilização de recursos foi relativamente baixa e não tínhamos uma plataforma cloud para acomodar nossos milhões de aplicativos”. diz Chengyu Zhang, líder da Plataforma de Tecnologia R&DAtualmente a China Unicom está focando no desenvolvimento interno, usando tecnologias open-source. O time técnico do China Unicom Lab de Zhang começou a procurar opções de orquestração de containers open-source, para a sua infraestrutura de cloud.A SOLUÇÃO:Por causa do rápido crescimento da comunidade open-source, o Kubernetes foi uma escolha natural para o time de cloud da China Unicom. Seu serviço de cloud que agora roda em  Kubernetes, hospeda 50 microsserviços e todos os novos desenvolvimentos que têm sido feitos desde então.“O Kubernetes tem melhorado nossa experiência usando a infraestrutura cloud” diz Zhang. “Não há nenhuma tecnologia alternativa que possa replicar isso”. A China Unicom também usa Istio para a estrutura de microsserviços, Envoy, CoreDNS e Fluentd.OS RESULTADOS:Na China Unicom, implantar Kubernetes melhorou a eficiência operacional e de desenvolvimento. A utilização de recursos aumentou em 20-50%, reduzindo os custos de infraestrutura de TI e o tempo de implantação passou de algumas horas para 5-10 minutos.“Isso é principalmente por causa do self-healing e a escalabilidade, assim podemos aumentar nossa eficiência em operações e manutenção”. “Por exemplo, atualmente temos cinco pessoas mantendo nossos múltiplos sistemas. Nós nunca poderíamos imaginar que alcançaríamos essa escalabilidade em tão pouco tempo”.diz Zhang.Caso de Uso: NAVComo a NAV, uma startup de pontuação de crédito para pequenas empresas, reduziu os custos de infraestrutura em 50% após adotar o Kubernetes.Fundada em 2012, a americana Nav fornece aos proprietários de pequenas empresas, acesso às suas pontuações de crédito empresarial de todas as três principais agências de crédito comercial-Equifax, Experian e Dun & Bradstreet- e financiam opções que melhor atendam as suas necessidades.O DESAFIO: “Com cinco anos de vida, a startup cresceu rápido, nosso ambiente de cloud estava ficando grande e nosso uso desses ambientes estava extremamente devagar, tipo 1%”, diz o Diretor de Engenharia Travis Jeppson. “Queríamos que nosso uso de ambiente em cloud fosse mais integrado com o que realmente precisávamos, então começamos a observar a conteinerização e orquestração para nos ajudar a sermos capazes de executar trabalhos, que eram distintos uns dos outros, mas poderiam compartilhar um pool de recursos similares.”A SOLUÇÃO:Depois de aumentar o número de soluções de orquestração, o time da Nav decidiu adotar o Kubernetes, rodando na AWS. “A força da comunidade em torno do Kubernetes foi um forte motivo, bem como sua origem no Google. E mais, as outras soluções tendiam a ser bastante pesadas, muito complexas, muito grandes, e muito difíceis de gerenciar apenas fora do BAT”, diz Jeppson. “Kubernetes nos proporcionou um jeito simples de aderir a uma solução de orquestração, que se encaixa nas nossas necessidades no momento, com a possibilidade de escalar, permitindo que pudéssemos crescer com ele, com a capacidade de incorporar mais recursos e funcionalidades no futuro”.OS RESULTADOS:A equipe de quatro pessoas colocou o Kubernetes para rodar em rápidos seis meses, e toda a migração dos 25 microsserviços da Nav foi completada em outros seis. Os resultados foram impressionantes: a utilização de recursos, teve o impactante aumento de 1% para 40%, e o lançamento de um novo serviço que, antes levava duas semanas, agora leva menos de impressionantes 10 minutos, as implantações aumentaram em cinco vezes e a empresa está economizando 50% nos custos com infraestrutura. Caso de Uso: APPDIRECTComo a APPDIRECT, uma plataforma de comércio de ponta a ponta para produtos e serviços baseados em cloud, apoiou o aumento em 10x de sua equipe de engenharia com o KubernetesA AppDirect fornece uma plataforma de comércio de ponta a ponta para produtos e serviços baseados em cloud. Quando o Diretor de Desenvolvimento de Software, Pierre-Alexandre Lacerte começou a trabalhar lá em 2014, “A companhia tinha uma aplicação monolítica implantada em uma infraestrutura tomcat, e todo o processo de liberação foi mais complicado do que deveria”, diz Pierre. O DESAFIO:”Tínhamos muitos processos manuais, com um engenheiro construindo um recurso, depois outro time pegando as mudanças. Então você tinha bottlenecks no pipeline para enviar um recurso para a produção”.  Ao mesmo tempo, o time de engenharia estava crescendo, e a empresa percebeu que precisava de uma infraestrutura mais robusta, para suportar esse crescimento e aumentar a velocidade das entregas.A SOLUÇÃO: “Minha ideia foi:  vamos criar um ambiente onde os times consigam implantar seus serviços mais rápido, e eles dirão, “Ok, eu não quero construir mais no monolítico. Eu quero construir um serviço”, diz Lacerte. Eles consideraram e projetaram várias tecnologias diferentes antes de decidirem adotar o Kubernetes no início de 2016. O time de Lacerte também integrou o monitoramento do Prometheus à plataforma; rastreamento seria o próximo passo. Hoje, o AppDirect tem mais de 50 microsserviços em produção e 15 clusters do Kubernetes implantados me um dos maiores provedores de cloud do mundo.OS RESULTADOS:”A plataforma do Kubernetes ajudou o time de engenheiros a crescer em 10 vezes nos últimos anos. Aliado ao fato que eles continuam adicionando novas características”, Lacerte diz,“Eu acho que a nossa velocidade teria diminuído muito se não tivéssemos essa infraestrutura”.Mudar para o Kubernetes e serviços significa que as implantações se tornaram mais rápidas devido à menor dependência de scripts de shell frágeis e customizados com comandos SCP. O tempo para implantar uma nova versão diminuiu de 4 horas para alguns minutos. Além disso, investimos muito esforço para transformar as coisas em autoatendimento para os desenvolvedores.“Colocar um novo serviço não requer ingressos ou reuniões do Jira com três times diferentes”, diz Lacerte.Hoje, a empresa tem 1.600 implantações por semana, comparado as 1-30 antes. A empresa também conseguiu economizar movendo seu marketplace e monólitos de faturamento para o Kubernetes a partir de hosts EC2 legados, bem como aproveitando o escalonamento automático, pois o tráfego é maior durante o horário comercial.

LER MAIS ARTIGOS

Acompanhe a Kumulus nas redes sociais:

Facebook

Instagram

Youtube

Envelope

Cloud Education

Parte 2/3 – Learn: Desvendando o poderoso Kubernetes – Por dentro dos seus componentes

No artigo anterior, da nossa série sobre Kubernetes, você aprendeu sobre a origem do Kubernetes, o que são e para que servem os containers, pods e clusters. Neste segundo artigo, você vai aprender sobre os componentes do Kubernetes. Quais são eles, como funcionam e para que servem. Vamos iniciar falando sobre os componentes principais .. São os componentes principais que fornecem o controle do cluster, além de serem responsáveis por executar decisões globais sobre o cluster (por exemplo, agendamento), também detectam e respondem por eventos do cluster.Você pode ler também:How To: Executando o Elasticsearch no KubernetesAprenda sobre o papel que os Bots têm no DevOpsGerenciamento de Big Data: 5 coisas que você precisa saberOs componentes principais podem ser rodados em qualquer máquina no cluster. Para simplificar, os scripts de configuração normalmente iniciam todos os componentes principais na mesma máquina e não rodam containers de usuários nesta máquina.ETCD:O ETCD é o armazenamento de alta disponibilidade de informações chamadas de consistentes. Ele é utilizado como armazenamento de apoio para todos os dados de clusters do Kubernetes.Se o seu cluster de Kubernetes usa o ETCD como seu repositório de apoio, é importante vocÊ se certificar de que tem um plano de backup para esses dados.Kube-scheduler:O Kube-scheduler é o componente do master, ele observa os novos pods criados, que não possuem nenhum nó atribuído e permite que seja selecionado um nó para eles conseguirem rodar.Os fatores levados em conta para decisões de agendamento são: requisitos individuais e coletivos de recurso, hardware/software/contratos de política, especificações de afinidade e anti-afinidade, dados locais e interferência entre cargas de trabalho e prazos.Kube-controller-manager:Kube-controller-manager é o componente do master que roda os controladores. Pensando pela lógica, cada controle tem um processo diferente, mas para reduzir a complexidade, eles são compilados em um único binário e rodam em um único processo.Esses controladores incluem:Node controller: são responsáveis por noticiar e responder quando os nós caem.Replication controller: é responsável por manter o número correto de pods para cada objeto do controlador de replicação no sistema.Endpoints: preenche o objeto Endpoints (isso é, junta serviços e pods)Service Account & Token Controllers: cria contas padrão e tokens de acesso à API para novos ingressantes.Cloud Controller ManagerSão controladores que interagem com os provedores de cloud. O binário cloud-controller-manager é um recurso introduzido no Kubernetes versão 1.6.O Cloud Controller Manager executa somente loops de controlador específicos do provedor de cloud. Você pode desabilitar os loops do controlador definindo o sinalizador- cloud-provider como external ao iniciar o kube-controller-manager.O Cloud Controller Manager permite também que o código do fornecedor de cloud e o código de Kubernetes possa evoluir independentemente um do outro. Em versões anteriores, o código principal do Kubernetes era dependente de um código específico do provedor de cloud para funcionalidade. Os seguintes controladores que dependem de um servidor cloud:Node Controller: serve para checagem do provedor de cloud, para determinar se um nó foi deletado na cloud depois de parar de responder.Route Controller: serve para definir rotas na estrutura de cloud.Service Controller: para criar, atualizar e deletar balanceadores de carga do provedor de cloud.Volume Controller: para criar, anexar, volumes de montagem e interagir com o provedor de cloud para orquestrar volumes.Componentes dos nósOs componentes dos nós rodam em qualquer nó. O mantendo e rodando os pods e fornecendo o  ambiente de tempo de execução do Kubernetes.API do Kubernetes O Kubernetes é construído em torno de uma robusta API RESTful. Cada ação realizada no Kubernetes, seja comunicação entre componentes ou comando do usuário, interage de alguma forma com a API do Kubernetes. O objetivo da API é ajudar a facilitar o estado desejado do cluster do Kubernetes.A API do Kubernetes é um “modelo declarativo”, o que significa que se concentra no que, e não no como. Você diz o que você quer realizar e faz. Isso pode envolver a criação ou a destruição de recursos, mas você não precisa se preocupar com esses detalhes. Para criar esse estado desejado, crie objetos , que normalmente são representados por arquivos YAML chamados manifestos , e aplique-os por meio da linha de comando com a ferramenta kubectl .KubeletKubelet é um agente que roda em cada nó no cluster. O Kubelet leva um conjunto de PodSpecs que são fornecidos por vários mecanismos e garantem que os containers descritos nesses PodSpecs estejam funcionando e sejam saudáveis. O kubelet só gerencia containers que foram criados pelo Kubernetes.Kube-proxyO Kube-proxy é um proxy de rede que roda em cada nó do cluster. Ele permite a abstração do serviço Kubernetes, mantendo as regras de rede no host e realizando o encaminhamento de conexões.O Kube-proxy permite o encaminhamento de fluxo TCP, UDP ou round-robin TCP e encaminhamento UDP em um conjunto de funções de back-end.Tempo de execução dos ContainersÉ o software que é responsável por rodar os containers.O Kubernetes suporta vários tempos de execução de containers: Docker, containerd, cri-o, rktlet, e qualquer implementação do Kubernetes CRI.AddonsAddons usam os recursos do Kubernetes (DaemoSet, Desenvolvimento, etc) para implementar características do cluster. Como eles fornecem recursos no nível do cluster, os recursos com namespaces para os addons pertencem ao namespace do sistema kube.Como selecionar addons:DNSO Cluster DNS é um servidor DNS, além de outros servidores DNS em seu ambiente, que serve para registrar DNS nos serviços do Kubernetes.Enquanto os outros addons não são obrigatoriamente necessários, todos os clusters do Kubernetes devem ter o cluster DNS.Web UI (Dashboard)O Web UI Dashboard é uma interface de usuário, baseada em web, usada para clusters de Kubernetes. Ela permite que os usuários gerenciem e solucionem problemas de aplicativos em execução no cluster, bem como o próprio cluster.Container Resource MonitoringContainer Resource Monitoring é o processo de rastrear a operação de um aplicativo em container. Ele grava métricas genéricas de séries temporais sobre containers em um banco de dados central e fornece uma interface para o usuário navegar nesses dados.Cluster-level LoggingO Cluster-Level-Logging é responsável por salvar os logs de container em um armazenamento de log central, que funciona com interface de pesquisa/navegação.Você gostou do artigo? Continue acompanhando a série!No próximo artigo falaremos sobre cases de sucesso com Kubernetes. empresas que estão adotando Kubernetes como principal gerenciador de containers, e os resultados obtidos após esta mudança.

LER MAIS ARTIGOS

Acompanhe a Kumulus nas redes sociais:

Facebook

Instagram

Youtube

Envelope

Cloud Education

Parte 1/3 – Learn: Desvendando o poderoso Kubernetes – nodes, containers e clusters

Learn: Desvendando o poderoso Kubernetes – nodes, containers e clustersSe você costuma ler conteúdos sobre Cloud Computing, já deve ter esbarrado na palavra Kubernetes. Nesse artigo, vamos falar um pouco sobre Kubernetes, esse sistema fantástico de gerenciamento, desde a sua criação até a sua importância.Vamos iniciar falando do logotipo:Um leme de navio, isso mesmo. Kubernetes se origina da palavra grega “Kuvernetes” que representa a pessoa que comanda o navio mas, para os mais íntimos, “K8s” também serve. Como podemos ver na imagem ao lado, são 7 raios que fazem referência ao nome original do projeto: “Project Seven of Nine” (Projeto Sete de Nove). Sim, é isso mesmo, eles fizeram uma homenagem a Borg de Star Trek VoyagerHistória do Kubernetes. Como tudo começou:O Kubernetes foi criado pela Google, uma das maiores empresas no desenvolvimento de tecnologia para containers. A própria empresa afirma que utiliza os contêineres para rodar alguns de seus serviços como o Google Docs e o Gmail.Depois de um tempo, a Google doou o Kubernetes que se tornou um serviço Open Source (código aberto).Mas, até agora usamos muito essa palavra “Containers” e afinal, o que eles são?Afinal, o que são Containers?Sim, como containers de navio eles isolam. No caso, dados de um SO (Sistema Operacional) dentro de um único hospedeiro. Serve para quando você quer executar várias instâncias dentro de uma única VM.Como os Containers podem ser executados?Você pode executar aplicativos isoladamente em um único host de VM já que ele agrupa também suas dependências. Como os containers são protegidos e isolados você não precisa separar VMs para cada aplicativo.Quais são as utilidades dos Containers?Isso se dá pois é implantado como uma unidade de host de container, oferecendo assim, um tempo de execução igual tirando os requisitos de infraestrutura e de SO.São usados na maioria das vezes em soluções que utilizam microsserviços (divide os serviços em partes menores e independentes. Mas falaremos mais sobre isso em um próximo artigo)Para resumir, os containers virtualizam o Sistema Operacional.Funções do KubernetesE o que o Kubernetes tem a ver com tudo isso?Os containers são uma solução cada vez mais adotada por organizações pois são extremamente práticos e ágeis, isso cria uma tendência simples: uma vez que você utiliza containers, eles se multiplicam em uma velocidade assombrosa!E aí que o Kubernetes entra.Pra você começar com uma base, o Kubernetes faz a automação de gerenciamento de containers.Funcionamento do Kubernetes:À primeira vista, o Kubernetes não é muito amigável para marinheiros de primeira viagem.Ele possui uma estrutura complexa já que existem vários componentes responsáveis por seu funcionamento.O que são Pods e Clusters?No seu núcleo, ocorre o gerenciamento da posição dos pods em um nó de cluster.São muitos nomes técnicos de uma vez, então vamos explicar superficialmente para você:O cluster é a combinação de vários computadores para que eles trabalhem juntos, nele contém os Masters e os nós Workers.E os pods representam um conjunto de containers em execução no cluster. Ele cria uma camada extra  de abstração permitindo solucionar parte dos problemas relacionados a sua proliferação.Master é a máquina que controla os nós do Kubernetes. É nela onde se originam as tarefas do cluster. Seus componentes rodam assim:No próximo artigo falaremos sobre grandes empresas têm trabalhado com o  Kubernetes  em operações robustas.

LER MAIS ARTIGOS

Acompanhe a Kumulus nas redes sociais:

Facebook

Instagram

Youtube

Envelope

Social media & sharing icons powered by UltimatelySocial