Tanzu Platform Self Managed を試す - 管理者向けデプロイ先の軽量化編

最新製品である Tanzu Platform のオンプレ版を試していきます。

TPのデフォルトのClusterGroupのrunだとKubernetesのインストール先に必要なリソース量がそれなりに多くなってしまいます。 今回は、それを軽量化してみたいと思います。

シリーズ

デフォルトの run, Cluster Group のリソース

以下が、RunのClusterGroupに一切のアプリケーションもデプロイしていない時のリソース予約量(かならずこの量より多くのリソースが必要)です。 特に顕著なのが、メモリの予約量であり、10GBほどが必要となってきます。

この状態ですと、1アプリでもデプロイすると、リソースが限界になり、二つ目以降のアプリケーションがデプロイが困難になります。

run-lite, ClusterGroupを作成

そこでより軽量化を目指した、run-lite とよばれるクラスタグループを作っていきます。 [ Infrastructure ] > [ Kubernetes Clusters ] > [ Cluster Groups ] > [ ADD Cluster Group] を選択して run-lite を作成します。

run-lite への Packages のインストール

run-lite にデフォルトでインストールされるパッケージを指定していきます。 [ Space ] > [ Capabilites ] から一つづやるのも可能なのですが、CLIでやる方法のがシンプルなので、今回はそれをベースに行います。

まず、以下のコマンドで、run-lite クラスタグループをターゲットにします。

1tanzu operations clustergroup use run-lite

次に、パッケージをインストールしていきます。簡単にするため以下の git レポジトリを用意しました。 https://github.com/mhoshi-vm/tp-run-lite

以下のコマンドで適用します。

1git clone https://github.com/mhoshi-vm/tp-run-lite
2cd tp-run-lite/clustergroup
3tanzu deploy --only .

以上ではありますが、この run-literun の比較を以下の表にまとめました。

run run-lite 補足
bitnami.services.tanzu.vmware.com bitnami系のcreate-serviceができなくなるがリソース消費量が多いので削除
cert-manager.tanzu.vmware.com
container-apps.tanzu.vmware.com
controller.build.tanzu.vmware.com プラットフォームビルドのために必要。通常run には含まれないが、簡易的に追加
crossplane.tanzu.vmware.com bitnami系のcreate-serviceができなくなるがリソース消費量が多いので削除
egress.tanzu.vmware.com
health.spaces.tanzu.vmware.com
horizontal-autoscaling.tanzu.vmware.com
ingress.tanzu.vmware.com
k8sgateway.tanzu.vmware.com
mtls.tanzu.vmware.com
observability.tanzu.vmware.com
servicebinding.tanzu.vmware.com
spring-cloud-gateway.tanzu.vmware.com メモリ消費量が多いのでSCGも通常は使わないので削除
tanzu-servicebinding.tanzu.vmware.com
tcs.tanzu.vmware.com リソース消費量は多いのだが、他の機能のために必須なので、リソース両方減らして登録

なお最後のtcs.tanzu.vmware.comistiod をインストールするために使われますが、この Hack によってリソース消費量をおさえています。 とくに Replica を1にしているので、耐障害性は低くなる点注意してください。

run-lite へクラスタを登録

k8s クラスタを run-lite に登録していきます。 なお、残念ながらすでに run で登録したクラスタを run-lite に移すのは執筆時点ではできないです。 新しいクラスタを用意するか、もしくは、今のクラスタを detach して再度アタッチしなおしてください。

[ Infrastructure ] > [ Kubernetes Clusters ] から行えます。

run-lite のリソース量

それなりに低くくなって、特にメモリ量が 6.5 GB ほどです。

アプリケーションのデプロイ

ここからは通常のアプリケーションのデプロイで行えます。 apps.tanzu.vmware.comプロファイルをベースとしたSpaceにデプロイするだけでいつも通りデプロイできます。 前記事を参照してください。

以上デプロイ先の軽量化について記載しました。