概要
OpenShift Container Platform の紹介
概要
第1章 OpenShift Container Platform 4.15 ドキュメント
目次
これは、OpenShift Container Platform 4.15 の公式ドキュメントで、OpenShift Container Platform とその機能について説明しています。
OpenShift Container Platform 4.15 ドキュメント内では、次のいずれかの方法で移動できます。
- 左側のナビゲーションバーを使用して、ドキュメントを参照します。
- このウェルカムページのコンテンツから、興味のあるタスクを選択します。
まず、アーキテクチャー と セキュリティーとコンプライアンス を確認してください。次に、リリースノート を参照してください。
1.1. クラスターインストーラーのアクティビティー
以下の OpenShift Container Platform インストールタスクを確認してください。
- OpenShift Container Platform のインストールの概要: 使用しているプラットフォームに応じて、installer-provisioned infrastructure または user-provisioned infrastructure に OpenShift Container Platform をインストールできます。OpenShift Container Platform インストールプログラムは、各種プラットフォームに OpenShift Container Platform を柔軟にデプロイできます。
- Alibaba にクラスターをインストールする: Alibaba Cloud の場合、OpenShift Container Platform を installer-provisioned infrastructure にインストールできます。これは現在、テクノロジープレビュー機能のみとなっています。
- AWS にクラスターをインストールする: AWS の場合、OpenShift Container Platform を installer-provisioned infrastructure または user-provisioned infrastructure にインストールできます。
- Azure にクラスターをインストールする: Microsoft Azure の場合、OpenShift Container Platform を installer-provisioned infrastructure または user-provisioned infrastructure にインストールできます。
- Azure Stack Hub にクラスターをインストールする: Azure Stack Hub の場合、OpenShift Container Platform を installer-provisioned infrastructure または user-provisioned infrastructure にインストールできます。
- Assisted Installer を使用した OpenShift Container Platform のインストール: Assisted Installer は、Red Hat Red Hat Hybrid Cloud Console で提供されるインストールソリューションです。Assisted Installer は、多くのプラットフォームでの OpenShift Container Platform クラスターのインストールをサポートしていますが、特にベアメタル、Nutanix、および VMware vSphere インフラストラクチャーに重点を置いています。
- エージェントベースのインストーラーを使用した OpenShift Container Platform のインストール: エージェントベースのインストーラーを使用すると、Assisted Discovery Agent、Assisted Service、および OpenShift Container Platform クラスターのデプロイに必要なその他すべての情報を含むブート可能 ISO イメージを生成できます。エージェントベースのインストーラーは、非接続環境で Assisted Installer の利点を活用します。
- ベアメタルにクラスターをインストールする: ベアメタルの場合、installer-provisioned infrastructure または user-provisioned infrastructure に OpenShift Container Platform をインストールできます。利用可能なプラットフォームとクラウドプロバイダーのデプロイメントオプションではニーズに合致しない場合、ベアメタル user-provisioned infrastructure の使用を検討してください。
- GCP にクラスターをインストールする: Google Cloud Platform (GCP) の場合、OpenShift Container Platform を installer-provisioned infrastructure または user-provisioned infrastructure にインストールできます。
- IBM Cloud® にクラスターをインストールする: IBM Cloud® の場合、installer-provisioned infrastructure に OpenShift Container Platform をインストールできます。
- IBM Power® Virtual Server にクラスターをインストールする: IBM Power® Virtual Server の場合、installer-provisioned infrastructure に OpenShift Container Platform をインストールできます。
- IBM Power® にクラスターをインストールする: IBM Power® の場合、user-provisioned infrastructure に OpenShift Container Platform をインストールできます。
- IBM Z® および IBM® LinuxONE にクラスターをインストールする: IBM Z® および IBM® LinuxONE の場合、user-provisioned infrastructure に OpenShift Container Platform をインストールできます。
- Oracle® Cloud Infrastructure (OCI) にクラスターをインストールする: Assisted Installer またはエージェントベースのインストーラを使用して、OCI にクラスターをインストールできます。つまり、専用、ハイブリッド、パブリック、および複数のクラウド環境をサポートするインフラストラクチャー上で、クラスターワークロードを実行できます。 Assisted Installer を使用して Oracle Cloud Infrastructure (OCI) にクラスターをインストールする および Agent-based Installer を使用して Oracle Cloud Infrastructure (OCI) にクラスターをインストールする を参照してください。
- Nutanix にクラスターをインストールする: Nutanix の場合、installer-provisioned infrastructure 上の OpenShift Container Platform にクラスターをインストールできます。
- Red Hat OpenStack Platform (RHOSP) にクラスターをインストールする: RHOSP の場合、installer-provisioned infrastructure または user-provisioned infrastructure に OpenShift Container Platform をインストールできます。
- VMware vSphere にクラスターをインストールする: サポートされているバージョンの vSphere に OpenShift Container Platform をインストールできます。
1.2. その他のクラスターインストーラーアクティビティー
制限付きネットワークにクラスターをインストールする: クラスターが AWS、GCP、vSphere、IBM Cloud®、IBM Z® および IBM® LinuxONE、IBM Power®、または ベアメタル 上の user-provisioned infrastructure を使用し、そのクラスターにインターネットへの完全なアクセス権がない場合、OpenShift Container Platform インストールイメージをミラーリングする必要があります。このアクションを実行するには、制限されたネットワークにクラスターをインストールできるように、次のいずれかの方法を使用します。
- 既存のネットワークにクラスターをインストールする: AWS または GCP で既存の Virtual Private Cloud (VPC) を使用する場合、または Microsoft Azure で既存の VNet を使用する場合は、クラスターをインストールできます。GCP 上のクラスターを共有 VPC にインストールする ことも検討してください。
- プライベートクラスターをインストールする: クラスターに外部インターネットアクセスが必要ない場合は、プライベートクラスターを AWS、Azure、GCP、または IBM Cloud® にインストールできます。クラウド API とインストールメディアにアクセスするには、引き続きインターネットアクセスが必要です。
- インストールログを確認する: インストールログにアクセスして、OpenShift Container Platform のインストール中に発生する問題を評価します。
- OpenShift Container Platform にアクセスする: インストールプロセスの最後に出力された認証情報を使用して、コマンドラインまたは Web コンソールから OpenShift Container Platform クラスターにログインします。
- Red Hat OpenShift Data Foundation をインストールする: Red Hat OpenShift Data Foundation を Operator としてインストールして、高度に統合され、単純化されたコンテナーの永続ストレージを管理できます。
- Red Hat Enterprise Linux CoreOS (RHCOS) イメージの階層化: インストール後のタスクとして、ベースとなっている RHCOS イメージの上に新しいイメージを追加できます。この階層化は、RHCOS のベースイメージを変更しません。代わりに、階層化により、すべての RHCOS 機能を含むカスタムの階層化イメージが作成され、クラスター内の特定のノードに機能が追加されます。
1.3. 開発者のアクティビティー
OpenShift Container Platform を使用して、コンテナー化されたアプリケーションを開発し、デプロイできます。OpenShift Container Platform は、コンテナー化されたアプリケーションを開発し、デプロイするためのプラットフォームです。OpenShift Container Platform の機能をより深く理解するには、次の OpenShift Container Platform ドキュメントを確認してください。
- OpenShift Container Platform での開発を理解する: 単純なコンテナーから高度な Kubernetes デプロイメントや Operator に至るまで、コンテナー化された各種アプリケーションについて説明します。
-
プロジェクトを使用する: OpenShift Container Platform Web コンソールまたは OpenShift CLI (
oc
) からプロジェクトを作成し、開発するソフトウェアを整理し共有します。 - Developer パースペクティブを使用してアプリケーションを作成する: OpenShift Container Platform Web コンソールの Developer パースペクティブを使用して、簡単にアプリケーションを作成およびデプロイできます。
- トポロジービューを使用してアプリケーション構成を表示する: トポロジー ビューを使用して、視覚的にアプリケーションを操作し、ステータスの監視、コンポーネントの接続とグループ化、コードベースの変更を行えます。
- Service Binding Operator について: アプリケーション開発者は Service Binding Operator を使用して、ワークロードのバインディングデータを自動的に収集および共有することで、Operator マネージドのバッキングサービスにワークロードをバインドできます。Service Binding Operator は、クラスター環境での不一致をなくす、一貫性のある宣言型のサービスバインディングメソッドを使用し、開発ライフサイクルを改善します。
- CI/CD パイプラインを作成する: パイプラインは、分離されたコンテナーで実行されるサーバーレス、クラウドネイティブ、継続的インテグレーション、および継続的デプロイメントシステムです。パイプラインは、標準の Tekton カスタムリソースを使用してデプロイメントを自動化し、マイクロサービスベースのアーキテクチャーで機能する分散型チーム向けに設計されています。
- インフラストラクチャーとアプリケーションの設定を管理する: GitOps は、クラウドネイティブアプリケーションの継続的デプロイメントを実装するための宣言的な方法です。GitOps は、インフラストラクチャーおよびアプリケーションの定義をコードとして定義します。GitOps は、このコードを使用して複数のワークスペースおよびクラスターを管理し、インフラストラクチャーおよびアプリケーション設定の作成を単純化します。また、GitOps は複雑なデプロイメントを高速で処理および自動化するため、デプロイメントおよびリリースサイクル中の時間を節約できます。
- Helm チャートをデプロイする: Helm は、アプリケーションやサービスの OpenShift Container Platform クラスターへのデプロイメントを単純化するソフトウェアパッケージマネージャーです。Helm は charts というパッケージ形式を使用します。Helm チャートは、OpenShift Container Platform リソースを記述するファイルのコレクションです。
- イメージビルドを理解する: Git リポジトリー、ローカルバイナリー入力、外部アーティファクトなど、各種のソースマテリアルを内包できるビルドストラテジー (Docker、S2I、カスタム、パイプライン) から選択します。基本的なビルドから高度なビルドに至るまで、各種ビルドタイプの例を使用できます。
- コンテナーイメージを作成する: コンテナーイメージは、OpenShift Container Platform および Kubernetes アプリケーションで最も基本的なビルディングブロックです。イメージストリームを定義すると、イメージストリームの開発を継続しながら、イメージの複数のバージョンを 1 か所に集めることができます。S2I コンテナーを使用すると、ソースコードをベースコンテナーに挿入できます。基本コンテナーは、Ruby、Node.js、Python などの特定のタイプのコードを実行するように設定されています。
-
デプロイメントを作成する:
Deployment
オブジェクトを使用して、アプリケーションの詳細な管理を行います。デプロイメントは、Pod のライフサイクルを調整するロールアウトストラテジーに従ってレプリカセットを作成します。 - テンプレートを作成する: 既存のテンプレートを使用するか、アプリケーションのビルドまたはデプロイ方法を記述する独自のテンプレートを作成します。テンプレートは、イメージと説明、パラメーター、レプリカ、公開されたポートおよびアプリケーションの実行またはビルド方法を定義するその他のコンテンツを組み合わせることができます。
- Operator について理解する: Operator は、OpenShift Container Platform 4.15 で推奨される、クラスターアプリケーションの作成方法です。Operator Framework について、またインストールされた Operator を使用してアプリケーションをプロジェクトにデプロイする方法について説明します。
- Operator を開発する: Operator は、OpenShift Container Platform 4.15 で推奨される、クラスターアプリケーションの作成方法です。Operator の構築、テスト、およびデプロイのワークフローについて説明します。その後、Ansible または Helm をベースにして独自の Operator を作成したり、Operator SDK を使用して ビルトイン Prometheus モニタリング を設定したりすることができます。
- REST API インデックス の参照: OpenShift Container Platform アプリケーションプログラミングインターフェイスエンドポイントについて説明しています。
- ソフトウェアサプライチェーンのセキュリティーの強化: Web コンソールの Developer または Administrator パースペクティブの PipelineRun の details ページに、重大度別に分類された特定済みの脆弱性が視覚的に表示されます。さらに、これらの拡張機能は、サプライチェーン内の透明性と管理を強化するために、Software Bill of Materials (SBOM) をダウンロードまたは表示するオプションを提供します。Web コンソールで OpenShift Pipelines を設定してソフトウェアサプライチェーンのセキュリティー要素を表示する方法 について説明します。
1.4. クラスター管理者のアクティビティー
マシンの管理、ユーザーへのサービス提供、監視およびログのレポートの追跡を行います。OpenShift Container Platform の機能をより深く理解するには、次の OpenShift Container Platform ドキュメントを確認してください。
- OpenShift Container Platform を管理する: OpenShift Container Platform 4.15 コントロールプレーンのコンポーネントを説明します。OpenShift Container Platform コントロールプレーンおよびコンピュートノードが、マシン API および Operators によりどのように管理、更新されるかを確認してください。
- クラスターのケイパビリティーを有効にする: クラスター管理者は、インストール前に無効になっていたクラスターのケイパビリティーを有効にできます。
1.4.1. クラスターコンポーネントの管理
- マシンの管理: マシンセットを使用してクラスター内の コンピュート および コントロールプレーン マシンを管理し、ヘルスチェックをデプロイ し、オートスケーリングを適用 します。
- コンテナーレジストリーを管理する: 各 OpenShift Container Platform クラスターには、そのイメージを保存するための組み込みのコンテナーレジストリーが含まれています。OpenShift Container Platform で使用する別の Red Hat Quay レジストリーを設定することもできます。Quay.io Web サイトは、OpenShift Container Platform コンテナーと Operator を保存するパブリックコンテナーレジストリーを提供します。
- ユーザーとグループを管理する: クラスターの使用または変更について、さまざまなレベルのパーミッションを持つユーザーおよびグループを追加します。
- 認証を管理する: OpenShift Container Platform で、ユーザー、グループ、および API 認証がどのように機能するかを確認します。OpenShift Container Platform は、複数のアイデンティティープロバイダー をサポートします。
- ingress、API サーバー、および サービス 証明書を管理する: OpenShift Container Platform は、Ingress Operator、API サーバー、および暗号化を必要とする複雑なミドルウェアアプリケーションが必要とするサービスに対して、デフォルトで証明書を作成します。これらの証明書を変更、追加、またはローテーションする必要がある場合があります。
-
ネットワークを管理する: OpenShift Container Platform のクラスターネットワークは、Cluster Network Operator (CNO) によって管理されます。CNO は、kube-proxy の
iptables
ルールを使用して、ノードとそれらのノード上で実行されている Pod 間のトラフィックを転送します。Multus Container Network Interface は 複数のネットワークインターフェイス を Pod に割り当てる機能を追加します。ネットワークポリシー 機能を使用すると、Pod を分離したり、選択したトラフィックを許可したりできます。 - ストレージを管理する: OpenShift Container Platform を使用すると、クラスター管理者は Red Hat OpenShift Data Foundation、AWS Elastic Block Store、NFS、iSCSI、Container Storage Interface (CSI) などを使用して永続ストレージを設定できます。永続ボリュームを拡張し、動的プロビジョニング を設定して、CSI を使用した永続ストレージの スナップショット の 設定、クローン作成、および使用が可能です。
- Operator を管理する: クラスター管理者は Red Hat、ISV、コミュニティーの Operator リストを確認できます。このリストは、クラスターにインストール できます。インストール後に、クラスターで Operator を 実行、アップグレード、バックアップ、管理できます。
- Windows コンテナーのワークロードを理解する: Red Hat OpenShift の Windows コンテナー機能のサポートを使用して、OpenShift Container Platform クラスターで Windows コンピュートノードを実行できます。これは、Red Hat Windows Machine Config Operator (WMCO) を使用して Windows ノードをインストールし、管理することで実行できます。
1.4.2. クラスターコンポーネントの変更
- カスタムリソース定義 (CRD) を使用してクラスターを変更する: Operator で実装されたクラスター機能は、CRD で変更できます。CRD の作成 および CRD からのリソースの管理 について説明しています。
- リソースクォータを設定する: CPU、メモリー、その他のシステムリソースから選択し、クォータを設定 します。
- リソースをプルーニングおよび回収する: 不要な Operator、グループ、デプロイメント、ビルド、イメージ、レジストリー、および cron ジョブをプルーニングして領域を回収します。
- クラスターの スケーリング および チューニング を行う: クラスター制限の設定、ノードのチューニング、クラスターモニタリングのスケーリング、ならびに環境に合わせたネットワーク設定、ストレージおよびルートの最適化を行います。
-
クラスターを更新する: Cluster Version Operator (CVO) を使用して、OpenShift Container Platform クラスターをアップグレードします。OpenShift Update Service (OSUS) から更新が利用可能な場合、OpenShift Container Platform Web コンソール または OpenShift CLI (
oc
) からそのクラスター更新を適用します。 - 非接続環境で OpenShift Update Service を使用する: OpenShift Update Service を使用すると、非接続環境の OpenShift Container Platform の更新を推奨できます。
- ワーカーレイテンシープロファイルを使用して、高レイテンシー環境でクラスターの安定性を向上する: ネットワークにレイテンシーの問題があり、3 つのワーカーレイテンシープロファイルのいずれかを使用してワーカーノードに到達できない場合に、コントロールプレーンが Pod を誤って退避しないようにできます。プロファイルは、クラスターの存続期間中いつでも設定または変更できます。
1.4.3. クラスターの観測
- OpenShift ロギング: ロギングについて説明し、ログストレージ、ログコレクター、ロギング Web コンソールプラグインなどのさまざまなロギングコンポーネントを設定します。
- Red Hat OpenShift 分散トレースプラットフォーム: 分散システム、マイクロサービスのスタック全体、高負荷環境を通過する大量のリクエストを保存して視覚化します。分散トレースプラットフォームは、分散トランザクションの監視、インストルメント化されたサービスに関する詳細情報の収集、ネットワークプロファイリング、パフォーマンスとレイテンシーの最適化、根本原因の分析、クラウドネイティブマイクロサービスベースの最新アプリケーションに含まれるコンポーネント間の相互作用のトラブルシューティングに使用します。
- Red Hat build of OpenTelemetry: テレメトリートレース、メトリクス、ログを計測、生成、収集、エクスポートして、ソフトウェアのパフォーマンスと動作を分析して把握します。Tempo や Prometheus などのオープンソースバックエンドを使用するか、商用製品を使用します。1 つの API と規則のセットについて確認し、生成したデータを所有できます。
- ネットワーク可観測性: eBPF テクノロジーを使用してネットワークフローを作成し拡充することで、OpenShift Container Platform クラスターのネットワークトラフィックを観測します。さらに洞察を深めてトラブルシューティングを行うために、ダッシュボードの表示とアラートのカスタマイズ、および ネットワークフロー情報の分析 が可能です。
- クラスター内監視: モニタリングスタックの設定 について説明します。モニタリングの設定後、Web コンソールを使用して モニタリングダッシュボード にアクセスします。インフラストラクチャーメトリクスに加え、独自サービスのメトリクスも収集して表示できます。
- リモートヘルスモニタリング: OpenShift Container Platform はクラスターについての匿名の集計情報を収集します。Telemetry および Insights Operator を使用すると、このデータは Red Hat によって受信され、OpenShift Container Platform を改善するために使用されます。リモートヘルスモニタリングによって収集されたデータ を表示できます。
- Red Hat OpenShift 用パワーモニタリング(テクノロジープレビュー): Red Hat OpenShift 用パワーモニタリングを使用すると、電力使用量を監視し、OpenShift Container Platform クラスター内で実行されている消費電力が多いコンテナーを特定できます。パワーモニタリングは、CPU や DRAM などのさまざまなコンポーネントからエネルギー関連のシステム統計情報を収集し、エクスポートします。パワーモニタリングを使用すると、Kubernetes Pod、namespace、ノードの詳細な電力消費データを取得できます。
1.5. ホストされたコントロールプレーンのアクティビティー
ベアメタルおよび OpenShift Virtualization のサポート: OpenShift Container Platform の Hosted Control Plane が、ベアメタルおよび OpenShift Virtualization プラットフォームで一般提供されるようになりました。詳細は、以下のドキュメントを参照してください。
テクノロジープレビュー機能: Hosted Control Plane は、引き続き Amazon Web Services、IBM Power®、および IBM Z® プラットフォームでテクノロジープレビュー機能として使用できます。ベアメタルエージェントマシン以外を使用して、Hosted Control Plane をプロビジョニングできるようになりました。詳細は、以下のドキュメントを参照してください。
第2章 OpenShift Container Platform について
以下のセクションには、OpenShift Container Platform およびその使用に関する有用な情報を記載しています。
2.1. アーキテクト
OpenShift Container Platform について | OpenShift Container Platform デプロイメントの計画 | 関連情報 |
---|---|---|
2.2. クラスター管理者
OpenShift Container Platform について | OpenShift Container Platform のデプロイ | OpenShift Container Platform の管理 | 関連情報 |
---|---|---|---|
2.3. アプリケーションサイトリライアビリティーエンジニア (App SRE)
OpenShift Container Platform について | アプリケーションのデプロイと管理 | 関連情報 |
---|---|---|
2.4. 開発者
OpenShift Container Platform でのアプリケーション開発について | アプリケーションのデプロイ |
---|---|
Getting Started with OpenShift for Developers (インタラクティブチュートリアル) | |
Red Hat OpenShift Dev Spaces (旧 Red Hat CodeReady Workspaces) | |