Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Provisionando um cluster Kubernetes com Ansible

Provisionando um cluster Kubernetes com Ansible

Conceitos básicos do Ansible e provisionamento de um cluster Kubernetes com Ansible.

#opensanca

Avatar for Willian César

Willian César

April 28, 2020
Tweet

Other Decks in Technology

Transcript

  1. $ whoami • Willian César (Will) • SRE (Arquivei) •

    <3 - Open Source, Comunidade, Containers, Cultura DevOps, Cerveja • Twitter: @will_ccs
  2. Por falar em comunidade... Faça parte do Opensanca ele é

    livre e sempre será, traga seus amigos, independente da carreira que segue, aqui oferecemos workshops, palestras, churrasco, e tudo aquilo que acharmos que é bacana para você! Entre, agora! https://opensanca.com.br/ Facebook : ~ 1.1k membros @opensanca Slack: ~1.5K usuários opensanca.slack.com Instagram: segui nois @opensanca
  3. Em poucas palavras, o gerenciamento de configuração de servidor é

    uma solução para transformar a sua administração de infraestrutura em uma base de código, que podem ser facilmente reutilizados. Assim, a infraestrutura passou a ser gerenciada com as mesmas ferramentas e processos que os desenvolvedores de software usam, como controle de versão, integração contínua, revisão de código e etc. - conhecido como IaC (Infraestrutura como Código). Existem diversas ferramentas disponíveis (Ansible, Puppet, Saltstack, Chef, CFEngine) que permitem a automação de infraestrutura, automação cloud, gerenciamento de conformidade e segurança, fluxo automático para integração e deploy contínuo (CI/CD). Gerenciamento de Configurações
  4. Por que o Ansible? • Arquitetura Master to Nodes; •

    Linguagem de Configuração Simples; • Não necessita de agents (necessita apenas de confiança SSH e Python); • Simples de realizar instalação/manutenção; • Curva de aprendizado curta. • Possui um grande número de módulos internos que podem ser usados para abstrair tarefas, como instalar pacotes e trabalhar com templates. O Ansible é uma ferramenta de automação muito poderosa, criada para gerenciar múltiplas máquinas de uma única vez através de playbooks escritas no formato YAML e com sua abstração permite flexibilidade em um ambiente moderno de multi-cloud.
  5. Conceitos básicos do Ansible • Control Node: a máquina em

    que o Ansible está instalado, responsável pela execução das tarefas nos servidores que você está gerenciando. • Inventory: um arquivo que contém informações sobre os servidores que você está gerenciando. • Playbook: um arquivo YAML contendo uma série de procedimentos que devem ser automatizados. • Task: um bloco que define um único procedimento a ser executado, por exemplo: instalar um pacote. • Module: um módulo normalmente abstrai uma tarefa do sistema, como lidar com pacotes ou criar e alterar arquivos. O Ansible possui diversos módulos integrados, mas você também pode criar módulos personalizados. • Role: um conjunto de playbooks, modelos e outros arquivos relacionados, organizados de maneira pré-definida para facilitar a reutilização e o compartilhamento. • Facts: variáveis globais que contêm informações sobre o sistema, como interfaces de rede ou sistema operacional. • Handlers: usado para acionar alterações no status do serviço, como reiniciar ou recarregar um serviço.
  6. Construindo cluster k8s com Ansible • O que é Kubernetes?

    Kubernetes (comumente estilizado como K8s) é um sistema de orquestração de contêineres open-source que automatiza a implantação, o dimensionamento e a gestão de aplicações em contêineres. Ele foi originalmente projetado pelo Google e agora é mantido pela Cloud Native Computing Foundation. Ele funciona com uma variedade de ferramentas de conteinerização, incluindo Docker.