概要
アーキテクチャー、コンポーネント、クイックスタートガイドなどの製品の詳細
概要
第1章 Red Hat Advanced Cluster Management for Kubernetes へようこそ
Kubernetes は、一貫性のある標準コントロールプレーンでコンテナーをデプロイし、管理するためのプラットフォームを提供します。ただし、アプリケーションのワークロードが開発環境から実稼働環境に移動するにつれて、DevOps のパイプラインをサポートするために、目的に合った Kubernetes クラスターが複数必要になることが頻繁にあります。
注記: 当 Red Hat 製品を使用するには、ライセンスとサブスクリプション契約が必要です。
管理者やサイト信頼性エンジニア (SRE) などのユーザーは、Kubernetes クラスターを稼働する複数のデータセンター、プライベートクラウド、パブリッククラウドなど、さまざまな環境で作業を行うにあたり、課題に直面しています。Red Hat Advanced Cluster Management for Kubernetes には、このような共通の課題に対処するツールや機能が含まれています。
Red Hat Advanced Cluster Management for Kubernetes では、お使いの Kubernetes 環境を管理するために、管理状況をエンドツーエンドで視覚的に確認して制御できます。クラスターの作成やアプリケーションライフサイクルの管理機能でアプリケーションモダナイゼーションプログラムを管理し、ハイブリッドクラウド環境にまたがる全クラスターやアプリケーションのセキュリティーとコンプライアンスを確保します。クラスターおよびアプリケーションはすべて、同梱のセキュリティーポリシーを使用して、1 つのコンソールから表示でき、管理できます。Red Hat OpenShift が稼働する場所であればどこからでも操作し、お使いの環境で Kubernetes クラスターを管理できます。
Red Hat Advanced Cluster Management for Kubernetes コンソールの Welcome ページ には、Red Hat OpenShift Container Platform などに戻るための Applications スイッチャーを表示するヘッダーがあります。タイルは、製品の主な機能を記述し、重要なコンソールページにリンクします。詳細は、コンソールの概要 を参照してください。
Red Hat Advanced Cluster Management for Kubernetes では以下を実現できます。
- Kubernetes クラスターを稼働する複数のデータセンター、プライベートクラウド、パブリッククラウドなど、さまざまな環境で機能する。
- Kubernetes クラスターを簡単に作成し、1 つのコンソールでクラスターのライフサイクルを管理できる。
- Kubernetes がサポートするカスタムリソース定義を使用して、ターゲットクラスターでポリシーを有効にする。
- クラスターランドスケープ全体に分散されているビジネスアプリケーションの Day 2 Operation (Day 2 運用) をデプロイして維持する。
本書では、Kubernetes の概念および用語に精通していることを前提としています。Kubernetes の概念に関する情報は、Kubernetes ドキュメント を参照してください。
この製品に関する詳細は、以下のドキュメントを参照してください。
1.1. マルチクラスターアーキテクチャー
Red Hat Advanced Cluster Management for Kubernetes は、クラスターへのアクセスおよび管理に使用される複数のマルチクラスターコンポーネントで設定されます。以下のセクションでは、アーキテクチャーの詳細を説明します。その後、リンク先に移動して、詳細なドキュメントを参照してください。
Red Hat Advanced Cluster Management for Kubernetes の以下のコンポーネントについて詳しく説明します。
1.1.1. ハブクラスター
ハブ クラスターは、Red Hat Advanced Cluster Management for Kubernetes クラスターで実行する中央コントローラーを定義する時に使用される一般的な用語です。ハブクラスターから、コンソールおよび製品コンポーネントおよび Red Hat Advanced Cluster Management API にアクセスできます。コンソールを使用してクラスターのリソースを検索し、トポロジーを表示することもできます。
また、ハブクラスターで 可観測性 を有効にして、全クラウドプロバイダーのマネージドクラスターからのメトリクスを監視できます。
ハブクラスターは MultiClusterHub
オペレーターを使用してハブクラスターコンポーネントの管理、アップグレード、インストールを行います。ハブクラスターは、非同期のワーク要求モデルおよび検索コレクターを使用して複数のクラスターから情報を集計します。ハブクラスターは、グラフデータベースを使用して、ハブクラスター上で実行されるクラスターやアプリケーションの状態を管理します。ローカルクラスター は、次のセクションで説明されているように、マネージドクラスターでもハブクラスターを定義するために使用される用語です。
1.1.2. マネージドクラスター
マネージドクラスター は、ハブクラスターが管理する追加のクラスターを定義するときに使用する用語です。マネージドクラスターとハブクラスターの 2 つの間の接続は、マネージドクラスターにインストールされているエージェントの Klusterlet を使用して行います。マネージドクラスターは、ハブクラスターから要求を受け取って適用し、マネージドクラスターのライフサイクル、アプリケーションライフサイクル、ガバナンス、およびマネージドクラスターの可観測性にサービスを提供できるようにします。
たとえば、可観測性サービスが有効になっている場合に、マネージドクラスターはメトリクスをハブクラスターに送信します。全マネージドクラスターのメトリクスの取得、およびヘルスの最適化については、環境の監視 を参照してください。
1.1.3. クラスターライフサイクル
Red Hat Advanced Cluster Management の クラスターライフサイクル は、さまざまなインフラストラクチャークラウドプロバイダー、プライベートクラウド、オンプレミスデータセンターから Kubernetes クラスターを作成、インポート、管理、および破壊するプロセスを定義します。
ハブクラスターコンソールから、多数の Kubernetes クラスターに含まれる全クラスターのヘルスステータスの集計を表示したり、個別のヘルスメトリクスを表示したりできます。また、ハブクラスターを使用して、作成した OpenShift Container Platform クラスターを破棄したり、OpenShift Container Platform のマネージドクラスターを個別または一括にアップグレードしたりできます。コンソールから、クラスターの休止、再開、および割り当て解除も可能です。
クラスターライフサイクル に含まれるクラスターの管理については、クラスターの管理 を参照してください。
1.1.4. アプリケーションライフサイクル
Red Hat Advanced Cluster Management の アプリケーションライフサイクル は、マネージドクラスターでのアプリケーションリソースの管理に使用するプロセスを定義します。マルチクラスターアプリケーションを使用すると、複数のマネージドクラスター上にあるリソースをデプロイしたり、高可用性のアプリケーションのあらゆる側面に対する Kubernetes リソースの更新を完全に制御したりできます。
マルチクラスターアプリケーションは Kubernetes 仕様を使用しますが、さらにリソースのデプロイメントやライフサイクル管理が自動化されます。Ansible Tower ジョブを使用すると、タスクの自動化が可能になります。継続的な GitOps 環境を設定して、開発環境、ステージング、および実稼働環境のクラスター全体でアプリケーションの整合性を自動化できます。
他のアプリケーションに関するトピックについては、アプリケーションの管理 を参照してください。
1.1.5. ガバナンス
ガバナンス では、セキュリティーコンプライアンスを有効にするポリシーや、環境に設定したコンプライアンス要件に違反する変更について通知するポリシーを定義できます。動的ポリシーテンプレートを使用すると、集約されたインターフェイスから、全管理クラスターのポリシーおよびコンプライアンス要件を管理できます。
ガバナンスの詳細は、リスクおよびコンプライアンス の概要を参照してください。さらに、ロールベースのアクセス制御 のドキュメントで、アクセス要件について確認してください。
Red Hat Advanced Cluster Management のハブクラスターとマネージドクラスターを設定した後に、Red Hat Advanced Cluster Management ポリシーフレームワークを使用してポリシーの表示や作成が可能になります。policy-collection
のオープンコミュニティー を活用して、コミュニティーメンバーが作成または貢献したポリシーを表示したり、他のメンバーが使用できるように独自のポリシーを提供したりできます。
1.1.6. 可観測性
可観測性 コンポーネントは、OpenShift Container Platform バージョン 4.x 以降のマネージドクラスターのステータスおよびヘルスを収集し、ハブクラスターに報告します。マネージドクラスターでの問題を通知できるように、カスタムのアラートを作成できます。永続ストレージの設定が必要であるため、Red Hat Advanced Cluster Management のインストール後に可観測性を有効にする必要があります。Grafana ダッシュボードにもアクセスできます。
可観測性の詳細は、環境の監視の紹介 を参照してください。
本リリースの詳細は、リリースノート を参照してください。
クラスターを準備して設定情報を取得するには、当製品の インストール セクションを参照してください。
1.2. サポート対象のプロバイダー
Red Hat Advanced Cluster Management for Kubernetes で利用できるクラウドプロバイダーについて学び、利用可能なドキュメント化されたマネージドプロバイダーを見つけてください。サポート対象のプロバイダーの詳細は、Support matrix を参照してください。
ベストプラクティス: マネージドクラスターのプロバイダーには、最新版の Kubernetes を使用してください。
注記: 先に挙げたベンダーのドキュメントから、kubectl
の設定方法を学習する必要のある場合があります。マネージドクラスターをハブクラスターにインポートする場合には kubectl
をインストールしておく必要があります。詳細は、ハブクラスターへのターゲットのマネージドクラスターのインポート を参照してください。
1.2.1. サポート対象のハブクラスタープロバイダー
ハブクラスターとしてサポートされるのは、Red Hat OpenShift Container Platform 4.6.1 以降です。
- Amazon Web Services 上の OpenShift Container Platform を参照してください。
- Microsoft Azure 上の Red Hat OpenShift Container Platform を参照してください。
- Google Cloud Platform 上の Red Hat OpenShift Container Platform を参照してください。
- Red Hat OpenShift Dedicated (OSD) を参照してください。
- IBM Cloud (ROKS) 上の Red Hat OpenShift Container Platform を参照してください。
- Azure for Red Hat OpenShift (ARO) を参照してください。
- VMware vSphere 上の Red Hat OpenShift Container Platform を参照してください。
- OpenStack 上の Red Hat OpenShift Container Platform を参照してください。
- Red Hat Virtualization 上の Red Hat OpenShift Container Platform を参照してください。
- Amazon Web Services (ROSA) 上の OpenShift を参照してください。
- IBM Power Systems 上の OpenShift Container Platform を参照してください。
- IBM Z および LinuxONE への z/VM を使用したインストール を参照してください。
1.2.2. サポート対象のマネージドクラスタープロバイダー
マネージドクラスターとしてサポートされるのは、Red Hat OpenShift Container Platform 3.11.200 以降、4.6.1 以降です。
利用可能なマネージドクラスターのオプションおよびドキュメントは以下を参照してください。
- Amazon Web Services 上の OpenShift Container Platform を参照してください。
- Microsoft Azure 上の Red Hat OpenShift Container Platform を参照してください。
- Google Cloud Platform 上の Red Hat OpenShift Container Platform を参照してください。
- Red Hat OpenShift Dedicated (OSD) を参照してください。
- IBM Cloud (ROKS) 上の Red Hat OpenShift Container Platform を参照してください。
- Azure Red Hat OpenShift (ARO) を参照してください。
- VMware vSphere 上の Red Hat OpenShift Container Platform を参照してください。
- OpenStack 上の Red Hat OpenShift Container Platform を参照してください。
- Red Hat Virtualization 上の Red Hat OpenShift Container Platform を参照してください。
- Amazon Web Services (ROSA) 上の OpenShift を参照してください。
- Red Hat OpenShift Kubernetes Engine について を参照してください。
- Amazon Elastic Kubernetes Service (Kubernetes 1.21 以降) を参照してください。
- Google Kubernetes Engine (Kubernetes 1.22.2 以降) を参照してください。
- IBM Cloud Kubernetes Service 概説 (Kubernetes 1.22.3 以降) を参照してください。
- Azure Kubernetes Service (Kubernetes 1.22.2 以降) を参照してください。
- Red Hat OpenShift Container Platform on IBM Z (4.6.1 以降) を参照してください。
- IBM Power Systems 上の OpenShift Container Platform を参照してください。
1.3. スタートガイド
1.3.1. はじめに
マルチクラスターアーキテクチャー で製品アーキテクチャーを確認してください。
ハブクラスターとマネージドクラスターアーキテクチャーについて学習した後、クラウドプロバイダークラスターオプションを一覧表示する Clusters のドキュメントで、サポート対象のプロバイダー について学習します。
ハブクラスターは、Red Hat OpenShift Container Platform クラスターバージョン 4.6 以降を使用し、任意の サポート対象の Red Hat OpenShift Container Platform インフラストラクチャー で稼働することができます。
用語集 では、当製品の一般的な用語が定義されています。
問題が発生した場合には、トラブルシューティング ガイドで、must-gather
コマンドについて確認してください。文書化されているトラブルシューティングタスクを参照すると、問題の解決に役に立つ場合があります。
1.3.2. インストール
- Red Hat Advanced Cluster Management for Kubernetes をインストールする前に、要件および推奨事項 で設定要件および設定オプションを確認してください。必要なオペレーティングシステムおよびサポート対象のブラウザーに関する情報を取得します。たとえば、ハブクラスターを設定できるように、サポート対象の Red Hat OpenShift Container Platform バージョンを使用していることを確認します。
- また、ハブクラスターに適切な容量があることを確認する必要があります。ハブクラスターを準備するには クラスターのサイジング を参照してください。
- ハブクラスターにサポート対象の OpenShift Container Platform がインストールされ、稼働している場合は、ネットワーク接続時のオンラインインストール に進んでください。
インストール後に、Web コンソール ガイドを参照して、コンソールへのアクセス方法と、コンソールで利用できる機能を確認します。
1.3.3. クラスターの管理
クラスターの作成およびインポートの準備が整いました。ハブクラスターで、他の Kubernetes サービスから管理対象のクラスターを作成して、クラスター情報を表示できます。
- 作成可能なマネージドクラスターの種類については、クラスターの作成 を参照してください。マネージドクラスターの作成時に、新しいマネージドクラスターが自動的にインポートされます。
- 手動でインポートするクラスターがある場合は、ハブクラスターへのターゲットのマネージドクラスターのインポート を参照して、マネージドクラスターのインポート方法を確認してください。
- クラスターを管理する必要がなくなったら、Cluster ページ からクラスターをデタッチします。
1.3.4. アプリケーションの管理
作成してインポートしたマネージドクラスターで、アプリケーションの管理を開始できます。作成可能なリソースタイプは、アプリケーション、チャネル、サブスクリプション、配置ルールです。
-
リソースとリソースの作成や管理に関する情報は、アプリケーションの管理 を参照してください。リソースを作成する場合は、
.yaml
ファイルを追加または編集します。 - アプリケーションダッシュボード からリソースを表示して編集します。
1.3.5. セキュリティーの管理
作成してインポートしたマネージドクラスターから、セキュリティーおよびコンプライアンスを管理することも可能です。
-
policy テンプレートを使用して、ポリシーを作成します。
.yaml
ファイルテンプレートでポリシーを作成する方法は、ポリシーの概要 を参照してください。 - Policy ページから、クラスターとポリシー違反の概要を確認できます。
- コンソールの Governance ページからポリシーを確認します。また、クラスターの 概要 からポリシーの詳細を表示することもできます。
1.3.6. クラスターの監視
可観測性サービスを有効にして、マネージドクラスターの状況を把握して最適化できます。可観測性サービス Operator (multicluster-observability-operator
) を有効化して、マネージドクラスターの状態を監視します。
- 環境の監視 および 可観測性サービスの有効化 の方法を確認してください。
- 可観測性のカスタマイズ を確認してください。
1.4. 用語集
Red Hat Advanced Cluster Management for Kubernetes は複数のマルチクラスターコンポーネントで設定されます。以下のセクションで、これらのマルチクラスターコンポーネントを定義します。また、一般的な Kubernetes 用語の一部も、当製品で使用されます。用語はアルファベット順に記載されています。
1.4.1. 標準の関連用語集
1.4.2. Red Hat Advanced Cluster Management for Kubernetes の用語
1.4.2.1. アプリケーションライフサイクル
マネージドクラスターでアプリケーションを管理するときに使用するプロセス。マルチクラスターアプリケーションは Kubernetes 仕様を使用しますが、さらに、個別のクラスターに対するリソースのデプロイメントやライフサイクル管理が自動化されます。
1.4.2.2. チャネル
Git リポジトリー、Helm チャートリポジトリー、オブジェクトストアリポジトリー、ハブクラスターの namespace テンプレートなど、Kubernetes リソースが格納されるリポジトリーを参照するカスタムリソース定義。チャネルでは、複数ターゲットからの複数のサブスクリプションをサポートします。
1.4.2.3. クラスターライフサイクル
パブリッククラウドおよびプライベートクラウド全体のクラスターの作成、インポート、管理プロセスを定義します。
1.4.2.4. コンソール
Red Hat Advanced Cluster Management for Kubernetes のグラフィカルユーザーインターフェイス。
1.4.2.5. Deployable
パッケージのテストや実行ができるように、ビルドの出力を取得して設定プロパティーで出力をパッケージ化し、事前定義済みの場所にパッケージをインストールします。
1.4.2.6. ガバナンス
セキュリティーおよびコンプライアンスの管理に使用する Red Hat Advanced Cluster Management for Kubernetes プロセス。
1.4.2.7. ホストされたクラスター
HyperShift によって管理される OpenShift Container Platform API エンドポイント。
1.4.2.8. ホスト型クラスターインフラストラクチャー
ネットワーク、コンピューティング、ストレージなど、お客様のクラウドアカウントに存在するリソース。
1.4.2.9. ホストされたコントロールプレーン
ホスティングサービスクラスターで稼働している OpenShift Container Platform コントロールプレーン。これは、ホストされたクラスターの API エンドポイントによって公開されます。コントロールプレーンのコンポーネント部分には、etcd
、apiserver
、kube-controller-manager
、vpn
、およびその他のコンポーネントが含まれます。
1.4.2.10. ホスト型コントロールプレーンインフラストラクチャー
ホストされたコントロールプレーンプロセスを実行するための前提条件である、管理クラスターまたは外部クラウドプロバイダー上のリソース。
1.4.2.11. ホスティングサービスクラスター
HyperShift オペレーターと 0 対多のホストクラスターをホストする OpenShift Container Platform クラスターです。
1.4.2.12. ホストされたサービスクラスターインフラストラクチャー
ネットワーク、コンピューティング、ストレージなどを含む、ホスティングサービスクラスターのリソース。
1.4.2.13. ハブクラスター
Red Hat Advanced Cluster Management for Kubernetes クラスターで実行する中央コントローラー。ハブクラスターから、コンソールと、対象のコンソールにあるコンポーネント、API にアクセスできます。
1.4.2.14. klusterlet
マネージドクラスター上でコントローラーを 2 つ含むエージェントで Red Hat Advanced Cluster Management for Kubernetes のハブクラスターへの接続を開始します。
1.4.2.15. Klusterlet アドオン
追加の管理機能を提供する Klusterlet 上の特化されたコントローラー。
1.4.2.16. マネージドクラスター
作成およびインポートしたクラスターは、Red Hat Advanced Cluster Management for Kubernetes ハブクラスターへの接続を開始する Klusterlet エージェントとそのアドオンにより管理されます。
1.4.2.17. 配置ポリシー
アプリケーションコンポーネントのデプロイ先や、配置するレプリカ数を定義するポリシー。
1.4.2.18. 配置ルール
サブスクリプションの配信先のターゲットクラスターを定義するルール。たとえば、クラスター名、リソースアノテーション、またはリソースラベルを検証します。
1.4.2.19. サブスクリプション
チャネル内 (リソースリポジトリー) で Kubernetes リソースを特定し、ターゲットクラスターに Kubernetes リソースを配置するリソース。