VMware Tanzuとは?~Kubernetesの新たな提供形態~
VMwareがサンフランシスコで開催したイベント「VMworld 2019 US」で、Kubernetesに対応したソフトウェアの開発を支援するための一連のソフトウェアやサービスなどを含む「VMware Tanzu」(以下、Tanzu)を発表しました。
Kubernetesの新たな提供形態であるVMware Tanzuによって、多くの企業がこれまで構築してきた仮想マシンとコンテナを一元管理できます。特に、仮想マシンとコンテナのハイブリッド環境を共通した仕組みで管理できる機能は注目に値します。
この記事では、Tanzuのユースケースをおさらいしながら、具体的に導入企業のこれからのIT基盤にどのような効果をもたらすのかを紹介していきます。
マルチクラウド環境を見据えたVMwareの動向
最初に、近年のVMwareの動きを振り返っておきましょう。
VMwareはマルチクラウドおよびオンプレミス環境におけるKubernetesの活用を目指し、複数の戦略的な買収を実施してきました。2018年11月には、Kubernetes関連のベンチャー企業であるHeptioを買収。続いて、WANの仮想化製品「Velocloud」、マルチクラウド統合管理の「CloudHealth」、アプリケーションデリバリコントローラーの「Avi Networks」、モダンアプリケーション開発をサポートする「Pivotal Software」、セキュリティ企業「Carbon Black」を次々と買収しました。
2020年3月には、これらの技術統合を進める形で「Tanzu」プラットフォームを正式リリース。VMwareは「Kubernetesは当社にとって、クラウドや仮想化、Javaと同じくらい重要である」と位置付け、同年11月の「VMworld 2020 Japan」でKubernetesへの注力を強調しました。
同年9月には、「Tanzu Basic」「Tanzu Standard」「Tanzu Advanced」「Tanzu Enterprise」の四つのエディションを発表し、それぞれ異なるユースケースと機能を提供。BasicはvSphere上でKubernetesを実行し、Standardはマルチクラウド環境でKubernetesを管理します。AdvancedとEnterpriseエディションは、開発者向け機能や自動化されたアプリ実行環境を追加し、企業の開発生産性を向上させます。
さらに、2020年の「VMworld」アメリカ版で、TanzuのAWS、Google Cloud、Oracle Cloudでのサポート拡張を発表しました。これにより、オンプレミスとクラウド環境の垣根を解消し、一元管理を実現。企業が既存のデータ資産を活用しつつ、最新のアプリケーション開発に取り組むことが容易になります。
これらの動向は、企業がDXを推進し、持続可能な成長を達成するためには、クラウドネイティブなアプリケーション開発・運用が企業にとって重要な取り組みになることを示唆しているものと言えるでしょう。
アーキテクチャーから見るTanzuの全体像
Kubernetesの新たな提供形態として登場したTanzu。その最大の特徴は、従来多くの企業が基幹システムを含めて構築してきた仮想マシンとコンテナを一元管理できる点です。VMwareの仮想化ソフトであるvSphere上でKubernetesに相当するコンテナ管理を提供するもので、仮想マシンとコンテナのハイブリッド環境を共通した仕組みで管理できる点は画期的と言えるでしょう。
例えば、長年にわたって構築してきた既存資産を仮想マシンで動かし、そこから発生するデータや機能するアプリケーションをコンテナで開発することが可能になります。自社の強みを生かしてデジタルトランスフォーメーション(DX)を仕掛けたい多くの企業にとっては、競争力のあるアプリケーションを開発しやすくなります。
VMwareはTanzuを「開発者が求めるスピードとインフラストラクチャーの安定性を両立するもの」として位置づけています。vSphere、Amazon Web Services(AWS)、Microsoft Azure、IBM Cloud、Google Cloud、VMware Cloud on AWSなど、マルチクラウドによるインフラ面の強みをさらに伸ばした上で、スピーディにアプリケーションを開発できます。
ここで、Tanzuのポートフォリオを紹介しておきましょう。Tanzuの役割はBuild(構築)、Run(実行)、Manage(管理)という3つに分けられます。
Buildでは、高速デリバリを可能にするランタイムであるTanzu Application Servicesや、本稼働対応のオープンソースソフトウェア(OSS)のカタログをキュレートするTanzu Application Catalogなどによって、モダンアプリケーションの構築をサポートします。
Manageでは、マイクロサービスの安全な実行などを支援するTanzu Service Mesh、オペレーションを集中管理するVMware Tanzu Mission Controlによって、開発者とIT管理者のための包括的なKubernetes管理と保護を提供します。
RunではエンタープライズにおけるKubernetesの実行環境を提供します。VMware Cloud、Public Cloud、エッジなどのさまざまな環境上で、KubernetesのランタイムであるVMware Tanzu Kubernetes Grid(TKG)を用い、マルチクラウド環境をまたがる形でオペレーションを削減します。
アプリケーション開発サイクルを形成するTanzu
Tanzu のアーキテクチャーを押さえた上で、アプリケーションの開発とTanzuの関係について触れておきます。DXの成否を決定づけるのはアプリケーションの開発サイクルと言っても過言ではありません。UBERが斬新なアイデアを基に、地図、GPS、決済などのサービスを組み合わせていち早くサービスをデリバリしたことが1つのイメージとなるでしょう。いまDXのアプリケーション開発で強く意識している言葉が「CI/CD」です。
CIは「Continuous Integration(継続的インテグレーション)」を示し、アプリケーション開発におけるビルド、テストを自動化し、継続的に実施する方法です。一方のCDは「Continuous Delivery(継続的デリバリ)」を示し、CIでテストされたソースコードをマージしたり、本番環境向けのビルド作成を自動的に実施し、本番環境にデプロイできる状態へと整えたりする処理を意味します。
Tanzu と開発サイクルの関係性を以下の図に示します。
CIの実践において、複数の開発者がそれぞれ実施したコード変更をマージする頻度を高め、毎日でも実施できるようにします。開発者による変更がアプリケーションにマージされると、 アプリケーションを自動的にビルドし、さまざまなレベルのテストを実行して、変更を検証することになります。
通常の場合、単体テストと結合テストを実施し、変更によってアプリケーションが破壊されないことを確認します。そのために、クラスや関数から各種モジュールまで、アプリケーション全体を構成するすべてをテストすることになります。自動化されたテストで新規コードと既存コードに競合が見つかった場合、CIを利用するとバグを素早く容易に、高頻度で修復できるのが大きな強みになってきます。
一方のCDでは、検証されたコードのリポジトリへのリリースを自動化します。CDの目標は本番環境にデプロイできるコードベースを常に保持しておくことです。コード変更のマージから本番環境対応のビルドのデリバリまで、全てのステージでテストの自動化とコードリリースの自動化を実施します。このプロセスを終了させれば、運用チームはアプリケーションを本番環境に素早く簡単にデプロイできます。
Tanzuの3つのユースケース
Tanzuのユースケースは、主として3つあります。
1つめはインフラのモダナイゼーションです。コンテナを駆使したKubernetesに対応するシステム環境を構築するべくアプリケーションをTanzuの管理上にリフトすることで、俊敏なアプリケーションのデリバリー体制をつくることができます。
2つめはDevOpsの推進です。デジタルトランスフォーメーション(DX)はビジネスと直結するため、自社内に開発チームを持ち、運用と一体化させておくことで、必要なアプリケーションをスピーディに開発し、ビジネス化できます。
3つめはDXを推進するための新たなアプリケーション開発です。優れたビジネスアイデアを、すぐにでもそれをアプリケーションとして形にできることがビジネス成功のカギになります。Tanzuはまさに、IT面から企業のそうした取り組みを支援するツールといえるのです。
これからの時代は、優れたビジネスアイデアを、すぐにアプリケーションとして形にすることが求められます。Tanzuはまさに、IT面からそうした取り組みを支える環境をつくるためのツールと言えるでしょう。
VMwareに関わる人材をクラウド環境でも活かす
Tanzuには、これまでVMwareに関わってきたスキルのある人材リソースを生かしながら、すぐにでも最新のコンテナ環境を構築できるというメリットがあります。例えば、ERPやSCMといった基幹系システムはこれまでどおり仮想マシンで動かしながら、そのデータを用いたアプリケーションについてはコンテナ上に構築するといった使い分けも考えられるでしょう。
Tanzuの特徴は、技術やスキル、人材といったこれまでのVMwareへの投資を考慮しながら、ローリスクでコンテナ環境を構築できることです。管理者の立場からすると、仮想マシンの運用方法を踏襲した上で、開発者に新たなコンテナ環境を提供できるため、複雑化を回避できます。
仮想マシンとコンテナを一元管理できるTanzuは、長年培った仮想マシンの資産を生かしながら、先進的なビジネスを可能にする最新のアプリケーションをコンテナで開発したいという企業にとって、有力な選択肢となるでしょう。