Satellite 6 => Configure multiple network cards with static IP’s during host provisioning on VMWare

Satellite 6 offers the possibility to provision a host with multiple network cards, however an issue is faced when using VMWare in conjuction with Satellite 6 and you want to provision multiple network interfaces with static IP addresses.

What happens is that after the provisioning of a virtual machine is complete, multiple network cards are added, but only the primary interface (which is used for PXE / DHCP during installation) is configured correctly.

I created a workaround to get this working. I described this solution in an official Red Hat KCS article which is now verified by Red Hat Engineering and published to the public. You can find this article here.

Satellite 6 and Microsoft DNS integration

If you plan to deploy RHEL guests with Satellite 6 and your DNS server of choice is Microsoft DNS than Satellite 6 is also able to create / delete appropriate DNS entries for newly created hosts automatically via foremen-proxy on Microsoft DNS. This article describes on how to configure both Satellite 6 and Microsoft DNS.

Satellite 6 client bootstrap script

I have created a Python script which automatically registers your existing RHEL clients to a Satellite 6 / Katello 2 server or Capsule. It also configures your Puppet agent, creates a “Host” entry in Satellite 6 / Katello 2 Web-UI and starts an initial Puppet run. All you need to do is to sign the Puppet agent cert request on your Satellite or Capsule server (if autosign is not configured which is default).

You can run the script either interactively (The script searches all needed values on your Satellite and shows the findings as options. Currently you have to copy/paste the values.) or unattended (where you have to pass by ALL needed values like organization, location, hostgroup etc.).

You can find the script on Github:

RFE for Katello installer to provide options to configure foreman proxy settings

The Satellite “katello-installer” currently does not offer options to configure foreman proxy settings during installation. This leads to the problem that if you manually configured settings in /etc/foreman-proxy/settings.d/ these settings will be set back to default after each “katello-installer –upgrade”.

I already filed an RFE to extend the katello-installer options in the future (see here).

Foreman Template writing

Foreman uses common ERB style templating. Foreman templates consists of a mixture of Bash scripts and appropriate macros and functions. You can find a list of built-in macros and functions here. Within such macro you can use further Ruby code. For example to extract the last digits og an IP address you can use the following macro:

LAST_DIGIT=< %=@host.ip.to_s.split('.')[-1]%>

Where @host.ip is a built-in macro in Foreman (see link above), to_s is Ruby code and means “convert into string”, split wherever you find a “.” and read the output reverse and take the last value (“-1”).

If you want to check if a template will render correctly for an appropriate host you can open your template in your browser: