Como criar e baixar funções na Ansible Galaxy e usá -las - Parte 9

- 3524
- 591
- Enrique Crist
Em Parte 9 De Ansible Series, você aprenderá a criar e baixar funções em Galáxia Ansible e use -os. Ansible é uma ferramenta de gerenciamento de configurações e de implantação automática simples, mas eficaz, que automatiza perfeitamente tarefas complexas de maneira eficiente. Você pode gerenciar centenas ou até milhares de servidores de um único nó de controle usando um único arquivo de manual.
No entanto, escrever manuais para gerenciar o mesmo serviço em ambientes diferentes pode ser bastante pesado e isso geralmente leva à redundância do código. Além disso, mais complexidade pode aumentar a dificuldade em gerenciar todos os dispositivos.
Em vem papéis. Em Ansible, As funções são usadas para quebrar os manuais em arquivos reutilizáveis que podem ser usados em várias outras instâncias em que a necessidade surge para executar uma tarefa semelhante. Isso eliminou a necessidade de reescrever manuais repetidamente e economiza muito tempo e energia.
Funções são simplesmente funcionalidades dos manuais. Um papel é enviado com praticamente o que constituiria um manual: tarefas, arquivos, módulos, variáveis e modelos. Além disso, observe que cada função é limitada a uma tarefa específica ou à saída desejada.
Criando um papel Ansible
Para criar um papel em Ansible, Basta usar a sintaxe.
# Ansible-galaxy init role_name
Vários diretórios e arquivos serão criados em seu diretório de trabalho atual. Nesse caso, decidi criar um papel no /etc/Ansible/Funções diretório.
Vamos criar um papel chamado apache.
# Ansible-Galaxy Init Apache

Use o comando da árvore para dar uma olhada na estrutura do diretório do papel.
# Tree Apache

Como você pode ver, vários diretórios foram criados, no entanto, nem todos serão usados no manual.
Agora, para usar seu papel recém -criado em um manual, defina uma tarefa no principal.yml arquivo contido no diretório de tarefas de sua nova função.
/apache/tarefas/main.YML --- - Hosts: Database_servers Tarefas: - Nome: Instale o Apache2 no Ubuntu WebServer Apt: Nome: Apache2 Estado: Instalado
Posteriormente, crie um arquivo de playbook e chame a função como mostrado.
--- - Hosts: WebServers Papunos: - Apache
Instalando uma função da Ansible Galaxy
Papéis desempenhar um papel crucial no compartilhamento de código com outros usuários no Ansible comunidade usando o Galáxia Ansible plataforma. Em Galáxia Ansible, Você recebe milhares de funções executando tarefas diferentes, como a instalação de servidores e bancos de dados da web, ferramentas de monitoramento, etc.
Galáxia Ansible é um banco de dados ou um repositório de papéis ansiosos que você pode aproveitar em seus manuais e ajudar a simplificar suas tarefas.
Para pesquisar uma função em Galáxia Ansible, Simplesmente execute o comando.
# Pesquisa Ansible-Galaxy
Por exemplo, para procurar uma função nomeada mysql correr.
# Ansible-galaxy Search mysql

Como você pode ver, existem centenas de papéis que correspondem à palavra -chave de pesquisa mysql. No entanto, nem todas as funções desempenharão o que você pretende, então é recomendável que você leia as instruções cuidadosamente.
Para reunir mais informações sobre uma função, basta executar o comando Ansible:
# Ansible-galaxy info 5kydev0p5.SkyDevops-mysql

Em nosso exemplo, vamos instalar a função 5kydev0p5.SkyDevops-mysql.
# Ansible-galaxy Instale 5kydev0p5.SkyDevops-mysql

A função é baixada e extraída para o diretório de funções padrão localizado em /etc/Ansible/Funções.
A função pode ser chamada em um manual, por exemplo:
--- - Nome: Instale o MySQL Server Hosts: WebServers Funções: • 5kydev0p5.SkyDevops-mysql
Agora você pode executar com segurança o manual Ansible, como mostrado.
# Ansible-playbook install_mysql.yml

Além disso, você pode visitar o Ansible Galaxy através do seu navegador da Web e pesquisar manualmente as funções para executar várias tarefas, conforme descrito pelo painel.

Por exemplo, para procurar uma função de monitoramento, como Elasticsearch, Clique no 'Monitoramento'opção e procure a função como mostrado.

Galáxia Ansible Torna mais fácil para os usuários instalar as melhores funções, listando as funções mais populares e mais baixadas. Para obter mais informações sobre uma função específica, basta clicar nele.

Em um manual, você também pode especificar mais de uma função, por exemplo.
--- - Nome: Instale o MySQL Server Hosts: WebServers Funções: • 5kydev0p5.SkyDevops-Mysql • Aaronpederson.Mariadb
Para listar as funções instaladas, basta executar.
# Lista Ansible-Galaxy

Conclusão
Papéis Torne muito fácil reutilizar e compartilhar manuais de Ansible. Dessa forma, eles economizam um usuário muito tempo tentando escrever muito código redundante e gastar muito tempo que teria sido usado em outras tarefas de administração do sistema. E é isso para este guia.
- « Como encontrar todos os clientes conectados a portas HTTP ou HTTPS
- Como trabalhar com variáveis e fatos Ansible - Parte 8 »