當您創建Google容器引擎(GKE)羣集時,您可以指定要在羣集中使用哪些機器的數量和類型。彈性Google容器引擎羣集?
- 是否可以基於(例如)CPU負載自動縮放羣集計算機的數量?
- 如果這不被支持,是否有一個原因或是谷歌未來的工作?
當您創建Google容器引擎(GKE)羣集時,您可以指定要在羣集中使用哪些機器的數量和類型。彈性Google容器引擎羣集?
是的。要將自動配置器連接到現有GKE集羣:
查找羣集的實例組的名稱:
$ gcloud compute instance-groups managed list
NAME ZONE BASE_INSTANCE_NAME SIZE TARGET_SIZE INSTANCE_TEMPLATE AUTOSCALED
gke-buildlets-69898e2d-group us-central1-f gke-buildlets-69898e2d-node 1 1 gke-buildlets-69898e2d-1-1-3 yes
這裏我buildlets,其實例組名爲GKE集羣被命名爲gke-buildlets-6989e2d-group
啓用自動縮放。這個特殊的例子將規模上的70%的目標CPU使用率:
gcloud compute instance-groups managed set-autoscaling YOUR_INSTANCE_GROUP_NAME \
--zone=YOUR_INSTANCE_GROUP_ZONE \
--min-num-replicas=1 \
--max-num-replicas=8 \
--scale-based-on-cpu \
--target-cpu-utilization=.7
您還可以使用Google Cloud Deployment manager來創建GKE集羣,並創建/附加一個自動配置器的權利與它一起:
resources:
- name: buildlets
type: container.v1.cluster
properties:
zone: us-central1-f
cluster:
initial_node_count: 1
network: "default"
logging_service: "logging.googleapis.com"
monitoring_service: "monitoring.googleapis.com"
node_config:
machine_type: n1-standard-1
oauth_scopes:
- "https://www.googleapis.com/auth/cloud-platform"
master_auth:
username: admin
password: password123
- name: autoscaler
type: compute.v1.autoscaler
properties:
zone: us-central1-f
name: buildlets
target: "$(ref.buildlets.instanceGroupUrls[0])"
autoscalingPolicy:
minNumReplicas: 2
maxNumReplicas: 8
coolDownPeriodSec: 600
cpuUtilization:
utilizationTarget: .7`
可以手動resize a GKE cluster,是的。 AFAIK你需要自己完成'彈性'零件,例如基於Heapster輸出。
您絕對可以創建自動調整程序,以便自動選擇並設置在kubernetes羣集中運行的pod數量。因此,autoscaler將被創建並將使用複製控制器作爲參考,以根據需要自動增加或減少窗格數量。您可以在此Help Center article中獲得更多信息。
我指的是「自動縮放」,很抱歉沒有明確說明(我現在已經更新了這個問題)。感謝指向Heapster的指針。 – Johan
不用擔心,我明白這一點。這就是爲什麼我說汽車衡(或'彈性')是ATM不支持;) 欣賞upvote,如果你認爲它幫助... –
...並澄清(重新手動) –