設定 Compute Engine MIG

在 Application Design Center,您可以設定 Compute Engine 代管執行個體群組 (MIG),將一組 VM 執行個體視為單一實體管理,並啟用負載平衡、自動調度資源和自動修復功能。您可以根據特定元件連線和設定參數,自訂 MIG。設定參數列在 terraform-google-vm Terraform 模組中。

元件連線

下表列出可連結至 Compute Engine MIG 的元件,以及應用程式和產生的 Terraform 程式碼會有哪些更新。

連通元件

應用程式更新

背景資訊

全域 Cloud Load Balancing 後端

  • 負載平衡器可將連入流量分配給 Compute Engine MIG。
  • Compute Engine MIG 會新增至 Cloud Load Balancing 後端服務群組欄位。
設定後端為代管執行個體群組的傳統版應用程式負載平衡器

區域 Cloud Load Balancing 後端

  • 負載平衡器可將連入流量分配給 Compute Engine MIG。
  • Compute Engine MIG 會新增至 Cloud Load Balancing 後端服務群組欄位。
設定具備 VM 執行個體群組後端的區域性外部應用程式負載平衡器

Compute Engine 執行個體範本

  • Compute Engine 執行個體範本用於在代管執行個體群組中建立執行個體。
  • 執行個體範本自我連結會新增至 Compute Engine MIG。
建立代管執行個體群組 (MIG) 的基本情境

必要設定參數

如果範本包含 Compute Engine MIG 元件,您必須先設定下列參數,才能部署。

參數名稱

說明與限制

背景資訊

專案 ID

要建立 Compute Engine MIG 的專案。

設定元件

區域

region 關於區域 MIG

執行個體範本

instanceTemplate 關於執行個體範本

選用設定參數

以下為選用參數。如要顯示進階參數,請在「Configuration」(設定) 區域中選取「Show advanced fields」(顯示進階欄位)。

功能

參數名稱

說明和限制資訊

背景資訊

MIG 名稱

name mig_name

主機名稱

執行個體的主機名稱前置字串。

hostname

目標大小

targetSize 建立啟用了自動調度資源功能的 MIG。

備用資源數量上限

autoscalingPolicy.maxNumReplicas 建立已啟用自動調度資源功能的 MIG

副本數量下限

autoscalingPolicy.minNumReplicas 建立已啟用自動調度資源功能的 MIG

自動調度資源模式

autoscalingPolicy.mode 自動調度資源模式

目標集區

targetPools[] 將代管執行個體群組新增至目標集區

分配政策目標形狀

distributionPolicy.targetShape feedback 區域性 MIG 目標分配型態

發布政策區域

distributionPolicy.zones[] 在區域性 MIG 中為 VM 設定目標分配型態

有狀態磁碟

裝置名稱

statefulPolicy.preservedState.disks[] 在 MIG 中設定有狀態永久磁碟

刪除規則

statefulPolicy.preservedState.disks[].autoDelete 在 MIG 中設定有狀態永久磁碟

有狀態 IP

介面名稱

statefulPolicy.preservedState.internalIPs[] 在 MIG 中設定有狀態 IP 位址

刪除規則

statefulPolicy.preservedState.internalIPs[].autoDelete 在 MIG 中設定有狀態 IP 位址

是否為外部

statefulPolicy.preservedState.externalIPs[] 在 MIG 中設定有狀態 IP 位址

更新政策

最大突波固定

updatePolicy.maxSurge.fixed 可擴充的 Pod 數量上限

執行個體重新分配類型

updatePolicy.instanceRedistributionType 主動式執行個體重新分配

Max Surge Percent

updatePolicy.maxSurge.percent 可擴充的 Pod 數量上限

Max Unavailable Fixed

updatePolicy.maxUnavailable.fixed 無法使用的 Pod 數量上限

Max Unavailable Percent

updatePolicy.maxUnavailable.percent 無法使用的 Pod 數量上限

Min Ready Sec

updatePolicy.minReadySec 最短等待時間

替換方法

updatePolicy.replacementMethod 替換方法

Minimal Action

updatePolicy.minimalAction 最少動作

類型

updatePolicy.type 更新類型

允許的最具破壞性動作

updatePolicy.mostDisruptiveAllowedAction 允許的最具破壞性動作

健康狀態檢查名稱

name 健康狀態檢查總覽

健康狀態檢查

類型

type 健康狀態檢查類別、通訊協定和通訊埠

初始延遲秒數

autoHealingPolicies[].initialDelaySec 在 MIG 中設定自動修復政策

檢查間隔 (秒)

checkIntervalSec 在 MIG 中設定自動修復政策

良好健康狀態判定門檻

healthyThreshold 在 MIG 中設定自動修復政策

Timeout Sec

timeoutSec 如何建立良好的自動修復健康狀態檢查

不良健康狀態判定門檻

unhealthyThreshold 在 MIG 中設定自動修復政策

回應

httpsHealthCheck.response HTTP、HTTPS 和 HTTP/2 的成功標準

Proxy 標頭

httpsHealthCheck.proxyHeader 標頭

通訊埠

httpsHealthCheck.port 健康狀態檢查類別、通訊協定和通訊埠

要求

tcpHealthCheck.request HTTP、HTTPS 和 HTTP/2 的成功標準

要求路徑

httpsHealthCheck.requestPath HTTP、HTTPS 和 HTTP/2 的成功標準

主機

httpsHealthCheck.host 標頭

啟用記錄功能

logConfig.enable 健康狀態檢查記錄資訊

自動配置器名稱

name

如果留空,名稱會衍生自 hostname。

已啟用自動調度資源

為 MIG 建立自動配置器。

自動調度執行個體群組資源

等待期

autoscalingPolicy.coolDownPeriodSec 初始化期間

自動調度 CPU 資源

目標

autoscalingPolicy.cpuUtilization.utilizationTarget 根據 CPU 使用率調度資源

預測方法

autoscalingPolicy.cpuUtilization.predictiveMethod 預測式自動調度資源

自動調度資源指標

名稱

name 自動調度資源,將指標維持在目標值

目標

autoscalingPolicy.customMetricUtilizations[].utilizationTarget 自動調度資源,將指標維持在目標值

類型

autoscalingPolicy.customMetricUtilizations[].utilizationTargetType 自動調度資源,將指標維持在目標值

資源調度時間表

已停用

autoscalingPolicy.scalingSchedules[].disabled 依據時間表調度資源

Duration Sec

autoscalingPolicy.scalingSchedules[].durationSec 資源調度排程設定

副本數量下限

autoscalingPolicy.scalingSchedules[].minRequiredReplicas 資源調度排程設定

名稱

autoscalingPolicy.scalingSchedules[] 建立資源調度排程

排定郵件傳送時間

autoscalingPolicy.scalingSchedules[].schedule 資源調度排程設定

時區

autoscalingPolicy.scalingSchedules[].timeZone 資源調度排程設定

自動調度資源縮減控制項

固定副本

autoscalingPolicy.scaleInControl.maxScaledInReplicas.fixed 設定向內縮減控制項

副本百分比

autoscalingPolicy.scaleInControl.maxScaledInReplicas.percent 設定向內縮減控制項

Time Window Sec

autoscalingPolicy.scaleInControl.timeWindowSec 設定向內縮減控制項

具名通訊埠

名稱

namedPorts[].name 具名通訊埠

通訊埠

namedPorts[].port 具名通訊埠

等待執行個體

是否要等待所有執行個體建立/更新完畢,再傳回結果。如果設為 true,當作業失敗時,Terraform 會持續嘗試,直到逾時為止。

wait_for_instances

MIG 逾時

建立

建立 Terraform 執行個體逾時。

create

更新

Terraform 執行個體更新作業逾時。

update

刪除

Terraform 執行個體刪除作業逾時。

刪除

標籤

金鑰

allInstancesConfig.properties.labels 使用標籤整理資源

值

allInstancesConfig.properties.labels 使用標籤整理資源