Utilizando o Ansible – parte 3

ansible-3_abertura.png

Na parte anterior foram utilizados alguns módulos para realizar tarefas diretamente através do Ansible via linha de comando, porém a execução em sequência de cada um é pouco prática, por mais que até seja possível agrupar todos eles dentro de um único script para ajudar um pouco!

Mas antes de começar a “adaptar” a ferramenta é bom saber que o Ansible tem sua própria maneira de executar diversas tarefas de uma só vez, os playbooks.

Continuar lendo

Anúncios

Utilizando o Ansible – parte 2

ansible-2_abertura

A primeira parte constituiu de uma introdução ao Ansible, apresentando alguns conceitos básicos, configurando um ambiente para executá-lo com ajuda do Vagrant e Virtualenv e até realizando um teste bem simples para saber se tudo estaria funcionando corretamente.

Nesta parte será a vez de explorar alguns dos módulos disponíveis na ferramenta, rotinas que são executadas remotamente nos nós e que controlam recursos do sistema como status de serviços, instalação ou remoção de pacotes, transferência de arquivos, execução de comandos etc.

Continuar lendo

Utilizando o Ansible – parte 1

ansible-1_abertura

O Ansible é uma ferramenta que automatiza as tarefas de provisionamento de software, gerenciamento de configuração e instalação de aplicações. Foi originalmente desenvolvido por Michael DeHaan e que através da Ansible Inc ofereceu suporte comercial à ferramenta até outubro de 2015 quando esta foi adquirida pela Red Hat. É compatível com diversas distribuições GNU/Linux — não só a “família RH” (CentOS, Fedora, RHEL etc) — e também outros sistemas operacionais.

E nesta primeira parte, a instalação e, claro, alguns testes básicos… 🙂

Continuar lendo

Coprocessos em Bash – parte 2

coproc-2_abertura

Na primeira parte o coprocesso foi tanto definido com também utilizado para a leitura de forma assíncrona da saída do comando tail mas até o momento foi apenas o monólogo com um programa enviando regularmente linhas de texto a serem impressas na tela. Nesta parte algo mais bidirecional com troca de dados com o coprocesso, uso de uma variável diferente de COPROC e, claro, mais algumas explicações. 🙂

Continuar lendo

Coprocessos em Bash – parte 1

coproc-1_abertura

Quando você executa um programa, pela linha de comando ou a partir de um script, o Bash se encarrega de executá-lo, aguardar a execução terminar, verificar se ela foi bem sucedida¹ e, sendo o caso, direcionar o resultado para a tela, arquivo etc…

No coprocesso² acontece algo diferente; já que o Bash o deixará executando em segundo plano e ao mesmo tempo redirecionará as entrada e saída padrão dele para descritores de arquivo que funcionarão como um canal de comunicação entre eles. É um recurso poderoso e ao mesmo tempo simples de implementar.

E nesta primeira parte, além de uma rápida introdução, a leitura da saída de um programa através de um coprocesso.

(¹) Ou em caso de erro notificar o corrido ou então desviar a execução para algum tratamento de exceções.

(²) Não inventei este nome! Eles são chamados assim mesmo pela documentação do Bash.

Continuar lendo

Controle de jobs nos scripts em Bash

controle_jobs-2_abertura

No final do controle de jobs do Bash citei de dois comandos que fazem parte do controle de jobs do Bash mas que agem dentro dos scripts, não dei maiores detalhes mas prometi falar deles em outra oportunidade. São o suspend (que pausa a execução da shell) e o wait (que faz a shell aguardar o término de sub processos antes de prosseguir com a execução).

E, sim, esta é a “outra oportunidade”! 🙂

Continuar lendo