Tanzu Tanzu for Kubernetes Operations アプリケーションのモダナイゼーション

Kubernetes 環境の本番運用からマルチクラウドへの拡張まで

コンテナ実行環境としての Kubernetes

Kubernetes は、コンテナ化されたワークロードを実行するためのプラットフォームとして、アプリケーションを管理するためのAPI を提供します。Kubernetes を活用することで、vSphere、AWS、または Azure に展開するかどうかに関係なく、共通の API を使用しワークロードを管理することができます。

Kubernetes が複数のクラウド上で共通の API を提供し、動作できる理由は、その拡張可能なアーキテクチャにあります。Kubernetes は、コンピューティングの定義、ストレージの接続、ロードバランサの作成など、一般的なインフラ用のさまざまなプラグイン/インターフェイスを定義します。Kubernetes コミュニティは、主要なクラウドプロバイダーをこれらのプラグインがサポートするように取り組んでいます。

加えて、Kubernetes を補完する様々なテクノロジーが、OSS として開発されており、Cloud-Native Interactive Landscape で確認することができます。パブリッククラウドを活用する場合、クラウドプロバイダが独自に提供しているサービスも選択肢に入りますが、Kubernetes のエコシステムを活用することは、特定のクラウドに運用手段を依存しないという点で、将来的なマルチクラウド環境を見据えた際にメリットがあります。

 

Kubernetes の運用を最適化する VMware Tanzu for Kubernetes Operations (TKO) とは?

Tanzu for Kubernetes Operations (TKO) は、Kubernetes の豊富なエコシステムを活用することで、Kubernetes 環境における最適な運用を提供します。TKO は、単一のクラウド上で活用いただくユースケースに加え、クラウド間の環境差異から生じる運用上の違いを吸収する仕組みを提供しており、複数のクラウド上でKubernetes を運用する際にも大きな効果があります。TKO には以下のコンポーネントが含まれています。

Tanzu Kubernetes Grid (TKG):
Kubernetes によるコンテナを使用したワークロードの実行環境を提供します。vSphere 環境に加え、AWS、Azure といったパブリッククラウド上への展開をサポートします。

Tanzu Mission Control (TMC):
複数のKubernetes 実行環境を統合的に管理します。TKG に加え、各パブリッククラウドで提供されているマネージドKubernetes サービスを管理します。

Tanzu Observability (TO):
プラットフォームからアプリケーションまで、フルスタックのオブザーバビリティを提供し、複数の環境を統合的に可視化します。

Tanzu Service Mesh(TSM):
コンテナ化し、分散したアプリケーション間の通信保護を提供します。単一のクラスタ内のみならず、マルチクラスタ/マルチクラウド環境においてもアプリケーション間の通信保護行います。

 

TKO では上記プロダクトに加え、プラットフォームの設計、構築、運用各フェーズで必要な要素を包括的に提供しています。

設計(Day0)のフェーズでは、リファレンスアーキテクチャを提供し、Kubernetes 環境の構成を標準化することができます。リファレンスアーキテクチャは、VMware 環境に加え、AWS、Azure に対応したパブリッククラウド環境のデザイン及び構成手順を提供しており、構成時に問題になるマルチクラウド環境における IaaS の差異を吸収します。

構築(Day1)のフェーズでは、リファレンスアーキテクチャに基づいた構成を自動化するツール(Service Installer for VMware Tanzu)を提供します。リファレンスアーキテクチャにある構成手順を手動で実施することも可能ですが、ツールを用いることでリファレンスデザインに基づいた構成を自動化します。

運用(Day2)のフェーズでは、標準化した Kubernetes 環境に、統合管理の仕組みを提供します。TKG、TMC、TO、TSM を用いることで、クラウド間における運用差異を統合し、マルチクラウド環境の運用を標準化します。

 

TKO を適用する3つのユースケース

TKO は将来的なマルチクラウド環境への展開を見据え、オンプレ、クラウドを問わず活用いただくことが可能です。各ユースケースについて、それぞれ見ていきます。

 

サービスの本番移行

新規サービスの PoC の中で、OSS の Kubernetes を活用したり、パブリッククラウド上の Kubernetes サービスを活用するケースがあります。 PoC においては本番運用で必要になる、クラスタのライフサイクル管理、権限管理、監視、バックアップ、セキュリティといった点については考慮していないケースが多く、本番アプリケーションを実行、運用するためのプラットフォームとして活用する際、非機能要件への対応が課題となります。非機能要件を補完する機能群は、Kubernetes の多様なエコシステムの中で OSS として開発が進められています。TKO では本番運用上必須となる非機能要件を組み込むことで、製品としてエンタープライズのお客様が運用可能な形態で提供しています。

 

サイロ化した環境の統合

サービス数が増えていくことに伴い、サイロ化した複数の Kubernetes クラスタが構成されることになります。これにより、クラスタ間で設定のドリフトが生じたり、アクセス管理が煩雑になってきます。TMC を活用することで、複数の Kubernetes 環境を統合的に管理することが可能になります。TMC の管理画面から、複数クラスタに対し、ライフサイクル管理、認証・認可、セキュリティ、データ保護といったオペレーションを統合的に実施します。また、TMC と TO を連携することで、複数クラスタとクラスタ上で動くサービスの状況を瞬時に把握できるようになります。

 

マルチクラウドへの対応

サービスが成熟してくると、他のクラウドサービスと組み合わせた活用、災害対策、コストの最適化の観点で、マルチクラウド環境へサービスを展開するニーズが出てきます。TMC、TO、TSM といった SaaS コンポーネントを活用いただくことでマルチクラウド環境へのサービス拡張を、運用の手法を変えることなくスムーズにおこなうことが可能になります。

Tanzu Mission Control (TMC) は、マルチクラウド環境の様々な Kubernetes プラットフォームを統合的に管理します。これにより、クラスタ運用の手法をクラウドに依存せず標準化することができます。

Tanzu Observability (TO) は、プラットフォームからアプリケーションまで、フルスタックのオブザーバリティを提供します。クラスタ可視化の手法を、クラウドに依存せず標準化することができます。

Tanzu Mission Control(TSM)は、マルチクラスタ/マルチクラウド環境に分散したアプリケーション間の通信を保護します。また、LB とのインテグレーションにより、マルチサイトに展開したアプリケーションのトラフィック分散を統合的に管理します。

 

まとめ

Tanzu for Kubernetes Operations (TKO) は、マルチクラウド対応を見据えた形で、モダンアプリケーションプラットフォームの本番運用で必要になる要素を包括的に提供します。製品に加え TKO のリファレンスアーキテクチャを適用いただくことで、複数のクラウド上の Kubernetes 環境を標準化します。TKO により運用者は、運用負荷を抑えながら環境の拡大に対応していくことが可能になります。