11.3.4. 独自の CA 証明書の更新


この手順では、以前にインストールした CA 証明書および鍵を更新する方法を説明します。期限切れ間近の CA 証明書を交換するには、更新期間中にこの手順を実施する必要があります。

以下の手順を使用して、独自のクラスターまたはクライアント CA 証明書をインストールできます。

この手順では、PEM 形式の CA 証明書の更新を説明します。PKCS #12 形式の証明書を使用することもできます。

前提条件

  • Cluster Operator が稼働している必要があります。
  • 以前に独自の CA 証明書と秘密鍵をインストールした Kafka クラスターが必要です。
  • クラスターおよびクライアントの PEM 形式による新しい X.509 証明書と鍵が必要です。

これらは、openssl コマンドを使用して生成できます。以下に例を示します。

openssl req -x509 -new -days NUMBER-OF-DAYS-VALID --nodes -out ca.crt -keyout ca.key

手順

  1. Secret で現在の CA 証明書の詳細を確認します。

    oc describe secret CA-CERTIFICATE-SECRET

    CA-CERTIFICATE-SECRETSecretの名前で、クラスタCA証明書の場合はKAFKA-CLUSTER-NAME-cluster-ca-certであり、クライアントCA証明書の場合はKAFKA-CLUSTER-NAME-clients-ca-certとなります。

  2. シークレットに既存の CA 証明書が含まれるディレクトリーを作成します。

    mkdir new-ca-cert-secret
    cd new-ca-cert-secret
  3. 更新する各 CA 証明書のシークレットを取得します。

    oc get secret CA-CERTIFICATE-SECRET -o 'jsonpath={.data.CA-CERTIFICATE}' | base64 -d > CA-CERTIFICATE

    CA-CERTIFICATE を各 CA 証明書の名前に置き換えます。

  4. 古いca.crtファイルの名前をca-DATE.crt に変更します。ここで DATEは、YEAR-MONTH-DAYTHOUR-MINUTE-SECONDZ形式の証明書の有効期限です。

    例: ca-2018-09-27T17-32-00Z.crt

    mv ca.crt ca-$(date -u -d$(openssl x509 -enddate -noout -in ca.crt | sed 's/.*=//') +'%Y-%m-%dT%H-%M-%SZ').crt
  5. 新規 CA 証明書をディレクトリーにコピーし、ca.crt という名前を付けます。

    cp PATH-TO-NEW-CERTIFICATE ca.crt
  6. CA 証明書を対応する Secret に配置します。

    1. 既存のシークレットを削除します。

      oc delete secret CA-CERTIFICATE-SECRET

      CA-CERTIFICATE-SECRET は最初のステップで返される Secret の名前です。

      「Not Exists」エラーを無視します。

    2. シークレットを再作成します。

      oc create secret generic CA-CERTIFICATE-SECRET --from-file=.
  7. 作成したディレクトリーを削除します。

    cd ..
    rm -r new-ca-cert-secret
  8. CA キーを対応する Secret に配置します。

    1. 既存のシークレットを削除します。

      oc delete secret CA-KEY-SECRET

      CA-KEY-SECRET は CA キーの名前です。これは、クラスター CA キーの場合は KAFKA-CLUSTER-NAME-cluster-ca、クライアント CA キーの場合は KAFKA-CLUSTER-NAME-clients-ca です。

    2. 新しい CA 鍵でシークレットを再作成します。

      oc create secret generic CA-KEY-SECRET --from-file=ca.key=CA-KEY-SECRET-FILENAME
  9. シークレットに strimzi.io/kind=Kafka および strimzi.io/cluster=KAFKA-CLUSTER-NAME ラベルを付けます。

    oc label secret CA-CERTIFICATE-SECRET strimzi.io/kind=Kafka strimzi.io/cluster=KAFKA-CLUSTER-NAME
    oc label secret CA-KEY-SECRET strimzi.io/kind=Kafka strimzi.io/cluster=KAFKA-CLUSTER-NAME
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.