概要

OpenShift Container Platform 4.7

OpenShift Container Platform の紹介

概要

本書では、OpenShift Container Platform 機能の概要について説明します。

第1章 OpenShift Container Platform 4.7 ドキュメント

公式の OpenShift Container Platform 4.7 ドキュメントへようこそ。このドキュメントでは、OpenShift Container Platform に関する情報を検索して、その機能について確認してみてください。

OpenShift Container Platform 4.7 ドキュメントを移動するには、以下のいずれかを実行できます。

  • 左側のナビゲーションバーを使用して、ドキュメントを参照します。または、
  • このウェルカムページのコンテンツから、興味のあるアクティビティーを選択してください。

アーキテクチャーセキュリティーとコンプライアンス から始めます。次に、リリースノート を参照してください。

1.1. クラスターインストーラーのアクティビティー

OpenShift Container Platform 4.7 クラスターをインストールするようにセットアップする場合、本書では以下に役立ちます。

  • Red Hat Virtualization (RHV) にクラスターをインストールする: Red Hat Virtualization (RHV) にクラスターをデプロイするには、クイックインストール または カスタマイズありのインストール を使用します。
  • 制限付きのネットワークにクラスターをインストールする: AWSGCPvSphere、または ベアメタル でユーザーがプロビジョニングしたインフラストラクチャーを使用するクラスターが全インターネットにアクセスできない場合に、OpenShift Container Platform インストールイメージをミラーリングして、クラスターをネットワークが制限された環境でインストールできます。
  • 既存のネットワークにクラスターをインストールする: AWS または GCP で既存の Virtual Private Cloud (VPC) を使用する場合、または Azure で既存の VNet を使用する場合は、クラスターをインストールできます。
  • プライベートクラスターをインストールする: クラスターが外部インターネットアクセスを必要としない場合は、AWSAzure、または GCP にプライベートクラスターをインストールできます。クラウド API とインストールメディアにアクセスするには、引き続きインターネットアクセスが必要です。
  • インストールログを確認する: インストールログにアクセスして、OpenShift Container Platform 4.7 のインストール中に発生する問題を評価します。
  • OpenShift Container Platform にアクセスする: インストールプロセスの最後に出力された資格情報を使用して、コマンドラインまたは Web コンソールから OpenShift Container Platform クラスターにログインします。
  • Red Hat OpenShift Container Storage をインストールする: Red Hat OpenShift Container Storage を Operator としてインストールして、高度に統合され単純化されたコンテナーの永続ストレージ管理を提供できます。

1.2. 開発者のアクティビティー

最終的に OpenShift Container Platform は、コンテナー化されたアプリケーションを開発し、デプロイするためのプラットフォームです。以下の場合にアプリケーション開発者は、OpenShift Container Platform のドキュメントは有用です。

Topology ビュー を使用して、視覚的にアプリケーションの表示、ステータスの監視、コンポーネントの接続およびグループ化、ならびにコードベースの変更を行います。

  • 開発者 CLI ツール (odo) を使用する: odo CLI ツールにより、開発者は単一またはマルチコンポーネントのアプリケーションを簡単に作成でき、デプロイメント、ビルド、およびサービスルート設定を自動化できます。開発者は、odo は複雑な Kubernetes および OpenShift Container Platform の概念を抽象化し、アプリケーションの開発に集中できるようにします。
  • CI/CD パイプラインを作成する: パイプラインは、分離されたコンテナーで実行されるサーバーレス、クラウドネイティブ、継続的インテグレーション、および継続的デプロイメントシステムです。パイプラインは、標準の Tekton カスタムリソースを使用してデプロイメントを自動化し、マイクロサービスベースのアーキテクチャーで機能する分散型チーム向けに設計されています。
  • Helm チャートをデプロイする: Helm 3 は、開発者が Kubernetes でアプリケーションパッケージの定義、インストール、および更新を行うのに役立つパッケージマネージャーです。Helm チャートは、Helm CLI を使用してデプロイできるアプリケーションを記述するパッケージング形式です。
  • Operator について理解する: Operator は、OpenShift Container Platform 4.7 でクラスターアプリケーションを作成するのに推奨される方法です。Operator Framework について、またインストールされた Operator を使用してアプリケーションをプロジェクトにデプロイする方法について説明します。
  • イメージビルドを理解する: さまざまな種類のソースマテリアル (Git リポジトリー、ローカルバイナリー入力、および外部アーティファクトなどの場所) が含まれる各種のビルドストラテジー (Docker、S2I、カスタム、およびパイプライン) から選択します。次に、基本的なビルドから高度なビルドまで、ビルドタイプの例に従います。
  • コンテナーイメージを作成する: コンテナーイメージは、OpenShift Container Platform(および Kubernetes) アプリケーションで最も基本的なビルディングブロックです。イメージストリームを定義すると、開発の進捗に応じて、イメージの複数のバージョンを 1 つの場所に集約できます。S2I コンテナーを使用すると、Ruby、Node.js、Python などの特定タイプのコードを実行するように設定されたベースコンテナーに、ソースコードを挿入することができます。
  • デプロイメントを作成する: Deployment および DeploymentConfig オブジェクトを使用して、アプリケーションの詳細な管理を行います。Workloads ページまたは oc CLI を使用して デプロイメントを管理しますローリング、再作成およびカスタム デプロイメントストラテジーについて説明します。
  • テンプレートを作成する: 既存のテンプレートを使用するか、またはアプリケーションのビルドまたはデプロイ方法を記述する独自のテンプレートを作成します。テンプレートは、イメージと説明、パラメーター、レプリカ、公開されたポートおよびアプリケーションの実行またはビルド方法を定義するその他のコンテンツを組み合わせることができます。
  • Operator を開発する: Operator は、OpenShift Container Platform 4.7 でクラスターアプリケーションを作成するのに推奨される方法です。Operator の構築、テスト、およびデプロイのワークフローについて説明します。次に、Ansible または Helm に基づいて独自の Operator を作成するか、または Operator SDK を使用して ビルトイン Prometheus モニターリング を設定します。
  • REST API リファレンス: OpenShift Container Platform アプリケーションプログラミングインターフェイスのエンドポイントについて表示します。

1.3. クラスター管理者のアクティビティー

OpenShift Container Platform 4.7 クラスターでの継続的なタスクには、マシンを管理するためのさまざまなアクティビティーやユーザーにサービスを提供し、クラスターを監視するモニターリングおよびロギング機能が含まれます。このドキュメントは、クラスター管理者向けに以下の点で役立ちます。

  • OpenShift Container Platform の管理: OpenShift Container Platform 4.7 コントロールプレーンのコンポーネントについて説明します。OpenShift Container Platform マスターおよびワーカーが マシン API および Operator で管理され、更新される方法を参照してください。

1.3.1. クラスターコンポーネントの管理

1.3.2. クラスターコンポーネントの変更

  • OpenShift Update Service を理解する: ネットワークが制限された環境で OpenShift Container Platform の更新を推奨するローカルの OpenShift Update Service のインストールおよび管理について確認します。

1.3.3. クラスターの監視

第2章 OpenShift Container Platform について

以下のセクションを使用して、OpenShift Container Platform について確認して、使用に役立つコンテンツを見つけてください。

2.1. アーキテクト

2.2. クラスター管理者

2.3. アプリケーションサイト信頼性エンジニア (アプリ SRE)

2.4. 開発者

第3章 OpenShift Kubernetes Engine の概要

2020 年 4 月 27 日現在、Red Hat では、製品の提供する価値を適切に伝えることを目的とし、Red Hat OpenShift Container Engine の名前を Red Hat OpenShift Kubernetes Engine に変更しました。

Red Hat OpenShift Kubernetes Engine

Red Hat OpenShift Kubernetes Engine は、Red Hat が提供する製品であり、エンタープライズクラスの Kubernetes プラットフォームを、コンテナーを起動するための実稼働プラットフォームとして使用できるようにします。OpenShift Kubernetes Engine は、OpenShift Container Platform と同じバイナリーディストリビューションであるため、同じ方法でダウンロードしてインストールしますが、OpenShift Kubernetes Engine では、OpenShift Container Platform が提供する機能のサブセットも提供します。

3.1. 類似点と相違点

以下の表で、OpenShift Kubernetes Engine と OpenShift Container Platform の類似点と相違点を確認できます。

表3.1 OpenShift Kubernetes Engine と OpenShift Container Platform の製品比較

 OpenShift Kubernetes EngineOpenShift Container Platform

完全に自動化されたインストーラー

はい

はい

無線によるスマートアップグレード

はい

はい

Enterprise Secured Kubernetes

はい

はい

Kubectl と oc の自動化されたコマンドライン

はい

はい

Operator Lifecycle Manager (OLM)

はい

はい

管理者用 Web コンソール

はい

はい

OpenShift Virtualization

はい

はい

ユーザーワークロードの監視

 

はい

計量およびコスト管理 SaaS サービス

 

はい

プラットフォームのロギング

 

はい

開発者用 Web コンソール

 

はい

開発者アプリケーションカタログ

 

はい

ソースからイメージおよびビルダーの自動化 (Tekton)

 

はい

OpenShift Service Mesh (Kiali、Jaeger、および OpenTracing)

 

はい

OpenShift Serverless (Knative)

 

はい

OpenShift パイプライン (Jenkins および Tekton)

 

はい

IBM Cloud Pak および RHT MW バンドルの組み込みコンポーネント

 

はい

3.1.1. コア Kubernetes とコンテナーオーケストレーション

OpenShift Kubernetes Engine は、インストールが簡単なエンタープライズ対応の Kubernetes 環境への完全なアクセスを提供し、データセンターで使用する可能性のある多くのソフトウェア要素を含む広範な互換性テストマトリックスを提供します。

OpenShift Kubernetes Engine は、OpenShift Container Platform と同じサービスレベルアグリーメント、バグ修正を提供し、一般的な脆弱性やエラーから守ります。OpenShift Kubernetes Engine には、Red Hat Enterprise Linux (RHEL) Virtual Datacenter と Red Hat Enterprise Linux CoreOS (RHCOS) のエンタイトルメントが含まれており、同じテクノロジープロバイダーのコンテナーランタイムを備えた統合 Linux オペレーティングシステムを使用できます。

OpenShift Kubernetes Engine サブスクリプションは、Red Hat OpenShift support for Windows Containers サブスクリプションと互換性があります。

3.1.2. エンタープライズ対応の設定

OpenShift Kubernetes Engine は、OpenShift Container Platform と同じセキュリティーオプションとデフォルト設定を使用します。OpenShift Container Platform が提供するデフォルトのセキュリティーコンテキスト制約、Pod セキュリティーポリシー、ベストプラクティスのネットワークおよびストレージ設定、サービスアカウント設定、SELinux 統合、HAproxy エッジルーティング設定、およびその他すべての標準的な保護は、OpenShift Kubernetes Engine で利用できます。OpenShift Kubernetes Engine は、OpenShift Container Platform が使用する統合モニターリングソリューション全てにアクセスできます。このソリューションは、Prometheus に基づいており、一般的な Kubernetes の問題に対する幅広く対応し、さらにアラートも提供します。

OpenShift Kubernetes Engine は、OpenShift Container Platform と同じインストールおよびアップグレードの自動化を使用します。

3.1.3. 標準インフラストラクチャーサービス

OpenShift Kubernetes Engine サブスクリプションを使用すると、OpenShift Container Platform がサポートするすべてのストレージプラグインのサポートを受けることができます。

ネットワークに関しては、OpenShift Kubernetes Engine は Kubernetes Container Network Interface (CNI) すべてにサポート付きでアクセスでき、OpenShift Container Platform をサポートするサードパーティーの SDN を使用できます。また、付属の Open vSwitch ソフトウェア定義ネットワークを最大限に使用することもできます。OpenShift Kubernetes Engine を使用すると、OpenShift Container Platform でサポートされている OVN Kubernetes オーバーレイ、Multus、および Multus プラグインを最大限に活用できます。OpenShift Kubernetes Engine を使用すると、Kubernetes ネットワークポリシーを使用して、クラスターにデプロイされたアプリケーションサービス間にマイクロセグメンテーションを作成できます。

また、すぐに使用できる Kubernetes Ingress コントローラーとしての HAproxy エッジルーティングレイヤーとの高度な統合など、OpenShift Container Platform にある Route API オブジェクトを使用することもできます。

3.1.4. コアユーザーエクスペリエンス

OpenShift Kubernetes Engine ユーザーには、Kubernetes Operators、Pod デプロイメントストラテジー、Helm、および OpenShift Container Platform テンプレートに対する完全なアクセス権があります。OpenShift Kubernetes Engine ユーザーは、oc および kubectl コマンドラインインターフェイスの両方を使用できます。OpenShift Kubernetes Engine には、管理者の Web ベースのコンソールも含まれており、デプロイされたコンテナーサービスのすべての機能を表示し、container-as-a service エクスペリエンスを提供します。OpenShift Kubernetes Engine は、Operator Life Cycle Manager へのアクセスを許可し、使用するクラスターおよびライフサイクル Operator 対応サービスのコンテンツへのアクセスを制御するのに役立ちます。OpenShift Kubernetes Engine サブスクリプションを使用すると、Kubernetes namespace、OpenShift プロジェクト API オブジェクト、およびクラスターレベルの Prometheus モニターリングメトリクスとイベントにアクセスできます。

3.1.5. 管理され精選されたコンテンツ

OpenShift Kubernetes Engine サブスクリプションを使用すると、Red Hat Ecosystem Catalog および Red Hat Connect ISV マーケットプレイスから OpenShift Container Platform コンテンツにアクセスできます。OpenShift Container Platform エコシステムが提供する、維持および精選されたすべてのコンテンツにアクセスできます。

3.1.6. OpenShift Container Storage の互換性

OpenShift Kubernetes Engine は、OpenShift Container Storage との互換性があり、購入するとサポートされます。

3.1.7. Red Hat ミドルウェアの互換性

OpenShift Kubernetes Engine は、個々の Red Hat Middleware 製品ソリューションと互換性があり、サポートされています。OpenShift が組み込まれた Red Hat Middleware Bundle には、OpenShift Container Platform のみが含まれます。

3.1.8. OpenShift Serverless

OpenShift Kubernetes Engine には、OpenShift Serverless サポートは含まれていません。このサポートには OpenShift Container Platform を使用してください。

3.1.9. Quay インテグレーション対応

OpenShift Kubernetes Engine は互換性があり、Red Hat Quay を購入するとサポートされます。

3.1.10. OpenShift Virtualization

OpenShift Kubernetes Engine には、kubevirt.io オープンソースプロジェクトから派生した Red Hat 製品オファリングのサポートが含まれています。

3.1.11. 高度なクラスター管理

OpenShift Kubernetes Engine は、Kubernetes 用の {rh-rhacm-first} の追加購入にも対応しています。OpenShift Kubernetes Engine サブスクリプションでは、クラスター全体のログ集約ソリューションは提供されず、Elasticsearch、Fluentd、または Kibana ベースのロギングソリューションもサポートしません。同様に、OpenShift Container Platform または console.redhat.com Cost Management SaaS サービスにあるチャージバック機能は、OpenShift Kubernetes Engine ではサポートされていません。Red Hat Service Mesh 機能は、OpenShift Container Platform の集約サービス向けの OpenTracing 可観測性機能を提供するオープンソースの istio.io および kiali.io プロジェクトから取得している場合には、OpenShift Kubernetes Engine ではサポートされません。

3.1.12. 高度なネットワーキング

OpenShift Container Platform の標準ネットワークソリューションは、OpenShift Kubernetes Engine サブスクリプションでサポートされています。OpenShift Container Platform プロジェクト間のマルチテナントネットワークセグメンテーションを自動化するための OpenShift Container Platform の Kubernetes CNI プラグインは、OpenShift Kubernetes Engine で使用する資格があります。OpenShift Kubernetes Engine は、クラスター上のアプリケーションサービスによって使用されるソース IP アドレスの詳細にわたる全制御機能を提供します。これらの egress IP アドレス制御は、OpenShift Kubernetes Engine で使用する資格があります。OpenShift Container Platform は、OpenShift Container Platform にある VIP Pod 経由でパブリッククラウドプロバイダーが使用されていない場合に、標準以外のポートを使用するクラスターサービスへの Ingress ルーティングを行います。この Ingress ソリューションは、OpenShift Kubernetes Engine でサポートされています。OpenShift Kubernetes Engine ユーザーは、パブリッククラウドプロバイダーとの統合を提供する Kubernetes Ingress コントロールオブジェクトでサポートされます。istio.io オープンソースプロジェクトから派生した Red Hat Service Mesh は、OpenShift Kubernetes Engine ではサポートされていません。また、OpenShift Serverless にある Kourier Ingress コントローラーは、OpenShift Kubernetes Engine ではサポートされていません。

3.1.13. 開発者のエクスペリエンス

OpenShift Kubernetes Engine では、次の機能はサポートされていません。

  • CodeReady 開発者エクスペリエンスユーティリティーおよびツール (CodeReady Workspaces など)。
  • 合理化された Kubernetes 対応の Jenkins および Tekton エクスペリエンスをユーザーのプロジェクト空間に統合する OpenShift Container Platform のパイプライン機能。
  • OpenShift Container Platform の source-to-image 機能。クラスター全体にソースコード、dockerfile、またはコンテナーイメージを簡単にデプロイできます。
  • エンドユーザーコンテナーデプロイ用の構築ストラテジー、ビルダー Pod、または Tekton。
  • odo 開発者コマンドライン。
  • OpenShift Container Platform Web コンソールの開発者ペルソナ。

3.1.14. 機能の概要

以下の表は、OpenShift Kubernetes Engine および OpenShift Container Platform で利用できる機能の概要です。

表3.2 OpenShift Kubernetes Engine および OpenShift Container Platform の機能

機能

OpenShift Kubernetes Engine

OpenShift Container Platform

Operator 名

完全自動インストーラー (IPI)

同梱

同梱

該当なし

カスタマイズ可能なインストーラー (UPI)

同梱

同梱

該当なし

非接続インストール

同梱

同梱

該当なし

Red Hat Enterprise Linux (RHEL) または Red Hat Enterprise Linux CoreOS (RHCOS) entitlement

同梱

同梱

該当なし

既存の RHEL クラスターへの手動アタッチ (BYO)

同梱

同梱

該当なし

CRIO ランタイム

同梱

同梱

該当なし

Over the Air Smart Upgrade とオペレーティングシステム (RHCOS) の管理

同梱

同梱

該当なし

Enterprise Secured Kubernetes

同梱

同梱

該当なし

Kubectl と oc の自動化されたコマンドライン

同梱

同梱

該当なし

認証統合、RBAC、SCC、マルチテナンシーアドミッションコントローラー

同梱

同梱

該当なし

Operator Lifecycle Manager (OLM)

同梱

同梱

該当なし

管理者用 Web コンソール

同梱

同梱

該当なし

OpenShift Virtualization

同梱

同梱

OpenShift Virtualization Operator

Red Hat が提供する Compliance Operator

同梱

同梱

コンプライアンス Operator

File Integrity Operator

同梱

同梱

File Integrity Operator

Gatekeeper Operator

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Gatekeeper Operator

Klusterlet

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

該当なし

Red Hat が提供する Kube Descheduler Operator

同梱

同梱

Kube Descheduler Operator

Red Hat が提供するローカルストレージ

同梱

同梱

Local Storage Operator

Red Hat が提供する Node Feature Discovery

同梱

同梱

Node Feature Discovery Operator

パフォーマンスアドオン Operator

同梱

同梱

パフォーマンスアドオン Operator

Red Hat が提供する PTP Operator

同梱

同梱

PTP Operator

Red Hat が提供する Service Telemetry Operator

同梱

同梱

Service Telemetry Operator

SR-IOV ネットワーク Operator

同梱

同梱

SR-IOV ネットワーク Operator

Vertical Pod Autoscaler

同梱

同梱

Vertical Pod Autoscaler

クラスター監視 (Prometheus)

同梱

同梱

Cluster Monitoring

デバイスマネージャー (GPU など)

同梱

同梱

該当なし

ログ転送 (fluentd 使用)

同梱

同梱

Red Hat OpenShift Logging Operator (fluentd によるログ転送用)

Telemeter と Insights のコネクテッドエクスペリエンス

同梱

同梱

該当なし

機能

OpenShift Kubernetes Engine

OpenShift Container Platform

Operator 名

OpenShift Cloud Manager SaaS Service

同梱

同梱

該当なし

OVS および OVN SDN

同梱

同梱

該当なし

MetalLB

同梱

同梱

Metal LB オペレーター

HAProxy Ingress コントローラー

同梱

同梱

該当なし

Red Hat OpenStack Platform (RHOSP) Kuryr Integration

同梱

同梱

該当なし

Ingress クラスター全体のファイアウォール

同梱

同梱

該当なし

Egress Pod と Namespace の詳細な制御

同梱

同梱

該当なし

標準以外の Ingress ポート

同梱

同梱

該当なし

Multus と利用可能な Multus プラグイン

同梱

同梱

該当なし

ネットワークポリシー

同梱

同梱

該当なし

IPv6 シングルおよびデュアルスタック

同梱

同梱

該当なし

CNI プラグイン ISV の互換性

同梱

同梱

該当なし

CSI プラグイン ISV の互換性

同梱

同梱

該当なし

RHT および IBM ミドルウェアの単品購入 (OpenShift Container Platform または OpenShift Kubernetes Engine には同梱なし)

同梱

同梱

該当なし

ISV またはパートナー Operator とコンテナーの互換性 (OpenShift Container Platform または OpenShift Kubernetes Engine には同梱なし)

同梱

同梱

該当なし

組み込み OperatorHub

同梱

同梱

該当なし

組み込みマーケットプレイス

同梱

同梱

該当なし

Quay の互換性 (同梱なし)

同梱

同梱

該当なし

RHEL Software Collections および RHT SSO Common Service (同梱あり)

同梱

同梱

該当なし

組み込みレジストリー

同梱

同梱

該当なし

Helm

同梱

同梱

該当なし

ユーザーワークロードの監視

同梱なし

同梱

該当なし

計量およびコスト管理 SaaS サービス

同梱なし

同梱

該当なし

プラットフォームのロギング

同梱なし

同梱

Red Hat OpenShift Logging Operator

OpenShift Elasticsearch Operator provided by Red Hat

同梱なし

スタンドアロンで実行できません

該当なし

開発者用 Web コンソール

同梱なし

同梱

該当なし

開発者アプリケーションカタログ

同梱なし

同梱

該当なし

ソースからイメージおよびビルダーの自動化 (Tekton)

同梱なし

同梱

該当なし

OpenShift Service Mesh

同梱なし

同梱

OpenShift Service Mesh Operator

サービスバインディング Operator

同梱なし

同梱

サービスバインディング Operator

機能

OpenShift Kubernetes Engine

OpenShift Container Platform

Operator 名

Red Hat OpenShift Serverless

同梱なし

同梱

OpenShift Serverless Operator

Red Hat が提供する Web ターミナル

同梱なし

同梱

Web 端末 Operator

Red Hat が提供する Jenkins Operator

同梱なし

同梱

Jenkins Operator

Red Hat OpenShift Pipelines Operator

同梱なし

同梱

OpenShift パイプライン Operator

IBM Cloud Pak および RHT MW バンドルの組み込みコンポーネント

同梱なし

同梱

該当なし

Red Hat OpenShift GitOps

同梱なし

同梱

OpenShift GitOps

Red Hat CodeReady Workspaces

同梱なし

同梱

CodeReady Workspace

Red Hat CodeReady Containers

同梱なし

同梱

該当なし

Red Hat が提供する Quay Bridge Operator

同梱なし

同梱

Quay Bridge Operator

Red Hat が提供する Quay Container Security

同梱なし

同梱

Quay Operator

Red Hat OpenShift 分散トレースプラットフォーム

同梱なし

同梱

Red Hat OpenShift 分散トレースプラットフォーム Operator をクリックします。

Red Hat OpenShift Kiali

同梱なし

同梱

Kiali Operator

Red Hat が提供するメータリング (非推奨)

同梱なし

同梱

該当なし

Migration Toolkit for Containers Operator

同梱なし

同梱

Migration Toolkit for Containers Operator

OpenShift のコスト管理

含まれない

同梱

該当なし

Red Hat JBoss Web Server

含まれない

同梱

JWS Operator

Red Hat ビルドの Quarkus

含まれない

同梱

該当なし

Kourier Ingress コントローラー

含まれない

同梱

該当なし

RHT Middleware Bundles Sub Compatibility (OpenShift Container Platform には同梱なし)

含まれない

同梱

該当なし

IBM Cloud Pak Sub Compatibility (OpenShift Container Platform には同梱なし)

含まれない

同梱

該当なし

OpenShift Do (odo)

含まれない

同梱

該当なし

Source to Image および Tekton Builder

含まれない

同梱

該当なし

OpenShift Serverless FaaS

含まれない

同梱

該当なし

IDE 統合

含まれない

同梱

該当なし

Windows Machine Config Operator

Community Windows Machine Config Operator を同梱: サブスクリプションは不要です

Red Hat Windows Machine Config Operator を同梱: 別途サブスクリプションが必要です

Windows Machine Config Operator

Red Hat Quay

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Quay Operator

Red Hat Advanced Cluster Management

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Advanced Cluster Management for Kubernetes

Red Hat Advanced Cluster Security

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

該当なし

OpenShift Container Storage

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

OpenShift Container Storage

機能

OpenShift Kubernetes Engine

OpenShift Container Platform

Operator 名

Ansible Automation Platform Resource Operator

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Ansible Automation Platform Resource Operator

Red Hat が提供するビジネスの自動化

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

業務自動化 Operator

Red Hat が提供する Data Grid

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Data Grid Operator

Red Hat が提供する Red Hat Integration

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Red Hat Integration Operator

Red Hat Integration - Red Hat が提供する 3Scale

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

3scale

Red Hat Integration - Red Hat が提供する 3Scale APICast ゲートウェイ

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

3scale APIcast

Red Hat Integration - AMQ Broker

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

AMQ Broker

Red Hat Integration - AMQ Broker LTS

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

 

Red Hat Integration - AMQ Interconnect

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

AMQ Interconnect

Red Hat Integration - AMQ Online

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

 

Red Hat Integration - AMQ Streams

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

AMQ Streams

Red Hat Integration - Camel K

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Camel K

Red Hat Integration- Fuse コンソール

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Fuse Console

Red Hat Integration- Fuse Online

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Fuse Online

Red Hat Integration- Service Registry Operator

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Service Registry

Red Hat が提供する API Designer

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

API Designer

Red Hat が提供する JBoss EAP

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

JBoss EAP

JBoss Web Server provided by Red Hat

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

JBoss Web Server

Smart Gateway Operator

同梱なし: 別のサブスクリプションが必要です

同梱なし: 別のサブスクリプションが必要です

Smart Gateway Operator

Kubernetes NMState Operator

同梱

同梱

該当なし

3.2. サブスクリプションの制限

OpenShift Kubernetes Engine は、OpenShift Container Platform に限定されたサポート対象機能セットを低価格で提供するサブスクリプションサービスです。OpenShift Kubernetes Engine と OpenShift Container Platform は同じ製品であるため、すべてのソフトウェアと機能が両方で提供されます。ダウンロードは、OpenShift Container Platform の 1 つだけです。このため、OpenShift Kubernetes Engine は、OpenShift Container Platform のドキュメント、サポートサービス、およびバグのエラータを使用します。

第4章 Kubernetes の概要

Kubernetes は、Google が開発したオープンソースのコンテナーオーケストレーションツールです。Kubernetes を使用して、コンテナーベースのワークロードを実行および管理できます。最も一般的な Kubernetes のユースケースは、相互接続されたマイクロサービスのアレイをデプロイし、クラウドネイティブな方法でアプリケーションを構築することです。オンプレミス、パブリック、プライベート、またはハイブリッドクラウド全体のホストにまたがることができる Kubernetes クラスターを作成できます。

従来、アプリケーションは単一のオペレーティングシステムの上にデプロイされていました。仮想化を使用すると、物理ホストを複数の仮想ホストに分割できます。共有リソース上の仮想インスタンスで作業することは、効率やスケーラビリティの面で最適とは言えません。仮想マシン (VM) は物理マシンと同じ数のリソースを消費するため、CPU、RAM、ストレージなどのリソースを VM に提供するとコストがかかる可能性があります。また、共有リソースでの仮想インスタンスの使用により、アプリケーションのパフォーマンスが低下する場合があります。

図4.1 従来のデプロイメント向けのコンテナーテクノロジーの進化

247 OpenShift Kubernetes Overview

この問題を解決するには、コンテナー化された環境でアプリケーションを分離するコンテナー化テクノロジーを使用することができます。VM と同様に、コンテナーには独自のファイルシステム、vCPU、メモリー、プロセススペース、依存関係などがあります。コンテナーは基盤となるインフラストラクチャーから切り離されており、クラウドや OS ディストリビューション間で移植可能です。コンテナーは本来、全機能を備えた OS よりもはるかに軽量で、オペレーティングシステムカーネルで実行される軽量の分離されたプロセスです。VM は起動に時間がかかり、物理ハードウェアを抽象化したものです。VM は、ハイパーバイザーを使用して単一のマシンで実行されます。

Kubernetes を利用することで、以下のようなアクションを行うことができます。

  • リソースの共有
  • 複数のホストにまたがるコンテナーのオーケストレーション
  • 新しいハードウェア設定のインストール
  • ヘルスチェックと自己修復アプリケーションの実行
  • コンテナー化されたアプリケーションのスケーリング

4.1. Kubernetes コンポーネント

表4.1 Kubernetes コンポーネント

コンポーネント目的

kube-proxy

クラスター内のすべてのノードで実行され、Kubernetes リソース間のネットワークトラフィックを維持します。

kube-controller-manager

クラスターの状態を管理します。

kube-scheduler

Pod をノードに割り当てます。

etcd

クラスターデータを保存します。

kube-apiserver

API オブジェクトのデータを検証および設定します。

kubelet

ノード上で実行され、コンテナーマニフェストを読み取ります。定義されたコンテナーが開始され、実行されていることを確認します。

kubectl

ワークロードの実行方法を定義できるようにします。kubectl コマンドを使用して、kube-apiserver と対話します。

Node

ノードは、Kubernetes クラスター内の物理マシンまたは VM です。コントロールプレーンはすべてのノードを管理し、Kubernetes クラスター内のノード全体で Pod をスケジュールします。

コンテナーランタイム

コンテナーランタイムは、ホストオペレーティングシステムでコンテナーを実行します。Pod をノードで実行できるように、各ノードにコンテナーランタイムをインストールする必要があります。

永続ストレージ

デバイスがシャットダウンされた後でもデータを保存します。Kubernetes は永続ボリュームを使用して、アプリケーションデータを保存します。

container-registry

コンテナーイメージを保存してアクセスします。

Pod

Pod は、Kubernetes における最小の論理単位です。Pod には、ワーカーノードで実行する 1 つ以上のコンテナーが含まれています。

4.2. Kubernetes リソース

カスタムリソースは、KubernetesAPI のエクステンションです。カスタムリソースを使用して、Kubernetes クラスターをカスタマイズできます。Operator は、カスタムリソースを使用してアプリケーションとそのコンポーネントを管理するソフトウェアエクステンションです。Kubernetes は、クラスターリソースを扱う際に、一定の望ましい結果を得たい場合に宣言型モデルを使用します。Operator を使用することで、Kubernetes は宣言的な方法で状態を定義します。命令型コマンドを使用して、Kubernetes クラスターリソースを変更できます。Operator は、リソースの望ましい状態をリソースの実際の状態と継続的に比較し、現実を望ましい状態に一致させるためのアクションを実行する制御ループとして機能します。

図4.2 Kubernetes クラスターの概要

247 OpenShift Kubernetes Overview 1

表4.2 Kubernetes リソース

リソース目的

サービス

Kubernetes はサービスを使用して、実行中のアプリケーションを一連の Pod に公開します。

ReplicaSet

Kubernetes は ReplicaSets を使用して、一定の Pod 数を維持します。

Deployment

アプリケーションのライフサイクルを維持するリソースオブジェクト。

Kubernetes は、OpenShift Container Platform のコアコンポーネントです。OpenShift Container Platform は、コンテナー化されたアプリケーションの開発および実行に使用できます。Kubernetes をその基盤とする OpenShift Container Platform には、大規模な通信、ビデオストリーミング、ゲーミング、バンキング、およびその他のアプリケーションのエンジンと同様に機能する技術が組み込まれています。OpenShift Container Platform を使用することで、コンテナー化されたアプリケーションを単一のクラウドを超えてオンプレミスおよびマルチクラウド環境へと拡張することができます。

図4.3 Kubernetes のアーキテクチャー

247 OpenShift Kubernetes Overview 2

クラスターは、クラウド環境内の複数のノードで設定される単一の計算ユニットです。Kubernetes クラスターには、コントロールプレーンとワーカーノードが含まれます。さまざまなマシンや環境で Kubernetes コンテナーを実行できます。コントロールプレーンノードは、クラスターの状態を制御および維持します。ワーカーノードを使用して Kubernetes アプリケーションを実行できます。Kubernetes の名前空間を使用して、クラスター内のクラスターリソースを区別できます。名前空間のスコープは、デプロイメント、サービス、Pod などのリソースオブジェクトに適用できます。ストレージクラス、ノード、永続ボリュームなどのクラスター全体のリソースオブジェクトに、名前空間を使用することはできません。

4.3. Kubernetes の概念ガイドライン

OpenShift Container Platform を使い始める前に、以下の Kubernetes の概念的なガイドラインを検討してください。

  • 1 つまたは複数のワーカーノードを使用することからスタートし、コンテナーのワークロードを実行します。
  • 1 つまたは複数のコントロールプレーンノードからワークロードのデプロイを管理します。
  • Pod と呼ばれるデプロイメント単位にコンテナーをラップします。Pod を使うことでコンテナーに追加のメタデータが付与され、複数のコンテナーを単一のデプロイメントエンティティーにグループ化する機能が提供されます。
  • 特殊な種類のアセットを作成します。たとえば、サービスは一連の Pod とそのアクセス方法を定義するポリシーによって表されます。このポリシーにより、コンテナーはサービス用の特定の IP アドレスを持っていない場合でも、必要とするサービスに接続することができます。レプリケーションコントローラーは、一度に実行するのに必要な Pod レプリカ数を示すもう一つの特殊なアセットです。この機能を使うと、現在の需要に対応できるようにアプリケーションを自動的にスケーリングすることができます。

OpenShift Container Platform クラスターへの API は 100% Kubernetes です。他の Kubernetes で実行されているコンテナーと OpenShift Container Platform で実行されているコンテナーの間では、何も変更はありません。アプリケーションに変更はありません。OpenShift Container Platform は、Kubernetes にエンタープライズ対応の拡張機能を提供する付加価値機能をもたらします。OpenShift Container Platform CLI ツール (oc) は kubectl と互換性があります。Kubernetes API は OpenShift Container Platform 内で 100% アクセス可能ですが、kubectl コマンドラインには、よりユーザーフレンドリーにするための多くの機能が欠けています。OpenShift Container Platform は、oc のような一連の機能とコマンドラインツールを提供します。Kubernetes はアプリケーションの管理で威力を発揮しますが、プラットフォームレベルの各種要件やデプロイメントプロセスを指定したり、管理したりすることはありません。OpenShift Container Platform が提供する強力かつ柔軟なプラットフォーム管理ツールとプロセスは、重要な利点となります。コンテナー化プラットフォームに、認証、ネットワーキング、セキュリティー、監視、およびログ管理を追加する必要があります。