Red Hat Training

A Red Hat training course is available for Red Hat Satellite

12.3. 配置 Red Hat Satellite Capsule Server

前提条件

继续此任务前必须满足以下条件:

  • 安装 Red Hat Satellite Server。
  • 将 SELinux 对 Satellite Capsule Serve 所在系统的权限设置为 enforcing。
以下操作配置了和 Red Hat Satellite Server 一起使用的 Satellite Capsule Server(包括以下类型的 Satellite Capsule Server):
  • 使用智能代理服务器的 Satellite Capsule Server
  • 作为内容节点的 Satellite Capsule Server
  • 使用智能代理服务器且作为内容节点的 Satellite Capsule Server
配置 Satellite Capsule Server:
  1. 请在 Satellite Server 中:
    1. 生成 Satellite Capsule Server 证书:
      capsule-certs-generate --capsule-fqdn capsule_FQDN --certs-tar ~/capsule.example.com-certs.tar
      
      其中:
      • capsule_FQDN 是 Satellite Capsule Server 的全局域名(必须指定)。
      • certs-tar 是生成的 tar 文件的文件名。这个 tar 文件包含 Satellite Capsule 安装程序使用的证书。
      运行 capsule-certs-generate 将会生成以下的输出信息:
          To finish the installation, follow these steps:
        1. Ensure that the capsule-installer is available on the system.
           The capsule-installer comes from the katello-installer package and
           should be acquired through the means that are appropriate to your deployment.
        2. Copy ~/capsule.example.com-certs.tar to the capsule system capsule.example.com
        3. Run the following commands on the capsule (possibly with the customized
           parameters, see capsule-installer --help and
           documentation for more info on setting up additional services):
        rpm -Uvh http://master.com/pub/katello-ca-consumer-latest.noarch.rpm
        subscription-manager register --org "Default Organization"
        capsule-installer --parent-fqdn          "sat6.example.com"\
                          --register-in-foreman  "true"\
                          --foreman-oauth-key    "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf
                          --foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\
                          --pulp-oauth-secret    "doajBEXqNcANy93ZbciFyysWaiwt6BWU"\
                          --certs-tar            "~/capsule.example.com-certs.tar"\
                          --puppet               "true"\
                          --puppetca             "true"\
                          --pulp                 "true"
      
    2. 将生成的 tarball(capsule.example.com-certs.tar)从 Satellite Server 复制到 Satellite Capsule 所在的主机系统。
  2. 在 Satellite Capsule Server 中:
    1. 在 Satellite Server 中注册 Satellite Capsule Server:
      # rpm -Uvh http://sat6host.example.redhat.com/pub/katello-ca-consumer-latest.noarch.rpm
      # subscription-manager register --org "Default Organization" --env [environment]/[content_view_name]
      

      注意

      Satellite Capsule Server 需要一个环境与 Satellite Server 同步内容,而只有机构拥有环境,因此必须将 Satellite Capsule Server 分配给某个机构。
      分配位置的操作是可选的,但我们建议进行这个设置来标识 Satellite Capsule Server 所管理的地理位置。
    2. 根据所需 Satellite Capsule Server 类型选择以下选项:
      1. 选项 1:使用智能代理服务器的 Satellite Capsule Server:这样可安装有智能代理服务器功能的 Satellite Capsule Server(DHCP、DNS、Puppet)。以 root 用户的身份在 Satellite Capsule Server 中运行以下命令:
          
        # capsule-installer --parent-fqdn          "satellite.example.com"\n                    --register-in-foreman  "true"\n                    --foreman-oauth-key    "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf
                            --foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\n                    --pulp-oauth-secret    "doajBEXqNcANy93ZbciFyysWaiwt6BWU"\n                    --certs-tar            "/root/capsule.example.com-certs.tar"\n                    --puppet               "true"\n                    --puppetca             "true"\n                    --pulp                 "true"
                            --tftp                 "true"
                            --dhcp                 "true"\n                    --dhcp-interface       "virbr1
                           --dns                  "true"\n                   --dns-forwarders       "8.8.8.8"\n                   --dns-forwarders       "8.8.4.4"\n                   --dns-interface        "virbr1"\n                   --dns-zone             "example.com"
        
        
      2. 选项 2:使用有智能代理服务器功能的 Satellite Capsule Server 作为内容节点:安装有全部功能的 Satellite Capsule Server。以 root 用户身份在 Satellite Capsule Server 中运行以下命令:
        # capsule-installer --parent-fqdn          "sat6.example.com"\
                            --register-in-foreman  "true"\
                            --foreman-oauth-key    "xmmQCGYdkoCRcbviGfuPdX7ZiCsdExf
                            --foreman-oauth-secret "w5ZDpyPJ24eSBNo53AFybcnqoDYXgLUA"\
                            --pulp-oauth-secret    "doajBEXqNcANy93ZbciFyysWaiwt6BWU"\
                            --certs-tar            "/root/capsule.example.com-certs.tar"\
                            --puppet               "true"\
                            --puppetca             "true"\
                            --pulp                 "true"
                            --tftp                 "true"
                            --dhcp                 "true"\
                            --dhcp-interface       "virbr1
                           --dns                  "true"\
                           --dns-forwarders       "8.8.8.8"\
                           --dns-forwarders       "8.8.4.4"\
                           --dns-interface        "virbr1"\
                           --dns-zone             "example.com"
        
        
  3. 运行以下命令配置防火墙,将 elasticsearch 限制为 foremankatello 及 root 用户,并使这些规则中重启后仍适用:
    • Red Hat Enterprise Linux 6:
      iptables -A OUTPUT -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner foreman -j ACCEPT \
      && iptables -A OUTPUT -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner katello -j ACCEPT \
      && iptables -A OUTPUT -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \
      && iptables -A OUTPUT -o lo -p tcp -m tcp --dport 9200 -j DROP
      iptables-save > /etc/sysconfig/iptables
      
    • Red Hat Enterprise Linux 7:
      firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner foreman -j ACCEPT \
      && firewall-cmd --permanent --direct --add-rule ipv6 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner foreman -j ACCEPT \
      && firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner katello -j ACCEPT \
      && firewall-cmd --permanent --direct --add-rule ipv6 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner katello -j ACCEPT \
      && firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \
      && firewall-cmd --permanent --direct --add-rule ipv6 filter OUTPUT 0 -o lo -p tcp -m tcp --dport 9200 -m owner --uid-owner root -j ACCEPT \
      && firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -o lo -p tcp -m tcp --dport 9200 -j DROP \
      && firewall-cmd --permanent --direct --add-rule ipv6 filter OUTPUT 1 -o lo -p tcp -m tcp --dport 9200 -j DROP
      

注意

在配置成功后,以 root 用户身份在 Satellite Capsule Server 中运行以下命令:
# echo $?
如果配置正确,这个命令会返回 "0"。如果它没有返回“0”,请查看 /var/log/kafo 文件找出造成错误的原因。/var/log/kafocapsule-certs-generatecapsule-installer 命令生成的日志文件。
Satellite Capsule Server 同时应该出现在 Satellite Server 用户界面中的 架构Capsule 中。
结果:

Satellite Capsule Server 已经被正确配置,并注册到 Satellite Server。

22921%2C+User+Guide-6.008-10-2014+13%3A34%3A52Red+Hat+Satellite+6Docs+User+Guide报告 bug