1.3. ネットワーク接続時のオンラインインストール


Red Hat Advanced Cluster Management for Kubernetes は {olm-long} でインストールします。Operator Lifecycle Manager は、Red Hat Advanced Cluster Management ハブクラスターを含むコンポーネントのインストール、アップグレード、および削除を管理します。

作業を開始する前に、要件および推奨事項 セクションを参照してから、以下のドキュメントを確認してください。

必要なアクセス権限: クラスターの管理者。OpenShift Container Platform Dedicated 環境に必要なアクセス: cluster-admin パーミッションが必要です。デフォルトで、dedicated-admin ロールには OpenShift Container Platform Dedicated 環境で namespace を作成するために必要なパーミッションがありません。

  • デフォルトでは、ハブクラスターコンポーネントは追加設定なしで OpenShift Container Platform クラスターのワーカーノードにインストールされます。OpenShift Container Platform OperatorHub Web コンソールインターフェイスを使用するか、OpenShift Container Platform CLI を使用してハブクラスターをワーカーノードにインストールできます。
  • OpenShift Container Platform クラスターをインフラストラクチャーノードで設定している場合は、追加のリソースパラメーターを使用して、OpenShift Container Platform CLI を使用してハブクラスターをそれらのインフラストラクチャーノードにインストールできます。詳細は、インフラストラクチャーノードへの Red Hat Advanced Cluster Management ハブクラスターのインストール セクションを参照してください。
  • OpenShift Container Platform または Red Hat Advanced Cluster Management で作成されていない Kubernetes クラスターをインポートする予定の場合は、イメージプルシークレットを設定する必要があります。

詳細設定の設定方法については、本書の MultiClusterHub の詳細設定セクション のオプションを参照してください。

1.3.1. 前提条件

Red Hat Advanced Cluster Management をインストールする前に、以下の要件を満たす必要があります。

  • Red Hat OpenShift Container Platform クラスターは、OpenShift Container Platform コンソールから OperatorHub カタログの Red Hat Advanced Cluster Management Operator にアクセスできる必要があります。
  • catalog.redhat.com へのアクセスがある。
  • お使いの環境に OpenShift Container Platform バージョン 4.9 以降をデプロイし、OpenShift Container Platform CLI でログインしている。お使いの環境に OpenShift Container Platform バージョン 4.9 以降をデプロイし、OpenShift Container Platform CLI でログインしている。OpenShift Container Platform の以下のインストールドキュメントを参照し、OpenShift Container Platform バージョン 4.10 の以前のバージョンに変更します。
  • OpenShift Container Platform のコマンドラインインターフェイス (CLI) は、oc コマンドを実行できるように設定している。Red Hat OpenShift CLI のインストールおよび設定の詳細は、CLI の使用方法 を参照してください。
  • namespace の作成が可能な OpenShift Container Platform のパーミッションを設定している。namespace がないと、インストールは失敗します。
  • operator の依存関係にアクセスするには、インターネット接続が必要。
  • 重要: OpenShift Container Platform Dedicated 環境にインストールするには、以下の要件を参照してください。

    • OpenShift Container Platform Dedicated 環境が設定され、実行している。
    • ハブクラスターのインストール先の OpenShift Container Platform Deplicated 環境での cluster-admin がある。
    • インポートするには、2.6 の klusterlet Operator の stable-2.0 チャネルを使用する必要があります。

1.3.2. OpenShift Container Platform インストールの確認

レジストリー、ストレージサービスなど、サポート対象の OpenShift Container Platform バージョンがインストールされ、機能する状態である必要があります。OpenShift Container Platform のインストールの詳細は、OpenShift Container Platform のドキュメントを参照してください。

  1. Red Hat Advanced Cluster Management ハブクラスターが OpenShift Container Platform クラスターにインストールされていないことを確認します。Red Hat Advanced Cluster Management では、各 OpenShift Container Platform クラスターでは 1 つの Red Hat Advanced Cluster Management ハブクラスターのインストールのみが可能です。Red Hat Advanced Cluster Management ハブクラスターがインストールされていない場合は、以下の手順に進みます。
  2. OpenShift Container Platform クラスターが正しく設定されていることを確認するには、以下のコマンドを使用して OpenShift Container Platform Web コンソールにアクセスします。

    kubectl -n openshift-console get route

    以下の出力例を参照してください。

    openshift-console console console-openshift-console.apps.new-coral.purple-chesterfield.com
    console   https   reencrypt/Redirect     None
  3. ブラウザーで URL を開き、結果を確認します。コンソール URL の表示が console-openshift-console.router.default.svc.cluster.local の場合は、Red Hat OpenShift Container Platform のインストール時に openshift_master_default_subdomain を設定します。https://console-openshift-console.apps.new-coral.purple-chesterfield.com の例を参照してください。

コンソールまたは CLI から、Red Hat Advanced Cluster Management のインストールに進みます。どちらの手順も文書化されています。

1.3.3. OperatorHub Web コンソールインターフェイスからのインストール

ベストプラクティス: OpenShift Container Platform ナビゲーションの Administrator ビューから、OpenShift Container Platform で提供される OperatorHub Web コンソールインターフェイスをインストールします。

  1. Operators > OperatorHub を選択して利用可能な Operator の一覧にアクセスし、Advanced Cluster Management for Kubernetes Operator を選択します。
  2. Operator サブスクリプション ページで、インストールのオプションを選択します。

    • namespace 情報:

      • Red Hat Advanced Cluster Management ハブクラスターは、独自の namespace またはプロジェクトにインストールする必要があります。
      • デフォルトでは、OperatorHub コンソールのインストールプロセスで open-cluster-management という namespace が作成されます。ベストプラクティス: 利用可能な場合は open-cluster-management namespace を使用してください。
      • open-cluster-management という名前の namespace がすでにある場合は、別の namespace を選択します。
    • チャネル: インストールするリリースに対応するチャネルを選択します。チャネルを選択すると、指定のリリースがインストールされ、そのリリース内の今後のエラータ更新が取得されます。
    • 更新の承認ストラテジー: 承認ストラテジーでは、サブスクライブ先のチャネルまたはリリースに更新を適用するのに必要な人の間のやり取りを特定します。

      • Automatic を選択して、そのリリース内の更新が自動的に適用されるようにします。
      • Manual を選択して、更新が利用可能になると通知を受け取ります。更新がいつ適用されるかについて懸念がある場合は、これがベストプラクティスになる可能性があります。

    重要: 次のマイナーリリースにアップグレードするには、 OperatorHub ページに戻り、最新リリースの新規チャネルを選択する必要があります。

  3. Install を選択して変更を適用し、Operator を作成します。
  4. MultiClusterHub のカスタムリソースを作成します。

    1. OpenShift Container Platform コンソールのナビゲーションで Installed Operators > Advanced Cluster Management for Kubernetes を選択します。
    2. MultiClusterHub タブを選択します。
    3. Create MultiClusterHub を選択します。
    4. YAML ファイルのデフォルト値を更新します。このドキュメントの MultiClusterHub の詳細設定 のオプションを参照してください。

      • 以下の例は、デフォルトのテンプレートを示しています。namespace がお使いのプロジェクトの namespace であることを確認します。サンプルを参照してください。
      apiVersion: operator.open-cluster-management.io/v1
      kind: MultiClusterHub
      metadata:
        name: multiclusterhub
        namespace: <namespace>
  5. Create を選択して、カスタムリソースを初期化します。Red Hat Advanced Cluster Management ハブクラスターのビルドと起動に、最長で 10 分程度かかる場合があります。

    Red Hat Advanced Cluster Management ハブクラスターが作成されると、Red Hat Advanced Cluster Management Operator の詳細の MultiClusterHub タブから MultiClusterHub リソースのステータスが Running と表示されます。これで、Red Hat Advanced Cluster Management ハブクラスターのコンソールにアクセスできるようになりました。以下の手順を参照してください。

  6. OpenShift Container Platform コンソールナビゲーションで Networking > Routes を選択します。
  7. リストで Red Hat Advanced Cluster Management ハブクラスターの URL を確認して、その URL に移動してコンソールにアクセスします。

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.5
      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 へのアクセス権を割り当てないようにしてください。

1.3.5. インフラストラクチャーノードへの Red Hat Advanced Cluster Management ハブクラスターのインストール

OpenShift Container Platform クラスターを、承認された管理コンポーネントを実行するためのインフラストラクチャーノードを組み込むように設定できます。インフラストラクチャーノードでコンポーネントを実行すると、それらの管理コンポーネントを実行しているノードの OpenShift Container Platform サブスクリプションクォータの割り当てる必要がなくなります。

OpenShift Container Platform クラスターにインフラストラクチャーノードを追加した後、OpenShift Container Platform CLI からのインストール 手順に従い、設定を Operator Lifecycle Manager サブスクリプションおよび MultiClusterHub カスタムリソースに追加します。

1.3.5.1. インフラストラクチャーノードを OpenShift Container Platform クラスターに追加する

OpenShift Container Platform ドキュメントの インフラストラクチャーマシンセットの作成 で説明されている手順に従います。インフラストラクチャーノードは、Kubernetes の taint および label で設定され、管理以外のワークロードがそれらで稼働し続けます。

Red Hat Advanced Cluster Management が提供するインフラストラクチャーノードの有効化と互換性を持たせるために、インフラストラクチャーノードに次の taint および label が適用されていることを確認してください。

metadata:
  labels:
    node-role.kubernetes.io/infra: ""
spec:
  taints:
  - effect: NoSchedule
    key: node-role.kubernetes.io/infra

1.3.5.2. Operator Lifecycle Manager サブスクリプションの追加設定

Operator Lifecycle Manager サブスクリプションを適用する前に、以下の追加設定を追加します。

spec:
  config:
    nodeSelector:
      node-role.kubernetes.io/infra: ""
    tolerations:
    - key: node-role.kubernetes.io/infra
      effect: NoSchedule
      operator: Exists

1.3.5.3. MultiClusterHub カスタムリソースの追加設定

MultiClusterHub カスタムリソースを適用する前に、以下の設定を追加します。

spec:
  nodeSelector:
    node-role.kubernetes.io/infra: ""
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.