As peças, papéis e tarefas são a estrutura Ansible e essa estrutura Ansible contém o atributo importante que é chamado de tags em Ansible. Sempre que lançamos um manual em Ansible, você pode empregar os comandos -Tags e -Skip Tags para que possamos executar apenas uma série de tarefas, peças e papéis específicos. Se tivermos um manual que contém tantas tarefas, mas não queremos executar todas as tarefas do manual, em vez de executar todo o manual, apenas executaremos algumas tarefas usando o comando de tag no Ansible Playbook.
Vamos discutir tags neste tópico, que servem como uma das facetas mais importantes do Ansible. Tentaremos explicar o que são tags e como as tags operam em Ansible, porque esse é um recurso desconcertante da plataforma Ansible.
Por exemplo, um manual pode conter três responsabilidades: instalando o módulo, configurando -o e verificando o status do módulo implantado, como se o serviço está em execução e acessível. Como simplesmente precisamos ver o estado dos módulos em algumas máquinas remotas, utilizamos tags Ansible nessa situação, em vez de executar todas as tarefas no manual. Ele nos permite executar uma determinada operação exclusivamente, permitindo reduzir o tempo de execução, mantendo todas as atividades relacionadas em um único manual.
Pré -requisitos de utilizar as tags no Ansible Playbook
Para colocar os exemplos práticos no software Ansible, devemos atender aos seguintes requisitos.
Um servidor de controlador Ansible deve ser necessário para que faça alterações. Para utilizar o parâmetro de tags no software Ansible, precisamos que os hosts locais se comuniquem com eles. Nesse caso, estamos usando o host local durante toda a execução como servidor remoto de destino. Criaremos playbooks, executaremos comandos de tag Ansible e monitoraremos os resultados em hosts remotos do dispositivo Ansible Controller.
Nosso objetivo é empregar diferentes cenários para examinar algumas das tags Ansible, para que o aluno possa entender facilmente o conceito de tags em um manual Ansible.
Exemplo 01: Acessando uma única tarefa no manual Ansible
Vamos implementar em Ansible fornecendo várias tarefas no manual e depois acessaremos apenas uma única tarefa, utilizando as tags nele. Para fazer isso, criaremos primeiro o manual escrevendo o seguinte comando:
[root@master Ansible]# Nano Ansible_tags.ymlDepois de criar e lançar os Ansible_tags.Playbook YML. Agora vamos começar a escrever os comandos no manual. Primeiro, passaremos os anfitriões fornecidos no parâmetro “hosts 'que usaremos“ localhost ”. Em seguida, escreveremos o valor "falso" no parâmetro "Gather_facts" para que não possamos obter informações extras sobre o host local quando executamos o manual.
Depois disso, começaremos a listar as atividades no parâmetro "tarefas" um por um que queremos executar. Determinaremos se o documento está lá na máquina de localhost no primeiro processo. Se estiver disponível, o armazenamos no parâmetro "registrar" e, em seguida, daremos o nome exclusivo à tag para que, quando executarmos o manual, seja fácil para acessar a tag. Na segunda tarefa, faremos o mesmo que fizemos na primeira tarefa, mas a tag deve ser única e depois usaremos a opção de depuração para mostrar a tarefa junto com a mensagem relacionada.
- anfitriões:Agora, vamos salvar o manual e depois fechá -lo. Queremos executar os Ansible_tags.Playbook YML, então escreveremos o seguinte comando no terminal Ansible para mostrar a saída para os usuários.
[root@master Ansible]# Ansible-playbook Ansible_tags.yml -tags check_fileDepois de executar o comando acima, obteremos a saída desejada em troca. Como mostrado abaixo, apenas uma tarefa é executada e que é exibida na saída que é "Verifique a existência do arquivo".
Exemplo 02: Ignore a tag específica em Ansible Playbook
Aqui está o segundo exemplo da tag Ansible, onde estamos indo para a tag "Skip". Cabe a você se você deseja ignorar todas as tarefas ou deseja ignorar uma tarefa específica do manual em Ansible. Estamos utilizando a implementação do Exemplo 1 e depois ignoraremos a tarefa simplesmente escrevendo a declaração abaixo no terminal Ansible.
[root@master Ansible]# Ansible-playbook Ansible_tags.YML-SKIP-TAGS CHECK_FILEA partir do comando acima, simplesmente ignoramos a tarefa de "Existência do arquivo de verificação". Agora, apenas uma única tarefa é exibida na saída que é "acessível ao arquivo" na fonte verde.
Exemplo 03: sempre continue executando a tarefa no manual Ansible
Vamos implementar o terceiro exemplo baseado na tag Ansible. Neste exemplo, usaremos a tag "sempre", o que significa que uma tag específica sempre será executada no manual Ansible. Para lançar o manual, use o seguinte comando:
[root@master Ansible]# Nano Ansible_tags.ymlNo manual, criamos várias tarefas a serem executadas, mas passamos a tag "sempre" na última tarefa que é "Excluir a senha do inventário". A seguir estão o comando implementado no manual:
- Hosts: todosDepois disso, criaremos o arquivo de inventário para construir a conexão entre o controlador e o host remoto de destino. Abaixo está o comando:
[root@master Ansible]# Nano Host.ymlAqui está o arquivo de inventário que contém as informações relacionadas ao "Linux_host" em Ansible.
Todos:Para obter a saída desejada, executaremos o seguinte comando no terminal Ansible:
[root@master Ansible]# Ansible-playbook Ansible_tags.yml -tags check_file -i host.ymlConclusão
Tags em Ansible foram explicadas neste artigo. Agora entendemos a função das tags e os lugares em Ansible, onde os aplicaremos. Para ajudar o aluno a entender a compreensão do conceito de tags Ansible, desenvolvemos uma variedade de exemplos.