概要
Kubernetes クラスタ管理とは、IT チームが Kubernetes クラスタのグループを管理する方法のことです。
先進的なクラウドネイティブ・アプリケーションにより、Kubernetes 環境は高度に分散されています。オンプレミス、パブリッククラウド、およびエッジの複数のデータセンターをまたいでデプロイすることが可能です。
大規模に、あるいは本番環境で Kubernetes を使用する組織は、開発用、テスト用、本番用に複数のクラスタを環境全体に分散させ、それらを効果的に管理できるようにすることが必要です。
マルチクラスタ Kubernetes デプロイメントのメリット
- アプリケーションの可用性を向上させる
- レイテンシーを削減する
- 障害復旧を改善する
- 環境全体にレガシーアプリケーションとクラウドネイティブ・アプリケーションをデプロイする
組織がアプリケーションを構築し、サイト上およびハイブリッドクラウド環境全体でコンテナを管理する際に、Kubernetes がどのように役立つかをご確認ください。
Kubernetes クラスタとは
Kubernetes クラスタは、コンテナ化されたアプリケーションを実行するためのノードマシン群です。Kubernetes クラスタによって、オンプレミスまたはクラウド内の物理マシンや仮想マシンのグループ全体でコンテナをスケジュールして実行することが可能になります。
各 Kubernetes クラスタでは望ましい状態 (desired state) として、どのアプリケーションまたは他のどのワークロードを実行する必要があるか、どのイメージを使用するか、どのリソースを利用できるようにするべきかといった構成の詳細が定義されています。
Kubernetes は、クラスタを自動的に管理して望ましい状態に一致させます。たとえば、望ましい状態を「3」に設定してアプリケーションをデプロイするとします。この設定は、アプリケーションの 3 つのレプリカが実行されている必要があることを表します。これらのコンテナの 1 つがクラッシュした場合、Kubernetes は、実行されているレプリカが 2 つだけだということを認識し、レプリカを 1 つ追加して望ましい状態を保持します。
Kubernetes クラスタ管理が重要である理由
現在の Kubernetes 環境では個別のクラスタレベルでの管理が必要なため、エンタープライズがこれらを管理するコストは、クラスタの数に応じて急速に増加することがあります。
セキュリティのため、各クラスタのデプロイ、アップグレード、構成は個別に行う必要があります。さらに、アプリケーションを環境全体にデプロイする必要がある場合は、デプロイメントを手動で行うか、Kubernetes 環境制御の外部で行う必要があります。
個別のクラスタレベルでのパッチ適用やアップグレードなどの Day 2 オペレーションの管理も時間がかかり、エラーが発生しやすくなります。
Kubernetes クラスタのライフサイクル管理に含まれるタスク
- 新しいクラスタの作成
- クラスタの削除
- コントロールプレーンとコンピュートノードの更新
- ノードのメンテナンスと更新
- Kubernetes API バージョンのアップグレード
- クラスタの保護
- クラスタのアップグレード、ただしプロバイダーによって異なる場合もある
開発者は、必要に応じて新しいクラスタに簡単にアクセスしたいと考えています。運用チームとサイト信頼性エンジニア (SRE) の場合、アプリケーションを本番環境で利用できるように、新しいクラスタを正しく構成する必要があります。運用チームと SRE は、環境内のクラスタの正常性を監視する必要もあります。
Kubernetes クラスタ管理は、管理者とサイト信頼性エンジニアが Kubernetes クラスタを実行するさまざまな環境で作業する際に直面する一般的な課題に対処します。
Red Hat の Kubernetes クラスタ管理を選ぶ理由
適切な Kubernetes クラスタ管理ツールは、クラスタを可視化し、ハイブリッド環境全体のアプリケーションライフサイクルを管理するのに役立ちます。Red Hat® Advanced Cluster Management for Kubernetes は、セキュリティポリシーを組み込んだ単一のコンソールで、クラスタとアプリケーションを制御します。
Red Hat OpenShift® と Red Hat Advanced Cluster Management for Kubernetes は、複数のデータセンターやプライベートクラウド、ハイブリッドクラウド、パブリッククラウドなどのさまざまな環境で作業する際に組織が直面する課題に対処するために重要なプラットフォームと機能を提供します。
Red Hat OpenShift Container Platform 上で実行される Red Hat Advanced Cluster Management for Kubernetes にはマルチクラスタ管理を統一する機能が含まれ、ポリシーベースのガバナンスを実現し、アプリケーションライフサイクル管理を延長します。
Red Hat Advanced Cluster Management for Kubernetes では、次の操作を行うことができます。
- 複数のプライベートクラウドおよびパブリッククラウド上で、Kubernetes クラスタを一元的に作成、アップデート、削除
- ドメイン全体で任意の Kubernetes リソースを検索、特定、変更
- チャネルとサブスクリプション定義に基づいて、特定のクラスタにアプリケーションを自動的にデプロイ