Ansible Ignore Erro

Ansible Ignore Erro

Ao configurar a tarefa em outro dispositivo host, os erros de Ansible são uma ocorrência comum. Eles representam estados de sistema únicos e possivelmente significativos. Apesar disso, pode haver alguns erros que queremos evitar para que as tarefas também sejam executadas e mostrem a saída se forem executadas com sucesso. Neste artigo, falaremos sobre erros de Ansible e como desconsiderá -los. Demonstramos especificamente uma técnica para suprimir e ignorar as falhas com Ansible.

Contraste com a fixação de erros, evitando falhas implica continuar com as tarefas tanto quanto a atividade no manual Ansible não é afetada. A ferramenta Ansible emite uma mensagem de aviso quando não pode terminar uma tarefa ou manual enquanto depura uma tarefa. Existem várias causas, mas cabe a nós identificá -las e encontrar uma solução. Infelizmente, nem todos os erros podem ser corrigidos. Você pode optar por começar a ignorar os erros, se não quiser ou se não conseguir resolver o problema.

A maioria de controlar os gerentes em Ansible usa essa estratégia enquanto se conecta com os hosts de destino em cenários do mundo real. Ansible Padrives para interromper as atividades em um dispositivo de destino e atividades contínuas em alguns outros servidores sempre que retornar um resultado diferente de zero de uma declaração ou um erro de um pacote. Embora existam certas situações em que você pode querer agir de maneira diferente. Um resultado retornado que não é zero ocasionalmente denota o progresso. Muitas vezes, você pode querer que o processamento pare em um servidor para que ele pare em todos os hosts.

Maneiras de ignorar os erros em Ansible

De maneira diferente, diferentes maneiras são usadas para realizar as tarefas do manual se mostrar a falha da tarefa. A seguir, são apresentadas as diferentes maneiras que ajudarão a executar a tarefa, mesmo que Ansible esteja mostrando erros:

1. Utilizando o comando ignore_errors = true

Embora a tarefa continue falhando, o manual continua a executar se você especificar o comando ignore_errors = true na parte inferior da atividade. Apesar de se importar com a conclusão ou falhas da tarefa, ela ainda realiza a atividade subsequente. Se de alguma forma a atividade não tiver sucesso, ela passa para a próxima. Se a atividade for bem -sucedida, ela completa um processo depois disso.

2. Utilizando o modo de verificação em Ansible

Utilize as variáveis ​​especiais booleanas, o modo de verificação Ansible, que é definido como verdadeiro quando Ansible está no método de verificação para ignorar uma tarefa ou desconsiderar as falhas em uma tarefa sempre que a versão de verificação do Ansible for usada.

3. Utilizando o falha = quando comando no manual Ansible

Em Ansible, também podemos utilizar o falhado_when condicional para especificar qualquer "falha" está implícito para cada atividade. Semelhante a todas. Portanto, a tarefa só falha se todas as condições forem satisfeitas.

Pré -requisitos para ignorar os erros em Ansible

A ferramenta Ansible Configuration deve cumprir os critérios necessários para incluir o exemplo concreto:

  • Um servidor principal Ansible ou podemos dizer que um servidor de controle é necessário para que possamos configurar os comandos no dispositivo de destino.
  • Precisamos ter os hosts locais para que possamos entrar em contato com cada um deles para usar as diferentes maneiras de ignorar os erros no software Ansible. Usamos o host local neste caso como um servidor remoto de destino durante a duração da atividade.
  • Escrevemos os playbooks, executamos os comandos de erro de ignorar Ansible e usamos o dispositivo Ansible controlador para rastrear os resultados em hosts distantes.

Para ajudar o aluno a entender o princípio de utilizar o erro de ignorar em um manual Ansible, vamos implementar o seguinte exemplo:

Exemplo: Utilizando o comando ignore_errors = true

Este é o exemplo mais simples que usa Ansible para implementação, onde incluímos várias tarefas no manual e executamos as tarefas usando o comando ignorar erros. Para fazer isso, primeiro escrevemos o seguinte código no terminal Ansible:

[root@master Ansible]# nano ignore_errors.yml

Após a criação e o lançamento dos ignore_errors.Playbook YML, agora começamos a entrar nos comandos no manual. Primeiro, usamos a opção "hosts", passando os hosts fornecidos como "localhost". Entramos no valor "falso" no argumento "Reúna de fatos" para que não possamos obter informações adicionais sobre o host local quando executarmos o manual.

Depois disso, começamos a listar cada tarefa que desejamos concluir na opção "Tarefas". Na primeira tarefa, exibimos o documento que não existe no diretório Ansible. Primeiro, passamos o título da tarefa que queremos implementar. Em seguida, usamos a opção de comando e armazenamos o documento de texto inexistente e usamos "LS" para que possamos executar o comando na primeira tarefa. Após a primeira tarefa, usamos o comando ignore_errors = true, para que, se a tarefa acima da instrução Ignore tiver uma falha, ela ignora a tarefa e se mova para a próxima tarefa e a execute.

Listamos outra tarefa que é usada. Se a primeira tarefa falhar, a ferramenta Ansible deve executar a próxima tarefa. Em seguida, usamos o parâmetro Debug para executar a tarefa no manual.

- Anfitriões: localhost
Gather_Facts: False
tarefas:
- Nome: Liste um arquivo inexistente
Comando: LS inexistente.TXT
ignore_errors: true
- Nome: Continue a tarefa após falhar
depurar:
MSG: "Continue a tarefa após o fracasso"

Agora, listamos tarefas suficientes para executar e verificar o comando ignorar erro. Agora, encerramos o manual e voltamos ao terminal principal. Depois disso, executamos o manual. Para isso, usamos a seguinte declaração:

[root@master Ansible]# Ansible-playbook ignore_errors.yml

Depois de executar o comando acima mencionado, obtemos a seguinte saída. Como você vê, a primeira tarefa que lista um arquivo inexistente mostra uma falha. Mas a segunda tarefa é executada com sucesso porque ignoramos a primeira tarefa utilizando o ignore_error = true no manual.

Conclusão

Aprendemos o que o erro de ignoramento significa em Ansible. Discutimos como funciona no manual Ansible. Também discutimos as diferentes maneiras de ignorar o erro em Ansible ao executar as tarefas. Implementamos um exemplo para que todo conceito seja claro para o usuário.