1.3.4. OpenShift Container Platform CLI からのインストール

  1. Operator 要件を満たした Red Hat Advanced Cluster Management ハブクラスター namespace を作成します。以下のコマンドを実行して、namespace はお使いの Red Hat Advanced Cluster Management ハブクラスターの namespace 名になります。namespace の値は、OpenShift Container Platform 環境では プロジェクト と呼ばれる場合があります。

    oc create namespace <namespace>
  2. プロジェクトの namespace を、作成した namespace に切り替えます。namespace は、手順 1 で作成した Red Hat Advanced Cluster Management ハブクラスター namespace 名に置き換えます。

    oc project <namespace>
  3. OperatorGroup リソースを設定するために YAML ファイルを作成します。namespace ごとに割り当てることができる Operator グループ は 1 つだけです。default はお使いの operator グループ名に置き換えます。namespace はお使いのプロジェクトの namespace 名に置き換えます。以下のサンプルを参照してください。

    apiVersion: operators.coreos.com/v1
    kind: OperatorGroup
    metadata:
      name: <default>
    spec:
      targetNamespaces:
      - <namespace>
  4. 以下のコマンドを実行して OperatorGroup リソースを作成します。operator-group は、作成した operator グループの YAML ファイル名に置き換えます。

    oc apply -f <path-to-file>/<operator-group>.yaml
  5. OpenShift Container Platform サブスクリプションを設定するための YAML ファイルを作成します。ファイルは以下の例のようになります。

    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: acm-operator-subscription
    spec:
      sourceNamespace: openshift-marketplace
      source: redhat-operators
      channel: release-2.4
      installPlanApproval: Automatic
      name: advanced-cluster-management

    注記: Red Hat Advanced Cluster Management ハブクラスターをインフラストラクチャーノードにインストールする場合は、Operator Lifecycle Manager サブスクリプションの追加設定 セクションを参照してください。

  6. 以下のコマンドを実行して OpenShift Container Platform サブスクリプションを作成します。subscription は、作成したサブスクリプションファイル名に置き換えます。

    oc apply -f <path-to-file>/<subscription>.yaml
  7. YAML ファイルを作成して MultiClusterHub カスタムリソースを設定します。デフォルトのテンプレートは、以下の例のようになります。namespace はお使いのプロジェクトの namespace 名に置き換えます。

    apiVersion: operator.open-cluster-management.io/v1
    kind: MultiClusterHub
    metadata:
      name: multiclusterhub
      namespace: <namespace>
    spec: {}

    注記: Red Hat Advanced Cluster Management ハブクラスターをインフラストラクチャーノードにインストールする場合は、MultiClusterHub カスタムリソースの追加設定 セクションを参照してください。

  8. 以下のコマンドを実行して MultiClusterHub カスタムリソースを作成します。custom-resource は、カスタムリソースファイル名に置き換えます。

    oc apply -f <path-to-file>/<custom-resource>.yaml

    以下のエラーで、この手順に失敗した場合でも、リソースは作成され、適用されます。リソースが作成されてから数分後にもう一度コマンドを実行します。

    error: unable to recognize "./mch.yaml": no matches for kind "MultiClusterHub" in version "operator.open-cluster-management.io/v1"
  9. 以下のコマンドを実行してカスタムリソースを編集します。コマンドを実行して、MultiClusterHub カスタムリソースのステータスが status.phase フィールドに Running と表示されるまで、最長 10 分の時間がかかる可能性があります。

    oc get mch -o=jsonpath='{.items[0].status.phase}'
  10. ステータスが Running になってから、ルートの一覧を確認してルートを探し出します。

    oc get routes

Red Hat Advanced Cluster Management を再インストールして、Pod が起動しない場合には、この問題の回避手順について 再インストールに失敗する場合のトラブルシューティング を参照してください。

注記:

  • ClusterRoleBinding が指定された ServiceAccount には、Red Hat Advanced Cluster Management がインストールされている namespace にアクセス権があるユーザー認証情報、および Red Hat Advanced Cluster Management に対して、クラスター管理者権限が割り当てられます。
  • このインストールでは、local-cluster という名前の namespace も作成されます。この namespace は、単独で管理できるように Red Hat Advanced Cluster Management ハブクラスター向けに確保されます。local-cluster という既存の namespace を含めることはできません。セキュリティーの理由上、cluster-administrator のアクセス権がないユーザーには、local-cluster namespace へのアクセス権を割り当てないようにしてください。