Como instalar o Puppet Bolt para automatizar tarefas do Sysadmin?

Instalando o Puppet Bolt no Ubuntu…


Parafuso de fantoche é uma ferramenta de código aberto amplamente usada para automatizar o trabalho manual.

O Bolt é baseado no Ruby e em sua ferramenta de linha de comando que obtém scripts de execução, comando em um servidor local e remoto por SSH e WinRM. Ajuda o Sysadmin a gerenciar vários servidores de várias maneiras.

  • Gerenciar atualizações
  • Instalação de software
  • Registra a leitura
  • Parar ou iniciar serviços
  • Execução de comando

A boa notícia é que você não precisa instalar nenhum agente nos servidores. Não tem agente.

Pré-requisito

O exemplo a seguir está no Ubuntu, então você precisa de uma VM do Ubuntu com acesso sudo ao root.

Sistema de atualização

É altamente recomendável atualizar todo o repositório e pacote disponível antes de instalar qualquer novo pacote no sistema. Execute o seguinte comando e ele fará o trabalho para você.

sudo apt-get update

Instalação do parafuso de marionetes

Como não possui agente, você não precisa instalar em todos os servidores. Em vez disso, apenas em um servidor que atuará como um mestre que pode ser usado para conectar-se a servidores remotos. Bolt é uma ferramenta multiplataforma para que você possa instalar no seu sistema operacional favorito.

  • janelas
  • Mac OS
  • RHEL
  • CentOS
  • Fedora
  • Debian
  • Ubuntu

Consulte o site oficial para a versão mais recente disponível. Vamos instalar isso no Ubuntu.

Execute o seguinte comando para obter o pacote.

sudo wget https://apt.puppet.com/puppet6-release-bionic.deb

Em seguida, instale o pacote baixado acima usando o comando do gerenciador de pacotes Debian.

sudo dpkg -i puppet6-release-bionic.deb

Novamente, atualize o sistema usando o seguinte comando.

sudo apt-get update

Por fim, execute o seguinte comando para instalar o parafuso.

sudo apt-get install parafuso de fantoche

Você tem instalado com sucesso parafuso de fantoche no seu servidor.

Isso precisa ser feito em todos os servidores que você deseja gerenciar através do Bolt.

Como mencionado anteriormente, o Bolt se conecta a outro servidor pela chave SSH, portanto, presumo que você já tenha trocado de chave entre os servidores. Caso contrário, consulte este guia para configurar a troca de chaves SSH.

Vamos nos conectar a servidores remotos e executar comandos bolt.

Para executar um comando em um único nó, use o seguinte comando.

comando bolt run –nodes

Substitua o COMMAND pelo comando que você deseja executar e NODE pelo nome do host ou IP do servidor remoto. Da mesma forma, você também pode executar um comando em vários nós.

comando parafuso executar -n

Se você precisar adicionar autenticação de senha a um comando, poderá adicioná-lo usando os sinalizadores.

comando bolt executar -n -u -p

Suponha que você queira ver por quanto tempo o sistema está em execução e precisará usar o comando `uptime` como este:

tempo de operação do comando bolt –nodes 35.185.68.71,35.231.9.135

Você deve ver a seguinte saída.

[protegido por email]: ~ $ bolt tempo de atividade da execução do comando –nodes 35.185.68.71,35.231.9.135
Iniciado em 35.185.68.71…
Iniciado em 35.231.9.135…
Concluído em 35.231.9.135:
STDOUT:
04:57:48 até 7 min, 0 usuários, média de carga: 0.00, 0.03, 0.02
Terminado em 35.185.68.71:
STDOUT:
04:57:48 até 9 min, 0 usuários, média de carga: 0.00, 0.00, 0.00
Êxito em 2 nós: 35.185.68.71,35.231.9.135
Funcionou em 2 nós em 5,96 segundos

Pode ser que você queira executar algum comando que contenha os espaços, portanto, você precisará agrupá-lo entre aspas simples:

[protegido por email]: ~ $ bolt comando execute ‘echo $ HOME’ –nodes 35.185.68.71,35.231.9.135
Iniciado em 35.185.68.71…
Iniciado em 35.231.9.135…
Concluído em 35.231.9.135:
STDOUT:
/ home / sajid
Terminado em 35.185.68.71:
STDOUT:
/ home / sajid
Êxito em 2 nós: 35.185.68.71,35.231.9.135
Funcionou em 2 nós em 6,11 segundos

Executando scripts

Todos nós temos um conjunto de scripts que usamos regularmente.

O Bolt facilita reutilizar esses scripts sem nenhuma modificação e executá-los em ainda mais nós simultaneamente. Tudo que você precisa fazer é especificar o nome e o caminho do script que você deseja executar.

script de bolt run –nodes
script de bolt executado /home/sajid/Desktop/samplescript.sh –nodes 35.185.68.71,35.231.9.135

Você deve ver a saída semelhante a esta:

[protegido por email]O script: / $ bolt executa /home/sajid/Desktop/samplescript.sh –nodes 35.185.68.71,35.231.9.135
Iniciado em 35.185.68.71…
Iniciado em 35.231.9.135…
Concluído em 35.231.9.135:
STDOUT:
Olá Mundo
Terminado em 35.185.68.71:
STDOUT:
Olá Mundo
Êxito em 2 nós: 35.185.68.71,35.231.9.135
Funcionou em 2 nós em 15,18 segundos

Você pode executar scripts em qualquer idioma, desde que o intérprete apropriado esteja instalado no sistema remoto.

Automação com tarefas

A tarefa é um conjunto de ações que você deseja executar em máquinas remotas.

As tarefas podem ser escritas em qualquer idioma que seja executado em um nó remoto. As tarefas facilitam a reutilização e o compartilhamento de scripts e ajudam a obter automação. Você pode fazer o download de algumas tarefas existentes do Puppet forge e fazer o upload das suas tarefas conforme necessário..

Por exemplo, se você deseja verificar o status do pacote vim, pode usar o seguinte comando.

tarefa do parafuso executar o pacote action = status name = vim –nodes 35.185.68.71,35.231.9.135

Você verá a saída semelhante a esta:

[protegido por email]: ~ $ bolt tarefa executada no pacote action = status name = vim –nodes 35.185.68.71,35.231.9.135
Iniciado em 35.185.68.71…
Iniciado em 35.231.9.135…
Terminado em 35.185.68.71:
{
"status": "instalar ok instalado",
"versão": "2: 7.4.1689-3ubuntu1.3"
}
Concluído em 35.231.9.135:
{
"status": "instalar ok instalado",
"versão": "2: 7.4.1689-3ubuntu1.3"
}
Êxito em 2 nós: 35.185.68.71,35.231.9.135
Funcionou em 2 nós em 19,15 segundos

Se você não encontrar o pacote vim instalado, poderá instalá-lo usando o seguinte comando.

ação do pacote de execução da tarefa bolt = nome da instalação = vim –nodes 35.185.68.71,35.231.9.135

Você pode executar um plano para configurar o nodejs e conectá-lo ao seu balanceador de carga. Você pode fazer isso combinando o Puppet Bolt com um nó de destino que já possui o Bolt instalado.

executar o plano de parafuso nodejs :: myplan load_balancer = lb.myorg.com

Você pode usar o parafuso de fantoche para copiar arquivos em nós remotos. Você pode simplesmente fazer upload do arquivo ou diretório para o nó remoto usando o comando `bolt file upload`. Tudo o que você precisa fazer é especificar o caminho do arquivo na máquina local e o destino no nó remoto.

upload de arquivo bolt –nodes

Você pode fazer upload de um arquivo em vários nós remotos simultaneamente, assim:

upload de arquivo bolt sample_file.txt /tmp/remotesample_file.txt –nodes 35.185.68.71,35.231.9.135

Muitas possibilidades, como você pode ver.

Criando um arquivo de inventário

O Bolt permite criar um arquivo de inventário que armazena informações sobre seus nós, tarefas e configurações. Você pode especificar nós diferentes em um grupo e o arquivo de inventário por padrão armazenado em inventário.yaml dentro do diretório do projeto. Aqui está um exemplo de criação de um arquivo de inventário.


# Exemplo de arquivo de inventário
grupos:
– nome: grupo de nós
nós:
– node1
– node2
– node3
config:
ssh:
verificação da chave do host: false
ssl: false

Você pode substituir esses nós1, nó2, nó3 pelo seu nome de domínio do nó real ou pelo endereço IP dos seus nós. Agora você pode adicionar esse arquivo de inventário aos comandos bolt para executar tarefas nos nós especificados.

bolt comando run –inventoryfile ./inventory.yaml

Conclusão

Espero que você já tenha uma idéia do que é o Bolt e como ele pode ajudá-lo na automação. Você também pode estar interessado em aprender sobre Fantoche.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map