第7回 Tanzu Kubernetes Clusterとは?従来のvSphereインフラに構築されるKubernetes環境

Tanzu Kubernetes Clusterの概要

Tanzu Kubernetes Clusterとは、vSphere7のアップデート版(vSphere7 Update1)に搭載されている新機能「vSphere with Tanzu」によって構築される、Kubernetesクラスタです。

Kubernetesは、導入することでコンテナ運用管理の課題を解決できる一方、導入自体の高いハードルを乗り越えなければなりません。そこで今回は、その障壁を乗り越えるためのTanzu Kubernetes Cluster、およびvSphere with Tanzuについて解説します。

まずは、Kubernetes導入のハードルを改めて明確にしながら、「なぜTanzu Kubernetes Cluster とvSphere with TanzuがKubernetes導入をラクにしてくれるのか?」について、さっそく掘り下げていきましょう。

vSphere with Tanzuとは

vSphere with Tanzuとは、vCenter ServerとESXiからなる仮想化基盤上にKubernetes環境を構築させるための、vSphereの新機能です。

Kubernetesを活用するまでの課題

Kubernetesによって、たしかにコンテナ基盤における運用管理の課題(※)の解決が実現されました。しかし、Kubernetes基盤自体の効果的な設計・導入、あるいは運用には、いくつかのハードルが存在します。

たとえば、Kubernetesを利用するには、Linux OSやネットワーク、そのほか土台となるインフラを、Kubernetesに適する形に構築し直す必要があります。また、Kubernetesソフトウェアはアップデート間隔が短いため、アップデートの内容によっては、その都度、運用体系を見直さなければなりません。

※コンテナ基盤における運用管理の課題の詳細については、以下のユニットも参考にしてみてください。
 第2回「コンテナ管理自動化」を現実のものにするKubernetes

Kubernetes活用の課題を解決するために誕生した「vSphere with Kubernetes」

VMwareは、上記のようなKubernetes活用の課題を解決するための戦略として、まず、2019年にVMware Tanzuの「実行(Run)部分」を担う「Project Pacific」を発表しました。Project Pacificはさらに、vSphere7が発表されるころには、「vSphere with Kubernetes」としてリネームされ、vSphere7に一機能として搭載されることになります。

vSphere with Kubernetesは、従来のスキルでKubernetesを構築できる「vSphere with Tanzu」へ

しかし、vSphere with Kubernetesは、VMware Cloud Foundation(VCF)上でのみ利用可能であったり、VMware NSX-T Data Centerが必須だったりするなど、コストや運用には課題がありました。

そこで、vSphere7のアップデートによって誕生した機能が、「vSphere with Tanzu」です。vSphere with Tanzuでは、VCFやNSX-Tを必須とせず、より簡素化した形でKubernetesコンテナランタイムである「Tanzu Kubernetes Grid(TKG)」を利用できます。つまり、従来のvSphere上に、十分なKubernetes環境を用意できるというわけです。

なお、vSphere with Tanzuは、「vSphereのサービスとして稼働するTKG」という意味合いで、TKG Service(TKGS)と呼ばれることもあります。TKGについては、以下のユニットも参考にしてみてください。
第6回 Tanzu Kubernetes Gridとは? VMwareが提供するコンテナランタイムのメリット

vSphere with Tanzuのキーコンセプトは「開発者がセルフサービスでKubernetesを利用できる」こと

vSphere with Tanzuには、vSphere上に「Supervisor Cluster」と呼ばれる、Kubernetesを管理するためのKubernetesクラスタが存在します。このクラスタがユーザのワークロードを動かすことは、ほとんどありません。あくまでvSphere with Tanzuの機能を実現するための「アプライアンスのようなもの」として認識してください。

このSupervisor Clusterにはさらに、「Supervisor Namespace」という管理単位があります。管理者は、Kubernetesの利用者(=開発者)ごとにSupervisor Namespaceを切り出し、開発者をアサインしていきます。複数人をアサインし、閲覧権限管理などもできるので、もちろんチームとしてSupervisor Namespaceを利用しても問題ありません。

Supervisor Namespace内で構築されるKubernetesクラスタ=「Tanzu Kubernetes Cluster」

一方、アサインされた開発者は、自分のアカウントが紐づけられたSupervisor Namespaceにアクセスできるようになります。そのネームスペース内では、Kubernetesクラスタを払い出したり、スケーリングをしたりするといったライフサイクル操作は、ネームスペースリソースの許す限り、開発者自身で自由に行うことが可能です。

このとき、開発者によってライフサイクルを管理されるKubernetesクラスタこそが、ワーカークラスタとして存在する「Tanzu Kubernetes Cluster」です。Tanzu Kubernetes Gridによって払い出されるTanzu Kubernetes Clusterは、いわゆる一般的なKubernetesクラスタと変わりません。そのため、Kubernetesと同じ定義づけで動かすことができます。

実際のTanzu Kubernetes Grid(TKG)セットアップ画面

もう一歩vSphere with Tanzuの世界に踏み込んでみましょう。以下は、vSphere with TanzuによるTKGセットアップ画面です。

(キャプチャはvSphere7 Update1から利用可能になったvDSを利用しています。NSX-Tを用意していないため、NSX-Tが検出されていない旨のメッセージが出ています)

Supervisor Clusterを構成するために、従来のvSphereと同じく、vCenterからウィザードに従ってワークロード管理を行っています。これまでのウィザードに、ネットワークスタックオプションを選択するオプションが追加された形です。

※ロードバランサを構成するために、HAProxyを事前にデプロイしておく必要があるので注意してください。

上記のワークロード管理の構成が完了すると、運用者はKubectlコマンドでSupervisor Clusterにログインできるようになります。

vSphere with Tanzuによって、Kubernetesクラスタを迅速に構築できる

これまで、導入のハードルが高かったKubernetesクラスタですが、vSphere with TanzuおよびTanzu Kubernetes Clusterによって、その敷居がぐっと低くなります。

vSphere with Tanzu について、VMwareは「The fastest way to get started with Kubernetes(Kubernetesを始めるもっとも迅速な方法)」とうたっています。

これまでと同じvSphereインフラ上に、シンプルなKubernetesクラスタを迅速に用意したい場合は、vSphere with Tanzu によるTanzu Kubernetes Clusterの構築・運用を検討しましょう。

【Kubernetes製品群「VMware Tanzu」の実力を探る】コラム一覧

富士ソフト VMware 仮想化ソリューションのご紹介

  山本 祥正
山本 祥正(Yoshimasa Yamamoto)
執行役員 ソリューション事業本部 副本部長
この記事を読んだ人はこちらの記事も読んでいます。