Ir para seção

Ansible e Salt

Copiar URL

Red Hat Ansible Automation Platform: Guia Prático

A automação ajuda empresas a operar com mais eficiência e rapidez desde os tempos da Revolução Industrial. Dê início ou prosseguimento à jornada de automação com este guia prático da Red Hat.

Ansible e Salt são ferramentas de automação de TI open source criadas pela comunidade. Ambos simplificam as operações de TI e o trabalho do DevOps, automatizando tarefas rotineiras como a configuração e o provisionamento de sistemas, implantações de software e gerenciamento de atualizações em inúmeros servidores ou dispositivos de endpoint.

O Ansible é conhecido pela facilidade de uso, graças à sua abordagem mais flexível e sem agente. A solução não exige a instalação de software extras nos destinos que serão automatizados. Em contrapartida, o Salt usa uma abordagem baseada em agente. Isso significa que é necessário instalar software em cada uma das máquinas. Para abordagens de automação, tanto o Ansible quanto o Salt são baseados em Python. O Ansible utiliza arquivos de configuração YAML e automação processual que definem os passos a serem executados e em qual ordem. Já o Salt usa um pequeno subconjunto de YAML para mapear as estruturas utilizadas com mais frequência, como listas e dicionários. 

Neste artigo, você descobrirá as semelhanças e diferenças entre as duas.

Onde o Ansible e o Salt se encaixam no cenário geral das ferramentas de automação de TI? Ansible, Salt, Puppet, e Chef são quatro das ferramentas de automação open source de TI mais usadas. Elas têm abordagens de automação distintas, mas todas são oferecidas como soluções empresariais, comercializadas por diferentes empresas de software. Muitas organizações de TI usam mais de uma solução (às vezes combinadas) para diferentes finalidades.

  • O Ansible foi adquirido pela Red Hat em 2015 e atualmente é disponibilizado como Red Hat® Ansible® Automation Platform.
  • O Salt (conhecido no mercado como SaltStack) foi adquirido pela VMWare em 2020 como parte do portfólio do vRealize Automation, rebatizado recentemente como VMware Aria Automation. A VMware foi adquirida pela Broadcom em 2022. 
  • O Puppet tem suporte da Perforce e é disponibilizado em diversas soluções comerciais, incluindo o Puppet Enterprise e o Puppet Bolt.
  • O Chef foi adquirido pela Progress em 2020. Atualmente, ele está disponível em diversas soluções comerciais, como o Chef Enterprise Automation Stack. 

Ansible

O Ansible é uma aplicação de software open source para a automação de TI. Ele é baseado em linha de comando e desenvolvido em Python. Com o Ansible, você configura sistemas, implanta software e orquestra fluxos de trabalho avançados para viabilizar tarefas como implantação de aplicações, atualizações de sistema, configuração e operação de rede e muito mais. O Red Hat Ansible Automation Platform é uma solução baseada no Ansible disponível por subscrição que traz inúmeras funcionalidades empresariais.

Os méritos do Ansible vêm da comunidade. Seu repositório principal no GitHub conta com milhares de colaboradores, sendo que dezenas de milhares de outros repositórios também dependem dele, segundo dados do último trimestre de 2022. Há uma famosa conferência de usuários da solução, a AnsibleFest, que acontece todo ano, além dos encontros Ansible Meetups realizados com frequência ao redor do mundo. A comunidade de usuários é um grande agregador de conhecimento sobre o Ansible, e seus colaboradores mantêm a ferramenta fortemente integrada a outros projetos de software conhecidos. Os usuários do Ansible têm acesso a centenas de módulos e plugins que ajudam a ampliar os recursos da ferramenta.

O Ansible foi criado para ser simples e fácil de usar. Ele também prioriza a segurança e a confiabilidade, com o mínimo de componentes variáveis. O Ansible usa o OpenSSH para transporte (com outros modos de transporte e de pull como alternativas) e uma linguagem legível para pessoas que permite iniciar os trabalhos de forma rápida e sem muito treinamento.

O Ansible utiliza os conceitos de nó de controle (o local onde é executado) e nós gerenciados (os dispositivos automatizados, geralmente uma máquina Linux® ou Windows). Por ser sem agente, ele pode se comunicar com dispositivos sem a necessidade de instalação de aplicações ou serviços no nó gerenciado. O Ansible Automation Platform consegue estender os trabalhos de automação até os nós de execução, utilizando a tecnologia de automation mesh.  

Os usuários podem orquestrar detalhadamente as diferentes partes da infraestrutura por meio de arquivos chamados Ansible Playbooks, escritos em YAML (uma linguagem que pode ser compreendida pelas pessoas). O Ansible utiliza a abordagem de programação procedural (também conhecida como imperativa), que tenta preservar a configuração de uma infraestrutura de TI ao definir as etapas para alcançar um estado desejado.

Salt

O Salt é uma aplicação de automação de TI open source modular escrita em Python. Criado para a execução e a coleta de dados em alta velocidade, ele é uma solução de gerenciamento da configuração com biblioteca de sistema de mensageria ZeroMQ lightweight e framework de concorrência. Essas características estabelecem conexões persistentes entre o servidor e os agentes, via Protocolo TCP. 

Assim como o Ansible, o Salt utiliza o YAML. Isso facilita o aprendizado e o gerenciamento. No entanto, sua arquitetura baseada em agente pode representar uma curva de aprendizado mais acentuada para novos usuários e ser desafiadora para profissionais experientes em DevOps. Nesse contexto, o servidor recebe o nome de "salt master" e os clientes de "salt minions", executados como agentes na máquina do cliente. É possível configurar vários "masters". Se um deles estiver inativo, os agentes fazem conexão com outro "master" na lista. Como os servidores enviam configurações para todos os clientes, a execução remota acontece imediatamente. 

Segundo o GitHub insights do último trimestre de 2022, Desde a aquisição do SaltStack pela VMware, a comunidade de código aberto do Salt diminuiu em tamanho, com menos projetos dependentes dele em comparação ao Ansible. Após a aquisição da VMware pela Broadcom em 2022, o foco passou a ser mais na automação dos produtos da VMware e menos em rede e casos de uso multifornecedores e polivalentes. Isso levou a um aumento do déficit de habilidades em TI e incertezas em relação ao suporte empresarial para a comunidade Salt.     

Arquitetura baseada em agente: descreve um modelo de automação e infraestrutura que exige a execução de componentes de software específicos (chamados de agentes) nos ambientes gerenciados. Você precisa instalar o agente e todas as suas dependências em cada nó de destino, o que demanda mais regras e verificações de segurança. Essas exigências podem se tornar um problema na hora de automatizar objetos em que o agente esteja indisponível ou não possa ser executado. Além disso, os agentes precisam de manutenção.

Arquitetura sem agente: usada pelo Ansible, descreve uma maneira de automatizar e gerenciar dispositivos de TI sem precisar instalar agentes nos ambientes gerenciados. O software de controle se conecta às máquinas remotas via Secure Shell (SSH) e inicia o gerenciamento delas sem um processo de configuração demorado. Com essa arquitetura, você não precisa manter um sistema de implantação depois de realizar a configuração.

Gerenciamento da configuração: é o processo para manter sistemas computacionais, servidores e programas de software no estado desejado de forma consistente. Assim, você tem certeza de que o sistema funciona como o esperado, ainda que alterações sejam feitas com o passar do tempo. É possível automatizar o gerenciamento da configuração, o que reduz os custos, a complexidade e o risco de falha humana.  

DevOps e DevSecOps: esses termos significam desenvolvimento e operações e desenvolvimento, segurança e operações, respectivamente. Estas abordagens de cultura, automação e design da plataforma integram a segurança como uma responsabilidade compartilhada em todo o ciclo de vida da TI. Na prática, DevOps e DevSecOps são a mesma coisa, pois sempre foi a intenção incluir a segurança na abordagem de DevOps. É comum usar o termo DevSecOps para explicitar essa intenção.

YAML: é a sigla para Yet Another Markup Language (mais uma linguagem de marcação) ou YAML Ain’t Markup Language (YAML não é uma linguagem de marcação). Esta é uma linguagem de serialização de dados usada com frequência para escrever arquivos de configuração. A linguagem YAML foi concebida para que as pessoas pudessem entendê-la com facilidade. Ela pode ser usada junto com outras linguagens de programação. A YAML é um superconjunto do formato JavaScript Object Notation (JSON).

Para escolher uma solução de automação, você precisa avaliar não só as funcionalidades disponíveis no momento, mas também o panorama da plataforma em longo prazo. O Ansible se destaca por sua comunidade open source ativa e pelo suporte da Red Hat.

Também é comum que as empresas utilizem diversas soluções de automação. O Ansible é compatível com um amplo ecossistema de integrações e pode ser utilizado com outras ferramentas de gerenciamento de configuração e automação, como um orquestrador de recursos de automação. Além disso, o Ansible pode automatizar sistemas em hyperscalers de nuvem pública, como a Amazon Web Services (AWS), o Microsoft Azure, o Google Cloud Platform e muitos outros.

Em comparação com o Salt, o Ansible é uma melhor escolha para usuários que buscam uma solução de automação sem agentes simples e fácil de usar. O Ansible também conta com uma grande comunidade de colaboradores e parceiros, além de ser amplamente adotado em diferentes áreas da TI (como automação de rede e infraestrutura) e bastante reconhecido por sua capacidade de integração com outras ferramentas.

Com o open source como base, o Red Hat Ansible Automation Platform é uma solução empresarial por subscrição testada, com segurança reforçada e suporte por todo seu ciclo de vida. Sua base é o projeto upstream Ansible, que se beneficia da experiência e inteligência dos seus milhares de colaboradores no mundo todo. 

O Ansible Automation Platform inclui vários componentes upstream, mais de 140 Red Hat Ansible Certified Content Collections de mais de 60 parceiros, e ferramentas de retorno sobre o investimento (ROI) como serviço que orientam a instalação, a configuração e uso da automação na sua empresa. A solução cria uma experiência de automação de ponta a ponta voltada a equipes multifuncionais, ao mesmo tempo que oferece às equipes de desenvolvimento, engenharia e operações de automação uma experiência de integração pronta para uso.

Funcionalidades do Red Hat Ansible Automation Platform, como Red Hat Insights e automation analytics, oferecem informações acessíveis sobre o desempenho da sua automação. Assim você obtém mais precisão na hora de mensurar, monitorar e solucionar problemas. Com a automation mesh, você pode escalar o controle e a capacidade de execução de maneira independente, disponibilizando a automação mais próxima aos endpoints, com pouco ou nenhum downtime. Assim, você tem uma experiência de automação consistente em diversos ambientes, incluindo data center, nuvem e locais de edge.

Como uma solução de automação de TI sem agente e fácil de usar, o Ansible se destaca pela simplicidade, flexibilidade e sua sólida comunidade de usuários.

IDC: valor de negócio do Red Hat Ansible Automation

Segundo a pesquisa do IDC, empresas que padronizam as operações com o Ansible Automation Platform experimentam uma melhoria significativa na eficiência operacional, velocidade e escalabilidade da TI, obtendo benefícios com um valor médio anual de US$ 14,81 milhões e alcançando um retorno sobre o investimento (ROI) de 668% em três anos

Leia o relatório completo

Leia mais

Artigo

Noções básicas do Ansible

O Ansible automatiza processos de TI como provisionamento e gerenciamento de configuração. Conheça as noções básicas do Ansible com esta introdução aos principais conceitos.

Artigo

O que é gerenciamento de processos de negócios?

Gerenciamento de processos de negócios (BPM) é a prática de modelar, analisar e otimizar processos de ponta a ponta para alcançar os objetivos estratégicos.

Artigo

Por que escolher a Red Hat para a automação?

O Red Hat Ansible Automation Platform oferece todas as ferramentas necessárias para compartilhar a automação entre as equipes e implementá-la por toda a empresa.

Leia mais sobre automação

Soluções Red Hat

Os consultores estratégicos da Red Hat fornecem uma visão geral da sua organização, analisam os desafios e ajudam a superá-los com soluções abrangentes e econômicas.

Uma plataforma com suporte completo para implementar a automação em escala, de ponta a ponta.

Conteúdo adicional

Red Hat Ansible Automation Platform: Guia Prático

A automação ajuda empresas a operar com mais eficiência e rapidez desde os tempos da Revolução Industrial. Dê início ou prosseguimento à jornada de automação com este guia prático da Red Hat.

Ebook

A empresa automatizada: unifique pessoas e processos

VÍDEO - THE SOURCE TV

Automação

A automação é fundamental para acelerar a entrega de serviços e minimizar o risco de erro humano

Casos de sucesso de cliente

Nossos clientes transformam o mundo com as tecnologias open source. Conheça suas histórias. 

Treinamentos Red Hat

Treinamento gratuito

Ansible Essentials: Simplicity in Automation Technical Overview

Treinamento gratuito

Red Hat Ansible Automation for SAP

Hub de aprendizagem

Material especializado e ferramentas para ajudar você a usar o Red Hat Ansible Automation Platform.

Labs

Aprenda a usar o Red Hat Ansible Automation Platform na prática com esses laboratórios individualizados.

TREINAMENTO

Red Hat Enterprise Linux Automation with Ansible | RH294