クラスタ構成ファイルを作成するには、以前の展開の既存の構成ファイルを Azure にコピーして更新します。また、空のテンプレートを使用してファイルを最初から作成することもできます。
重要Tanzu Kubernetes Grid v2.4.x は、Azure でのスタンドアローン TKG 管理クラスタの作成をサポートする TKG の最後のバージョンです。Azure でスタンドアローン TKG 管理クラスタを作成する機能は、Tanzu Kubernetes Grid v2.5 リリースで削除されます。
以降、VMware では、Azure で新しい TKG 管理クラスタを作成する代わりに、Tanzu Mission Control を使用してネイティブの Azure AKS クラスタを作成することをお勧めします。Tanzu Mission Control を使用してネイティブの Azure AKS クラスタを作成する方法については、Tanzu Mission Control ドキュメントの「Azure AKS クラスタのライフサイクルの管理」を参照してください。
詳細については、『VMware Tanzu Kubernetes Grid v2.4 Release Notes』の「AWS および Azure での TKG 管理クラスタとワークロード クラスタの廃止」を参照してください。
次に示すテンプレートには、Azure への管理クラスタの展開に関連するすべてのオプションが含まれています。このテンプレートをコピーして使用し、管理クラスタを Azure に展開できます。
必須オプションはコメント解除されています。オプションの設定はコメントアウトされています。必要に応じて、デフォルト値が含まれています。
#! ---------------------------------------------------------------------
#! Basic cluster creation configuration
#! ---------------------------------------------------------------------
CLUSTER_NAME:
CLUSTER_PLAN: dev
INFRASTRUCTURE_PROVIDER: azure
# CLUSTER_API_SERVER_PORT:
ENABLE_CEIP_PARTICIPATION: true
ENABLE_AUDIT_LOGGING: true
CLUSTER_CIDR: 100.96.0.0/11
SERVICE_CIDR: 100.64.0.0/13
# CAPBK_BOOTSTRAP_TOKEN_TTL: 30m
#! ---------------------------------------------------------------------
#! Node configuration
#! ---------------------------------------------------------------------
# SIZE:
# CONTROLPLANE_SIZE:
# WORKER_SIZE:
# AZURE_CONTROL_PLANE_MACHINE_TYPE: "Standard_D2s_v3"
# AZURE_NODE_MACHINE_TYPE: "Standard_D2s_v3"
# OS_NAME: ""
# OS_VERSION: ""
# OS_ARCH: ""
# AZURE_CONTROL_PLANE_DATA_DISK_SIZE_GIB : ""
# AZURE_CONTROL_PLANE_OS_DISK_SIZE_GIB : ""
# AZURE_CONTROL_PLANE_MACHINE_TYPE : ""
# AZURE_CONTROL_PLANE_OS_DISK_STORAGE_ACCOUNT_TYPE : ""
# AZURE_ENABLE_NODE_DATA_DISK : ""
# AZURE_NODE_DATA_DISK_SIZE_GIB : ""
# AZURE_NODE_OS_DISK_SIZE_GIB : ""
# AZURE_NODE_MACHINE_TYPE : ""
# AZURE_NODE_OS_DISK_STORAGE_ACCOUNT_TYPE : ""
#! ---------------------------------------------------------------------
#! Azure configuration
#! ---------------------------------------------------------------------
AZURE_ENVIRONMENT: "AzurePublicCloud"
AZURE_TENANT_ID:
AZURE_SUBSCRIPTION_ID:
AZURE_CLIENT_ID:
AZURE_CLIENT_SECRET:
AZURE_LOCATION:
AZURE_SSH_PUBLIC_KEY_B64:
# AZURE_RESOURCE_GROUP: ""
# AZURE_VNET_RESOURCE_GROUP: ""
# AZURE_VNET_NAME: ""
# AZURE_VNET_CIDR: ""
# AZURE_CONTROL_PLANE_SUBNET_NAME: ""
# AZURE_CONTROL_PLANE_SUBNET_CIDR: ""
# AZURE_NODE_SUBNET_NAME: ""
# AZURE_NODE_SUBNET_CIDR: ""
# AZURE_CUSTOM_TAGS : ""
# AZURE_ENABLE_PRIVATE_CLUSTER : ""
# AZURE_FRONTEND_PRIVATE_IP : ""
# AZURE_ENABLE_ACCELERATED_NETWORKING : ""
#! ---------------------------------------------------------------------
#! Image repository configuration
#! ---------------------------------------------------------------------
# TKG_CUSTOM_IMAGE_REPOSITORY: ""
# TKG_CUSTOM_IMAGE_REPOSITORY_CA_CERTIFICATE: ""
#! ---------------------------------------------------------------------
#! Proxy configuration
#! ---------------------------------------------------------------------
# TKG_HTTP_PROXY: ""
# TKG_HTTPS_PROXY: ""
# TKG_NO_PROXY: ""
#! ---------------------------------------------------------------------
#! Machine Health Check configuration
#! ---------------------------------------------------------------------
ENABLE_MHC:
ENABLE_MHC_CONTROL_PLANE: true
ENABLE_MHC_WORKER_NODE: true
MHC_UNKNOWN_STATUS_TIMEOUT: 5m
MHC_FALSE_STATUS_TIMEOUT: 12m
#! ---------------------------------------------------------------------
#! Identity management configuration
#! ---------------------------------------------------------------------
IDENTITY_MANAGEMENT_TYPE: none
#! Settings for IDENTITY_MANAGEMENT_TYPE: "oidc"
# CERT_DURATION: 2160h
# CERT_RENEW_BEFORE: 360h
# OIDC_IDENTITY_PROVIDER_CLIENT_ID:
# OIDC_IDENTITY_PROVIDER_CLIENT_SECRET:
# OIDC_IDENTITY_PROVIDER_GROUPS_CLAIM: groups
# OIDC_IDENTITY_PROVIDER_ISSUER_URL:
# OIDC_IDENTITY_PROVIDER_SCOPES: "email,profile,groups,offline_access"
# OIDC_IDENTITY_PROVIDER_USERNAME_CLAIM: email
#! The following two variables are used to configure Pinniped JWTAuthenticator for workload clusters
# SUPERVISOR_ISSUER_URL:
# SUPERVISOR_ISSUER_CA_BUNDLE_DATA:
#! Settings for IDENTITY_MANAGEMENT_TYPE: "ldap"
# LDAP_BIND_DN:
# LDAP_BIND_PASSWORD:
# LDAP_HOST:
# LDAP_USER_SEARCH_BASE_DN:
# LDAP_USER_SEARCH_FILTER:
# LDAP_USER_SEARCH_ID_ATTRIBUTE: dn
# LDAP_USER_SEARCH_NAME_ATTRIBUTE:
# LDAP_GROUP_SEARCH_BASE_DN:
# LDAP_GROUP_SEARCH_FILTER:
# LDAP_GROUP_SEARCH_NAME_ATTRIBUTE: dn
# LDAP_GROUP_SEARCH_USER_ATTRIBUTE: dn
# LDAP_ROOT_CA_DATA_B64:
#! ---------------------------------------------------------------------
#! Antrea CNI configuration
#! ---------------------------------------------------------------------
# ANTREA_NO_SNAT: true
# ANTREA_NODEPORTLOCAL: true
# ANTREA_NODEPORTLOCAL_ENABLED: true
# ANTREA_NODEPORTLOCAL_PORTRANGE: 61000-62000
# ANTREA_TRAFFIC_ENCAP_MODE: "encap"
# ANTREA_PROXY: true
# ANTREA_PROXY_ALL: true
# ANTREA_PROXY_LOAD_BALANCER_IPS: false
# ANTREA_PROXY_NODEPORT_ADDRS:
# ANTREA_PROXY_SKIP_SERVICES: ""
# ANTREA_POLICY: true
# ANTREA_TRACEFLOW: true
# ANTREA_DISABLE_UDP_TUNNEL_OFFLOAD: false
# ANTREA_ENABLE_USAGE_REPORTING: false
# ANTREA_EGRESS: true
# ANTREA_EGRESS_EXCEPT_CIDRS: ""
# ANTREA_FLOWEXPORTER: false
# ANTREA_FLOWEXPORTER_COLLECTOR_ADDRESS: "flow-aggregator.flow-aggregator.svc:4739:tls"
# ANTREA_FLOWEXPORTER_POLL_INTERVAL: "5s"
# ANTREA_FLOWEXPORTER_ACTIVE_TIMEOUT: "5s"
# ANTREA_FLOWEXPORTER_IDLE_TIMEOUT: "15s"
# ANTREA_IPAM: false
# ANTREA_KUBE_APISERVER_OVERRIDE: ""
# ANTREA_MULTICAST: false
# ANTREA_MULTICAST_INTERFACES: ""
# ANTREA_NETWORKPOLICY_STATS: true
# ANTREA_SERVICE_EXTERNALIP: true
# ANTREA_TRANSPORT_INTERFACE: ""
# ANTREA_TRANSPORT_INTERFACE_CIDRS: ""
Azure アカウントと、クラスタを展開するリージョンに関する情報を指定します。
例:
AZURE_ENVIRONMENT: "AzurePublicCloud"
AZURE_TENANT_ID: b39138ca-[...]-d9dd62f0
AZURE_SUBSCRIPTION_ID: 3b511ccd-[...]-08a6d1a75d78
AZURE_CLIENT_ID: <encoded:M2ZkYTU4NGM[...]tZmViZjMxOGEyNmU1>
AZURE_CLIENT_SECRET: <encoded:bjVxLUpIUE[...]EN+d0RCd28wfg==>
AZURE_LOCATION: westeurope
AZURE_SSH_PUBLIC_KEY_B64: c3NoLXJzYSBBQUFBQjN[...]XJlLmNvbQ==
Tanzu CLI は、構成ファイルで指定した設定に従って、ワークロード クラスタの個々のノードを作成します。AWS では、すべてのノード仮想マシンに同じ事前定義済み構成を適用することも、制御プレーン ノードとワーカー ノードにそれぞれ異なる事前定義済み構成を設定することもできます。これらの設定を使用すると、管理クラスタ ノードにそれぞれ異なる構成のノードを持つワークロード クラスタを作成できます。また、制御プレーン ノードとワーカー ノードの構成が異なるクラスタを作成することもできます。
管理クラスタを作成すると、ノード マシンのインスタンス タイプが AZURE_CONTROL_PLANE_MACHINE_TYPE
および AZURE_NODE_MACHINE_TYPE
オプションで設定されます。デフォルトでは、これらの設定はワークロード クラスタにも使用されます。最小構成は、2 個の CPU と 8 GB のメモリです。互換性のあるインスタンス タイプのリストは、リージョンによって異なります。
AZURE_CONTROL_PLANE_MACHINE_TYPE: "Standard_D2s_v3"
AZURE_NODE_MACHINE_TYPE: "Standard_D2s_v3"
これらの設定は、SIZE
、CONTROLPLANE_SIZE
、および WORKER_SIZE
オプションを使用してオーバーライドできます。すべての制御プレーンおよびワーカー ノードの仮想マシンのサイズが同じワークロード クラスタを作成するには、SIZE
変数を指定します。SIZE
変数を設定すると、設定した構成を使用してすべてのノードが作成されます。Standard_D2s_v3
、Standard_D4s_v3
などに設定します。Azure のノード インスタンスについては、「Sizes for virtual machines in Azure」を参照してください。
SIZE: Standard_D2s_v3
制御プレーンおよびワーカー ノードの仮想マシンのサイズが異なるワークロード クラスタを作成するには、CONTROLPLANE_SIZE
および WORKER_SIZE
オプションを指定します。
CONTROLPLANE_SIZE: Standard_D2s_v3
WORKER_SIZE: Standard_D4s_v3
CONTROLPLANE_SIZE
オプションと WORKER_SIZE
オプションを SIZE
オプションと組み合わせることができます。たとえば、SIZE: "Standard_D2s_v3"
と WORKER_SIZE: "Standard_D4s_v3"
を指定すると、制御プレーン ノードは Standard_D2s_v3
に設定され、ワーカー ノードは Standard_D4s_v3
に設定されます。
SIZE: Standard_D2s_v3
WORKER_SIZE: Standard_D4s_v3
クラスタ内のノードのカスタム サブネット(IP アドレス範囲)を指定するには、クラスタを作成する前に変数を次のように設定します。これらを環境変数として定義してから、tanzu cluster create
を実行するか、--file
オプションを使用して渡すクラスタ構成ファイルに含めることができます。
クラスタ内の制御プレーン ノードのカスタム サブネット(IP アドレス範囲)を指定するには、次の手順を実行します。
AZURE_CONTROL_PLANE_SUBNET_NAME
をサブネット名に設定します。AZURE_CONTROL_PLANE_SUBNET_NAME
を新しいサブネットの名前に設定し、必要に応じて、AZURE_CONTROL_PLANE_SUBNET_CIDR
を構成済みの Azure VNet 内の CIDR 範囲に設定します。
AZURE_CONTROL_PLANE_SUBNET_CIDR
を省略すると、CIDR が自動的に生成されます。クラスタでワーカー ノードのカスタム サブネットを指定するには、前述の制御プレーン ノードの場合と同じルールに従って、環境変数 AZURE_NODE_SUBNET_NAME
および AZURE_NODE_SUBNET_CIDR
を設定します。
例:
AZURE_CONTROL_PLANE_SUBNET_CIDR: 10.0.0.0/24
AZURE_CONTROL_PLANE_SUBNET_NAME: my-cp-subnet
AZURE_NODE_SUBNET_CIDR: 10.0.1.0/24
AZURE_NODE_SUBNET_NAME: my-worker-subnet
AZURE_RESOURCE_GROUP: my-rg
AZURE_VNET_CIDR: 10.0.0.0/16
AZURE_VNET_NAME: my-vnet
AZURE_VNET_RESOURCE_GROUP: my-rg
管理クラスタ構成ファイルの更新が完了したら、「構成ファイルからの管理クラスタの展開」の手順に従って管理クラスタを作成します。
重要新しいバージョンの Tanzu Kubernetes Grid(v2.3 など)を使用して管理クラスタを Azure に初めて展開する場合は、そのバージョンの基本イメージ ライセンスを受け入れたことを確認します。詳細については、「Microsoft Azure への管理クラスタの展開の準備」の「基本イメージ ライセンスの同意」を参照してください。