Como instalar o Puppet Master e agente em sistemas baseados em Rhel

Como instalar o Puppet Master e agente em sistemas baseados em Rhel

Desenvolvido por LANS PONTEM, Fantoche é uma ferramenta de gerenciamento de configuração de código aberto usado para automatizar e centralizar a configuração da infraestrutura, como servidores, como Ansible e Chefe de cozinha. Ajuda a simples execução de tarefas repetitivas que, de outra forma, seriam pesadas e demoradas.

O Puppet adota uma arquitetura cliente-servidor e compreende os seguintes aspectos salientes.

  • Puppet Master/Server - Este nó contém toda a configuração necessária para gerenciar nós do cliente nos quais o escravo de marionetes está instalado.
  • Escravo de marionetes - Estes são os nós do cliente gerenciado em seu ambiente. Todos os escravos são gerenciados pelo mestre de marionetes e possui o agente de bonecos instalado e executando.
  • Puppetdb - Este é um banco de dados que armazena todos os dados gerados pelo Puppet.

Neste guia, demonstraremos como instalar Mestre de marionetes e Agente Em distribuições baseadas em Rhel, como Centos, Fedora, Rocky e Almalinux.

Configuração do ambiente do laboratório

Nó mestre de fantoches com IP 139.144.20.170 - Rocky Linux 8 Slave Puppet com IP 45.79.206.178 - Ubuntu 22.04 

Índice

1
    • Configuração do ambiente do laboratório
  • Etapa 1: Configure o nome do host em Puppet Master and Slave
  • Etapa 2: Adicione o repositório de bonecos no Puppet Master (Rocky Linux)
  • Etapa 3: Instale o Puppet no Puppet Master (Rocky Linux)
  • Etapa 4: Configurar servidor mestre de bonecos (Rocky Linux)
  • Etapa 5: Configure a alocação de memória JVM (opcional)
  • Etapa 6: Iniciar e ativar o servidor de bonecos
  • Etapa 7: Iniciar e ativar o agente de marionetes
  • Etapa 8: Aguarde o serviço de marionetes no firewall
  • Etapa 9: Adicione a pasta binária de fantoches ao $ PATH
  • Etapa 10: Verifique o servidor de bonecos usando o cliente Puppet
  • Etapa 11: Instale e configure o agente de marionetes no escravo
  • Etapa 12: Conecte o agente de marionetes ao servidor de bonecos
      • Conclusão

Etapa 1: Configure o nome do host em Puppet Master and Slave

Para decolar, faça login no seu sistema e atualize os pacotes de software usando o comando dnf da seguinte forma.

$ sudo dnf update -y 

Em seguida, configure um nome de host para seus nós, que serão valiosos ao longo do caminho enquanto você configura Fantoche no seu sistema.

Para o mestre de marionetes

$ sudo hostnamectl set-hostname puppetmaster.Tecmint.com 

Para escravo de marionetes

$ sudo hostnamectl set-hostname puppet-agent 

Confirme o novo nome do host usando o hostnamectl comando:

$ hostnamectl 
Verifique o nome do host do sistema Linux

Em seguida, atualize o /etc/hosts Arquive para ambos os sistemas com os registros do nome do host e DNS, como mostrado.

Mudar para o usuário root.

$ su - 

Em seguida, atualize o /etc/hosts Arquivo com o endereço IP e nome de host ou fqdn do seu sistema.

Para o mestre de marionetes

# eco "139.144.20.170 Puppetmaster.Tecmint.com ">> /etc /hosts 
Adicione o nome do host ao arquivo /etc /hosts

Para escravo de marionetes

# eco "45.79.206.178 agente de fantoche ">> /etc /hosts 

Depois que os registros de nomes de host e DNS forem configurados, prossiga com a próxima etapa.

Etapa 2: Adicione o repositório de bonecos no Puppet Master (Rocky Linux)

Para instalar Fantoche, Precisamos adicionar seu repositório ao sistema. Para fazer isso, execute o seguinte comando.

$ sudo dnf install https: // yum.fantoche.com/fantoche-libera-el-8.Noarch.rpm -y 

Adicione o repositório de bonecos no Rocky Linux [Puppet Master] para confirmar que o repositório foi adicionado com sucesso, execute o comando rpm:

$ rpm -qi de liberação de bonecos 
Verifique o repositório de bonecos

Além disso, certifique -se de adicionar também o repositório EPEL, conforme mostrado.

$ sudo dnf install https: // dl.FedoraProject.org/pub/epel/epel-latest-8.Noarch.rpm -y 
Instale o repositório EPEL no Rocky Linux

Em seguida, habilite o Ferramentas elétricas repositório que fornece ferramentas e bibliotecas desenvolvedores. O repositório também fornece uma série de pacotes necessários como dependências ao instalar outros aplicativos.

$ sudo dnf config-manager-PowerTools habilitados para set 

Para garantir que o cache esteja totalmente atualizado com todos os metadados no lugar, construa o cache como mostrado.

$ sudo dnf makecache 
Atualiza cache de metadados dnf

Etapa 3: Instale o Puppet no Puppet Master (Rocky Linux)

Antes de instalar Fantoche, verifique se todos os repositórios necessários foram ativados da seguinte forma.

$ sudo dnf repolista 
Veja os repositórios DNF

Em seguida, instale Servidor de bonecos do seguinte modo.

$ sudo dnf install puppetsserver -y 

O comando instala uma série de pacotes, incluindo Servidor Pupper e Agente, Java OpenJdk, Lua, NSS e muito mais. Abaixo está a saída de comando.

Instale o servidor de bonecos no Rocky Linux

Para confirmar que o Servidor Pupper foi instalado, execute o comando:

$ rpm -qi bonecoServer 

O comando imprime informações detalhadas, como nome, versão, liberação, arquitetura e data de instalação para mencionar alguns.

Confirme a instalação do servidor de fantoches

Etapa 4: Configurar servidor mestre de bonecos (Rocky Linux)

Uma vez Servidor de bonecos está instalado, o próximo passo é configurá -lo. Portanto, acesse o arquivo de configuração principal para o boneco, como mostrado.

$ sudo vim/etc/bonecos/fantoche/fantoche.conf 

Debaixo de [servidor] Seção Adicione a entrada DNS como mostrado.

DNS_ALT_NAMES = Puppetmaster.Tecmint.com, mestre de marionetes, bonecos 

Além disso, adicione o [principal] Seção da seguinte maneira, onde o Puppetmaster.Tecmint.com é o nome FQDN ou host do seu servidor de fantoche.

[main] CertName = Puppetmaster.Tecmint.com servidor = mestre de marionetes.Tecmint.com ambiente = runInterval de produção = 1h 

É assim que nossa configuração se parece.

Configurar servidor mestre de fantoches

Salve as alterações e saia do arquivo de configuração.

Etapa 5: Configure a alocação de memória JVM (opcional)

Por padrão, 2 GB de JAVA A memória é alocada para Puppet Master Server. Se o seu sistema não tiver memória suficiente, você poderá editar o arquivo de configuração do servidor e atribuir um valor mais baixo, como 1 GB.

Portanto, acesse o arquivo de configuração.

$ sudo vim/etc/sysconfig/bonecoSserver 

Localize esses argumentos: -Xms2g -xmx2g e mudar 2G para 1g (significa 1 GB).

Configurar alocação de memória JVM

Salve as alterações e saia do arquivo de configuração.

Etapa 6: Iniciar e ativar o servidor de bonecos

Depois de fazer todas as alterações necessárias, inicie o Servidor de bonecos serviço como mostrado.

$ sudo systemctl start puppetsserver 

Em seguida, ative o serviço para iniciar o tempo de inicialização ou a inicialização do sistema.

$ sudo systemctl atability bonecoServer 

Para verificar se o servidor de bonecos está em execução, execute o comando:

$ sudo Systemctl Status PuppetServer 

A saída a seguir confirma que o servidor de bonecos está em execução.

Verifique o status do servidor de fantoches

Etapa 7: Iniciar e ativar o agente de marionetes

A instalação de Servidor de bonecos Também instala o agente também. No entanto, o agente não começa automaticamente e você deve fazê -lo manualmente.

Para iniciar o agente de marionetes, execute o comando.

$ sudo systemctl iniciar fantoche 

Além disso, considere permitir que o agente comece na inicialização.

$ sudo systemctl atability Puppet 

Agora, verifique se o agente está ativo e em execução executando o seguinte comando.

$ sudo systemctl status fantoche 
Verifique o status do agente fantoche

Etapa 8: Aguarde o serviço de marionetes no firewall

Outra coisa que você precisa considerar é permitir o serviço de marionetes no firewall para que o servidor possa ser acessado pela rede.

Para fazer isso, execute os seguintes comandos.

$ sudo firewall-cmd --Add-Service = Puppetmaster-PERMANENT $ SUDO Firewall-CMD--Reload 

Etapa 9: Adicione a pasta binária de fantoches ao $ PATH

Binários de fantoches estão localizados em /opt/Puppetlabs/bin. No momento da redação deste guia, o diretório já está colocado no $ Caminho.

Para confirmar isso, execute o Printenv comando como mostrado.

$ printenv | Grep PuppetLabs 
Confirme o caminho binário de bonecos

Você também pode verificar isso como mostrado.

$ qual fantoche /opt/Puppetlabs/bin/fantoche 

Se por algum motivo Fantoche não é adicionado a $ Caminho, Mudar para o usuário root

$ su - 

Em seguida, execute os seguintes comandos para adicioná -los $ Caminho.

# echo 'Exportar Caminho = $ PATH:/Opt/Puppetlabs/Bin' | tee -a ~//.BASHRC # fonte ~//.Bashrc 

Etapa 10: Verifique o servidor de bonecos usando o cliente Puppet

Para confirmar que o Fantoche O servidor está em execução como esperado, execute o comando:

$ sudo/opt/Puppetlabs/bin/boneca agente --test - -ca_server = Puppetmaster.Tecmint.com 

A saída a seguir confirma que tudo parece bom.

Verifique o servidor de bonecos

Você também pode alcançar o mesmo que o usuário raiz, como mostrado

# agente de fantoches -t 

Para visualizar os certificados disponíveis no Mestre de marionetes nó, execute o seguinte comando.

$ sudo/opt/Puppetlabs/bin/bonecopetServer CA Lista --l 
Verifique os certificados no servidor de bonecos

Até agora, conseguimos instalar Servidor de bonecos e Agente no nó mestre. Se é isso que você estava procurando, então você terminou e polvilhou.

No entanto, mencionamos que o boneco funciona em uma arquitetura cliente-servidor. Na etapa seguinte, demonstraremos como instalar e configurar o agente fantoche no nó do cliente.

Etapa 11: Instale e configure o agente de marionetes no escravo

Nesta seção, vamos instalar Agente de marionetes com um Escravo do Ubuntu nó e depois estabelecer comunicação entre o Pupper Master nó e o Cliente.

Para o Ubuntu 22.04

$ wget https: // apt.PuppetLabs.com/fantocet7-lançamento-Jammy.Deb $ sudo dpkg -i Puppet7-lançamento-Jammy.Deb $ sudo apt update $ sudo apt install puppet -agent -y 

Para o Ubuntu 20.04

$ wget https: // apt.fantoche.com/fantocet7-lançamento-focal.Deb $ sudo dpkg -i boneco-lançamento-focal.Deb $ sudo apt update $ sudo apt install puppet -agent -y 

Depois de instalado, acesse o arquivo de configuração do agente.

$ sudo vim/etc/bonecos/fantoche/fantoche.conf 

Adicione a seção a seguir.

[principal] servidor = mestre de boneca.Tecmint.com 

Salve as mudanças e saia.

Para aplicar as mudanças, reinicie o serviço do agente de bonecos.

$ sudo systemctl reiniciar fantoche $ sudo systemctl atability fanthop 

Etapa 12: Conecte o agente de marionetes ao servidor de bonecos

O último passo é estabelecer uma conexão entre o Servidor de bonecos e a agente instalado no sistema do cliente. Para fazer isso, acesse o nó do cliente e gerar certificados para o Pupper Master assinar.

$ sudo/opt/Puppetlabs/bin/agente fantoche -t 

Você receberá uma notificação de que o certificado ainda não foi assinado.

Conecte -se ao servidor de bonecos e ao agente

Vá para o Pupper Master nó e liste os certificados que estão pendentes para serem assinados. Aqui, o certificado está listado como agente agente de marionetes.membros.Linode.com.

$ sudo/opt/bonecopetlabs/bin/bonecopetserver CA Lista 
Liste certificados em servidor de fantoches

Agora assine o certificado usando o seguinte comando:

$ sudo/opt/Puppetlabs/bin/bonecopetServer CA SIGN-CERTNAME Puppet-agent.membros.Linode.com 
Assinar certificados no servidor de fantoches

Finalmente, volte para o nó do cliente e assine o certificado.

$ sudo/opt/Puppetlabs/bin/agente fantoche -t 
Conecte -se ao servidor de bonecos e ao agente
Conclusão

Isso nos leva ao final deste guia. Neste artigo, demonstramos como instalar Mestre de marionetes e Agente em sistemas baseados em RHEL usando Rocky Linux 8 nós em nossa configuração.