você está aqui: Home  → Arquivo de Mensagens

Usando o Spacewalk para gerenciar servidores Linux - parte1

Colaboração: Alexandro Silva

Data de Publicação: 27 de julho de 2015

Spacewalk é um sistema de gerenciamento para servidores Linux normalmente utilizado para gerenciar servidores RHEL/CentOS, entretanto ele serve também com servidores Debian GNU/Linux ou Ubuntu.

Com o Spacewalk é possível fazer:

  • Inventário de hardware e software.
  • Instalação e atualização de softwares.
  • Coletar e distribuir pacotes customizados.
  • Gerenciar e implantar arquivos de configuração.
  • Distribuir conteúdo entre múltiplos Spacewalks geograficamente distribuidos.

Neste primeiro artigo irei mostrar como implantar o servidor Spacewalk, nos próximos artigos será apresentado como configurar clientes CentOS e outras distros.

A seguir serão apresentados os procedimentos para instalação do servidor gerenciamento. Ele foi instalado em uma versão minimal do CentOS 7 x86_64.

Instalar o repositório básico

  rpm -Uvh http://yum.spacewalkproject.org/2.3/RHEL/7/x86_64/spacewalk-repo-2.3-4.el7.noarch.rpm

Repositórios adicionais

JPACKAGE

  cat > /etc/yum.repos.d/jpackage-generic.repo <<EOF
  [jpackage-generic]
  name=JPackage generic
  #baseurl=http://mirrors.dotsrc.org/pub/jpackage/5.0/generic/free/
  mirrorlist=http://www.jpackage.org/mirrorlist.php?dist=generic&type=free&release=5.0
  enabled=1
  gpgcheck=1
  gpgkey=http://www.jpackage.org/jpackage.asc
  EOF

EPEL

  rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Instalar Banco de dados

  yum  y install spacewalk-setup-postgresql

Configurar iptables

As portas 80,443,5222,5269 precisam estar liberadas

  yum  y  install iptables-services
  vim /etc/sysconfig/iptables

Adicione as seguintes linhas no arquivo /etc/sysconfig/iptables

  -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 5222 -j ACCEPT
  -A INPUT -p tcp -m state --state NEW -m tcp --dport 5269 -j ACCEPT

Reinicie o serviço iptables

  service iptables restart

Instalar Spacewalk

  yum  y install spacewalk-postgresql
  spacewalk-setup --disconnected
  You must enter an email address.
  Admin Email Address? alexos@acme.local
  Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]? <ENTER>
  CA certificate password? [INFORME A SENHA]
  Re-enter CA certificate password? [REPITA A  SENHA]
  Organization? ACME Co.
  Organization Unit [spacewalk.localdomain]?  <ENTER>
  Email Address [alexos@acme.local]? <ENTER>
  City? Salvador
  State? Bahia
  Country code (Examples: "US", "JP", "IN", or type "?" to see a list)? BR
  Cobbler requires tftp and xinetd services be turned on for PXE provisioning functionality. Enable these services [Y]? <ENTER>

Configuração inicial

Acesse o Spacewalk usando o navegador https://[IP_SpacewalkServer]/

Clique para ver a imagem ampliada

Cadastre o usuário administrativo

Clique para ver a imagem ampliada

Após clicar no botão CREATE LOGIN o acesso ao sistema será disponibilizado

Clique para ver a imagem ampliada

Spacewalk Channels

O hosts clientes conectados ao Spacewalk sempre serão membros de um channel (canal). Um canal é uma coleção lógica de pacotes e podem ser customizados, clonados ou sincronizados.

Um boa prática é configurar um canal base para cada versão do CentOS/RHEL (e.g. CentOS 6, REHL 7) e criar canais filhos para cada repositório.

Adicionando uma canal base

Um canal base é onde o cliente será registrado. Um boa prática é não adicionar pacotes no canal base e sim no canal filho específico.

Um canal base possui uma chave de registro, a qual será utilizada para registrar o cliente.

Para adicionar um base channel acesso Channels > Manage Software Channels > Create Channel

Clique para ver a imagem ampliada

Preencha os campos obrigatórios e clique em CREATE CHANNEL

Clique para ver a imagem ampliada

Após a criação do canal é necessário gerar a chave a qual permitirá o registro de clientes.

Para criar a chave acesse vá para Systems > Activation Keys > Create Key

Clique para ver a imagem ampliada

Mantenha o campo KEY em branco, selecione o canal criado anteriormente e clique em CREATE ACTIVATION KEY

Clique para ver a imagem ampliada

Adicionar Repositórios

Para adicionar um repositório ao sistema clique em Channels > Manage Software Channels > Manage Repository > Create Repository.

As imagens abaixo exemplificam a criação dos repositórios Base OS e Updates

Clique para ver a imagem ampliada
Clique para ver a imagem ampliada
Clique para ver a imagem ampliada

Criar Child Channel

Para cada repositório adicionado é necessário criar um canal filho com base na arquitetura informada no canal base.

Vá para Channels > Manage Software Channels > Create Channel.

Preencha os campos lembrando-se de informar no campo PARENT CHANNEL o canal base criado anteriormente.

Clique para ver a imagem ampliada
Clique para ver a imagem ampliada

Vincule o canal filho criado ao seu respectivo repositório em ** Manage Software Channels > Selecione o canal filho criado > clique em Repositories > Selecione o repositório > Clique em Update Repositories.**

OBS: Execute esse procedimento para cada repositório criado.

Clique para ver a imagem ampliada
Clique para ver a imagem ampliada

Sincronizar o canal filho com o repositório

Para concluir o processo de criação de canais e repositórios é necessário sincronizá-los.

Vá para Channels > Manage Software Channels -> CANAL >Repositories > Sync > Sync Now

Clique para ver a imagem ampliada
Clique para ver a imagem ampliada

A sincronização também pode ser feita pela console através do comando spacewalk-repo-sync.

  spacewalk-repo-sync --channel centos_7_base --type yum

A vantagem em fazer a primiera sincronização pela console é a possibilidade de acompanhar o processo. As próximas podem ser agendadas pela própria GUI do sistema.

Após a sincronização de todos os repositórios o sistema está pronto para ser utilizado.

Na segunda parte deste artigo irei mostrar como configurar o cliente e explorar alguns recursos do Spacewalk.

Referências

Este artigo foi publicado originalmente no blog do autor


Veja a relação completa dos artigos de Alexandro Silva