GoCache
  • Produtos
    • CDN
    • WAF – Web Application Firewall
    • Rate Limit
    • Lithio – Otimizador de Imagens
    • Role Based Access Control
    • Plugin WordPress e Magento
    • API Pública
    • Certificado SSL
  • Soluções
    • E-Commerce
    • Portais de Conteúdo e Notícias
    • Educação / Edtech
    • Startup
    • Outros
  • Planos
  • Parceiros
    • Parceiros de Tecnologia
  • Cases
  • Ajuda
    • Central de Ajuda – FAQ
    • Documentação Técnica
    • Documentação da API
  • Contato
  • Login
  • CADASTRE-SE
  • Menu Menu

O que é Kubernetes e quais suas aplicações?

30 de março de 2021/em Dicas

O Kubernetes é uma plataforma portátil, extensível e de código aberto para o gerenciamento de cargas de trabalho e serviços em contêineres, que facilita a configuração declarativa e a automação. Tem um grande ecossistema de crescimento rápido. Os serviços, suporte e ferramentas do Kubernetes estão amplamente disponíveis.

O nome Kubernetes se origina do grego, significando timoneiro ou piloto. O Google abriu o código do projeto Kubernetes em 2014. O Kubernetes combina mais de 15 anos de experiência do Google executando cargas de trabalho de produção em escala, com as melhores ideias e práticas da comunidade.

Voltando no tempo

Vamos dar uma olhada em porque o Kubernetes é tão útil, voltando no tempo.

Era de implantação tradicional: no início, as organizações executavam aplicativos em servidores físicos. Não havia como definir limites de recursos para aplicativos em um servidor físico, e isso causava problemas de alocação de recursos. Por exemplo, se vários aplicativos fossem executados em um servidor físico, poderia haver instâncias em que um aplicativo ocuparia a maior parte dos recursos e, como resultado, o desempenho dos outros aplicativos seria inferior. Uma solução para isso seria executar cada aplicativo em um servidor físico diferente. Mas isso não escalonou, porque os recursos eram subutilizados e era caro para as organizações manter muitos servidores físicos.

Era da implantação virtualizada: como solução, a virtualização foi introduzida. Ela permite que você execute várias máquinas virtuais (VMs) em uma única CPU de servidor físico. A virtualização permite que os aplicativos sejam isolados entre as VMs e fornece um nível de segurança, pois as informações de um aplicativo não podem ser acessadas livremente por outro aplicativo.

A virtualização permite uma melhor utilização de recursos em um servidor físico e permite melhor escalabilidade, porque um aplicativo pode ser adicionado ou atualizado facilmente, além de reduzir os custos de hardware e muito mais. Com a virtualização, você pode apresentar um conjunto de recursos físicos como um cluster de máquinas virtuais descartáveis.

Cada VM é uma máquina completa que executa todos os componentes, incluindo o seu próprio sistema operacional, além do hardware virtualizado.

Era de implantação de contêiner: os contêineres são semelhantes às VMs, mas têm propriedades de isolamento relaxadas para compartilhar o sistema operacional (SO) entre os aplicativos. Portanto, os contêineres são considerados leves. Semelhante a uma VM, um contêiner tem o seu próprio sistema de arquivos, compartilhamento de CPU, memória, espaço de processo e muito mais. Como eles são desacoplados da infraestrutura subjacente, eles são portáveis ​​em nuvens e distribuições de sistema operacional.

Os contêineres se tornaram populares porque fornecem benefícios extras, como:

  • Criação e implantação de aplicativos ágeis: maior facilidade e eficiência na criação de imagens de contêiner em comparação com o uso de imagens de VM.
  • Desenvolvimento, integração e implantação contínuos: fornece criação e implantação de imagem de contêiner confiável e frequente com reversões rápidas e eficientes (devido à imutabilidade da imagem).
  • Separação de interesses de Dev e Ops: crie imagens de contêiner de aplicativo no momento de construção / liberação em vez de no momento de implantação, desacoplando assim os aplicativos da infraestrutura.
  • A capacidade de observação não apenas mostra informações e métricas no nível do sistema operacional, mas também a integridade do aplicativo e outros sinais.
  • Consistência ambiental no desenvolvimento, teste e produção: funciona da mesma forma em um laptop e na nuvem.
  • Portabilidade de distribuição de nuvem e sistema operacional: roda no Ubuntu, RHEL, CoreOS, no local, nas principais nuvens públicas e em qualquer outro lugar.Gerenciamento centrado em aplicativos: aumenta o nível de abstração da execução de um sistema operacional em hardware virtual para a execução de um aplicativo em um sistema operacional usando recursos lógicos.
  • Micro serviços fracamente acoplados, distribuídos, elásticos e liberados: os aplicativos são divididos em partes menores e independentes e podem ser implantados e gerenciados dinamicamente – não uma pilha monolítica em execução em uma grande máquina de propósito único.
  • Isolamento de recursos: desempenho previsível de aplicativos.
  • Utilização de recursos: alta eficiência e densidade.

Por que você precisa do Kubernetes e o que ele pode fazer?

Os contêineres são uma boa maneira de agrupar e executar os seus aplicativos. Em um ambiente de produção, você precisa gerenciar os contêineres que executam os aplicativos e garantir que não haja tempo de inatividade. Por exemplo, se um contêiner cair, outro contêiner precisa ser iniciado. Não seria mais fácil se esse comportamento fosse controlado por um sistema?

É assim que o Kubernetes vem ao resgate! O Kubernetes fornece uma estrutura para executar sistemas distribuídos de forma resiliente. Ele cuida do dimensionamento e do failover do seu aplicativo, fornece padrões de implementação e muito mais. Por exemplo, o Kubernetes pode gerenciar facilmente uma implantação canário para o seu sistema.

O Kubernetes oferece a você:

Descoberta de serviço e balanceamento de carga: O Kubernetes pode expor um contêiner usando o nome DNS ou seu próprio endereço IP. Se o tráfego para um contêiner for alto, o Kubernetes será capaz de balancear a carga e distribuir o tráfego de rede para que a implantação seja estável.

Orquestração de armazenamento: O Kubernetes permite montar automaticamente um sistema de armazenamento de sua escolha, como armazenamentos locais, provedores de nuvem pública e muito mais.

Implementações e reversões automatizadas: Você pode descrever o estado desejado para seus contêineres implantados usando o Kubernetes, e ele pode alterar o estado real para o estado desejado em uma taxa controlada. Por exemplo, você pode automatizar o Kubernetes para criar novos contêineres para a sua implantação, remover os contêineres existentes e adotar todos os seus recursos para o novo contêiner.

Empacotamento automático: Você fornece ao Kubernetes um cluster de nós que pode ser usado para executar tarefas em contêiner. Você informa ao Kubernetes de quanta CPU e memória (RAM) cada contêiner precisa. O Kubernetes pode encaixar contêineres em seus nós para fazer o melhor uso dos seus recursos.

O Kubernetes de autocorreção reinicia os contêineres que falham, substitui os contêineres, elimina os contêineres que não respondem à verificação de integridade definida pelo usuário e não os anuncia aos clientes até que estejam prontos.

Gerenciamento de segredo e configuração: O Kubernetes permite armazenar e gerenciar informações confidenciais, como senhas, tokens OAuth e chaves SSH. Você pode implantar e atualizar segredos e configuração de aplicativo sem reconstruir suas imagens de contêiner e sem expor segredos na sua configuração de pilha.

O que o Kubernetes não é

O Kubernetes não é um sistema PaaS (Platform as a Service – plataforma como serviço) tradicional e completo. Como o Kubernetes opera no nível do contêiner, e não no nível do hardware, ele fornece alguns recursos geralmente aplicáveis, ​​comuns às ofertas de PaaS, como implantação, escalonamento, balanceamento de carga e permite que os usuários integrem as suas soluções de registro, monitoramento e alerta. No entanto, o Kubernetes não é monolítico e essas soluções padrão são opcionais e conectáveis. O Kubernetes fornece os blocos de construção para a construção de plataformas de desenvolvedor, mas preserva a escolha e flexibilidade do usuário onde é importante.

Kubernetes:

Não limita os tipos de aplicativos suportados. O Kubernetes visa oferecer suporte a uma variedade extremamente diversa de cargas de trabalho, incluindo cargas de trabalho sem estado, com estado e de processamento de dados. Se um aplicativo puder ser executado em um contêiner, ele deve ser executado perfeitamente no Kubernetes.

Não implanta código-fonte e não constrói o seu aplicativo. Os fluxos de trabalho de integração contínua, entrega e implantação (CI / CD) são determinados pelas culturas e preferências da organização, bem como pelos requisitos técnicos.

Não fornece serviços de nível de aplicativo, como middleware (por exemplo, barramentos de mensagem), estruturas de processamento de dados (por exemplo, Spark), bancos de dados (por exemplo, MySQL), caches, nem sistemas de armazenamento em cluster (por exemplo, Ceph) como serviços integrados. Esses componentes podem ser executados no Kubernetes e/ou acessados ​​por aplicativos executados no Kubernetes por meio de mecanismos portáteis, como o Open Service Broker.

Não dita soluções de registro, monitoramento ou alerta. Ele fornece algumas integrações como prova de conceito e mecanismos para coletar e exportar métricas.

Não fornece nem exige um idioma/sistema de configuração (por exemplo, Jsonnet). Ele fornece uma API declarativa que pode ser direcionada por formas arbitrárias de especificações declarativas.

Não fornece nem adota sistemas abrangentes de configuração, manutenção, gerenciamento ou autocorreção de máquinas.

Além disso, o Kubernetes não é um mero sistema de orquestração. Na verdade, elimina a necessidade de orquestração. A definição técnica de orquestração é a execução de um fluxo de trabalho definido: primeiro faça A, depois B e depois C. Em contraste, o Kubernetes compreende um conjunto de processos de controle independentes e combináveis ​​que conduzem continuamente o estado atual em direção ao estado desejado fornecido. Não deve importar como você vai de A para C. O controle centralizado também não é necessário. Isso resulta em um sistema mais fácil de usar e mais poderoso, robusto, resiliente e extensível.

Referencia: https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/

Share this entry
  • Share on Facebook
  • Share on Twitter
  • Share on WhatsApp
  • Share on LinkedIn
  • Share on Tumblr
  • Share by Mail
https://www.gocache.com.br/wp-content/uploads/2021/03/KUBERNETES-O-QUE-E.png 628 1200 Go Cache https://www.gocache.com.br/wp-content/uploads/2021/11/gocache-nova-preta.png Go Cache2021-03-30 06:00:532022-05-25 10:57:02O que é Kubernetes e quais suas aplicações?

Baixe nosso Ebook

Procurar

Últimas publicações

  • Insufficient Logging & Monitoring – O que é? 23 de maio de 2022
  • Improper Assets Management – O que é? 23 de maio de 2022
  • Injection – O que é? 23 de maio de 2022
  • Security Misconfiguration – O que é? 23 de maio de 2022
  • Mass Assignment – O que é? 23 de maio de 2022

Produtos

  • Content Delivery Network
  • SSL
  • Web Application Firewall - WAF
  • Rate Limit
  • Lithio - Otimizador de Imagens
  • Role Based Access Control
  • Plugin para WordPress e Magento

Soluções por vertical

  • Portais de conteúdo e notícias
  • E-Commerce
  • Educação / Edtech
  • Plataformas de E-Commerce
  • Startup
  • Outros

Empresa

  • Central de Ajuda
  • Carreiras
  • Parceiros
  • Blog
  • Contato
  • Planos
  • Cases de Sucesso
  • Datasheet GoCache

Documentação

  • Termos de Uso e Politica de Privacidade
  • API Pública da GoCache
  • Documentação Painel

Acompanhe nosso Blog!

  • Insufficient Logging & Monitoring – O que é?
  • Improper Assets Management – O que é?
  • Injection – O que é?
  • Security Misconfiguration – O que é?
  • Mass Assignment – O que é?
  • Broken Function Level Authorization (BFLA) – O que é?
  • Lack of Resources & Rate Limiting – O que é?
  • Excessive Data Exposure – O que é?
O que é Terraform e quais suas aplicações O que é Docker e quais são suas aplicações
Scroll to top

Este site utiliza cookies para aprimorar sua navegação. Na GoCache o uso de cookies é feito apenas para reconhecer um visitante constante e melhorar a experiência no uso dos Serviços. Os cookies são pequenos arquivos de dados transferidos de um site da web para o disco do seu computador, e não armazenam dados pessoais. Se preferir, você pode apagar os cookies existentes em seu computador através do browser utilizado.

AceitarRecusarTermo de uso

Cookie and Privacy Settings



How we use cookies

We may request cookies to be set on your device. We use cookies to let us know when you visit our websites, how you interact with us, to enrich your user experience, and to customize your relationship with our website.

Click on the different category headings to find out more. You can also change some of your preferences. Note that blocking some types of cookies may impact your experience on our websites and the services we are able to offer.

Essential Website Cookies

These cookies are strictly necessary to provide you with services available through our website and to use some of its features.

Because these cookies are strictly necessary to deliver the website, refusing them will have impact how our site functions. You always can block or delete cookies by changing your browser settings and force blocking all cookies on this website. But this will always prompt you to accept/refuse cookies when revisiting our site.

We fully respect if you want to refuse cookies but to avoid asking you again and again kindly allow us to store a cookie for that. You are free to opt out any time or opt in for other cookies to get a better experience. If you refuse cookies we will remove all set cookies in our domain.

We provide you with a list of stored cookies on your computer in our domain so you can check what we stored. Due to security reasons we are not able to show or modify cookies from other domains. You can check these in your browser security settings.

Google Analytics Cookies

These cookies collect information that is used either in aggregate form to help us understand how our website is being used or how effective our marketing campaigns are, or to help us customize our website and application for you in order to enhance your experience.

If you do not want that we track your visit to our site you can disable tracking in your browser here:

Other external services

We also use different external services like Google Webfonts, Google Maps, and external Video providers. Since these providers may collect personal data like your IP address we allow you to block them here. Please be aware that this might heavily reduce the functionality and appearance of our site. Changes will take effect once you reload the page.

Google Webfont Settings:

Google Map Settings:

Google reCaptcha Settings:

Vimeo and Youtube video embeds:

Other cookies

The following cookies are also needed - You can choose if you want to allow them:

Privacy Policy

You can read about our cookies and privacy settings in detail on our Privacy Policy Page.

Termos de Uso e Política de Privacidade – GoCache CDN
Accept settingsHide notification only