De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
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:
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.
rpm -Uvh http://yum.spacewalkproject.org/2.3/RHEL/7/x86_64/spacewalk-repo-2.3-4.el7.noarch.rpm
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
yum y install spacewalk-setup-postgresql
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
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>
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 |
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.
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 |
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 |
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 |
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.
Este artigo foi publicado originalmente no blog do autor