第4章 Capsule Server のロードバランシング用の設定


この章では、ロードバランシング用に Capsule Server を設定する方法を概説します。お使いの Satellite Server の設定に合わせて、次のいずれかのセクションに進んでください。

作成する Katello 証明書には、Capsule Server ごとに異なるファイル名を使用します。たとえば、Capsule Server FQDN を使って証明書アーカイブファイルに名前を付けます。

次のセクションでは、Puppet を使用せず、デフォルト SSL 証明書を使用する Capsule Server をロードバランシング用に設定する方法を説明します。

この手順は、ロードバランシング用に設定する Capsule Server ごとに実行します。

手順

  1. 以下のように、Satellite Server で、Capsule Server の Katello 証明書を生成します。

    # capsule-certs-generate \
    --foreman-proxy-fqdn capsule.example.com \
    --certs-tar "/root/capsule.example.com-certs.tar" \
    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    capsule-certs-generate コマンドの出力である satellite-installer コマンド例をメモして、Capsule Server 証明書をインストールします。

  2. 証明書アーカイブファイルを Satellite Server から Capsule Server にコピーします。

    # scp /root/capsule.example.com-certs.tar \
    root@capsule.example.com:capsule.example.com-certs.tar
    Copy to Clipboard Toggle word wrap
  3. capsule-certs-generate コマンドの出力から取得する satellite-installer コマンドに次のオプションを追加します。コマンドの入力先の Capsule Server を参照するように、--puppet-ca-server オプションを設定します。Puppet CA は、使用する予定があるかどうかに関係なく、Capsule Server にインストールする必要があります。Puppet は、デフォルトの単一ノード設定に設定されます。

    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  4. 以下のように、Capsule Server で、satellite-installer コマンドを実行します。

    # satellite-installer --scenario capsule \
    --foreman-proxy-content-parent-fqdn        "satellite.example.com" \
    --foreman-proxy-register-in-foreman        "true" \
    --foreman-proxy-foreman-base-url           "https://satellite.example.com" \
    --foreman-proxy-trusted-hosts              "satellite.example.com" \
    --foreman-proxy-trusted-hosts              "capsule.example.com" \
    --foreman-proxy-oauth-consumer-key         "oauth key" \
    --foreman-proxy-oauth-consumer-secret      "oauth secret" \
    --foreman-proxy-content-certs-tar          "capsule.example.com-certs.tar" \
    --puppet-server-foreman-url                "https://satellite.example.com" \
    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap

次のセクションでは、Puppet を使用し、デフォルト SSL 証明書を使用する Capsule Server をロードバランシング用に設定する方法を説明します。

Satellite 設定で Puppet を使用する場合は、次の手順を実行する必要があります。

Puppet 証明書を生成して署名するための Capsule Server の設定

この手順は、ロードバランシング用に設定した他の Capsule Server すべてに、Puppet 証明書を生成して署名するように Capsule Server を設定するシステムにのみ、実行してください。この手順の例では、この Capsule Server の FQDN は capsule_ca.example.com です。

  1. Satellite Server で、Puppet 証明書を生成し、署名するように Capsule Server を設定するシステムの Katello 証明書を生成します。

    # capsule-certs-generate \
    --foreman-proxy-fqdn capsule_ca.example.com \
    --certs-tar "/root/capsule_ca.example.com-certs.tar" \
    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    capsule-certs-generate コマンドの出力である satellite-installer コマンド例をメモして、Capsule Server 証明書をインストールします。

  2. 証明書アーカイブファイルを Satellite Server から Capsule Server にコピーします。

    # scp /root/capsule_ca.example.com-certs.tar \
    root@capsule_ca.example.com:capsule_ca.example.com-certs.tar
    Copy to Clipboard Toggle word wrap
  3. capsule-certs-generate コマンドの出力から取得する satellite-installer コマンドに次のオプションを追加します。

    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  4. 以下のように、Capsule Server で、satellite-installer コマンドを実行します。

    # satellite-installer --scenario capsule \
    --foreman-proxy-content-parent-fqdn        "satellite.example.com" \
    --foreman-proxy-register-in-foreman        "true" \
    --foreman-proxy-foreman-base-url           "https://satellite.example.com" \
    --foreman-proxy-trusted-hosts              "satellite.example.com" \
    --foreman-proxy-trusted-hosts              "capsule_ca.example.com" \
    --foreman-proxy-oauth-consumer-key         "oauth key" \
    --foreman-proxy-oauth-consumer-secret      "oauth secret" \
    --foreman-proxy-content-certs-tar          "capsule_ca.example.com-certs.tar" \
    --puppet-server-foreman-url                "https://satellite.example.com" \
    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  5. Capsule Server で、ロードバランシングを設定する他のすべての Capsule Server に対して Puppet 証明書を生成します。ただし、Puppet 証明書署名を設定する最初のシステムを除きます。

    # puppet cert generate capsule.example.com \
    --dns_alt_names=loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    このコマンドは、Capsule Server が Puppet 証明書に署名するように設定するシステムで、次のファイルを作成します。

    • /etc/puppetlabs/puppet/ssl/certs/ca.pem
    • /etc/puppetlabs/puppet/ssl/certs/capsule.example.com.pem
    • /etc/puppetlabs/puppet/ssl/private_keys/capsule.example.com.pem
    • /etc/puppetlabs/puppet/ssl/public_keys/capsule.example.com.pem

残りの Capsule Server のロードバランシング用の設定

この手順は、Capsule Server が Puppet 証明書を署名するように設定するシステムを除き、各 Capsule Server で実行します。

  1. Satellite Server で、Capsule Server の Katello 証明書を生成します。

    # capsule-certs-generate \
    --foreman-proxy-fqdn capsule.example.com \
    --certs-tar "/root/capsule.example.com-certs.tar" \
    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    capsule-certs-generate コマンドの出力である satellite-installer コマンド例をメモして、Capsule Server 証明書をインストールします。

  2. 証明書アーカイブファイルを Satellite Server から Capsule Server にコピーします。

    # scp /root/capsule.example.com-certs.tar \
    root@capsule.example.com:capsule.example.com-certs.tar
    Copy to Clipboard Toggle word wrap
  3. Capsule Server で、puppetserver パッケージをインストールします。

    # yum install puppetserver
    Copy to Clipboard Toggle word wrap
  4. Capsule Server で、Puppet 証明書用のディレクトリーを作成します。

    # mkdir -p /etc/puppetlabs/puppet/ssl/certs/ \
    /etc/puppetlabs/puppet/ssl/private_keys/ \
    /etc/puppetlabs/puppet/ssl/public_keys/
    Copy to Clipboard Toggle word wrap
  5. Capsule Server で、Capsule Server を設定するシステムから、対象の Capsule Server の Puppet 証明書をコピーして、Puppet 証明書を署名します。

    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/certs/ca.pem \
    /etc/puppetlabs/puppet/ssl/certs/ca.pem
    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/certs/capsule.example.com.pem \
    /etc/puppetlabs/puppet/ssl/certs/capsule.example.com.pem
    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/private_keys/capsule.example.com.pem \
    /etc/puppetlabs/puppet/ssl/private_keys/capsule.example.com.pem
    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/public_keys/capsule.example.com.pem \
    /etc/puppetlabs/puppet/ssl/public_keys/capsule.example.com.pem
    Copy to Clipboard Toggle word wrap
  6. Capsule Server で、ディレクトリーの所有権をユーザー puppet、グループ puppet に変更し、SELinux コンテキストを設定します。

    # chown -R puppet:puppet /etc/puppetlabs/puppet/ssl/
    # restorecon -Rv /etc/puppetlabs/puppet/ssl/
    Copy to Clipboard Toggle word wrap
  7. capsule-certs-generate コマンドの出力から取得する satellite-installer コマンドに次のオプションを追加します。

    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "false" \
    --puppet-server-ca                         "false" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  8. 以下のように、Capsule Server で、satellite-installer コマンドを実行します。

    # satellite-installer --scenario capsule \
    --foreman-proxy-content-parent-fqdn        "satellite.example.com" \
    --foreman-proxy-register-in-foreman        "true" \
    --foreman-proxy-foreman-base-url           "https://satellite.example.com" \
    --foreman-proxy-trusted-hosts              "satellite.example.com" \
    --foreman-proxy-trusted-hosts              "capsule.example.com" \
    --foreman-proxy-oauth-consumer-key         "oauth key" \
    --foreman-proxy-oauth-consumer-secret      "oauth secret" \
    --foreman-proxy-content-certs-tar          "capsule.example.com-certs.tar" \
    --puppet-server-foreman-url                "https://satellite.example.com" \
    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "false" \
    --puppet-server-ca                         :false" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap

次のセクションでは、Puppet を使用せず、カスタム SSL 証明書を使用する Capsule Server をロードバランシング用に設定する方法を説明します。

4.3.1. Capsule Server のカスタム SSL 証明書の作成

この手順では、証明書署名要求の設定ファイルを作成する方法を示します。ロードバランサーとサブジェクトの別名 (SAN) などのロードバランシング用に設定するすべての Capsule Server が含まれます。ロードバランシング用に設定する Capsule Server ごとにこの手順を実行してください。

手順

  1. Capsule Server で、すべてのソース証明書ファイルを含むディレクトリーを作成し、root ユーザーのみがアクセスできるようにします。

    # mkdir /root/capsule_cert
    # cd /root/capsule_cert
    Copy to Clipboard Toggle word wrap
  2. Certificate Signing Request (CSR) を署名する秘密鍵を作成します。

    この Capsule Server の秘密鍵がすでにある場合は、この手順を省略します。

    # openssl genrsa -out /root/capsule_cert/capsule_cert_key.pem 4096
    Copy to Clipboard Toggle word wrap
  3. 証明書要求設定ファイルを作成して、次の内容を追加します。

    [ req ]
    default_bits       = 4096
    distinguished_name = req_distinguished_name
    req_extensions     = req_ext
    prompt = no
    
    [ req_distinguished_name ]
    countryName=2 Letter Country Code
    stateOrProvinceName=State or Province Full Name
    localityName=Locality Name
    0.organizationName=Organization Name
    organizationalUnitName=Capsule Organization Unit Name
    commonName=capsule.example.com  
    1
    
    emailAddress=Email Address
    
    [ req_ext ]
    #authorityKeyIdentifier=keyid,issuer
    #basicConstraints=CA:FALSE
    keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
    subjectAltName = @alt_names
    
    [alt_names]                  
    2
    
    DNS.1 = loadbalancer.example.com
    DNS.2 = capsule.example.com
    DNS.3 = capsule02.example.com
    DNS.4 = capsule03.example.com
    Copy to Clipboard Toggle word wrap
    1
    証明書の共通名は、Capsule Server の FQDN と一致する必要があります。ロードバランシング用に設定する各 Capsule Server でコマンドを実行するたびに、必ず変更します。
    2
    [alt_names] の下に、ロードバランサーの FQDN と、ロードバランシング用に設定するすべての Capsule Server を追加します。
  4. SAN 証明書の証明書署名要求 (CSR) を作成します。

    # openssl req \
    -key /root/capsule_cert/capsule_cert_key.pem \ 
    1
    
    -config SAN_config.cfg \                   
    2
    
    -out /root/capsule_cert/capsule_cert_csr.pem   
    3
    Copy to Clipboard Toggle word wrap
    1
    証明書の署名に使用する Capsule Server の秘密鍵
    2
    証明書要求の設定ファイル
    3
    証明書署名要求ファイル
  5. 証明書要求を認証局に送信します。

    要求を送信する場合は、証明書の有効期限を指定してください。証明書要求を送信する方法は異なるため、推奨の方法について認証局にお問い合わせください。要求への応答で、認証局バンドルと署名済み証明書を別々のファイルで受け取ることになります。

  6. 認証局バンドル、認証局から受け取った Capsule Server の証明書ファイル、Capsule Server の秘密鍵を、Satellite Server にコピーします。
  7. Satellite Server で、Capsule Server 証明書入力ファイルを検証します。

    # katello-certs-check \
    -c /root/capsule_cert/capsule_cert.pem \      
    1
    
    -k /root/capsule_cert/capsule_cert_key.pem \  
    2
    
    -b /root/capsule_cert/ca_cert_bundle.pem      
    3
    Copy to Clipboard Toggle word wrap
    1
    認証局により提供された Capsule Server 証明書ファイル
    2
    証明書の署名に使用した Capsule Server の秘密鍵
    3
    認証局により提供された認証局バンドル

    katello-certs-check コマンドの出力である capsule-certs-generate コマンドの例をメモして、この Capsule Server の認証アーカイブファイルを作成します。

この手順は、ロードバランシング用に設定する Capsule Server ごとに実行します。

手順

  1. katello-certs-check コマンドの出力から取得する capsule-certs-generateコマンドに次のオプションを追加します。

    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap
  2. Satellite Server で、以下のように capsule-certs-generate コマンドを入力して Capsule 証明書を生成します。

    # capsule-certs-generate \
    --foreman-proxy-fqdn capsule.example.com \
    --certs-tar /root/capsule_cert/capsule.tar \
    --server-cert /root/capsule_cert/capsule.pem \
    --server-key /root/capsule_cert/capsule.pem \
    --server-ca-cert /root/capsule_cert/ca_cert_bundle.pem \
    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    出力からの satellite-installer コマンド例をメモし、Capsule Server 証明書をインストールします。

  3. 証明書アーカイブファイルを Satellite Server から Capsule Server にコピーします。

    # scp /root/capsule.example.com-certs.tar \
    root@capsule.example.com:capsule.example.com-certs.tar
    Copy to Clipboard Toggle word wrap
  4. capsule-certs-generate コマンドの出力から取得する satellite-installer コマンドに次のオプションを追加します。コマンドの入力先の Capsule Server を参照するように、--puppet-ca-server オプションを設定します。Puppet CA は、使用する予定があるかどうかに関係なく、Capsule Server にインストールする必要があります。Puppet は、デフォルトの単一ノード設定に設定されます。

    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  5. 以下のように、Capsule Server で、satellite-installer コマンドを実行します。

    # satellite-installer --scenario capsule \
    --foreman-proxy-content-parent-fqdn        "satellite.example.com" \
    --foreman-proxy-register-in-foreman        "true" \
    --foreman-proxy-foreman-base-url           "https://satellite.example.com" \
    --foreman-proxy-trusted-hosts              "satellite.example.com" \
    --foreman-proxy-trusted-hosts              "capsule.example.com" \
    --foreman-proxy-oauth-consumer-key         "oauth key" \
    --foreman-proxy-oauth-consumer-secret      "oauth secret" \
    --foreman-proxy-content-certs-tar          "capsule.example.com-certs.tar" \
    --puppet-server-foreman-url                "https://satellite.example.com" \
    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap

次のセクションでは、Puppet を使用し、カスタム SSL 証明書を使用する Capsule Server をロードバランシング用に設定する方法を説明します。

4.4.1. Capsule Server のカスタム SSL 証明書の作成

この手順では、証明書署名要求の設定ファイルを作成する方法を示します。ロードバランサーとサブジェクトの別名 (SAN) などのロードバランシング用に設定するすべての Capsule Server が含まれます。ロードバランシング用に設定する Capsule Server ごとにこの手順を実行してください。

手順

  1. Capsule Server で、すべてのソース証明書ファイルを含むディレクトリーを作成し、root ユーザーのみがアクセスできるようにします。

    # mkdir /root/capsule_cert
    # cd /root/capsule_cert
    Copy to Clipboard Toggle word wrap
  2. Certificate Signing Request (CSR) を署名する秘密鍵を作成します。

    この Capsule Server の秘密鍵がすでにある場合は、この手順を省略します。

    # openssl genrsa -out /root/capsule_cert/capsule.pem 4096
    Copy to Clipboard Toggle word wrap
  3. 証明書要求設定ファイルを作成して、次の内容を追加します。

    [ req ]
    default_bits       = 4096
    distinguished_name = req_distinguished_name
    req_extensions     = req_ext
    prompt = no
    
    [ req_distinguished_name ]
    countryName=2 Letter Country Code
    stateOrProvinceName=State or Province Full Name
    localityName=Locality Name
    0.organizationName=Organization Name
    organizationalUnitName=Capsule Organization Unit Name
    commonName=capsule.example.com  
    1
    
    emailAddress=Email Address
    
    [ req_ext ]
    #authorityKeyIdentifier=keyid,issuer
    #basicConstraints=CA:FALSE
    keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
    subjectAltName = @alt_names
    
    [alt_names]                  
    2
    
    DNS.1 = loadbalancer.example.com
    DNS.2 = capsule.example.com
    DNS.3 = capsule02.example.com
    DNS.4 = capsule03.example.com
    Copy to Clipboard Toggle word wrap
    1
    証明書の共通名は、Capsule Server の FQDN と一致する必要があります。各 Capsule Server でコマンドを実行するたびに必ず変更します。
    2
    [alt_names] の下に、ロードバランサーサーバーの FQDN と、ロードバランシング用に設定するすべての Capsule Server を追加します。
  4. SAN 証明書の証明書署名要求 (CSR) を作成します。

    # openssl req \
    -key /root/capsule_cert/capsule.pem \ 
    1
    
    -config SAN_config.cfg \          
    2
    
    -out /root/capsule_cert/capsule.pem   
    3
    Copy to Clipboard Toggle word wrap
    1
    証明書の署名に使用する Capsule Server の秘密鍵
    2
    証明書要求の設定ファイル
    3
    証明書署名要求ファイル
  5. 証明書要求を認証局に送信します。

    要求を送信する場合は、証明書の有効期限を指定してください。証明書要求を送信する方法は異なるため、推奨の方法について認証局にお問い合わせください。要求への応答で、認証局バンドルと署名済み証明書を別々のファイルで受け取ることになります。

  6. 認証局バンドル、認証局から受け取った Capsule Server の証明書ファイル、Capsule Server の秘密鍵を、Satellite Server にコピーし、検証します。
  7. Satellite Server で、Capsule Server 証明書入力ファイルを検証します。

    # katello-certs-check \
    -c /root/capsule_cert/capsule.pem \      
    1
    
    -k /root/capsule_cert/capsule.pem \      
    2
    
    -b /root/capsule_cert/ca_cert_bundle.pem 
    3
    Copy to Clipboard Toggle word wrap
    1
    認証局により提供された Capsule Server 証明書ファイル
    2
    証明書の署名に使用した Capsule Server の秘密鍵
    3
    認証局により提供された認証局バンドル

    katello-certs-check コマンドの出力である capsule-certs-generate コマンドの例をメモして、この Capsule Server の認証アーカイブファイルを作成します。

Satellite 設定で Puppet を使用する場合は、次の手順を実行する必要があります。

Puppet 証明書を生成して署名するための Capsule Server の設定

この手順は、ロードバランシング用に設定した他の Capsule Server すべてに、Puppet 証明書を生成するように Capsule Server を設定するシステムにのみ、実行してください。この手順の例では、この Capsule Server の FQDN は capsule_ca.example.com です。

  1. katello-certs-check コマンドの出力から取得する capsule-certs-generateコマンドに次のオプションを追加します。

    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap
  2. Satellite Server で、以下のように capsule-certs-generate コマンドを入力して Capsule 証明書を生成します。

    # capsule-certs-generate \
    --foreman-proxy-fqdn capsule_ca.example.com \
    --certs-tar /root/capsule_cert/capsule_ca.tar \
    --server-cert /root/capsule_cert/capsule_ca.pem \
    --server-key /root/capsule_cert/capsule_ca.pem \
    --server-ca-cert /root/capsule_cert/ca_cert_bundle.pem \
    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    出力からの satellite-installer コマンド例をメモし、Capsule Server 証明書をインストールします。

  3. 証明書アーカイブファイルを Satellite Server から Capsule Server にコピーします。
  4. capsule-certs-generate コマンドの出力から取得する satellite-installer コマンドに次のオプションを追加します。

    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  5. 以下のように、Capsule Server で、satellite-installer コマンドを実行します。

    satellite-installer --scenario capsule \
    --foreman-proxy-content-parent-fqdn        "satellite.example.com" \
    --foreman-proxy-register-in-foreman        "true" \
    --foreman-proxy-foreman-base-url           "https://satellite.example.com" \
    --foreman-proxy-trusted-hosts              "satellite.example.com" \
    --foreman-proxy-trusted-hosts              "capsule_ca.example.com" \
    --foreman-proxy-oauth-consumer-key         "oauth key" \
    --foreman-proxy-oauth-consumer-secret      "oauth secret" \
    --foreman-proxy-content-certs-tar          "certs.tgz" \
    --puppet-server-foreman-url                "https://satellite.example.com" \
    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "true" \
    --puppet-server-ca                         "true" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  6. Capsule Server で、ロードバランシングを設定する他のすべての Capsule に対して Puppet 証明書を生成します。ただし、Puppet 証明書署名を設定する最初のシステムを除きます。

    # puppet cert generate capsule.example.com \
    --dns_alt_names=loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    このコマンドは、Puppet 証明書署名を行う Capsule Server インスタンスに次のファイルを作成します。

    • /etc/puppetlabs/puppet/ssl/certs/ca.pem
    • /etc/puppetlabs/puppet/ssl/certs/capsule.example.com.pem
    • /etc/puppetlabs/puppet/ssl/private_keys/capsule.example.com.pem
    • /etc/puppetlabs/puppet/ssl/public_keys/capsule.example.com.pem

残りの Capsule Server のロードバランシング用の設定

この手順は、Puppet 証明書に署名するために Capsule Server を設定するシステムを除き、各 Capsule Server で実行します。

  1. katello-certs-check コマンドの出力から取得する capsule-certs-generateコマンドに次のオプションを追加します。

    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap
  2. Satellite Server で、以下のように capsule-certs-generate コマンドを入力して Capsule 証明書を生成します。

    # capsule-certs-generate \
    --foreman-proxy-fqdn capsule.example.com \
    --certs-tar /root/capsule_cert/capsule.tar \
    --server-cert /root/capsule_cert/capsule.pem \
    --server-key /root/capsule_cert/capsule.pem \
    --server-ca-cert /root/capsule_cert/ca_cert_bundle.pem \
    --foreman-proxy-cname loadbalancer.example.com
    Copy to Clipboard Toggle word wrap

    出力からの satellite-installer コマンド例をメモし、Capsule Server 証明書をインストールします。

  3. 証明書アーカイブファイルを Satellite Server から Capsule Server にコピーします。

    # scp /root/capsule.example.com-certs.tar \
    root@capsule.example.com:capsule.example.com-certs.tar
    Copy to Clipboard Toggle word wrap
  4. Capsule Server で、puppetserver パッケージをインストールします。

    # yum install puppetserver
    Copy to Clipboard Toggle word wrap
  5. Capsule Server で、Puppet 証明書用のディレクトリーを作成します。

    # mkdir -p /etc/puppetlabs/puppet/ssl/certs/ \
    /etc/puppetlabs/puppet/ssl/private_keys/ \
    /etc/puppetlabs/puppet/ssl/public_keys/
    Copy to Clipboard Toggle word wrap
  6. Capsule Server で、Capsule Server を設定するシステムから、対象の Capsule Server の Puppet 証明書をコピーして、Puppet 証明書を署名します。

    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/certs/ca.pem \
    /etc/puppetlabs/puppet/ssl/certs/ca.pem
    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/certs/capsule.example.com.pem \
    /etc/puppetlabs/puppet/ssl/certs/capsule.example.com.pem
    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/private_keys/capsule.example.com.pem \
    /etc/puppetlabs/puppet/ssl/private_keys/capsule.example.com.pem
    # scp root@capsule_ca.example.com:/etc/puppetlabs/puppet/ssl/public_keys/capsule.example.com.pem \
    /etc/puppetlabs/puppet/ssl/public_keys/capsule.example.com.pem
    Copy to Clipboard Toggle word wrap
  7. Capsule Server で、ディレクトリーの所有権をユーザー puppet、グループ puppet に変更し、SELinux コンテキストを設定します。

    # chown -R puppet:puppet /etc/puppetlabs/puppet/ssl/
    # restorecon -Rv /etc/puppetlabs/puppet/ssl/
    Copy to Clipboard Toggle word wrap
  8. capsule-certs-generate コマンドの出力から取得する satellite-installer コマンドに次のオプションを追加します。

    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "false" \
    --puppet-server-ca                         "false" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
  9. 以下のように、Capsule Server で、satellite-installer コマンドを実行します。

    # satellite-installer --scenario capsule \
    --foreman-proxy-content-parent-fqdn        "satellite.example.com" \
    --foreman-proxy-register-in-foreman        "true" \
    --foreman-proxy-foreman-base-url           "https://satellite.example.com" \
    --foreman-proxy-trusted-hosts              "satellite.example.com" \
    --foreman-proxy-trusted-hosts              "capsule.example.com" \
    --foreman-proxy-oauth-consumer-key         "oauth key" \
    --foreman-proxy-oauth-consumer-secret      "oauth secret" \
    --foreman-proxy-content-certs-tar          "capsule.example.com-certs.tar" \
    --puppet-server-foreman-url                "https://satellite.example.com" \
    --certs-cname                              "loadbalancer.example.com" \
    --puppet-dns-alt-names                     "loadbalancer.example.com" \
    --puppet-ca-server                         "capsule_ca.example.com" \
    --foreman-proxy-puppetca                   "false" \
    --puppet-server-ca                         "false" \
    --enable-foreman-proxy-plugin-remote-execution-ssh
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat