此内容没有您所选择的语言版本。

Chapter 3. Registering Hosts


There are two main methods for registering a host to Satellite Server or Capsule Server:

  • Download and install the consumer RPM (server.example.com/pub/katello-ca-consumer-latest.noarch.rpm) and then run Subscription Manager. This method is suited for freshly installed hosts.
  • Download and run the bootstrap script (server.example.com/pub/bootstrap.py). This method is suited for both freshly installed hosts and hosts that have been previously registered, for example, to Satellite 5 or another Satellite 6.

You can also register Atomic Hosts to Satellite Server or Capsule Server.

Use one of the following procedures to register a host:

Use the following procedures to install and configure host tools:

Supported Host Operating Systems

Hosts must use one of the following Red Hat Enterprise Linux versions:

  • 5.7 or later
  • 6.1 or later*
  • 7.0 or later
  • 8.0 or later
Note

Red Hat Enterprise Linux versions 6.1, 6.2, and 6.3 require subscription-manager and related packages to be updated manually. For more information, see https://access.redhat.com/solutions/1256763.

Supported Architectures

All architectures of Red Hat Enterprise Linux are supported:

  • i386
  • x86_64
  • s390x
  • ppc_64

3.1. Registering a Host to Red Hat Satellite

Use the following procedure to register a host to Red Hat Satellite 6.

Prerequisites

  • Satellite Server, any Capsule Servers, and all hosts must be synchronized with the same NTP server, and have a time synchronization tool enabled and running.
  • The daemon rhsmcertd must be running on the hosts.
  • An activation key must be available for the host. For more information, see Managing Activation Keys in the Content Management Guide.
  • Subscription Manager must be version 1.10 or later. The package is available in the standard Red Hat Enterprise Linux repository.

Procedure

Red Hat Enterprise Linux hosts register to the Red Hat Content Delivery Network by default.

Update each host configuration so that they receive updates from the correct Satellite Server or Capsule Server:

  1. Note the fully qualified domain name (FQDN) of the Satellite Server or Capsule Server, for example server.example.com.
  2. Log in to the host as the root user and download the katello-ca-consumer-latest.noarch.rpm package from Satellite Server or Capsule Server to which the host is to be registered. The consumer RPM configures the host to download content from the content source that is specified in Red Hat Satellite.

    # curl --insecure --output katello-ca-consumer-latest.noarch.rpm https://satellite.example.com/pub/katello-ca-consumer-latest.noarch.rpm
    Copy to Clipboard
  3. Install the katello-ca-consumer-latest.noarch.rpm package:

    # yum localinstall katello-ca-consumer-latest.noarch.rpm
    Copy to Clipboard
    Note

    The RPM package is not signed. If required, you can add the --nosignature option to install the package. The katello-ca-consumer-hostname-1.0-1.noarch.rpm package is an additional katello-ca-consumer RPM that contains the server’s host name. The katello-ca-consumer-latest.noarch.rpm package always reflects the most recent version. Both serve the same purpose.

  4. Clear any old host data related to Red Hat Subscription Manager (RHSM):

    # subscription-manager clean
    Copy to Clipboard
  5. Register the host using RHSM:

    # subscription-manager register --org=your_org_name \
    --activationkey=your_activation_key
    Copy to Clipboard

    Example 3.1. Command Output after Registration:

    # subscription-manager register --org=MyOrg --activationkey=TestKey-1
    The system has been registered with id: 62edc0f8-855b-4184-b1b8-72a9dc793b96
    Copy to Clipboard
Note

You can use the --environment option to override the Content View and life cycle environment defined by the activation key. For example, to register a host to the Content View "MyView" in a "Development" life cycle environment:

 # subscription-manager register --org=your_org_name \
 --environment=Development/MyView \
 --activationkey=your_activation_key
Copy to Clipboard
Note

For Red Hat Enterprise Linux 6.3 hosts, the release version defaults to Red Hat Enterprise Linux 6 Server and needs to be pointed to the 6.3 repository:

  1. In the Satellite web UI, navigate to Hosts > Content Hosts.
  2. Select the check box next to the host that needs to be changed.
  3. From the Select Action list, select Set Release Version
  4. From the Release Version list, select 6.3.
  5. Click Done.

3.2. Registering an Atomic Host to Red Hat Satellite

Use the following procedure to register an Atomic Host to Red Hat Satellite 6.

Procedure

  1. Log in to the Atomic Host as the root user.
  2. Retrieve katello-rhsm-consumer from Satellite Server:

    # wget http://satellite.example.com/pub/katello-rhsm-consumer
    Copy to Clipboard
  3. Change the mode of katello-rhsm-consumer to make it executable:

    # chmod +x katello-rhsm-consumer
    Copy to Clipboard
  4. Run katello-rhsm-consumer:

    # ./katello-rhsm-consumer
    Copy to Clipboard

    Register with Red Hat Subscription Manager:

    # subscription-manager register
    Copy to Clipboard
Note

The Katello agent is not supported on Atomic Hosts.

3.3. Registering a Host to Red Hat Satellite Using The Bootstrap Script

Use the bootstrap script to automate content registration and Puppet configuration. You can use the bootstrap script to register new hosts, or to migrate existing hosts to Red Hat Satellite 6 from Satellite 5, RHN, SAM, or RHSM.

The katello-client-bootstrap package is installed by default on Satellite Server’s base operating system. The bootstrap.py script is installed in the /var/www/html/pub/ directory to make it available to hosts at satellite.example.com/pub/bootstrap.py. The script includes documentation in the /usr/share/doc/katello-client-bootstrap-version/README.md file.

To use the bootstrap script, you must install it on the host. As the script is only required once, and only for the root user, you can place it in /root or /usr/local/sbin and remove it after use. This procedure uses /root.

Prerequisites

  • You have a Satellite user with the permissions required to run the bootstrap script. The examples in this procedure specify the admin user. If this is not acceptable to your security policy, create a new role with the minimum permissions required and add it to the user that will run the script. For more information, see Section 3.3.1, “Setting Permissions for the Bootstrap Script”.
  • You have an activation key for your hosts with the Satellite Tools 6.7 repository enabled. For information on configuring activation keys, see Managing Activation Keys in the Content Management Guide.
  • You have created a host group. For more information about creating host groups, see Section 2.4, “Creating a Host Group”.

Puppet Considerations

If a host group is associated with a Puppet environment created inside a Production environment, Puppet fails to retrieve the Puppet CA certificate while registering a host from that host group.

To create a suitable Puppet environment to be associated with a host group, follow these steps:

  1. Manually create a directory and change the owner:

    # mkdir /etc/puppetlabs/code/environments/example_environment
    # chown apache /etc/puppetlabs/code/environments/example_environment
    Copy to Clipboard
  2. Navigate to Configure > Environments and click Import environment from. The button name includes the FQDN of the internal or external Capsule.
  3. Choose the created directory and click Update.

Procedure

  1. Log in to the host as the root user.
  2. Download the script:

    # curl -O http://satellite.example.com/pub/bootstrap.py
    Copy to Clipboard
  3. Make the script executable:

    # chmod +x bootstrap.py
    Copy to Clipboard
  4. Confirm that the script is executable by viewing the help text:

    • On Red Hat Enterprise Linux 8:

      # /usr/libexec/platform-python bootstrap.py -h
      Copy to Clipboard
    • On other Red Hat Enterprise Linux versions:

      # ./bootstrap.py -h
      Copy to Clipboard
  5. Enter the bootstrap command with values suitable for your environment.

    For the --server option, specify the FQDN of Satellite Server or a Capsule Server. For the --location, --organization, and --hostgroup options, use quoted names, not labels, as arguments to the options. See Section 3.3.2, “Advanced Bootstrap Script Configuration” for advanced use cases.

    • On Red Hat Enterprise Linux 8, enter the following command:

      # /usr/libexec/platform-python bootstrap.py \
      --login=admin \
      --server satellite.example.com \
      --location="Example Location" \
      --organization="Example Organization" \
      --hostgroup="Example Host Group" \
      --activationkey=activation_key
      Copy to Clipboard
    • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

      # ./bootstrap.py --login=admin \
      --server satellite.example.com \
      --location="Example Location" \
      --organization="Example Organization" \
      --hostgroup="Example Host Group" \
      --activationkey=activation_key
      Copy to Clipboard
  6. Enter the password of the Satellite user you specified with the --login option.

    The script sends notices of progress to stdout.

  7. When prompted by the script, approve the host’s Puppet certificate. In the Satellite web UI, navigate to Infrastructure > Capsules and find the Satellite or Capsule Server you specified with the --server option.
  8. From the list in the Actions column, select Certificates.
  9. In the Actions column, click Sign to approve the host’s Puppet certificate.
  10. Return to the host to see the remainder of the bootstrap process completing.
  11. In the Satellite web UI, navigate to Hosts > All hosts and ensure that the host is connected to the correct host group.
  12. Optional: After the host registration is complete, remove the script:

    # rm bootstrap.py
    Copy to Clipboard

3.3.1. Setting Permissions for the Bootstrap Script

Use this procedure to configure a Satellite user with the permissions required to run the bootstrap script.

Procedure

  1. In the Satellite web UI, navigate to Administer > Users.
  2. Select an existing user by clicking the required Username. A new pane opens with tabs to modify information about the selected user. Alternatively, create a new user specifically for the purpose of running this script.
  3. Click the Roles tab.
  4. Select Edit hosts and Viewer from the Roles list.

    Important

    The Edit hosts role allows the user to edit and delete hosts as well as being able to add hosts. If this is not acceptable to your security policy, create a new role with the following permissions and assign it to the user:

    • view_organizations
    • view_locations
    • view_domains
    • view_hostgroups
    • view_hosts
    • view_architectures
    • view_ptables
    • view_operatingsystems
    • create_hosts
  5. Click Submit.

For CLI Users

  1. Create a role with the minimum permissions required by the bootstrap script. This example creates a role with the name Bootstrap:

    # ROLE='Bootstrap'
    hammer role create --name "$ROLE"
    hammer filter create --role "$ROLE" --permissions view_organizations
    hammer filter create --role "$ROLE" --permissions view_locations
    hammer filter create --role "$ROLE" --permissions view_domains
    hammer filter create --role "$ROLE" --permissions view_hostgroups
    hammer filter create --role "$ROLE" --permissions view_hosts
    hammer filter create --role "$ROLE" --permissions view_architectures
    hammer filter create --role "$ROLE" --permissions view_ptables
    hammer filter create --role "$ROLE" --permissions view_operatingsystems
    hammer filter create --role "$ROLE" --permissions create_hosts
    Copy to Clipboard
  2. Assign the new role to an existing user:

    # hammer user add-role --id user_id --role Bootstrap
    Copy to Clipboard

    Alternatively, you can create a new user and assign this new role to them. For more information on creating users with Hammer, see Managing Users and Roles in the Administering Red Hat Satellite guide.

3.3.2. Advanced Bootstrap Script Configuration

This section has more examples for using the bootstrap script to register or migrate a host.

Warning

These examples specify the admin Satellite user. If this is not acceptable to your security policy, create a new role with the minimum permissions required by the bootstrap script. For more information, see Section 3.3.1, “Setting Permissions for the Bootstrap Script”.

Migrating a host from one Satellite 6 to another Satellite 6

Use the script with --force to remove the katello-ca-consumer-* packages from the old Satellite and install the katello-ca-consumer-* packages on the new Satellite.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --force
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --force
    Copy to Clipboard

Migrating a host from Red Hat Network (RHN) or Satellite 5 to Satellite 6

The bootstrap script detects the presence of /etc/syconfig/rhn/systemid and a valid connection to RHN as an indicator that the system is registered to a legacy platform. The script then calls rhn-classic-migrate-to-rhsm to migrate the system from RHN. By default, the script does not delete the system’s legacy profile due to auditing reasons. To remove the legacy profile, use --legacy-purge, and use --legacy-login to supply a user account that has appropriate permissions to remove a profile. Enter the user account password when prompted.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --legacy-purge \
    --legacy-login rhn-user
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --legacy-purge \
    --legacy-login rhn-user
    Copy to Clipboard

Registering a host to Satellite 6, omitting Puppet setup

By default, the bootstrap script configures the host for content management and configuration management. If you have an existing configuration management system and do not want to install Puppet on the host, use --skip-puppet.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --skip-puppet
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --skip-puppet
    Copy to Clipboard

Registering a host to Satellite 6 for content management only

To register a system as a content host, and omit the provisioning and configuration management functions, use --skip-foreman.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --server satellite.example.com \
    --organization="Example Organization" \
    --activationkey=activation_key \
    --skip-foreman
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --server satellite.example.com \
    --organization="Example Organization" \
    --activationkey=activation_key \
    --skip-foreman
    Copy to Clipboard

Changing the method the bootstrap script uses to download the consumer RPM

By default, the bootstrap script uses HTTP to download the consumer RPM (server.example.com/pub/katello-ca-consumer-latest.noarch.rpm). In some environments, you might want to allow HTTPS only between the host and Satellite. Use --download-method to change the download method from HTTP to HTTPS.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --download-method https
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --download-method https
    Copy to Clipboard

Providing the host’s IP address to Satellite

On hosts with multiple interfaces or multiple IP addresses on one interface, you might need to override the auto-detection of the IP address and provide a specific IP address to Satellite. Use --ip.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --ip 192.x.x.x
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --ip 192.x.x.x
    Copy to Clipboard

Enabling remote execution on the host

Use --rex and --rex-user to enable remote execution and add the required SSH keys for the specified user.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --rex \
    --rex-user root
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --rex \
    --rex-user root
    Copy to Clipboard

Creating a domain for a host during registration

To create a host record, the DNS domain of a host needs to exist in Satellite prior to running the script. If the domain does not exist, add it using --add-domain.

  • On Red Hat Enterprise Linux 8, enter the following command:

    # /usr/libexec/platform-python bootstrap.py \
    --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --add-domain
    Copy to Clipboard
  • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

    # bootstrap.py --login=admin \
    --server satellite.example.com \
    --location="Example Location" \
    --organization="Example Organization" \
    --hostgroup="Example Host Group" \
    --activationkey=activation_key \
    --add-domain
    Copy to Clipboard

Providing an alternative FQDN for the host

If the host’s host name is not an FQDN, or is not RFC-compliant (containing a character such as an underscore), the script will fail at the host name validation stage. If you cannot update the host to use an FQDN that is accepted by Satellite, you can use the bootstrap script to specify an alternative FQDN.

  1. Set create_new_host_when_facts_are_uploaded and create_new_host_when_report_is_uploaded to false using Hammer:

    # hammer settings set \
    --name  create_new_host_when_facts_are_uploaded \
    --value false
    # hammer settings set \
    --name  create_new_host_when_report_is_uploaded \
    --value false
    Copy to Clipboard
  2. Use --fqdn to specify the FQDN that will be reported to Satellite:

    • On Red Hat Enterprise Linux 8, enter the following command:

      # /usr/libexec/platform-python bootstrap.py --login=admin \
      --server satellite.example.com \
      --location="Example Location" \
      --organization="Example Organization" \
      --hostgroup="Example Host Group" \
      --activationkey=activation_key \
      --fqdn node100.example.com
      Copy to Clipboard
    • On Red Hat Enterprise Linux 5, 6, or 7, enter the following command:

      # bootstrap.py --login=admin \
      --server satellite.example.com \
      --location="Example Location" \
      --organization="Example Organization" \
      --hostgroup="Example Host Group" \
      --activationkey=activation_key \
      --fqdn node100.example.com
      Copy to Clipboard

3.4. Installing the Katello Agent

You can install the Katello agent to remotely update Satellite clients.

Note

The Katello agent is deprecated and will be removed in a future Satellite version. Migrate your processes to use the remote execution feature to update clients remotely. For more information, see Host Management Without Goferd and Katello Agent in the Managing Hosts Guide.

The katello-agent package depends on the gofer package that provides the goferd service. This service must be enabled so that Satellite Server or Capsule Server can provide information about errata that are applicable for content hosts.

Prerequisites

Before installing the Katello agent, ensure the following conditions are met:

  • You have enabled the Satellite Tools 6.7 repository on Satellite Server. For more information, see Enabling the Satellite Tools 6.7 Repository in Installing Satellite Server from a Connected Network.
  • You have synchronized the Satellite Tools 6.7 repository on Satellite Server. For more information, see Synchronizing the Satellite Tools 6.7 Repository in Installing Satellite Server from a Connected Network.
  • You have enabled the Satellite Tools 6.7 repository on the client.

Procedure

To install the Katello agent, complete the following steps:

  1. Install the katello-agent package:

    # yum install katello-agent
    Copy to Clipboard
  2. Start the goferd service :

    # systemctl start goferd
    Copy to Clipboard

3.5. Installing Tracer

Use this procedure to install Tracer on Red Hat Satellite 6.7, and access Traces. Tracer displays a list of services and applications that are outdated and need to be restarted. Traces is the output generated by Tracer in the Satellite web UI.

Prerequisites

  • The host must be registered to Red Hat Satellite.
  • The Red Hat Satellite Tools 6.7 repository must be enabled and synchronized on Satellite Server, and enabled on the host.

Procedure

  1. On the content host, install the katello-host-tools-tracer RPM package:

    # yum install katello-host-tools-tracer
    Copy to Clipboard
  2. Enter the following command:

    # katello-tracer-upload
    Copy to Clipboard
  3. In the Satellite web UI, navigate to Hosts > All hosts, then click the required host name.
  4. In the Properties tab, examine the Properties table and find the Traces item. If you cannot find a Traces item in the Properties table, then Tracer is not installed.
  5. Navigate to Hosts > Content Hosts, then click the required host name.
  6. Click the Traces tab to view Traces.

3.6. Installing and Configuring the Puppet Agent

Use this procedure to install and configure the Puppet agent on a host. For more information about Puppet, see the Puppet Guide.

Prerequisites

  • The host must be registered to Red Hat Satellite.
  • The host must have a Puppet environment assigned to it.
  • The Red Hat Satellite Tools 6.7 repository must be enabled and synchronized on Satellite Server, and enabled on the host.

Procedure

  1. Log in to the host as the root user.
  2. Install the Puppet agent package:

    # yum install puppet-agent
    Copy to Clipboard
  3. Configure the Puppet agent to start on boot:

    • On Red Hat Enterprise Linux 6:

      # chkconfig puppet on
      Copy to Clipboard
    • On Red Hat Enterprise Linux 7:

      # systemctl enable puppet
      Copy to Clipboard
  4. Append the following server and environment settings to the /etc/puppetlabs/puppet/puppet.conf file. Set the environment parameter to the name of the Puppet environment to which the host belongs:

    environment = My_Example_Org_Library
    server = satellite.example.com
    ca_server = satellite.example.com
    Copy to Clipboard
  5. Run the Puppet agent on the host:

    # puppet agent -t
    Copy to Clipboard
  6. In the Satellite web UI, navigate to Infrastructure > Capsules.
  7. From the list in the Actions column for the required Capsule Server, select Certificates.
  8. Click Sign to the right of the required host to sign the SSL certificate for the Puppet client.
  9. Enter the puppet agent command again:

    # puppet agent -t
    Copy to Clipboard
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat