Red Hat OpenShift 仮想化環境

最終公開日 : Oct 24, 2026
Citrix® は、Citrix が管理する OpenShift プラグインを介して、Red Hat OpenShift ワークロードを管理します。このプラグインを使用すると、OpenShift クラスターへのホスティング接続とホスティングユニットの作成、カタログの作成、およびカタログ内のマシンの電源管理を行うことができます。
以下の構成がサポートされています。
  • ネットワークオプション:
    • Linux Bridge および OVS Bridge: クラスターネットワークで利用可能です。
  • ストレージオプション:
    • ローカルストレージ: ノード上の永続ストレージでサポートされています。
    • NetApp ストレージ: エンタープライズグレードの外部ストレージ統合でサポートされています。

主な手順

  • Red Hat OpenShift 環境をセットアップします。
  • OpenShift クラスターへの接続とリソースを作成します。
  • マシンカタログを作成します。
  • デリバリーグループを作成します。

Red Hat OpenShift 環境をセットアップする

  1. OpenShift クラスターを作成し、クラスター API アドレスを取得する: OpenShift コンソールで、クラスターをセットアップした後、Home > Overview > Details に移動し、クラスター API アドレスを取得します。
  2. 「サービスアカウントを作成し、OpenShiftコマンドラインインターフェイス (CLI) (ocコマンド) を使用してサービスアカウントトークンを取得します」: サービスアカウントトークンは、サービスアカウントに関連付けられた認証資格情報です。サービスアカウントは、OpenShiftプラグインをOpenShiftで認証するために使用されます。各サービスアカウントは、1つの名前空間に関連付けられています。
  3. 「サービスアカウントの権限を構成します」: サービスアカウントには複数のロールを設定でき、各ロールはOpenShiftプラグインがどのリソースに対してどのようなアクションを実行できるかを定義する権限で構成されます。ロールはロールバインディングを介してバインドされ、ロールバインディングには次の2種類があります。
    1. クラスター全体のロールバインディング: OpenShiftからイベントを受信するために使用されます。 名前空間にバインドされたロールバインディング: 特定の名前空間でVMを管理するために使用されます。
    2. 名前空間にバインドされたロールバインディング: 特定の名前空間でVMを管理するために使用されます。
  4. 「名前空間 (プロジェクト) を作成します」: OpenShiftの名前空間は、VMやネットワークなどのリソースをグループ化する分離された環境であり、より良い整理とアクセス制御を可能にします。名前空間はKubernetesの用語であり、プロジェクトはOpenShiftの用語です。OpenShiftプラグインの観点からは、これらは同じです。VMを展開するには名前空間が必要です。OpenShiftコンソールまたはOpenShift Container Platform CLIを使用して名前空間を作成します。
  5. 「ターゲットの名前空間の下にネットワークアタッチメント定義を1つ作成します」: ネットワークアタッチメント定義は、OpenShiftで実行されているVMのネットワーク構成を指定します。Networking > NetworkAttachmentDefinitionsの下で、各名前空間のネットワークアタッチメント定義を確認できます。
  6. 「ストレージクラスを構成します」: ストレージクラスは、VMストレージがどのように割り当てられるかを定義します。Storage > StorageClassの下で、ストレージプロバイダーのリストを構成および確認できます。

サービスアカウントを作成する

  1. ocコマンドラインツールをダウンロードして解凍します。
  2. ログインIDを使用してOpenShiftコンソールにアクセスします。
  3. ユーザープロファイルをクリックし、ログインコマンドをコピーをクリックします。
  4. トークンを表示をクリックし、トークンをコピーします。
  5. ocコマンドラインを使用してログインコマンドを実行します。例:
    .\oc.exe login --token=<token> --server=<server address>
  6. サービスアカウントを作成します。
    • デフォルトの名前空間の下にサービスアカウントを作成する場合は、次を実行します。
      .\oc.exe create sa <service account name>
    • 独自のネームスペースでサービスアカウントを作成する場合は、次を実行します。
      .\oc.exe create sa <service account name> -n mynamespace
  7. シークレット用の YAML ファイルを作成します。例:
    • デフォルトのネームスペースでサービスアカウントを作成する場合:
      apiVersion: v1
      kind: Secret
      metadata:
      name: service account name
      annotations:
      kubernetes.io/service-account.name: service account name
      type: kubernetes.io/service-account-token
    • 独自のネームスペースでサービスアカウントを作成する場合:
      apiVersion: v1
      kind: Secret
      metadata:
      name: service account name
      namespace: mynamespace
      annotations:
      kubernetes.io/service-account.name: service account name
       type: kubernetes.io/service-account-token
  8. YAMLを適用します。
    .\oc.exe apply -f <yamlFile.yaml>
    注:
    oc はトークンを取得するためのシークレットを記述します。トークンはパスワードとして使用されます。

サービスアカウントのロールとロールバインディングを作成する

クラスター全体のロールバインディングにより、サービスアカウントはクラスター全体のすべてのVMイベントを読み取る権限を持ち、OpenShiftプラグインがすべてのVM関連イベントに対して単一のイベントウォッチャーを維持できるようになります。 ネームスペースロールバインディングにより、サービスアカウントはターゲットネームスペース内のVMを管理する権限を持ちます。 スクリプトを使用してロールを作成し、それらをサービスアカウントにバインドできます。<https://github.com/citrix/citrix-mcs-sdk-samples/tree/main/OpenShift/Hosting%20Connection/Role/> を参照してください。

次のステップ

詳細情報