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

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

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 
Crie papel Apache em Ansible

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

# Tree Apache 
Verifique a estrutura do diretório do papel Ansible

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 
Função de pesquisa em Ansible

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 
Verifique as informações da função Ansible

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

# Ansible-galaxy Instale 5kydev0p5.SkyDevops-mysql 
Instale a função em Ansible

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 
Corra Ansible Playbook

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.

Galáxia Ansible

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

Função de monitoramento de pesquisa na Ansible Galaxy

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.

Verifique as informações da função na Ansible Galaxy

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 
Lista de funções instaladas na 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.