Spacewalk é um sistema de gerenciamento para servidores Linux normalmente utilizado para gerenciar servidores RHEL/CentOS, entretanto ele pode ser utilizado 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. O sistema 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? [email protected] Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]?CA certificate password? [INFORME A SENHA] Re-enter CA certificate password? [REPITA A SENHA] Organization? ACME Co. Organization Unit [spacewalk.localdomain]? Email Address [[email protected]]? 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]?
Configuração inicial
Acesse o Spacewalk usando o navegador https://[IP_SpacewalkServer]/
Cadastre o usuário administrativo
Após clicar no botão CREATE LOGIN o acesso ao sistema será disponibilizado
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
Preencha os campos obrigatórios e clique em CREATE CHANNEL
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
Mantenha o campo KEY em branco, selecione o canal criado anteriormente e clique em CREATE ACTIVATION KEY
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
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.
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.
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 FILHO] >Repositories > Sync > Sync Now
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
Spacewalk Home- http://spacewalk.redhat.com/
Spacewalk Wiki - https://fedorahosted.org/spacewalk/wiki/UserDocs
Developer Documentation - https://fedorahosted.org/spacewalk/wiki/DeveloperDocs
CentOS Mirrors - https://www.centos.org/download/mirrors/
Comments are closed.