この記事は、VMware Tanzu Application Platform 1.5 Offers Faster, More Secure Paths to Production の抄訳です。
VMware Tanzu Application Platform は、エンドツーエンドの統合プラットフォームソリューションです。豊富な開発者ツールやカスタマイズ可能な本番環境へのゴールデンパスを通じて、より多くのソフトウェアをより迅速かつ安全にビルド、デプロイできます。
Tanzu Application Platform 1.5 では、開発者とプラットフォームのエンジニアリング体験の合理化、エンドツーエンドのアプリケーションのセキュリティの向上、お気に入りのツールとの統合による柔軟性のサポートなど、私たちの方針を基に開発しました。
kubectl はいらない:優れた GitOps のアプローチ
Tanzu Application Platform は以下のアップデートにより、これまで手作業により時間を要していた開発者やプラットフォームエンジニアリングのタスクをさらに自動化することを可能にしました。
開発者ネームスペースの自動プロビジョニング
Tanzu Application Platform 1.4 の Namespace Provisioner コンポーネントの最初のリリースは、プラットフォームエンジニアが開発者にネームスペースのリソースを提供する際の効率を最大化するための協調した取り組みの始まりでした。その結果、プラットフォームエンジニアの負担を軽減し、より高度な戦略的努力に集中できるよう、いくつかの重要な機能強化や最適化がなされました。
Tanzu Application Platform 1.5 における Namespace Provisioner の改良点は以下のとおりです:
- GitOps モードで Namespace Provisioner を使用するためのワークフローの完全サポート
- デフォルトでは、プロビジョニングされたネームスペース内で実行されているすべてのポッドにリソースの LimitRange が設定され、配置されたアプリ間のリソース競合を緩和します
- LimitRange のデフォルトは、必要に応じてタップ値やネームスペース単位でグローバルに設定することができます
- プラットフォームエンジニアは、Provisioner によって作成されたリソースに YAML Templating Tool(YTT)オーバーレイを適用できるようになりました(たとえば、エアギャップ環境でスキャナーを有効にする場合など)
- プラットフォームエンジニアは、テンプレート化されたリソースを引き出すためのプライベートGitリポジトリを、過度な手作業なしに参照できるようになりました
コントローラーモードでの Namespace Provisioner
フル GitOps モードでのNamespace Provisioner
簡素化されたインストール体験(ベータ)
Tanzu Application Platform は、現在ベータ機能として提供されている GitOps ベースのインストールプロセスによって、複数コマンドを手動で実行する必要がなくなり、複雑さを軽減しました。GitOps の手法はシステムの望ましい状態を宣言し、実際のシステム(例:Kubernetes クラスタの内容)が望ましい状態に収束することを保証する調整プロセス( Kubernetes では、通常はコントローラーを介して行われます)を含みます。Tanzu Application Platform を導入するユーザーは、Git リポジトリに保存された望ましい状態を変更することで、システムに変更を加えることができるようになり、顧客の既存のツールを活用することで導入プロセスを簡素化することができるようになりました。
開発者体験とプラットフォームエンジニア体験の向上
Tanzu Application Platform の新機能は、開発チームとプラットフォームエンジニアリングチームが本番環境への安全なゴールデンパスを作成・再利用し、ベストプラクティスを共有、最高の結果を生むことを支援します。
Visual Studio Code の Tanzu Activity ペイン
このパネルでは、クラスタ上のワークロードについて、サプライチェーンの状態、納品物の状態、実行中のアプリケーションの状態など、拡張された詳細が表示されます。Tanzu Workloads パネルが監視するネームスペースをパネル自体から直接選択できるようになりました。(さらに、複数のネームスペースを同時に監視することができるようになりました。
Visual Studio CodeのTanzu Activity パネル
IntelliJ IDE でのアプリケーション開発開始体験
IntelliJ を使用して開発を行う開発者は、IntelliJ 内で Application Accelerators を使用してプロジェクトを作成できるようになりました。これまで、プロジェクトの作成体験は、Visual Studio Code IDE または Backstage ベースのブラウザ GUI からしかできませんでした。IntelliJ で同じ機能を追加することで、IDE のカバレッジを拡大し、開発者がいる場所で対応することができます。
アプリケーションのブートストラップ実績
開発者は、アプリケーションチームが提供する、社内ベストプラクティスに準拠していると判断されたアプリケーションアクセラレータ(テンプレート)を使用することで、社内ポリシーの遵守を促進できます。アプリケーションの所有者は、開発サイクルの早い段階で、社内のベストプラクティスに準拠したアクセラレータを使用してアプリケーションが起動されているかどうかを確認することができます。こうすることで、必要に応じて是正措置を取ることができます。
アプリケーションのシングルサインオン(SSO)機能強化
アプリケーションの SSO 機能が、アプリケーションの認可を有効にするようになりました。アプリケーションは、認証ユーザーの認証レベルに基づいて、特定のリソースを保護することができます。保護されたリソースを持つアプリケーションは、認証されたユーザーのアクセストークンが、保護されたリソース上でアクションを実行するためのスコープを含んでいるかどうかを確認できます。開発者は、ブラウザベースのパブリッククライアント(例:シングルページアプリケーション)でもSSOを有効にできるようになりました。
アプリケーションコンポーネント間の内部通信
開発者は、Tanzu Application Platform 環境内でアプリケーションのコンポーネントが互いに通信するように設定することで、複雑なアプリケーションに対してより効率的で安全な通信経路を得ることができます。Tanzu Application Platform ワークロードは、どのようなアプリケーション言語やフレームワークでも同じように解決されるユニークな内部ドメイン名システム(DNS)名を取得します。環境内の他のアプリケーションは、Tanzu Application Platform の外部で実行されているものであっても、同じ名前で接続することができ、アプリケーションシステム間の相互運用をより簡単かつ一貫したものにします。
アプリケーションコンポーネント間の内部通信
開発者は、Tanzu Application Platform 環境内でアプリケーションのコンポーネントが互いに通信するように設定することで、複雑なアプリケーションに対してより効率的で安全な通信経路を得ることができます。Tanzu Application Platform ワークロードは、どのようなアプリケーション言語やフレームワークでも同じように解決されるユニークな内部ドメイン名システム(DNS)名を取得します。環境内の他のアプリケーションは、Tanzu Application Platform の外部で実行されているものであっても、同じ名前で接続することができ、アプリケーションシステム間の相互運用をより簡単かつ一貫したものにします。
レポーティングと洞察
Tanzu Application Platform をご利用のお客様は、テレメトリーレポートを選択することができます。これらのレポートは、組織内での Tanzu Application Platform の採用に関する有益な情報を提供し、プラットフォーム上で何が実行され、ユーザーがどれだけ消費しているかについての洞察を提供することができます。
クラスタ間のサプライチェーンのトレンド
あるお客様のTanzu Application Platformの総導入数の推移
特定のTanzu Application Platformクラスタに展開されたワークロードの動向とその状態
エンドツーエンドのアプリケーションセキュリティ
Tanzu Application Platform の中核となる考え方は、アプリケーションのライフサイクル全体を通じて、エンドツーエンドの本質的なセキュリティをユーザーに提供できるようにすることです。Tanzu Application Platform 1.5 では、エンドツーエンドのセキュリティとセキュリティ態勢の可視化を拡大するための機能拡張を続けています。
Tanzu Application Platform 1.5 では、以下の新機能を提供します。
外部シークレットオペレーター(ベータ)
現在ベータ機能として提供されている外部シークレットオペレーターは、企業ユーザーが外部シークレットマネージャー( Hashicorp Vault、AWS Secrets Manager、Azure Key Vault など)上で既存のシークレット設定を使用して、Tanzu Application Platform のシークレットを管理することができます。外部シークレットオペレーターは Tanzu Application Platform 1.4 でパッケージ化されていましたが、1.5 では CLI プラグインを含むように機能が拡張されました。CLI はユーザーが外部シークレットオペレーターとインターフェイスすることを可能にし、その最初のイテレーションで以下を提供します。
- Tanzu Application Platform で使用されるが、外部マネージャに保存されるシークレットの一覧表示
- 状態の確認
- 外部プロバイダーのシークレットにリンクする新しい Kubernetes のシークレットの作成
外部シークレットオペレーターと新しい Tanzu CLI プラグインは、Tanzu Application Platform におけるクラスタシークレットのライフサイクル管理を簡素化するのに役立ちます。
外部シークレットオペレーター
アーティファクトメタデータリポジトリ( AMR )
アーティファクトメタデータリポジトリは、サプライチェーンを流れるイメージに関する詳細なメタデータを収集するプロセスを開始します。イメージの構成要素から、イメージに存在する脆弱性、イメージが実行されている実行クラスタまで、すべてがアーティファクトメタデータリポジトリに保存されることになります。これは、Tanzu Application Platform を使わなければまとめることが困難な、豊富な情報を提供します。
設定済みの TLS (トランスポートレイヤーセキュリティ)
本質的にセキュアなアプリケーションをデリバリーするための重要な要素のひとつは、クラスタ間のネットワークを設定する能力です。Tanzu Application Platform は、デフォルトで TLS が設定されているため、強化されたセキュリティで動作します。さらに、Application Accelerators や App Live View 、API ポータルの自動設定により、設定にかかる時間を短縮し、アプリケーションの開発とデプロイのためにプラットフォームを使用する時間を増やすことができます。
カスタマイズ可能なセキュリティバナー
Tanzu Application Platform の GUI にカスタマイズ可能なセキュリティバナーを表示することで、開発者が作業している環境を視覚的に明確に示すことができます。画面の上部と下部にバナーを追加することで、組織のガードレールに基づいて環境を定義することができます。
Tanzu Application Platform GUIのセキュリティバナー
Spring Bootアプリケーションのシームレスな移行
既存のSpring BootアプリをTanzu Application Platformに移行
Tanzu Application Platform は、既存の Spring Boot アプリケーションが依存するランタイムと Spring Cloud 対応サービスを提供するようになりました。サーバー、パブリッククラウド、Azure Spring Apps、Tanzu Application Service のいずれで Spring Boot アプリケーションを実行している場合でも、コードの変更や設定の変更をほとんど必要とせず、Tanzu Application Platformに 移行することが可能になりました。
Tanzu Application Platformに移行した後、開発チームはTanzu Application Platformのサービスや統合開発環境(IDE)が提供する一貫したエクスペリエンスを活用することができます。VMware Spring Cloud Gateway for KubernetesとApplication Configuration Service for VMware Tanzu(Kubernetesとネイティブに統合するSpring Cloud Config Serverと同等のAPIサービス)は、顧客がTanzu Application Platformクラスタにインストールする権利があるパッケージとして利用できます。
Tanzu Application Platform に Spring Cloud Gateway for Kubernetes を追加
Spring Cloud Gateway for Kubernetes は、スケーリングされた高スループット環境で使用される高性能な分散型 API ゲートウェイソリューションです。今回、Spring Cloud Gateway for Kubernetes のオペレータと関連するカスタムリソース定義( CRD )を Tanzu Application Platform クラスタにインストールすることが可能になりました。アプリケーション開発チームは、API ゲートウェイとルート設定を動的にデプロイして API を公開し、すぐに利用できるルートフィルタを適用することができます。複数の Tanzu Application Platform クラスタへのデプロイを効率化するには、先述の Namespace Provisioner を使用して、Kubernetes ネームスペースにデプロイしたい API ゲートウェイとアプリケーションリソースを表す Git リポジトリの場所と GitOps 照合ループをセットアップします。アプリケーション開発者に優しい方法で API を公開することは、IDE から本番まで決して容易ではありません。
Application Configuration Service for VMware Tanzu の追加
Application Configuration Service for VMware Tanzu は、Spring Boot アプリケーションに実行時設定を提供するマイクロサービスアーキテクチャにおいて不可欠なコンポーネントであった Spring Cloud Config Server を介して、既存の Spring アプリケーションがこれまで活用してきた Git ベースの実行時設定を可能にする Kubernetes ネイティブの体験を提供します。これは、構成管理を異なるブランチやフォルダ上の Git リポジトリでホストし、アプリケーションの実行時構成プロパティを生成するために使用できるようにすることで達成されました。Application Configuration Service for VMware Tanzu は、既存の Git リポジトリ構成管理アプローチと互換性があり、秘密と ConfigMap を生成する構成スライスを介してアプリケーションの実行時構成をフィルタリングします。
Spring Boot 3のサポートを拡大
Tanzu Application Platform では、Spring Boot 3 をサポートする機能が強化されました。
- Tanzu Application Platform の Visual Studio Codeと IntelliJ の開発者ツールを活用して、Spring Boot 3ベースのアプリケーションを反復処理できます
- 開発者ポータルと Visual Studio Codeの App Live View を使用して、Spring Boot 3ベースのアプリケーションからライブ情報にアクセスできます
- 開発者ポータルの App Live View で、Spring Boot 3 ベースのアプリケーションのログレベルを変更することができます
- Spring Boot 3 をサポートするSpringアプリケーションに、すぐに使えるApp Acceleratorを採用する。
- Spring Boot 3アプリケーションのコンテナイメージを作成し、VMware Tanzu Build Serviceでソフトウェア部品表(SBoM)情報を生成する。
- Spring Boot 3アプリケーションのために、Springランタイム規約を使用して最も効果的な規約を適用する。
パブリッククラウド上の Tanzu Application Platform
Tanzu Application Platform 1.5 は、パブリッククラウド上での使い勝手を向上させています。
AWS QuickStart におけるマルチクラスタデプロイメントのサポート
Tanzu Application Platform on AWS QuickStart の最新リリースでは、マルチクラスタアーキテクチャでのデプロイも可能になりました。簡単なクリック操作で、ユーザーは AWS 上のリファレンスアーキテクチャに従ったマルチクラスタ Tanzu Application Platform 環境に、最短90分(インフラ設定時間を含む)でアクセスすることができます。これにより、Amazon Elastic Kubernetes Service( Amazon EKS )上の Tanzu Application Platform のインストール時間を大幅に短縮することができます。
サプライチェーンにおける Azure DevOps の Git リポジトリのサポート
Tanzu Application Platform のすぐに使えるサプライチェーンは、GitHub と GitLab のリポジトリに加えて、Azure リポジトリをサポートするようになりました。アプリケーションのソースコードを保存し環境間でアプリケーションを促進するためのプルリクエストを開くために Azure リポジトリを使用できるようになりました。
すぐに使えるインテグレーションの提供
Tanzu Application Platform の強化されたモジュール機能により、チームは本番への移行に際して好みのサードパーティツールを入れ替えることができます。Tanzu Application Platform 1.5 では、追加の脆弱性スキャナをサプライチェーンに統合するためのシンプルなアルファ版ユーザーエクスペリエンスを提供しました。脆弱性スキャナーの選択肢は増え続けていますが、これにより、当社の顧客やパートナーは、スキャンフレームワークへの既存の投資をすぐに活用することができます。
また、対応ツールのエコシステムの拡大により、さらなるモジュール化を実現しました。アクアセキュリティ社のオープンソース脆弱性スキャナである Aqua Trivy との新しいアルファ版統合により、Tanzu Application Platform のユーザーは以下のことが可能になります。
- Aqua Trivyを使用して、サプライチェーンのソースコードとイメージスキャンを実施
- ポリシーの強化により、重要/高共通脆弱性・暴露(CVE)を持つデプロイメントをブロック
- メタデータストア/Tanzu Application Platformのインターフェイスから結果を照会/表示