Saturday 8 November 2014

Install Red Hat Satellite 6 in Disconnected Mode on RHEL 7

The server running katello-disconnected can itself be managed by a local Satellite server including Satellite 5. Pulp will still go to cdn.redhat.com and any other defined repositories for syncing the repositories.

Prerequisites:
  • RHEL 7
  • check networking to Red Hat Network
  • check host DNS entries, forward and reverse:
    • nslookup <hostname>
    • nslookup <ip address>
  • check NTP:
    • ntpq
Debug:
Example print statement for Ruby
STDERR.puts "Variable x is #{x.inspect}"
 
Register host with Red Hat Network:

subscription-manager register


Identify the "Pool Id" for your Satellite Entitlement:

subscription-manager list --available --all | sed -e '0,/^Subscription Name: Red Hat Satellite/ d' -e '/^$/,$ d'


Attach the Satellite Entitlement:

subscription-manager subscribe --pool=<pool_id>


Disable any existing repos:

subscription-manager repos --disable "*"


Enable the following repos:

subscription-manager repos --enable rhel-6-server-rpms --enable rhel-server-rhscl-6-rpms --enable rhel-6-server-satellite-6.0-rpms


Ensure the server's packages are up to date:

yum groupinstall \@base
yum update


Install katello-utils:

yum install python-qpid-qmf python-qpid qpid-cpp-server-store katello-utils


Configure the oauth_secret for the Pulp service:

pass=$(tr -dc "[:alnum:]" < /dev/urandom | head -c 32)
sed --in-place -e "/^\[oauth\]/ a \
enabled: true\noauth_key: katello\noauth_secret: $pass" /etc/pulp/server.conf


Disable authentication in qpid so the Satellite's default releam will be used:

sed --in-place -e '/^auth=/ s/yes/no/' /etc/qpid/qpidd.conf


Configure katello-disconnected to use Pulp's secret:

katello-disconnected setup --oauth-key=katello --oauth-secret=$pass


Configure the Pulp service to start now and on boot:

systemctl start qpidd
systemctl enable qpidd
systemctl start mongod
sleep 10
systemctl enable mongod
sudo -u apache pulp-manage-db
systemctl restart httpd
systemctl enable httpd
systemctl start pulp_workers
systemctl enable pulp_workers
systemctl start pulp_celerybeat
systemctl enable pulp_celerybeat
systemctl start pulp_resource_manager
systemctl enable pulp_resource_manager


Import the Satellite Manifest:

katello-disconnected import -m <manifest.zip>


Disable all repositories: (this is not disabling anything on mine as verified by katello-disconnected list)

katello-disconnected disable --all


View all disabled repositories:

katello-disconnected list --disabled > /root/available.repos
grep -v -e debug -e beta -e source -e -eus- available.repos | grep -- -x86_64$ | less


Enable the required repositories:

katello-disconnected enable --repos <repository_label>[,<repository_label>,...]

Eg.
katello-disconnected enable --repos rhel-6-server-kickstart-6Server-x86_64,rhel-6-server-extras-rpms--x86_64,rhel-6-server-optional-rpms-6Server-x86_64,rhel-6-server-rh-common-rpms-6Server-x86_64,rhel-6-server-rhev-agent-rpms-6Server-x86_64,rhel-6-server-rhn-tools-rpms-6Server-x86_64,rhel-6-server-rpms-6Server-x86_64,rhel-6-server-supplementary-rpms-6Server-x86_64,rhel-7-server-extras-rpms--x86_64,rhel-7-server-kickstart-7Server-x86_64,rhel-7-server-optional-rpms-7Server-x86_64,rhel-7-server-rh-common-rpms-7Server-x86_64,rhel-7-server-rhn-tools-rpms-7Server-x86_64,rhel-7-server-rpms-7Server-x86_64,rhel-7-server-supplementary-rpms-7Server-x86_64,puppet-forge


Create the repositories and push them to Pulp to allow synchronisation:

katello-disconnected configure


Sync a single repository as the "disable --all" repositories did not work earlier:

katello-disconnected sync -r rhel-7-server-rpms-7Server-x86_64


Tuesday 4 November 2014

Getting Started with RHEL 7

Fix the Host's Name

  • hostnamectl set-hostname pilot.spud.net.au
  • hostnamectl status
Well that was easy and dynamic. 
Reference:  http://www.itzgeek.com/how-tos/linux/centos-how-tos/change-hostname-in-centos-7-rhel-7.html#axzz3I3bWPTDI

Fix Networking

  • nmtui