2017-07-14 66 views
1

我有一個在AWS中運行的Kubernetes集羣。我使用kops來設置和啓動羣集。Kops/Kuberntes實例組自動縮放

我所定義的節點實例組中的節點的最小和最大數目:

apiVersion: kops/v1alpha2 
kind: InstanceGroup 
metadata: 
    creationTimestamp: 2017-07-03T15:37:59Z 
    labels: 
    kops.k8s.io/cluster: k8s.tst.test-cluster.com 
    name: nodes 
spec: 
    image: kope.io/k8s-1.6-debian-jessie-amd64-hvm-ebs-2017-05-02 
    machineType: t2.large 
    maxSize: 7 
    minSize: 5 
    role: Node 
    subnets: 
    - eu-central-1b 

目前羣集具有運行5個節點。在羣集中進行了一些部署之後,pods /容器無法啓動,因爲沒有可用的節點具有足夠的資源。

所以我認爲,當有資源問題時,k8s會自動擴展羣集並啓動更多節點。因爲最大節點數爲7.

我錯過任何配置嗎?

UPDATE

正如@kichik提到的,自動配置器插件已安裝。儘管如此,它不起作用。由於資源問題,Kube-dns也經常重啓。

回答

1

有人打開ticket for this on GitHub,它建議你必須安裝autoscaler addon。檢查它是否已安裝:

kubectl get deployments --namespace kube-system | grep autoscaler 

如果不是,則可以使用以下腳本進行安裝。確保AWS_REGION,GROUP_NAME,MIN_NODESMAX_NODES具有正確的值。

CLOUD_PROVIDER=aws 
IMAGE=gcr.io/google_containers/cluster-autoscaler:v0.5.4 
MIN_NODES=5 
MAX_NODES=7 
AWS_REGION=us-east-1 
GROUP_NAME="nodes.k8s.example.com" 
SSL_CERT_PATH="/etc/ssl/certs/ca-certificates.crt" # (/etc/ssl/certs for gce) 

addon=cluster-autoscaler.yml 
wget -O ${addon} https://raw.githubusercontent.com/kubernetes/kops/master/addons/cluster-autoscaler/v1.6.0.yaml 

sed -i -e "[email protected]{{CLOUD_PROVIDER}}@${CLOUD_PROVIDER}@g" "${addon}" 
sed -i -e "[email protected]{{IMAGE}}@${IMAGE}@g" "${addon}" 
sed -i -e "[email protected]{{MIN_NODES}}@${MIN_NODES}@g" "${addon}" 
sed -i -e "[email protected]{{MAX_NODES}}@${MAX_NODES}@g" "${addon}" 
sed -i -e "[email protected]{{GROUP_NAME}}@${GROUP_NAME}@g" "${addon}" 
sed -i -e "[email protected]{{AWS_REGION}}@${AWS_REGION}@g" "${addon}" 
sed -i -e "[email protected]{{SSL_CERT_PATH}}@${SSL_CERT_PATH}@g" "${addon}" 

kubectl apply -f ${addon} 
+0

我不知道,但插件已安裝。 :/ – CPA

+0

也許它沒有正確配置?你是否嘗試拋棄部署和驗證? – kichik

相關問題