Amazon web services Kops/Kubernetes实例组自动缩放
我有一个Kubernetes群集在AWS中运行。我使用Amazon web services Kops/Kubernetes实例组自动缩放,amazon-web-services,kubernetes,autoscaling,kubectl,kops,Amazon Web Services,Kubernetes,Autoscaling,Kubectl,Kops,我有一个Kubernetes群集在AWS中运行。我使用kops设置并启动集群 我在nodes实例组中定义了最小和最大节点数: 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:
kops
设置并启动集群
我在nodes实例组中定义了最小和最大节点数:
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个节点正在运行。在集群中进行某些部署后,由于没有具有足够资源的可用节点,因此无法启动吊舱/容器
所以我想,当出现资源问题时,k8s会自动扩展集群并启动更多节点。因为最大节点数为7
我是否错过了任何配置
更新
正如@kichik提到的,autoscaler插件已经安装。然而,它不起作用。Kube dns也经常因为资源问题而重新启动 有人打开了一个,提示您必须安装。检查它是否已经安装了:
kubectl get deployments --namespace kube-system | grep autoscaler
如果不是,您可以使用以下脚本安装它。确保AWS\u区域
、GROUP\u名称
、MIN\u节点
和MAX\u节点
具有正确的值
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 "s@{{CLOUD_PROVIDER}}@${CLOUD_PROVIDER}@g" "${addon}"
sed -i -e "s@{{IMAGE}}@${IMAGE}@g" "${addon}"
sed -i -e "s@{{MIN_NODES}}@${MIN_NODES}@g" "${addon}"
sed -i -e "s@{{MAX_NODES}}@${MAX_NODES}@g" "${addon}"
sed -i -e "s@{{GROUP_NAME}}@${GROUP_NAME}@g" "${addon}"
sed -i -e "s@{{AWS_REGION}}@${AWS_REGION}@g" "${addon}"
sed -i -e "s@{{SSL_CERT_PATH}}@${SSL_CERT_PATH}@g" "${addon}"
kubectl apply -f ${addon}
也许它没有正确配置?是否尝试转储部署并验证?