1.8. Discovery サービス


OpenShift Cluster Manager で利用可能な OpenShift Container Platform クラスターを検出できます。検出後に、クラスターをインポートして管理できます。Discovery サービスは、バックエンドおよびコンソールでの用途に Discover Operator を使用します。

前提条件

OpenShift Cluster Manager 認証情報が必要になります。認証情報を作成する必要がある場合は、OpenShift Cluster Manager の認証情報の作成 を参照してください。

必要なアクセス権限: 管理者

1.8.1. サービスアカウントの認証

OpenShift Cluster Manager で利用可能な OpenShift Container Platform クラスターを検出するには、サービスアカウントで認証する必要があります。OpenShift Cluster Manager のオフライントークンは非推奨であることに注意してください。

前提条件

1.8.1.1. 認証

サービスアカウントで認証するには、以下の手順を参照してください。

  1. マルチクラスターエンジン Operator コンソールで、新しい認証情報シークレットを service-account client-id および client-secret ペアとして作成します。
  2. マルチクラスターエンジン Operator Discovery サービスが正しく認証され、クラスターを検出できるように、サービスアカウントの client-idclient-secret ペアを指定します。
  3. マネージドクラスターとしてインポートする OpenShift Service on AWS DiscoveredCluster リソースを設定します。開始される OpenShift Service on AWS インポートフローは、サービスアカウントの認証情報を使用してクラスターを認証し、これをインポートします。
Expand
表1.8 デプロイされたコンポーネントの一覧
ロールアクセス権限

OpenShift Cluster Manager Cluster Autoscaler エディター

クラスターオートスケーラーでの更新操作の実行

OpenShift Cluster Manager クラスターエディター

クラスターでの更新操作の実行

OpenShift Cluster Manager クラスタープロビジョナー

クラスターでのプロビジョニング操作の実行

OpenShift Cluster Manager クラスタービューアー

クラスターでの読み取り操作の実行

OpenShift Cluster Manager IdP エディター

IdP で更新操作を実行する

OpenShift Cluster Manager マシンプールエディター

マシンプールでの更新操作の実行

OpenShift Cluster Manager 組織管理者

関連付けられた組織のクラスターで利用可能なすべての操作を実行します。

Subscriptions viewer

Subscriptions リソースで読み取り操作を実行します。

1.8.2. コンソールでの Discovery の設定

コンソールで Discovery を設定してクラスターを検索します。クラスターで Discovery 機能を設定する場合、組織内のクラスターの検出を開始するために、DiscoveryConfig リソースを有効にして OpenShift Cluster Manager に接続する必要があります。個別の認証情報を使用して複数の DiscoveryConfig リソースを作成できます。

クラスターの検出後に、コンソールの Discovered clusters に表示されるクラスターをインポートできます。製品のコンソールを使用して検出を有効にします。

必要なアクセス権: 認証情報が作成された namespace へのアクセス権。

前提条件

1.8.2.1. 検出されたクラスターのコンソールからのインポート

他のインフラストラクチャープロバイダーによって検出されたクラスターを手動でインポートするには、次の手順を実行します。

  1. 既存の Clusters ページに移動し、Discovered clusters タブをクリックします。
  2. Discovered clusters の表から、インポートするクラスターを見つけます。
  3. オプションメニューから Import cluster を選択します。
  4. 検出クラスターの場合は、このドキュメントを使用して手動でインポートしたり、Import cluster を自動的に選択したりできます。
  5. 認証情報または Kubeconfig ファイルを使用して自動でインポートするには、コンテンツをコピーして貼り付けます。
  6. Import をクリックします。

1.8.2.2. 検出されたクラスターの表示

認証情報を設定してインポートするクラスターを検出した後に、コンソールで表示できます。

  1. Clusters > Discovered clusters の順にクリックします。
  2. 以下の情報が投入された表を確認してください。

    • name は、OpenShift Cluster Manager で指定された表示名です。クラスターに表示名がない場合は、クラスターコンソール URL をもとに生成された名前が表示されます。OpenShift Cluster Manager でコンソール URL がない場合や手動で変更された場合には、クラスターの外部 ID が表示されます。
    • Namespace は、認証情報および検出クラスターを作成した namespace です。
    • type は検出されたクラスターの Red Hat OpenShift タイプです。
    • Distribution version は、検出されたクラスターの Red Hat OpenShift バージョンです。
    • Infrastructure provider は検出されたクラスターのクラウドプロバイダーです。
    • Last active は、検出されたクラスターが最後にアクティブであった時間です。
    • Created は検出クラスターが作成された時間です。
    • Discovered は検出クラスターが検出された時間です。
  3. 表の中にある情報はどれでも検索できます。たとえば、特定の namespace で Discovered clusters のみを表示するには、その namespace を検索します。
  4. Import cluster をクリックすると、マネージドクラスターを作成できます。

1.8.3. CLI を使用した検出の有効化

CLI を使用して検出を有効にし、OpenShift Cluster Manager で利用可能なクラスターを見つけます。

必要なアクセス権限: 管理者

前提条件

  • OpenShift Cluster Manager に接続するための認証情報を作成している。

1.8.3.1. 検出の設定とプロセス

注記: DiscoveryConfigdiscovery という名前に指定し、選択した credential と同じ namespace に作成する必要があります。以下の DiscoveryConfig のサンプルを参照してください。

apiVersion: discovery.open-cluster-management.io/v1
kind: DiscoveryConfig
metadata:
  name: discovery
  namespace: <NAMESPACE_NAME>
spec:
  credential: <SECRET_NAME>
  filters:
    lastActive: 7
    openshiftVersions:
    - "4.x"
Copy to Clipboard Toggle word wrap
  1. SECRET_NAME は、以前に設定した認証情報に置き換えます。
  2. NAMESPACE_NAMESECRET_NAME の namespace に置き換えます。
  3. クラスターの最後のアクティビティー (日数) からの最大時間を入力します。たとえば、lastActive: 7 では、過去 7 日間にアクティブなクラスターが検出されます。
  4. 検出する OpenShift Container Platform クラスターのバージョンを文字列のリスト形式で入力します。注記: openshiftVersions 一覧に含まれるエントリーはすべて、メジャーバージョンとマイナーバージョンを指定します。たとえば、4.x には OpenShift Container Platform バージョン 4 . x のすべてのエラータリリースが含まれ ます(例: 4.x.1,4.x.2 )。

1.8.3.2. 検出されたクラスターの表示

検出されたクラスターを表示するには、oc get discoveredclusters -n <namespace> を実行して、namespace は検出認証情報が存在する namespace に置き換えます。

オブジェクトは Discovery コントローラーにより作成されます。このような DiscoveredClusters は、DiscoveryConfig discoveredclusters.discovery.open-cluster-management.io API で指定したフィルターと認証情報を使用して OpenShift Cluster Manager で検出されたクラスターを表します。name の値はクラスターの外部 ID です。

apiVersion: discovery.open-cluster-management.io/v1
kind: DiscoveredCluster
metadata:
  name: fd51aafa-95a8-41f7-a992-6fb95eed3c8e
  namespace: <NAMESPACE_NAME>
spec:
  activity_timestamp: "2021-04-19T21:06:14Z"
  cloudProvider: vsphere
  console: https://console-openshift-console.apps.qe1-vmware-pkt.dev02.red-chesterfield.com
  creation_timestamp: "2021-04-19T16:29:53Z"
  credential:
    apiVersion: v1
    kind: Secret
    name: <SECRET_NAME>
    namespace: <NAMESPACE_NAME>
  display_name: qe1-vmware-pkt.dev02.red-chesterfield.com
  name: fd51aafa-95a8-41f7-a992-6fb95eed3c8e
  openshiftVersion: 4.x
  status: Stale
Copy to Clipboard Toggle word wrap

1.8.4. 検出されたクラスターを管理のために有効にする

Discovery-Operator を使用して、個々のクラスターを手動でインポートすることなく、サポートされているクラスターをハブクラスターに自動的にインポートし、クラスター管理を迅速化します。

必要なアクセス権: クラスター管理者

前提条件

  • Discovery がデフォルトで有効になっている。デフォルト設定を変更した場合は、Discovery を有効にする必要があります。
  • OpenShift Service on AWS コマンドラインインターフェイスを設定する。OpenShift Service on AWS CLI スタートガイド を参照してください。

以下の手順は、Discovery-Operator を使用して、検出された OpenShift Service on AWS および Hosted Control Plane クラスターに自動的にインポートする方法の例です。コンソールまたはコマンドラインインターフェイスからインポートできます。

  • コンソールからインポートします。コンソールでリソースを変更し、importAsManagedCluster フィールドを true に設定する必要があります。

    1. コンソールからハブクラスターにログインします。
    2. ナビゲーションメニューから Search を選択します。
    3. 検索バーにクエリー "DiscoveredCluster" を入力します。
    4. DiscoveredCluster リソースの結果が表示されます。
    5. DiscoveredCluster リソースに移動し、importAsManagedClustertrue に設定します。次の例を参照してください。importAsManagedClustertrue に設定し、<4.x.z> はサポートされている OpenShift Container Platform のバージョンに設定します。

      apiVersion: discovery.open-cluster-management.io/v1
      kind: DiscoveredCluster
      metadata:
        name: 28c17977-fc73-4050-b5cc-a5aa2d1d6892
        namespace: discovery
      spec:
        openshiftVersion: <4.x.z>
        isManagedCluster: false
        cloudProvider: aws
        name: 28c17977-fc73-4050-b5cc-a5aa2d1d6892
        displayName: rosa-dc
        status: Active
        importAsManagedCluster: true 
      1
      
        type: <supported-type> 
      2
      Copy to Clipboard Toggle word wrap
      1
      フィールドを true に設定すると、Discovery-Operator によって DiscoveredCluster リソースがインポートされ、ManagedCluster リソースが作成され、Red Hat Advanced Cluster Management がインストールされている場合は KlusterletAddonConfig リソースが作成されます。また、自動インポート用の Secret リソースも作成されます。
      2
      パラメーター値として ROSA または MultiClusterEngineHCP を使用する必要があります。
    6. DiscoveredCluster リソースがインポートされていることを確認するために、Clusters ページに移動します。Cluster list タブからクラスターのインポートステータスを確認します。
    7. 自動再インポートを防ぐために、Discovery のマネージドクラスターをデタッチする場合は、Detach cluster オプションを選択します。Discovery-Operator によって、アノテーション discovery.open-cluster-management.io/previously-auto-imported: 'true' が追加されます。

      DiscoveredCluster リソースは、次の YAML のようになります。

      apiVersion: discovery.open-cluster-management.io/v1
      kind: DiscoveredCluster
      metadata:
        annotations:
          discovery.open-cluster-management.io/previously-auto-imported: 'true'
      Copy to Clipboard Toggle word wrap
    8. DiscoveredCluster リソースが自動的に再インポートされないことを確認するために、Discovery-Operator ログで次のメッセージを確認します。"rosa-dc" は、検出されたクラスターです。
    2024-06-12T14:11:43.366Z INFO reconcile	Skipped automatic import for DiscoveredCluster due to
    existing 'discovery.open-cluster-management.io/previously-auto-imported' annotation {"Name": "rosa-dc"}
    Copy to Clipboard Toggle word wrap
    1. DiscoveredCluster リソースを自動的に再インポートする場合は、前述のアノテーションを削除する必要があります。
  • コマンドラインインターフェイスからのインポート。

    1. コマンドラインインターフェイスから DiscoveredCluster リソースを自動的にインポートするには、以下を実行します。ログイン後に次のコマンドを使用して、importAsManagedCluster パラメーターを true に設定します。<name><namespace> は、実際の名前と namespace に置き換えます。

      oc patch discoveredcluster <name> -n <namespace> --type='json' -p='[{"op": "replace", "path": "/spec/importAsManagedCluster", "value": true}]'
      Copy to Clipboard Toggle word wrap
    2. 次のコマンドを実行して、クラスターがマネージドクラスターとしてインポートされたことを確認します。

      oc get managedcluster <name>
      Copy to Clipboard Toggle word wrap
    3. OpenShift Service on AWS クラスター ID の詳細を取得するために、OpenShift Service on AWS コマンドラインインターフェイスから次のコマンドを実行します。
    rosa describe cluster --cluster=<cluster-name> | grep -o ^ID:.*
    Copy to Clipboard Toggle word wrap

重要: 他の Kubernetes プロバイダーの場合、これらのインフラストラクチャープロバイダー DiscoveredCluster リソースを手動でインポートする必要があります。Kubernetes 設定を、他のタイプの DiscoveredCluster リソースに直接適用してください。DiscoveredCluster リソースから importAsManagedCluster フィールドを有効にしても、Discovery Webhook が原因でリソースがインポートされません。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat