既存クラスターで階層型ストレージを有効にする
このガイドは、以前のバージョンの terraform examples を使用して BYOC/BYOC-I cluster をすでにデプロイしており、階層型ストレージを有効にしたいユーザー向けです。
前提条件
- Terraform provider
zillizcloudバージョン>= 0.6.34。
ステップ 1: Provider をアップグレードする
versions.tf または required_providers ブロック内のバージョン制約を更新します。Terraform の ~> 制約はプレリリース版には 一致しない ため、-rc ビルドをテストしている場合は明示的に固定してください。
zillizcloud = {
source = "zilliztech/zillizcloud"
version = ">= 0.6.34"
}
ステップ 2: data.tf を更新する
locals {} ブロック内で、既存の k8s_node_groups 割り当てを次のように置き換えます。
# Remove this line:
k8s_node_groups = data.zillizcloud_byoc_i_project_settings.this.node_quotas
次のマージロジックに置き換えます。
# Tiered node quota from API (separate provider field, null when not enabled)
tiered_node_quota = (
data.zillizcloud_byoc_i_project_settings.this.tiered_node_quota != null
? { tiered = data.zillizcloud_byoc_i_project_settings.this.tiered_node_quota }
: {}
)
k8s_node_groups = {
for name, ng in merge(
# Tiered placeholder (max_size=0 → count=0, not created unless API enables it)
{ tiered = { disk_size = 100, min_size = 0, max_size = 0, desired_size = 0, instance_types = "i4i.2xlarge", capacity_type = "ON_DEMAND" } },
# API returns: core, index, search, fundamental
data.zillizcloud_byoc_i_project_settings.this.node_quotas,
# API tiered quota overwrites placeholder when present
local.tiered_node_quota,
) : name => merge(ng, {
ami_id = lookup(var.k8s_node_group_image_id, name, null)
disk_size = max(ng.disk_size, 100)
})
}
# Placeholder has max_size=0, so this is false unless API returns tiered with max_size>0
enable_tiered = local.k8s_node_groups["tiered"].max_size > 0
ステップ 3: EKS Module を更新する
terraform-zilliz-examples の master ブランチから最新の modules/aws_byoc_i/eks/ ディレクトリをコピーし、ローカルコピーを置き換えます。これにより、tiered node group リソース、enable_tiered 変数、および更新された検証ルールが追加されます。
ステップ 4: enable_tiered を EKS Module に渡す
ルートの main.tf で、module "eks" ブロックに引数を追加します。
module "eks" {
# ... existing arguments ...
enable_tiered = local.enable_tiered
}
ステップ 5: Zilliz Cloud Console で階層型ストレージを有効にする
-
Zilliz Cloud console にログインします。
-
右上隅で、正しい BYOC organization を選択します。

-
Projects に移動し、階層型ストレージを有効にしたいプロジェクトを見つけます。
-
プロジェクトカードの右下にある "..." ボタンをクリックし、次に View Project Details をクリックします。

- Resource Settings セクションで、Edit をクリックします。

- ダイアログで Tiered にチェックを入れ、右下の Save をクリックします。
保存後、API はこのプロジェクトに対して tiered_node_quota を返します。

ステップ 6: 確認
terraform init -upgrade
terraform plan
想定される plan 出力:
| Scenario | Expected Result |
|---|---|
| Tiered storage not enabled | 新しいリソースはありません (enable_tiered = false, count = 0) |
| Tiered storage enabled | aws_eks_node_group.tiered[0] が作成されます (1 to add) |
既存のリソースには、destroy または recreate が発生しないことが想定されます。