Usando o Spacewalk para gerenciar servidores Linux – parte 2

Dando continuidade ao primeiro post sobre o Spacewalk, apresentarei neste artigo como registrar clientes CentOS e Debian GNU/Linux, os mesmos procedimentos podem ser utilizados para clientes Ubuntu.

Registrando um cliente CentOS 7

Instalar pacotes

yum -y install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin

Registrar cliente ao Spacewalk

Use o comando rhnreg_ks para registrar o cliente ao Spacewalk, sua sintaxe é:

rhnreg_ks --serverUrl=http://[Spacewalk Server]/XMLRPC ----activationkey=1-[Chave de registro]

OBS: A chave de registro foi criada durante a configuração do Spacewalk

rhnreg_ks --serverUrl=http://192.168.0.1/XMLRPC --activationkey=1-56e180d3b82d2265a222b3b8f7b8f8e3

Acesse a GUI para verificar se o cliente foi registrado corretamente.

space17

space18

Cadastrar o cliente no canal filho

Para utilizar os pacotes associados a um canal filho é necessário habilitá-lo no sistema.

Vá para Systems -> [CLIENTE] -> Software -> Software Channels -> Software Channel Subscriptions , selecione os repositórios aos quais ele tem acesso e clique em CONFIRM.

space19

Um segunda tela de confirmação será apresentada clique em MODIFY BASE SOFTWARE CHANNEL.

Este processo também pode ser executado via console. Para isso execute os seguintes comandos.

Listar canal filho

spacewalk-channel –l

Listar canal filho disponível

spacewalk-channel –L

Cadastrar-se a um canal

spacewalk-channel -a -c centos_7_base
spacewalk-channel -a -c centos_7_updates

Desabilitar outros repositórios (Opcional)

sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/*
sed -i '/name=/a enabled=0' /etc/yum.repos.d/*

Validar registro no cliente

Para validar se o repositório usado pelo cliente é o Spacewalk, execute o comando yum update e observe o repositório que será apresentado pelo YUM.

space20

Observe que o repositório onde os arquivos serão baixados será o centos_7_updates.

space21

Registrando um cliente Debian GNU/Linux

Antes de registrar o cliente Debian GNU/Linux é necessário criar um canal base e os canais filhos. Execute os procedimentos apresentados para a criação dos canais para o CentOS apresentados na primeira parte deste artigo.

Canal base

space22

Canal filho

space23

Repositório

space24

Cadastrar o cliente no canal filho

space27

Sincronização

O Spacewalk ainda não suporta a sincronização de pacotes Debian pela GUI ou via linha de comando usando o spacewalk-repo-sync.

Para fazer a sincronização do repositório Debian será necessário utilizar o script spacewalk-debian-sync.pl.

Execute o seguinte procedimento para fazer a sincronização dos pacotes Debian no servidor do Spacewalk.

OBS: As seguintes bibliotecas são necessárias para o funcionamento do script

>strict;
warnings;
Compress::Zlib;
File::Basename;
Frontier::Client;
Getopt::Long;
WWW::Mechanize

cp -p /var/www/html/pub/RHN-ORG-TRUSTED-SSL-CERT /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
git clone https://github.com/stevemeier/spacewalk-debian-sync.git
cd spacewalk-debian-sync
perl spacewalk-debian-sync.pl  --username admin --password '[SENHA]' --channel 'debian_8_main' --url 'http://ftp.br.debian.org/debian/dists/stable/main/binary-amd64/'

Aguarde o download dos pacotes.

Registrando cliente Debian GNU/Linux ao Spacewalk

Execute os seguintes procedimentos no host cliente

Instalar pacotes

aptitude install apt-transport-spacewalk rhsd

Registrar cliente

wget http://[Spacewalk_Server]/pub/RHN-ORG-TRUSTED-SSL-CERT -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
rhnreg_ks --serverUrl=https://[Spacewalk_Server]/XMLRPC --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --activationkey=1-56e180d3b82d2265a222b3b8f7b8f8e3

space25

space26

O arquivo /etc/apt/apt.conf.d/50spacewalk será criado.

Para validar execute o comando aptitude update.

Apartir de agora estes servidores podem ser gerenciados pelo Spacewalk de forma centralizada.

Referências

Spacewalk Registering Clients – https://fedorahosted.org/spacewalk/wiki/RegisteringClients

spacewalk-debian-sync – https://github.com/stevemeier/spacewalk-debian-sync/blob/master/spacewalk-debian-sync.pl

Author: alexos