5.11. セキュアな PCP 接続の確立
セキュアな PCP プロトコルエクスチェンジに参加するように、PCP コレクターとモニタリングコンポーネントを設定できます。
5.11.1. セキュアな PCP 接続 リンクのコピーリンクがクリップボードにコピーされました!
Performance Co-Pilot (PCP) コレクターとモニタリングコンポーネントの間にセキュアな接続を確立できます。PCP コレクターコンポーネントは、さまざまなソースからパフォーマンスデータを収集および抽出する PCP の構成要素です。PCP モニターコンポーネントは、PCP コレクターコンポーネントがインストールされているホストまたはアーカイブから収集されたデータを表示する PCP の構成要素です。これらのコンポーネント間にセキュアな接続を確立すると、収集および監視対象のデータへの、権限のない第三者によるアクセスや変更を防ぐことができます。
Performance Metrics Collector Daemon (pmcd) との接続は、すべて TCP/IP ベースの PCP プロトコルを使用して行われます。プロトコルプロキシーと PCP REST API は pmproxy デーモンによって提供されます。REST API は HTTPS 経由でアクセスできるため、セキュアな接続が確保されます。
pmcd デーモンと pmproxy デーモンはどちらも、単一ポート上で TLS 通信と TLS 以外の通信を同時に実行できます。pmcd のデフォルトポートは 44321 で、pmproxy のデフォルトポートは 44322 です。これは、PCP コレクターシステムで TLS 通信と TLS 以外の通信のどちらかを選択する必要がなく、両方を同時に使用できることを意味します。
5.11.2. PCP コレクターコンポーネントのセキュアな接続の設定 リンクのコピーリンクがクリップボードにコピーされました!
セキュアな PCP プロトコルエクスチェンジに参加するには、すべての PCP コレクターシステムに有効な証明書が必要です。
pmproxy デーモンは、TLS の観点からはクライアントとサーバーの両方として動作します。
前提条件
- PCP がインストールされている。詳細は PCP のインストールおよび有効化 を参照してください。
クライアントの秘密鍵が
/etc/pcp/tls/client.keyファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。秘密鍵および証明書署名要求 (CSR) を作成する方法と、認証局 (CA) からの証明書を要求する方法は、CA のドキュメントを参照してください。
-
TLS クライアント証明書が
/etc/pcp/tls/client.crtファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。 -
CA 証明書が
/etc/pcp/tls/ca.crtファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。さらに、pmproxyデーモンの場合、次の条件を満たす必要があります。 -
サーバーの秘密鍵が
/etc/pcp/tls/server.keyファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。 -
TLS サーバー証明書が
/etc/pcp/tls/server.crtファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。
手順
CA 発行の証明書を使用してセキュアな接続を確立するために、コレクターシステム上の PCP TLS 設定ファイルを更新します。
# cat > /etc/pcp/tls.conf << END tls-ca-cert-file = /etc/pcp/tls/ca.crt tls-key-file = /etc/pcp/tls/server.key tls-cert-file = /etc/pcp/tls/server.crt tls-client-key-file = /etc/pcp/tls/client.key tls-client-cert-file = /etc/pcp/tls/client.crt ENDPCP コレクターインフラストラクチャーを再起動します。
# systemctl restart pmcd.service # systemctl restart pmproxy.service
検証
TLS 設定を確認します。
pmcdサービスの場合:# grep 'Info:' /var/log/pcp/pmcd/pmcd.log [Tue Feb 07 11:47:33] pmcd(6558) Info: OpenSSL 3.0.7 setuppmproxyサービスの場合:# grep 'Info:' /var/log/pcp/pmproxy/pmproxy.log [Tue Feb 07 11:44:13] pmproxy(6014) Info: OpenSSL 3.0.7 setup
5.11.3. PCP モニタリングコンポーネントのセキュアな接続の設定 リンクのコピーリンクがクリップボードにコピーされました!
セキュアな PCP プロトコルエクスチェンジに参加するように、PCP モニタリングコンポーネントを設定します。
前提条件
- PCP がインストールされている。詳細は PCP のインストールおよび有効化 を参照してください。
クライアントの秘密鍵が
~/.pcp/tls/client.keyファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。秘密鍵および証明書署名要求 (CSR) を作成する方法と、認証局 (CA) からの証明書を要求する方法は、CA のドキュメントを参照してください。
-
TLS クライアント証明書が
~/.pcp/tls/client.crtファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。 -
CA 証明書が
/etc/pcp/tls/ca.crtファイルに保存されている。別のパスを使用する場合は、この手順の該当するステップを調整してください。
手順
次の情報を使用して TLS 設定ファイルを作成します。
$ home=echo ~ $ cat > ~/.pcp/tls.conf << END tls-ca-cert-file = /etc/pcp/tls/ca.crt tls-key-file = $home/.pcp/tls/client.key tls-cert-file = $home/.pcp/tls/client.crt ENDセキュアな接続を確立します。
$ export PCP_SECURE_SOCKETS=enforce $ export PCP_TLSCONF_PATH=~/.pcp/tls.conf
検証
セキュアな接続が設定されていることを確認します。
$ pminfo --fetch --host pcps://localhost kernel.all.load kernel.all.load inst [1 or "1 minute"] value 1.26 inst [5 or "5 minute"] value 1.29 inst [15 or "15 minute"] value 1.28