Red Hat OpenShift on IBM Cloud について
について詳しく説明します。 Red Hat® OpenShift® on IBM Cloud® また、クラスターをお客様のニーズに合わせてカスタマイズするためのオプションもご用意しています。
Red Hat OpenShift on IBM Cloud は、 IBM Cloud 上でコンテナー化アプリをデプロイおよび管理するためにコンピュート・ホストの独自の Red Hat OpenShift クラスターを作成するマネージドマネージド・オファリングです。Red Hat OpenShift on IBM Cloud は、インテリジェントなスケジューリング、自己修復、水平スケーリング、サービスのディスカバリーとロード・バランシング、自動化されたロールアウトとロールバック、およびアプリのシークレットと構成の管理を提供します。 クラスター・ワークロードを保護、管理、監視するための直感的なユーザー・エクスペリエンス、標準装備のセキュリティーと分離、および高度なツールも利用できるので、可用性の高いセキュアなコンテナー化アプリをパブリック・クラウドに迅速に提供できます。
よくある質問と Red Hat OpenShift on IBM Cloud で使用されている主要なテクノロジーについて記載します。
Kubernetes とは何ですか?
Kubernetes は、コンテナー化されたワークロードやサービスを複数のホストにわたって管理するためのオープンソース・プラットフォームです。手作業による介入をまったく、あるいはほとんど必要とせずに、コンテナー化アプリのデプロイ、自動化、モニター、スケーリングを行える管理ツールを備えています。
オープンソース・プロジェクトである Kubernetes は、コンテナ化されたインフラストラクチャの運用と、本番ワークロード、オープンソースによる貢献、 Docker コンテナ管理ツールを組み合わせたものである。 Kubernetes インフラストラクチャは、コンテナを管理するための分離されたセキュアなアプリプラットフォームを提供し、移植性、拡張性、フェイルオーバー時の自己回復性を備えている。 詳しくは、 Kubernetesとは何ですか?を参照してください。
Kubernetes の主要な概念について、以下の図で説明します。
- アカウント
-
アカウントとは、ご使用の IBM Cloud アカウントを指します。
- クラスター、ワーカー・プール、およびワーカー・ノード
-
Kubernetes クラスターは、マスターと、ワーカー・ノードと呼ばれる 1 つ以上のコンピュート・ホストで構成されます。 ワーカー・ノードは、同じフレーバー (つまり、CPU、メモリー、オペレーティング・システム、接続ディスク、その他のプロパティーからなるプロファイル) のワーカー・プールに編成されます。 ワーカー・ノードは、Kubernetes の
Node
リソースに対応するもので、Kubernetes マスターによって管理されます。このマスターは、クラスター内のすべての Kubernetes リソースを一元的に制御および監視します。 したがって、コンテナー化アプリのリソースをデプロイする際、これらのリソースをどのワーカー・ノードにデプロイするかは、Kubernetes マスターがデプロイメント要件とクラスターで使用可能な容量を考慮して決定します。 Kubernetes リソースには、サービス、デプロイメント、ポッドが含まれます。 - 名前空間
-
Kubernetes 名前空間は、クラスターを複数のチームで共有する場合などに、クラスター・リソースを別々の領域に分割し、それぞれの領域に対してアプリをデプロイしたりアクセスを制限したりできるようにするための手段です。 例えば、お客様のために構成されたシステム・リソースは、
kube-system
やibm-system
といった別々の名前空間で保持されます。 Kubernetes リソースの作成時に名前空間を指定しない場合、リソースはdefault
名前空間に自動的に作成されます。 - サービス
-
サービスとは、ポッドのセットをグループ化し、各ポッドの実際のプライベート IP アドレスを公開せずにそれらのポッドへのネットワーク接続を提供する Kubernetes リソースのことです。 サービスを使用することにより、アプリをクラスター内または公開インターネットで使用可能にできます。
- デプロイメント
-
デプロイメントとは、アプリの実行に必要なその他のリソースや機能 (サービス、永続ストレージ、アノテーションなど) に関する情報を指定できる Kubernetes リソースです。 構成 YAML ファイルでデプロイメントを文書化し、それをクラスターに適用します。 Kubernetes マスターがリソースを構成し、使用可能な容量を持つワーカー・ノード上のポッドにコンテナーをデプロイします。
-
ローリング更新中に追加するポッドの数や、一度に使用不可にできるポッドの数など、アプリの更新戦略を定義します。 ローリング更新の実行時には、デプロイメントによって、更新が動作しているかどうかが確認され、障害が検出されるとロールアウトが停止されます。
-
デプロイメントは、ポッドを管理するために使用できるワークロード・コントローラーの、1 つのタイプにすぎません。 さまざまな選択肢の中から選ぶ上で役立つ情報については、どのようなタイプの Kubernetes オブジェクトをアプリ用に作成できますか? を参照してください。 デプロイメントの詳細については、 Kubernetes のドキュメントを参照してください。
- ポッド
-
クラスターにデプロイされたすべてのコンテナー化アプリは、ポッドと呼ばれる Kubernetes リソースによってデプロイ、実行、および管理されます。 ポッドは Kubernetes クラスター内のデプロイ可能な小さいユニットを表し、単一のユニットとして処理される必要があるコンテナーをグループ化するために使用します。 通常、各コンテナーは独自のポッドにデプロイされます。 ただしアプリでは、コンテナーとその他のヘルパー・コンテナーを 1 つのポッドにデプロイすることによって、同じプライベート IP アドレスを使用してそれらのコンテナーをアドレス指定できるようにする必要がある場合もあります。
- アプリ
-
アプリとは、完全に機能する 1 つのアプリ全体を指す場合もありますし、アプリのコンポーネントを指す場合もあります。 アプリのコンポーネントは、別々のポッドまたは別々のワーカー・ノードにデプロイできます。 詳しくは、アプリ・デプロイメントの計画および Kubernetes ネイティブ・アプリの開発を参照してください。
Kubernetesの詳細については、 Kubernetes の資料を参照してください。
コンテナーとは
コンテナーとは、アプリケーションのコード、構成、依存関係をひとまとめにしてパッケージ化し、リソースを隔離したプロセスとして、コンピュート・サーバーで実行できるようにするための標準的な手段です。 IBM Cloud 上でアプリを実行するには、まずコンテナ・レジストリに保存するコンテナ・イメージを作成してアプリをコンテナ化する必要がある。
以下の用語を復習し、概念に慣れましょう。
- コンテナー
- コンテナとは、アプリを環境間で移動させ、変更せずに実行できるように、すべての依存関係とともにパッケージ化されたアプリのことである。 仮想マシンとは異なり、コンテナーはデバイス、そのオペレーティング・システム、および基礎となるハードウェアを仮想化しません。 アプリのコード、ランタイム、システム・ツール、ライブラリー、設定値のみがコンテナー内にパッケージ化されます。 コンテナは、コンピュートホスト上で分離されたプロセスとして実行され、ホストオペレーティングシステムとそのハードウェアリソースを共有する。 このため、コンテナーは仮想マシンより軽量で移植しやすく、効率的です。
- 画像
- コンテナ・イメージは、コンテナを実行するためのファイル、構成設定、ライブラリを含むパッケージである。 イメージはDockerfileと呼ばれるテキストファイルから構築される。 Dockerfileは、どのようにイメージを構築し、どのアーティファクトをそれに含めるかを定義する。 コンテナに含まれる成果物は、アプリのコード、構成設定、依存関係で構成される。
- レジストリ―
- イメージ・レジストリーはコンテナー・イメージを格納、取得、共有する場所です。 レジストリは、誰でも利用できるように一般公開することも、少数のユーザーグループだけが利用できるように非公開にすることもできる。 エンタープライズ・アプリケーションに関しては、 IBM Cloud のようなプライベート・レジストリを使用して、イメージを権限のないユーザーに使用されないように保護します。
Red Hat OpenShift とは何ですか?
Red Hat OpenShift は、エンタープライズ・ワークロードを実行するための信頼できる環境を提供する Kubernetes コンテナー・プラットフォームです。 これは、アプリ・ライフサイクルの開発、運用、およびセキュリティーを強化するソフトウェアを組み込んで Kubernetes プラットフォームを拡張したものです。 Red Hat OpenShift によって、複数のハイブリッド・クラウド・プロバイダーおよび環境にワークロードをデプロイできます。
Red Hat OpenShift on IBM Cloud、どのようなコンピュート・ホスト・インフラを提供していますか?
Red Hat® OpenShift® on IBM Cloud®では、以下のプロバイダーのインフラストラクチャーを使用してクラスターを作成できます。 1 つのクラスター内のワーカー・ノードはすべて、同じプロバイダーからのものでなければなりません。
コンポーネント | 説明 |
---|---|
概要 | 独自の仮想プライベート・クラウド (VPC) 内の仮想サーバーにクラスターを作成します。 |
サポート対象のコンテナー・プラットフォーム | Red Hat OpenShift または Kubernetes |
コンピュート・ノードとワーカー・ノードのリソース | ワーカーノードは、共有インフラストラクチャまたは専用ホストを使用して仮想マシンとして作成される。 クラシック・クラスターとは異なり、共有ハードウェア上の VPC クラスター・ワーカー・ノードは、インフラストラクチャー・ポータルにも個別のインフラストラクチャー請求書にも表示されません。 代わりに、Red Hat OpenShift on IBM Cloud を使用して、ワーカー・ノードのすべての保守と請求に関するアクティビティーを管理します。 ワーカー・ノード・インスタンスは、VPC サブネットやストレージ・ボリュームなど、インフラストラクチャー・アカウント内に存在する特定の VPC インスタンスに接続されます。 専用ホストの場合、専用ホストの価格は vCPU, メモリと、ホスト上に配置されたワーカーが使用する インスタンスストレージを カバーします。 すべてのインテル® x86-64 サーバーは、デフォルトでハイパースレッディングが有効になっています。 詳しくは、 Intel Hyper-Threading Technology を参照してください。 |
セキュリティー | 共有ハードウェア上のクラスターは、パブリック・クラウド内の分離された環境で実行されます。 専用ホスト上のクラスターは共有環境では実行されません。代わりに、ご使用のクラスターのみがホスト上に存在します。 ネットワーク・アクセス制御リストによって、ワーカー・ノードに浮動 IP を提供するサブネットを保護します。 |
高可用性 | マスターには、高可用性のための 3 つのレプリカが含まれます。 さらに、マルチゾーンの大都市でクラスターを作成した場合は、マスターのレプリカが複数のゾーンに分散されるので、ワーカー・プールも複数のゾーンに分散させることができます。 |
予約 | VPC の予約はできません。 |
クラスター管理 | VPC クラスターを再ロードまたは更新することはできません。 その代わりに、 worker replace --update CLI または API オペレーションを使用して、古くなったり問題のある状態のワーカーノードを交換してください。 |
クラスター・ネットワーキング | クラシック・インフラストラクチャーとは異なり、VPC クラスターのワーカー・ノードは、VPC サブネットに接続され、プライベート IP アドレスを割り当てられます。 ワーカー・ノードはパブリック・ネットワークには接続されず、代わりにパブリック・ゲートウェイ、浮動 IP、または VPN ゲートウェイを介してアクセスされます。 詳しくは、Red Hat OpenShift on IBM Cloud での VPC ネットワーキングの概要を参照してください。 |
アプリとコンテナーのプラットフォーム | コンテナ化されたアプリを管理するために、コミュニティ Kubernetes または Red Hat OpenShift クラスタを作成することができます。 アプリのビルド・プロセスは、インフラストラクチャー・プロバイダーによって異なりませんが、アプリを公開する方法には違いがあります。 |
アプリ・ネットワーキング | ワーカー・ノードにデプロイされるすべてのポッドに 172.30.0.0/16 の範囲のプライベート IP アドレスが割り当てられ、プライベート VPC サブネットのワーカー・ノードのプライベート IP アドレスに基づいてワーカー・ノード間でポッドが転送されます。 パブリック・ネットワークにアプリを公開するには、Kubernetes LoadBalancer サービスを作成します。作成すると、VPC ロード・バランサーおよびワーカー・ノード用のパブリック・ホスト名アドレスがプロビジョンされます。
詳しくは、VPC ロード・バランサーによるアプリの公開を参照してください。 |
ストレージ | ファイル・ストレージ、ブロック・ストレージ、オブジェクト・ストレージ、ソフトウェア定義ストレージなど、非永続ストレージ・ソリューションと永続ストレージ・ソリューションから選択できます。 詳しくは、可用性の高い永続ストレージの計画を参照してください。 |
ユーザーのアクセス権限 | IBM Cloud IAM アクセス・ポリシー を使用して、インフラストラクチャーの作成、クラスターの管理、およびクラスター・リソースへのアクセスをユーザーに許可することができます。 クラスターは、VPC とは別のリソース・グループに入れることができます。 |
統合 | VPC は、サポートされている IBM Cloud サービス、アドオン、サード・パーティー統合の選択リストをサポートします。 リストについては、サポートされる IBM Cloud とサード・パーティーの統合を参照してください。 |
ロケーションとバージョン | VPC クラスターは、世界中のマルチゾーン・ロケーションで使用可能です。 |
サービス・インターフェース | VPC クラスターは、次のバージョン (v2 ) の IBM Cloud Kubernetes Service API でサポートされ、クラシック・クラスターと同じ CLI およびコンソールを使用して VPC クラスターを管理できます。 |
サービスのコンプライアンス | サービスはどのような標準に準拠していますか? の VPC セクションを参照してください。 |
サービスの制限 | サービスの制限を参照してください。 Red Hat OpenShift on IBM Cloud での VPC 固有の制限については、VPC コンピュート・クラスターの制限を参照してください。 VPC インフラストラクチャー・プロバイダーの一般的な制限については、制限を参照してください。 |
コンポーネント | 説明 |
---|---|
概要 | 独自のハードウェア IBM Cloud クラシックまたは VPC 上、または AWS や Azureなどの別のクラウド・プロバイダーの仮想サーバー上にクラスターを作成します。 |
サポート対象のコンテナー・プラットフォーム | Red Hat OpenShift |
コンピュート・ノードとワーカー・ノードのリソース | ワーカー・ノードは、共有インフラストラクチャーまたは専用ホストを使用する仮想マシンにすることも、ベアメタル・サーバーにすることもできます。 ワーカー・ノードの保守と請求アクティビティーは、 IBM Cloud、独自のオンプレミス・ハードウェア、または別のクラウド・プロバイダーのいずれであっても、ホスト・インフラストラクチャー・プロバイダーを介して管理します。 請求も IBM Cloudを使用して管理します。 料金の詳細については、 「IBM Cloud Satellite? を使用する際の料金について 」をご覧ください。 |
セキュリティー | セキュリティーとコンプライアンス を参照してください。 |
高可用性 | 高可用性とリカバリーについて を参照してください。 |
予約 | Satellite は予約不可。 |
クラスター管理 | ワーカー・ノードとして割り当てられたホストの更新 を参照してください。 |
クラスター・ネットワーキング | IBM Cloud クラシック・ホストまたは VPC ホストを自分のロケーションに接続する場合は、それらの説明を参照してください。 |
アプリとコンテナーのプラットフォーム | Red Hat OpenShift クラスター を作成して、コンテナー化アプリを管理できます。 アプリのビルド・プロセスは、インフラストラクチャー・プロバイダーによって異なりませんが、アプリを公開する方法には違いがあります。 詳しくは、 アプリ公開サービスの選択 を参照してください。 |
アプリ・ネットワーキング | ワーカー・ノードにデプロイされるすべてのポッドは、デフォルトでは 172.30.0.0/16 の範囲のプライベート IP アドレスを割り当てられます。 ポッドにプライベート IP アドレスを提供するカスタム・サブネット CIDR を指定することで、ロケーションへの接続に使用するネットワークとのサブネットの競合を回避できます。 アプリを公開するには、 Satellite クラスターでのアプリの公開 を参照してください。 |
ストレージ | 独自のストレージ・ドライバーを使用するか、サポートされているストレージ・テンプレートのいずれかをデプロイします。 詳しくは、 Understanding Satellite storage を参照してください。 |
ユーザーのアクセス権限 | IBM Cloud IAM アクセス・ポリシーを使用して、 IBM Cloud インフラストラクチャーの作成、クラスターの管理、およびクラスター・リソースへのアクセスをユーザーに許可することができます。 詳しくは、 アクセス概要の 管理をご覧ください。 また、インフラストラクチャー・プロバイダーによって提供されるポリシーで、ホスト・インフラストラクチャーへのアクセスをさらに制御することもできます。 |
統合 | クラスター統合については、 サポートされる IBM Cloud とサード・パーティー統合 を参照してください。 サポートされる Satellite サービス統合については、 サポートされる Satellite IBM Cloud サービス を参照してください。 |
ロケーションとバージョン | クラスターは、 サポートされる IBM Cloud ロケーション のいずれかから管理されます。 ただし、ワーカー・ノードを独自の場所、 IBM Cloud データ・センター、または別のクラウド・プロバイダーにデプロイできます。 詳しくは、 ロケーションとホストについて を参照してください。 |
サービス・インターフェース | Satellite は、グローバル API [IBM Cloud Kubernetes Service、 Red Hat OpenShift on IBM CloudCLI 、および Satellite CLI によってサポートされます。 コンソール からクラスターを管理することもできます。 |
サービスのコンプライアンス | クラスターについては、 サービスはどのような標準に準拠していますか? を参照してください。 Satelliteについては、 セキュリティーとコンプライアンス を参照してください。 |
サービスの制限 | 制限、デフォルト設定、および使用要件 を参照してください。 |
コンポーネント | 説明 |
---|---|
概要 | IBM Cloud インフラストラクチャの古典的なコンピュート、ネットワーキング、ストレージ環境でクラスタを作成する。 |
サポート対象のコンテナー・プラットフォーム | Red Hat OpenShift または Kubernetes |
コンピュート・ノードとワーカー・ノードのリソース | ワーカーノードには、仮想、ベアメタル、Software-Defined Storageの各マシンを利用できます。 ワーカー・ノード・インスタンスは IBM Cloud インフラストラクチャー・アカウント内にありますが、Red Hat OpenShift on IBM Cloud を介して管理できます。 ワーカー・ノード・インスタンスはお客様が管理します。 |
セキュリティー | クラスタインフラストラクチャの保護、リソースの分離、セキュリティコンプライアンスの確保に役立つ組み込みのセキュリティ機能。 詳しくは、クラシック・ネットワーク・インフラストラクチャーの資料を参照してください。 |
高可用性 | クラシック・クラスターも VPC クラスターも、高可用性を得るためにマスターに 3 つのレプリカがあります。 さらに、マルチゾーンの大都市でクラスターを作成した場合は、マスターのレプリカが複数のゾーンに分散されるので、ワーカー・プールも複数のゾーンに分散させることができます。 詳しくは、Red Hat OpenShift on IBM Cloud の高可用性を参照してください。 |
予約 | クラシック・ワーカー・ノードを 1 年間または 3 年間使用する契約で予約を作成すると、その契約期間の間は、固定の割引料金が適用されます。 一般的には、通常の労働者のノードコストと比較して30~50%の節約となる。 |
クラスター管理 | Classicクラスタは、ワーカープールのサイズ変更、ワーカーノードのリロード、メジャー、マイナー、パッチバージョンにまたがるマスターとワーカーノードの更新など、 v1 API操作の全セットをサポートします。 クラスターを削除するときに、接続されたサブネットまたはストレージ・インスタンスを削除することもできます。 |
クラスター・ネットワーキング | ワーカー・ノードは、プライベートの IBM Cloud インフラストラクチャー・ネットワークで通信するためのプライベート IP アドレスを提供するプライベート VLAN 上にプロビジョンされます。 パブリック・ネットワークで通信するために、パブリック VLAN 上にワーカー・ノードをプロビジョンすることもできます。 クラスター・マスターへの通信は、パブリック・サービス・エンドポイントまたはプライベート・クラウド・サービス・エンドポイントで行えます。 詳しくは、 VPC クラスター・ネットワークの基本について または クラシック・クラスター・ネットワークの基本について を参照してください。 |
アプリとコンテナーのプラットフォーム | コミュニティー Kubernetes クラスターまたは Red Hat OpenShift クラスターを作成してコンテナー化アプリを管理することを選択できます。 アプリのビルド・プロセスは、インフラストラクチャー・プロバイダーによって異なりませんが、アプリを公開する方法には違いがあります。 詳しくは、 アプリ公開サービスの選択 を参照してください。 |
アプリ・ネットワーキング | ワーカー・ノードにデプロイされるすべてのポッドに 172.30.0.0/16 の範囲のプライベート IP アドレスが割り当てられ、プライベート VLAN のワーカー・ノードのプライベート IP アドレスに基づいてワーカー・ノード間でポッドが転送されます。 パブリック・ネットワークにアプリを公開するには、クラスターのワーカー・ノードがパブリック VLAN 上になければなりません。 その場合は、NodePort、LoadBalancer (NLB)、または Ingress (ALB) サービスを作成できます。 詳しくは、アプリのクラスターの内部ネットワークおよび外部ネットワークの計画を参照してください。 |
ストレージ | ファイル・ストレージ、ブロック・ストレージ、オブジェクト・ストレージ、ソフトウェア定義ストレージなど、非永続ストレージ・ソリューションと永続ストレージ・ソリューションから選択できます。 詳しくは、可用性の高い永続ストレージの計画を参照してください。 |
ユーザーのアクセス権限 | クラシック・インフラストラクチャー・クラスターを作成するには、リージョンとリソース・グループごとにインフラストラクチャー資格情報をセットアップする必要があります。 クラスターをユーザーが管理できるようにするには、IBM Cloud IAM プラットフォーム・アクセス役割を使用します。 クラスター・リソースへのアクセス権限をユーザーに付与するには、 Kubernetes RBAC 役割に対応する IBM Cloud IAM サービス・アクセス役割 を使用します。 |
統合 | IBM Cloud のさまざまなサービス、アドオン、サード・パーティーと統合して、クラスターとアプリの機能を拡張できます。 リストについては、サポートされる IBM Cloud とサード・パーティーの統合を参照してください。 |
ロケーションとバージョン | クラシック・クラスターは 世界中でご利用いただけます。 |
サービス・インターフェース | クラシック・クラスターは、 Kubernetes Service v1 API、 CLI、および
コンソール で完全にサポートされます。 |
サービスのコンプライアンス | サービスはどのような標準に準拠していますか? のクラシック・セクションを参照してください。 |
サービスの制限 | サービスの制限を参照してください。 機能固有の制限については、セクションごとに記載しています。 |
サービスを利用するメリットは何ですか?
Red Hat OpenShift on IBM Cloud を使用すると、開発者は Kubernetes クラスターにエンタープライズ・ワークロードをコンテナー化してデプロイするための迅速かつ安全な方法を利用できます。Red Hat OpenShift クラスターは、開発ライフサイクル操作の一貫性と柔軟性を提供する Kubernetes コンテナー・オーケストレーション上に構築されます。
Red Hat OpenShift ワークロードは、IBM のグローバルな拠点にあるデータ・センターと複数ゾーンのリージョンにまたがってスケーリングできます。 同時に、複数のアプリを均等にモニター、ログ記録、保護できます。 IBM がサービスを管理するので、ユーザーは AI や分析など高価値の IBM Cloud サービスとミドルウェアを利用したイノベーションに集中できます。 また、お気に入りのアプリ・ランタイム、フレームワーク、データベースなど、Red Hat によってパッケージされたオープンソース・ツールを利用できます。
始めに Red Hat OpenShift on IBM Cloud クラスターを作成するチュートリアルを試してください。
- コンテナー・プラットフォーム・プロバイダーの選択
- コンテナー・プラットフォーム・オーケストレーターとしてインストールされた Red Hat OpenShift またはコミュニティー Kubernetes を使用して、クラスターをデプロイできます。
- 会社に適した開発者エクスペリエンスを選択するか、Red Hat OpenShift クラスターとコミュニティー Kubernetes クラスターの両方でワークロードを実行できます。
- IBM Cloud コンソールから Kubernetes ダッシュボードまたは Red Hat OpenShift Web コンソールへの組み込み統合。
- Red Hat OpenShift のすべての IBM Cloud クラスターまたはコミュニティー Kubernetes クラスターの単一のビューと管理のエクスペリエンス。
- コンピュート、ネットワーク、およびストレージそれぞれのインフラストラクチャーを分離する、単一テナントの Kubernetes クラスター
- 組織の要件に適合する、カスタマイズされた独自のインフラストラクチャーを作成できる。
- インフラストラクチャー・プロバイダーの選択
- IBM Cloud インフラストラクチャーによって提供されるリソースを使用して、機密保護機能のある専用の Red Hat OpenShift マスター、ワーカー・ノード、仮想ネットワーク、そしてストレージをプロビジョンできる。
- クラスターを使用可能にしておくために IBM によって継続的にモニターされて更新される、完全に管理された Kubernetes マスターを利用できる。
- データ、GPU、AI などのコンピュートを集中的に使用するワークロードの場合は、ベアメタル・サーバーを使用してワーカー・ノードをプロビジョンできる。
- 統合されたセキュアなボリューム・サービスによって、永続データを保管し、Kubernetes ポッド間でデータを共有し、必要に応じてデータを復元することができる。
- すべてのネイティブ Kubernetes API をフルサポートすることによる利点。
- 高可用性を高めるマルチゾーン・クラスター
- ワーカー・プールを使用して、同じフレーバー (CPU、メモリー、仮想または物理) のワーカー・ノードを容易に管理する。
- 選択したマルチゾーンにノードを均等に分散させ、アプリのアンチアフィニティー・ポッド・デプロイメントを使用して、ゾーン障害から保護する。
- 別のクラスターにリソースを重複させるのではなく、マルチゾーン・クラスターを使用して、コストを削減する。
- クラスターの各ゾーンに自動的にセットアップされるマルチゾーン・ロード・バランサー (MZLB) を使用するアプリの自動ロード・バランシングによる利点。
- 高可用性のマスター
- クラスターの作成時に自動的にプロビジョンされる高可用性マスターによって、クラスターのダウン時間 (マスターの更新時など) が削減される。
- ゾーン障害からクラスタを保護するために、マルチゾーンクラスタ内のゾーンにマスターを分散します。
- Vulnerability Advisorを使用したイメージ・セキュリティーのコンプライアンス
- Docker のプライベートなイメージレジストリに、組織内のすべてのユーザーがイメージを保存および共有できる独自のレポジトリを設定します。
- プライベート IBM Cloud レジストリー内のイメージを自動スキャンすることによる利点。
- イメージ内で使用されるオペレーティング・システムに固有の推奨を確認して、潜在的な脆弱性を修正できる。
- クラスターの正常性に関する継続的なモニター
- クラスター・ダッシュボードを使用して、クラスター、ワーカー・ノード、およびコンテナーのデプロイメントの正常性を素早く参照して管理できる。
- IBM Cloud® Monitoringを使用して詳細な使用量メトリックを確認し、ワークロードに合わせてクラスターを素早く拡張することができる。
- IBM Cloud Logsを使用してロギング情報を参照して、クラスター・アクティビティーの詳細を確認できる。
- アプリにパブリック・アクセスできるよう安全に公開する
- インターネットからクラスター内のサービスにアクセスする方法を、パブリック IP アドレス、IBM 提供の経路、独自のカスタム・ドメインの中から選択できる。
- IBM Cloud サービスの統合
- IBM Cloud API、Blockchain、データ・サービス、モノのインターネットなどの Watson サービスを統合してアプリに付加的な機能を追加する。
Red Hat OpenShift クラスターと Kubernetes クラスターの比較
Red Hat OpenShift on IBM Cloud と IBM Cloud Kubernetes Service クラスターはどちらも、企業のワークロード向けに調整された実稼働対応のコンテナー・プラットフォームです。 次の表は、どのコンテナ・プラットフォームがあなたのユースケースに最適かを選択するのに役立つ、いくつかの共通の特徴を比較対照したものである。
特性 | Kubernetes クラスター | Red Hat OpenShift クラスター |
---|---|---|
IBM Cloud Kubernetes Service 自動化ツールでのクラスター管理エクスペリエンスの実現 (API、CLI、コンソール) | ある | ある |
単一ゾーンおよび複数ゾーンにおける世界規模の可用性 | ある | ある |
ハイブリッド・クラウド・プロバイダーにおける一貫性のあるコンテナー・オーケストレーション | ある | ある |
AI などの IBM Cloud サービスへのアクセス | ある | ある |
複数ゾーン・データ・ユース・ケースでソフトウェア定義ストレージ Portworx ソリューションを使用可能 | ある | ある |
IBM Virtual Private Cloud (VPC) でのクラスターの作成 | ある | ある |
Kubernetes 最新ディストリビューション | ある | |
クラスター RBAC と同期するサービス・アクセス役割を対象とした IBM Cloud IAM アクセス・ポリシーのアクセス・グループへの範囲設定 | ある | |
プライベート・ネットワーク専用のクラシック・インフラストラクチャー・クラスター | ある | |
GPU ベアメタル・ワーカー・ノード | ある | ある |
統合された IBM Cloud Pak およびミドルウェア | ある | |
内蔵コンテナ・イメージ・ストリーム、ビルド、ツール (詳細) | ある | |
Jenkins による統合 CI/CD | ある | |
デフォルトでセットアップされる厳密なアプリケーション・セキュリティー・コンテキスト | ある | |
ビギナーに適したアプリ・コンソールを使用した、簡単な Kubernetes 開発者エクスペリエンス | ある | |
サポートされるオペレーティング・システム | Kubernetes バージョン情報 | Red Hat OpenShift バージョン情報 |
優先外部トラフィック・ネットワーキング | Ingress | ルーター |
Hyper Protect Crypto Services で暗号化された保護された経路 | ある |
IBM Cloud および標準的な OCP で実行されるクラスターの比較
Red Hat OpenShift on IBM Cloud はマネージド・サービスであるため、OpenShift Container Platform で手動でセットアップする Red Hat® OpenShift® on IBM Cloud® のコンポーネントとグローバル設定の多くは、Red Hat OpenShift on IBM Cloud では、デフォルトで自動的にセットアップされます。 ここでは、Red Hat OpenShift on IBM Cloud クラスターと、お客様のインフラストラクチャーの標準的な OpenShift Container Platform インストール環境の相違点について説明します。 クラスターのマスター・ノードとワーカー・ノードで Red Hat OpenShift コンポーネントがどのようにセットアップされるか、または構成できない グローバル設定 についての概要を サービス・アーキテクチャー で確認することもできます。
特性 | 標準的な OCP | Red Hat OpenShift on IBM Cloud |
---|---|---|
クラスター・マスター (コントロール・プレーン) | お客様が、API サーバーや etcd などのコントロール・プレーン・コンポーネントを、master の役割を担うマシンにセットアップします。 お客様がコントロール・プレーン・コンポーネントを変更できます。ただし、コントロール・プレーンのデータのバックアップ、リストア、高可用性の確保をお客様が行う必要があることに注意してください。 |
IBM がマスターをセットアップし、コントロール・プレーン・コンポーネントを管理し、マスター・パッチの更新を自動的に適用します。 マスターは可用性が高く、自動的にバックアップされます。 |
コンピュート・マシン (ワーカー・ノード) | お客様が、対応するコンピュート・マシンを作成し、対応するネットワーク接続をセットアップし、各マシンに SSH 接続し、OCP をインストールし、クラスターのワーカー・ノードとしてマシンを登録します。 マシンのプロビジョンは、Installer-Provisioned Infrastructure (IPI) のガイド付きのセットアップを使用してインストーラーで実行することも、お客様側でより細かく管理するため、および今後運用していくために、User-Provisioned Infrastructure (UPI) を使用してお客様が実行することもできます。 ワーカー・ノードの保守および更新は、お客様が行います。 Red Hat OpenShift Web コンソールから更新をインストールできます。 | クラスターに追加するワーカー・ノードのフレーバーをお客様が選択し、IBM がワーカー・ノードをクラスターに自動的に接続して、OCP をインストールします。 その意味では、すべてのインフラストラクチャーおよびネットワーク設定を管理する必要がないため、インストールは IPI と似ています。 また、IBM は、(IBM Cloud Web コンソールではなく) Red Hat OpenShift インターフェースでパッチ更新 (お客様がワーカー・ノードに適用することを選択できます) も提供します。 セキュリティーの向上のため、SSH は無効になっています。 |
OCP のバージョンとパッチの更新 | マスターとワーカー・ノードの基礎インフラストラクチャーの更新は、お客様が行います。 Red Hat OpenShift Web コンソールを使用して、OCP のバージョンを更新できます。 | マスターには IBM が自動的に更新を適用します。また、IBM は、ワーカー・ノードのバージョン更新およびセキュリティー・パッチ更新を提供します。 お客様は、それらの更新をワーカー・ノードにいつ適用するかを、(IBM Cloud Web コンソールではなく) Red Hat OpenShift インターフェースで選択します。 サポートされるバージョンは、標準的な OpenShift Container Platform と異なる場合があります。 |
コンピュート・マシンの自動スケーリング | ClusterAutoscaler リソースをセットアップできます。 |
クラスター自動スケーリング機能プラグインをセットアップできます。 |
ワーカー・ノードのオペレーティング・システム | CoreOS またはRHEL | クラスター・バージョンごとにサポートされるオペレーティング・システムのリストについては、 Red Hat OpenShift on IBM Cloud バージョン情報 を参照してください。 |
サポート | ご使用の Red Hat サブスクリプションまたはクラウド・プロバイダーの使用条件に従って提供されます。 oc adm must-gather ツールを使用して、情報を収集できます。 |
IBM Cloud サポートによって提供されます。 oc adm must-gather ツールを使用するか、Diagnostics and Debug Tool を使用して、情報を収集できます。 |
Red Hat OpenShift Web コンソール | お客様が Red Hat OpenShift Web コンソールをセットアップします。構成したり無効にしたりできます。 | Red Hat OpenShift Web コンソールは自動的にセットアップされます。 Web コンソールを構成したり無効にしたりすることはできません。 IBM また、クラスタ・インフラストラクチャを管理するための コンソールも提供します。 |
認証 | OAuth サーバーが用意されていますが、お客様が、トークン設定と ID プロバイダーを構成してクラスターへのアクセスを制御します。 また、クラスター内のユーザー・アクセスを制御するための RBAC の管理もお客様が行います。 | IBM が、IBM Cloud の IAM を使用するように OAuth サーバーを自動的にセットアップします。 ID プロバイダーを変更することはできません。IBM Cloud IAM も RBAC への自動同期 にセットアップされます。これにより、IAM を使用してクラスター内およびクラスターへのアクセスを管理できます。 |
クラスターのコンテナー・ネットワーク | クラスター・ネットワーク・オペレーターが、SDN のコンテナー・ネットワーク・インターフェース (CNI) のプラグインをセットアップします。 お客様は CNI プラグインの変更、複数のネットワークの構成、Single Root I/O Virtualization (SR-IOV) などのハードウェア・ネットワークの接続を行うことができます。 | Calico が自動的にセットアップされます。 CNI プラグインを変更したり、複数のネットワークを構成したり、ハードウェア・ネットワークを接続したりすることはできません。 |
Ingress | お客様は Ingress オペレーターを使用して HAProxy ベースの Ingress コントローラーを 1 つ以上セットアップできます。 Route リソースまたは Ingress リソースを指定して、アプリにトラフィックを転送できます。 |
お客様がクラスターを作成すると、デフォルトの Ingress サブドメインが自動的にセットアップされます。 Ingress コントローラーごとに HAProxy ベースのルーターが 1 つセットアップされ、ワーカー・ノードが存在するゾーンごとにルーター・サービスが 1 つ自動的に作成されます。 Route リソースまたは Ingress リソースを指定して、アプリにトラフィックを転送できます。 詳しくは、Red Hat OpenShift バージョン 4 の Ingress についてを参照してください。 |
ストレージ | お客様が、ストレージ・プロバイダーで永続ボリュームをバックアップするようにセットアップする必要があります。 OpenShift Data Foundation を使用できます。 | IBM が、ストレージ・プロバイダー (IBM Cloud File Storage や Block Storage など) を自動的にセットアップします。 OpenShift Data Foundation を使用できます。 サポートされるストレージ・オプションについては、 可用性の高い永続ストレージの計画を参照してください。 |
イメージ・レジストリー | クラスターには、イメージをプルするための内部レジストリーがセットアップされます。 クラスターにパブリック・ネットワーク・アクセスがある場合は、Docker Hub からイメージを自動的にプルできます。 他のレジストリーからイメージをプルするには、イメージ・プル・シークレットをセットアップする必要があります。 イメージをクラウド・ストレージ・プロバイダーにバックアップするには、お客様が内部レジストリーをセットアップします。 保管されたイメージを複数のクラスターで使用することはできません。 | 内部レジストリーが、IBM Cloud Object Storage インスタンス内のバケットにイメージを自動的にバックアップするようにセットアップされます。 クラスターには、IBM Cloud Container Registry などのデフォルトのレジストリーからイメージをプルするためのイメージ・プル・シークレットが自動的にセットアップされます。 また、IBM Cloud Container Registry と連携するように内部レジストリーをセットアップすることもできます。クラスターは、このレジストリーからイメージをプルするように自動的にセットアップされます。 詳しくは、イメージ・レジストリーのセットアップを参照してください。 |
オペレーターおよび OperatorHub | OpenShift Container Platform には、クラスターのデフォルト・コンポーネントを管理するための多くのオペレーターが用意されています。 OperatorHub を使用して、サード・パーティーのプロバイダーなどによる他のオペレーターをインストールすることもできます。 | IBM は、クラスターのデフォルト・コンポーネントを管理するために、OCP と同じオペレーターの多くを用意しています。 ただし、マスターは IBM が管理し、クラウド・インフラストラクチャーを管理するための IBM Cloud API も IBM が提供するので、一部のオペレーター (マシン設定オペレーターや、この表に記載している他のコンポーネントなど) は設定も構成もできません。 OperatorHub を使用して、サード・パーティーのプロバイダーなどによる 他のオペレーターをインストールすることもできます。 お客様がインストールまたは作成したオペレーターは IBM ではサポートされないこと、また、オペレーター独自のサポート条件や料金が適用される可能性があることに注意してください。 |
プロジェクト、ビルド、およびアプリ | OpenShift Container Platform プロジェクト、ビルド設定、内部レジストリなどのツールを提供し、クラウドネイティブ、継続的インテグレーション、継続的デリバリー(CI/CD)手法に従いながらアプリをデプロイできる。 | Red Hat OpenShift on IBM Cloud クラスターには、OCP クラスターとまったく同じ、構成可能なプロジェクトとビルドのコンポーネントが用意されています。 クラスターを IBM Cloud サービス (Continuous Delivery など) と統合することもできます。 |
クラスターの正常性 | さまざまなオペレーターをインストールして構成することで、ロギング、モニタリング、および計測のツールをセットアップすることもできます。 これらのソリューションはクラスターに固有であり、バックアップしない限りは可用性が高くありません。 | クラスターは IBM Cloud Logs および IBM Cloud Monitoring とのワンクリック統合を備えているため、エンタープライズ・グレードの持続的なモニタリングとロギングをクラスターをまたいで実行できます。 また、標準的な OCP と同様に、ロギングやモニタリングのオペレーターをインストールすることもできます。ただし、お客様が構成の設定を調整しなければならない場合があります。 詳しくは、クラスターの正常性のロギングとモニタリングを参照してください。 |
クラスターのマイグレーション | クラスター・マイグレーター・オペレーターを使用して、クラスターを別のメジャー・バージョンにマイグレーションできます。 マイグレーションには別個のクラスターが必要です。あるメジャー・バージョンから別のメジャー・バージョンにクラスターを更新することはできません。 さまざまなオープンソース・ツールを使用できますが、正式にはサポートされていません。 | 標準の OpenShift Container Platform と同様に、あるメジャー・バージョンから別のメジャー・バージョンにクラスターを更新することはできません。 クラスタマイグレータオペレータのようなサードパーティのオープンソースツールを使用する場合、そのツールは IBM によってサポートされておらず、マイグレーションUIが使用できないなどの制限がある可能性があります。 |
コンテナー・ネイティブの仮想化 | コンテナネイティブ仮想化アドオンは、ベアメタルマシンには設定できるが、仮想マシンには設定できない。 コンテナー・ネイティブの仮想化は、IBM ではサポートされません。 問題が発生した場合は、問題およびワークロードへの影響を解決する必要があります。 | |
サーバーレス・ワークロード | Red Hat OpenShift Serverlessをセットアップできます。 | 同様に、Red Hat OpenShift Serverless をセットアップできます。 |
サービス・メッシュ | Red Hat OpenShift サービス・メッシュをセットアップできます。 | Red Hat OpenShift サービス・メッシュを設定することもできますが、サービス・メッシュのイングレスを機能させるには、 ネットワーク・ポリシーを適用する必要があります。 |
API ツールと CLI ツール | OpenShift Container Platform クラスターは、Kubernetes および Red Hat OpenShift の API リソースを利用できるようにセットアップされます。 oc や odo などのコマンド・ライン・ツールをインストールすることもできます。 |
Red Hat OpenShift on IBM Cloud クラスターは、Kubernetes および Red Hat OpenShift の API と CLI ツールを使用するための同じ機能を備えています。 また、IBM Cloud の API ツールと |
CLI ツールを使用して、クラスター・インフラストラクチャーを管理したり、他のクラウド・サービスをクラスターに統合したりすることもできます。 |
ワークロードを IBM Cloud
ワークロードを IBM Cloud に移動する理由はさまざまですが、その例としては、総所有コストの削減、各種の要件に準拠しているセキュアな環境でのアプリの可用性向上、ユーザーの要求に応じたスケールアップとスケールダウンなどが挙げられます。Red Hat OpenShift on IBM Cloud では、コンテナー・テクノロジーとオープン・ソース・ツール (Kubernetes など) を組み合わせているため、異なるクラウド環境間でマイグレーションできるクラウド・ネイティブ・アプリを作成して、ベンダーの囲い込みを回避できます。
では、どのようにクラウドを導入しますか? そこに至る過程で、どのようなオプションがあるでしょうか? そして、クラウドの導入後にワークロードをどのようにして管理しますか?
このページでは、Red Hat OpenShift on IBM Cloud 上の Kubernetes デプロイメントに関するいくつかの戦略について説明します。 Slackでチームと連携します。
Slack をまだご利用でない場合は、 招待を要求します。
次の表では、ユーザーがさまざまなタイプのクラウドに一般に移動するワークロードのタイプを例示しています。 両方の環境でクラスターが実行されるハイブリッド・アプローチを選択することもできます。
ワークロード | Red Hat OpenShift on IBM Cloud オフプレミス | オンプレミス |
---|---|---|
DevOps 実現ツール | ある | |
アプリの開発とテスト | ある | |
需要が劇的に変化し、迅速に拡張する必要があるアプリケーション | ある | |
CRM、HCM、ERP、e-コマースなどのビジネス・アプリ | ある | |
E メールなどのコラボレーション・ツールとソーシャル・ツール | ある | |
RHEL のワークロード | ある | |
ベア・メタル | ある | ある |
GPU 計算リソース | ある | ある |
PCI および HIPAA 準拠のワークロード | ある | ある |
プラットフォームやインフラストラクチャーに関する制約や依存関係のあるレガシー・アプリ | ある | |
厳格な設計、ライセンス交付、または厳しい規制を伴う独自開発アプリ | ある |
- Red Hat OpenShift on IBM Cloud、オフプレミスでワークロードを実行する準備はできていますか?
- うまくできました。 あなたはすでにパブリック・クラウドのドキュメントの中にいる。 さらに読み続けてその他の戦略アイデアを確認するか、今すぐクラスターを作成して作業を開始してください。
- オンプレミスとオフプレミスの両方のクラウドでワークロードを実行したいですか?
- IBM Cloud の柔軟性とスケーラビリティーをオンプレミス、エッジ、またはその他のクラウド・プロバイダー環境に拡大できる IBM Cloud Satellite を確認してください。
どのようなアプリを実行できますか? 既存のアプリを移動できますか、それとも新しいアプリを開発する必要がありますか?
コンテナー化アプリは、クラスター・バージョンの サポートされているオペレーティング・システム のいずれかで実行できる必要があります。 アプリのステートフル性も考慮してください。 Red Hat OpenShift on IBM Cloud で実行できるアプリの種類について詳しくは、アプリ・デプロイメントの計画を参照してください。
既にアプリがある場合は、そのアプリを Red Hat OpenShift on IBM Cloud にマイグレーションできます。 新規アプリを開発する場合は、ステートレスなクラウド・ネイティブ・アプリを開発するためのガイドラインを参照してください。
アプリをクラスターに移動する前に、どのようなスキルを持っている必要がありますか?
Red Hat OpenShift は、クラスター管理者とアプリ開発者という 2 人の主要な個人に対して機能を提供するために設計されています。 各個人は、異なる技術スキルを使用してアプリを正常に実行し、クラスターにデプロイします。
- クラスタ管理者の主なタスクと技術的知識は何ですか?
- クラスター管理者は、クラスターの IBM Cloud インフラストラクチャーのセットアップ、操作、保護、および管理を担当します。 標準的なタスクは、以下のとおりです。
- ワークロードに十分な容量を提供できるよう、クラスターのサイズを設定します。
- 高可用性、災害復旧、および会社のコンプライアンスの規格を満たすよう、クラスターを設計します。
- コンピュート・リソース、ネットワーク、およびデータを保護するためにユーザー許可をセットアップし、クラスター内の操作を制限することで、クラスターを保護します。
- ネットワーク・セキュリティー、ネットワーク・セグメンテーション、ネットワーク・コンプライアンスを確保できるよう、インフラストラクチャー・コンポーネント間のネットワーク通信を計画および管理します。
- データの常駐およびデータの保護の要件を満たすよう、永続ストレージ・オプションを計画します。
クラスター管理者には、コンピュート、ネットワーク、ストレージ、セキュリティー、およびコンプライアンスなど、幅広い知識が必要です。 標準的な会社では、この知識はシステム・エンジニア、システム管理者、ネットワーク・エンジニア、ネットワーク設計者、IT マネージャー、セキュリティー・スペシャリスト、およびコンプライアンス・スペシャリストなど、複数のスペシャリスト間で分散されています。 クラスター管理の役割を会社内の複数の個人に割り当てて、クラスターを正常に運用するために必要な知識を得ることを検討してください。 詳しくは、 管理者の学習パス を参照してください。
- アプリ開発者の主な仕事と技術的スキルとは?
- 開発者は、Red Hat OpenShift クラスター内のクラウド・ネイティブのコンテナー化アプリを設計、作成、保護、デプロイ、テスト、実行、およびモニターします。 これらのアプリを作成し実行するには、マイクロサービスの概念、 12ファクターアプリガイドライン、 Docker、コンテナ化の原則、利用可能な Red Hat OpenShift デプロイメントオプションに 精通している必要があります。 詳しくは、 開発者向けの学習パス を参照してください。
Red Hat OpenShift および Red Hat OpenShift on IBM Cloud では、アプリの公開とアプリの非公開化、永続ストレージの追加、他のサービスの統合、および ワークロードの保護と機密データの保護を行う方法について、複数のオプションが提供されています。 Red Hat OpenShift on IBM Cloud のクラスタにアプリを移動する前に、サポートされているオペレーティング・システム上でコンテナ化されたアプリとしてアプリを実行できること、および Red Hat OpenShift と Red Hat OpenShift on IBM Cloud がワークロードに必要な機能を提供していることを確認してください。
関連リソース
Kubernetes の概念と用語を学習する方法を紹介します。
- クラスターの作成チュートリアルを行うと、製品についての理解が深まります。
- この コースを修了することで、 Kubernetes と Red Hat OpenShift on IBM Cloud がどのように連動するかを学ぶことができる。