do Gmail ao YouTube para pesquisar, tudo no Google é executado em containers. A contenção permite que nossas equipes de desenvolvimento se movam rapidamente, implementem software de forma eficiente e operem em uma escala sem precedentes. Todas as semanas, começamos com vários bilhões de contêineres., Aprendemos muito sobre a execução de contêineres, cargas de trabalho de produção durante a década passada, e temos compartilhado este conhecimento com a comunidade ao longo do caminho: desde os primeiros dias de contribuir cgroups para o kernel Linux, fazer desenhos a partir de nossas ferramentas internas e abrir sourcing-los como o Kubernetes projeto. Nós empacotamos essa experiência na plataforma Google Cloud para que desenvolvedores e empresas de qualquer tamanho possam facilmente aproveitar a mais recente inovação de contêineres.
oferecem um mecanismo lógico de embalagem em que as aplicações podem ser abstraídas do ambiente em que realmente funcionam. Esta dissociação permite que aplicativos baseados em contêineres sejam implantados de forma fácil e consistente, independentemente de o ambiente alvo ser um centro de dados privado, a nuvem pública, ou até mesmo o laptop pessoal de um desenvolvedor., Containerization fornece uma separação de preocupações, como os desenvolvedores a se concentrarem na sua lógica de aplicação e dependências, enquanto as equipes de operações pode foco em implantação e gerenciamento, sem se preocupar com detalhes de aplicação, tais como software específico de versões e configurações específicas para o aplicativo.
para aqueles que vêm de ambientes virtualizados, os recipientes são frequentemente comparados com máquinas virtuais (VMs)., Você já deve estar familiarizado com VMs: um sistema operacional convidado, como Linux ou Windows, é executado em cima de um sistema operacional host com acesso virtualizado ao hardware subjacente. Como máquinas virtuais, containers permitem que você empacote sua aplicação junto com bibliotecas e outras dependências, fornecendo ambientes isolados para executar seus serviços de software. Como você verá abaixo, no entanto, as semelhanças terminam aqui como containers oferecem uma unidade muito mais leve para desenvolvedores e equipes de operações de TI para trabalhar, carregando uma miríade de benefícios.,
em vez de virtualizar a pilha de hardware como com a abordagem de máquinas virtuais, os contêineres virtualizam ao nível do sistema operacional, com vários contêineres correndo no topo do núcleo do sistema operacional diretamente. Isto significa que os recipientes são muito mais leves: eles compartilham o kernel do so, começam muito mais rápido, e usam uma fração da memória em comparação com o booting de um SO inteiro.
existem muitos formatos de contêineres disponíveis. Docker é um popular formato de contêineres de código aberto que é suportado na plataforma Google Cloud e pelo motor Google Kubernetes.
Containers silo applications from each other unless you explicitly connect them. Isso significa que você não tem que se preocupar com dependências conflitantes ou contenção de recursos — Você define limites explícitos de recursos para cada serviço. Importante, é uma camada adicional de segurança, uma vez que suas aplicações não estão funcionando diretamente no sistema operacional host.
Recipientes para dar aos desenvolvedores a capacidade de criar previsível ambientes que são isolados de outros aplicativos., Containers can also include software dependencies neededed by the application, such as specific versions of programming language runtimes and other software libraries. Do ponto de vista do desenvolvedor, tudo isso é garantido para ser consistente, não importa onde a aplicação é finalmente implantada. Tudo isso se traduz em produtividade: desenvolvedores e equipes de operações de TI gastam menos tempo depurando e diagnosticando diferenças em ambientes, e mais tempo enviando novas funcionalidades para os usuários., E isso significa menos bugs já que os desenvolvedores podem agora fazer suposições em ambientes dev e test que eles podem ter certeza de que serão verdadeiros na produção.
os Recipientes são capazes de executar praticamente qualquer lugar, facilitando bastante o desenvolvimento e implantação: no Linux, Windows e Mac sistemas operacionais em máquinas virtuais ou bare-metal; por um programador da máquina ou em centros de dados local; e, claro, na nuvem pública. A popularidade generalizada do formato de imagem Docker para containers ajuda ainda mais com a portabilidade., Onde você quiser executar seu software, você pode usar containers.
Containers virtualizam CPU, memória, armazenamento e recursos de rede no nível OS, proporcionando aos desenvolvedores uma visão sandbox do sistema operacional isolado logicamente de outras aplicações.,onment
Contentores permitir que você para empacotar o aplicativo e suas dependências juntos em um sucinto manifesto que pode ser versão controlada, permite a replicação de sua aplicação entre os desenvolvedores em sua equipe e máquinas no cluster.,
assim como as bibliotecas de software empacotam bits de código em conjunto, permitindo aos desenvolvedores abstrair a lógica como autenticação de usuário e gerenciamento de sessão, containers permitem que sua aplicação como um todo seja empacotada, abstraindo o sistema operacional, a máquina e até mesmo o próprio código. Combinada com uma arquitetura baseada em serviços, toda a unidade sobre a qual os desenvolvedores são convidados a raciocinar torna-se muito menor, levando a uma maior agilidade e produtividade. Tudo isso facilita o desenvolvimento, teste, implantação e gestão geral de suas aplicações.,
Os contentores funcionam melhor para as arquitecturas baseadas no serviço. Ao contrário das arquiteturas monolíticas, onde todas as peças da aplicação estão entrelaçadas — de IO para processamento de dados para a prestação de serviços baseados em arquiteturas separadas estas em componentes separados. A separação e divisão do trabalho permite que seus serviços continuem funcionando, mesmo que outros estejam falhando, mantendo sua aplicação como um todo mais confiável., a componentização de
também permite que você desenvolva mais rápido e de forma mais confiável; as codebases menores são mais fáceis de manter e como os Serviços são separados, é fácil testar entradas específicas para as saídas. os recipientes
são perfeitos para aplicações baseadas em serviços, uma vez que você pode verificar cada recipiente, limitar cada serviço a recursos específicos e iniciá-los e pará-los independentemente um do outro.
e uma vez que os contentores abstêm o código, os contentores permitem-lhe tratar serviços separados como caixas negras, diminuindo ainda mais o espaço com que um programador precisa de se preocupar., Quando os desenvolvedores trabalham em serviços que dependem de outro, eles podem facilmente iniciar um recipiente para esse serviço específico sem ter que perder tempo configurando o ambiente correto e Solução de problemas de antemão.
Descubra as três principais formas de executar os seus contentores no Google Cloud!
motor Google Kubernetes para uma solução de orquestração de contêineres, execução em nuvem para uma abordagem totalmente sem Server e computar motor para simplesmente usar máquinas virtuais.,
Kubernetes: orquestração de contêineres de grau de produção
tivemos tanto sucesso com o nosso sistema interno de gestão de clusters Borg que pegamos no que aprendemos e o colocamos no projeto de código aberto Kubernetes. Agora você e outras empresas podem se beneficiar de nossas décadas de experiência., Também conhecido como” k8s”, Kubernetes fornece orquestração automática de contêineres — gerenciamento de suas máquinas e serviços para você — melhorando sua confiabilidade e reduzindo o tempo e recursos que você precisa gastar em DevOps, sem mencionar o alívio do estresse associado a essas tarefas. Kubernetes torna tudo associado com a implantação e gestão de sua aplicação mais fácil. Kubernetes automatiza rollouts e rollbacks, monitorando a saúde de seus serviços para evitar rollouts ruins antes que as coisas corram mal., Ele também continuamente executa verificações de saúde contra os seus serviços, reiniciando contêineres que falham ou tenham parado, e apenas Serviços de publicidade para os clientes quando confirmou que eles começaram com sucesso. Além disso, o Kubernetes irá escalar automaticamente seus serviços para cima ou para baixo com base na utilização, garantindo que você só está executando o que você precisa, quando você precisar. Tal como os contentores, o Kubernetes permite-lhe gerir declarativamente o seu conjunto, permitindo que a sua configuração seja controlada e facilmente replicada.,
- verifique Automatizado lançamentos e retrocessos
- Serviço de verificação de acompanhamento de saúde
- verifique o dimensionamento Automático de serviços
- verifique Declarativa de gestão
- verifique Implantar em qualquer lugar, incluindo implantações híbridas
Talvez o mais importante, Kubernetes é construído para ser usado em qualquer lugar, permitindo-lhe articular entre no site implantações de nuvens públicas para implantações híbridas entre., Isto permite que a sua infra-estrutura chegue aos seus utilizadores Onde Estão, que as suas aplicações tenham uma maior disponibilidade e que a sua empresa equilibre as suas preocupações de segurança e de custos, todas adaptadas às suas necessidades específicas.
claro, Kubernetes funciona melhor na plataforma Google Cloud. O motor do Google Kubernetes é a principal solução gerenciada do Kubernetes que o torna rapidamente configurado e pronto para a produção., o motor Kubernetes é totalmente gerido pelos engenheiros da Google reliability, os que conhecem melhor os contentores, garantindo que o seu cluster está altamente disponível e actualizado. Integra-se perfeitamente com todos os Serviços GCP, tais como monitoramento de Stackdriver, diagnósticos e logging; gerenciamento de identidade e acesso; e a infraestrutura De Rede de Melhor classe da Google.
- verificar os Kubernetes de código aberto geridos
- verificar 99.,5% de SLA, e alta disponibilidade integrada multi-zona de implantações
- verifique a Perfeita integração de outros BPC serviços
- verifique o preço da Indústria por desempenho
- verifique Flexível & interoperável com o seu local de clusters ou a outros fornecedores de serviços de nuvem
- verifique o Google grau-gerenciado-infra-estrutura
Mas a gente gosta de dar a você as opções. A plataforma Google Cloud oferece-lhe um espectro completo para executar os seus contentores., Desde o ambiente totalmente gerenciado com o Google Cloud Run até o gerenciamento de clusters com o motor Kubernetes até a infraestrutura rolar-it-yourself no Google Compute Engine de classe mundial, você pode encontrar a sua solução ideal para executar containers na plataforma Google Cloud.
It doesn’t stop there. A plataforma Google Cloud fornece as ferramentas que você precisa para usar contêineres desde o desenvolvimento até a produção., O Cloud Build e o Container Registry fornecem armazenamento e gestão de imagens do Docker, apoiados pelos elevados padrões de segurança do Google e pela rede de classe mundial. O sistema operacional otimizado de contêineres do Google fornece um sistema operacional leve e altamente seguro que vem com a execução do Docker e Kubernetes pré-instalados. Todo o seu gerenciamento de contêineres pode ter lugar no GCP.