7.2. データプレーンシークレットの作成


データプレーンを動作させるには、いくつかの Secret カスタムリソース (CR) が必要です。Secret CR は、データプレーンノードによって次の機能に使用されます。

  • ノード間のセキュアなアクセスを可能にする。

    • Ansible がデータプレーン上の RHEL ノードを管理できるようにするには、SSH 鍵を生成し、鍵ごとに SSH 鍵の Secret CR を作成する必要があります。Ansible はこのユーザーと鍵を使用してコマンドを実行します。データプレーン内の OpenStackDataPlaneNodeSet CR ごとに SSH キーを作成できます。
    • Compute ノード間でインスタンスを移行できるようにするには、SSH 鍵を生成し、鍵ごとに SSH 鍵の Secret CR を作成する必要があります。
  • Red Hat カスタマーポータルに登録されていないノードのオペレーティングシステムを登録する。
  • ノードのリポジトリーを有効する。
  • コンピュートノードに libvirt へのアクセスを付与する。

前提条件

  • 事前にプロビジョニングされたノードが、パスワードなしの sudo 権限を持つユーザーの $HOME/.ssh/authorized_keys ファイル内の SSH 公開鍵を使用して設定されている。詳細は、RHEL の 基本システム設定 ガイドの sudo アクセスの管理 を参照してください。

手順

  1. プロビジョニングされていないノードの場合は、Ansible の SSH 鍵ペアを作成します。

    $ ssh-keygen -f <key_file_name> -N "" -t rsa -b 4096
    • <key_file_name> は、鍵ペアに使用する名前に置き換えます。
  2. Ansible 用の Secret CR を作成し、クラスターに適用します。

    $ oc create secret generic dataplane-ansible-ssh-private-key-secret \
    --save-config \
    --dry-run=client \
    --from-file=ssh-privatekey=<key_file_name> \
    --from-file=ssh-publickey=<key_file_name>.pub \
    [--from-file=authorized_keys=<key_file_name>.pub] -n openstack \
    -o yaml | oc apply -f -
    • <key_file_name> を SSH キーペアファイルの名前と場所に置き換えます。
    • オプション: データプレーンを作成するときにプロビジョニングする必要があるベアメタルノードに対してのみ、--from-file=authorized_keys オプションを含めます。
  3. コンピュートノードを作成する場合は、移行用のシークレットを作成します。

    1. インスタンス移行用の SSH 鍵ペアを作成します。

      $ ssh-keygen -f ./nova-migration-ssh-key -t ecdsa-sha2-nistp521 -N ''
    2. 移行用の Secret CR を作成し、クラスターに適用します。

      $ oc create secret generic nova-migration-ssh-key \
      --save-config \
      --from-file=ssh-privatekey=nova-migration-ssh-key \
      --from-file=ssh-publickey=nova-migration-ssh-key.pub \
      -n openstack \
      -o yaml | oc apply -f -
  4. Red Hat カスタマーポータルに登録されていないノードの場合は、subscription-manager 認証情報用の Secret CR を作成してノードを登録します。

    $ oc create secret generic subscription-manager \
    --from-literal rhc_auth='{"login": {"username": "<subscription_manager_username>", "password": "<subscription_manager_password>"}}'
    • <subscription_manager_username> を、subscription-manager に設定したユーザー名に置き換えます。
    • <subscription_manager_password> を、subscription-manager に設定したパスワードに置き換えます。
  5. Red Hat レジストリーの認証情報を含む Secret CR を作成します。

    $ oc create secret generic redhat-registry --from-literal edpm_container_registry_logins='{"registry.redhat.io": {"<username>": "<password>"}}'
    • <username><password> を Red Hat レジストリーのユーザー名とパスワードの認証情報に置き換えます。

      レジストリーサービスアカウントの作成方法は、ナレッジベース記事の Creating Registry Service Accounts を参照してください。

  6. コンピュートノードを作成する場合は、libvirt のシークレットを作成します。

    1. ワークステーションに secret_libvirt.yaml という名前のファイルを作成し、libvirt シークレットを定義します。

      apiVersion: v1
      kind: Secret
      metadata:
       name: libvirt-secret
       namespace: openstack
      type: Opaque
      data:
       LibvirtPassword: <base64_password>
      • <base64_password> を、最大長 63 文字の base64 でエンコードされた文字列に置き換えます。次のコマンドを使用して、base64 でエンコードされたパスワードを生成できます。

        $ echo -n <password> | base64
        ヒント

        ユーザー名とパスワードを base64 でエンコードする必要がない場合は、data フィールドの代わりに stringData フィールドを使用してユーザー名とパスワードを設定します。

    2. Secret CR を作成します。

      $ oc apply -f secret_libvirt.yaml -n openstack
  7. Secret CR が作成されたことを確認します。

    $ oc describe secret dataplane-ansible-ssh-private-key-secret
    $ oc describe secret nova-migration-ssh-key
    $ oc describe secret subscription-manager
    $ oc describe secret redhat-registry
    $ oc describe secret libvirt-secret
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る