Amazon web services 如何为kops在AWS上安装的k8s进行群集自动缩放?
按照本指南在AWS上创建群集自动缩放器: 我已将Amazon web services 如何为kops在AWS上安装的k8s进行群集自动缩放?,amazon-web-services,kubernetes,cluster-computing,autoscaling,kops,Amazon Web Services,Kubernetes,Cluster Computing,Autoscaling,Kops,按照本指南在AWS上创建群集自动缩放器: 我已将k8s-worker-asg-1更改为我当前的asg名称,该名称由kops创建。 但是当运行kubectl apply-f deployment.yaml并检查podskubectl get pods-n=kube system时,返回: NAME READY STATUS RE
k8s-worker-asg-1
更改为我当前的asg名称,该名称由kops
创建。
但是当运行kubectl apply-f deployment.yaml
并检查podskubectl get pods-n=kube system
时,返回:
NAME READY STATUS RESTARTS AGE
cluster-autoscaler-75ccf5b9c9-lhts8 0/1 CrashLoopBackOff 6 8m
failed to open log file "/var/log/pods/8edc3073-dc0b-11e7-a6e5-06361ac15b44/cluster-autoscaler_4.log": open /var/log/pods/8edc3073-dc0b-11e7-a6e5-06361ac15b44/cluster-autoscaler_4.log: no such file or directory
the server doesn't have a resource type "cluster-autoscaler-75ccf5b9c9-lhts8"
我试图查看其日志kubectl logs cluster-autoscaler-75ccf5b9c9-lhts8-n=kube system
,返回:
NAME READY STATUS RESTARTS AGE
cluster-autoscaler-75ccf5b9c9-lhts8 0/1 CrashLoopBackOff 6 8m
failed to open log file "/var/log/pods/8edc3073-dc0b-11e7-a6e5-06361ac15b44/cluster-autoscaler_4.log": open /var/log/pods/8edc3073-dc0b-11e7-a6e5-06361ac15b44/cluster-autoscaler_4.log: no such file or directory
the server doesn't have a resource type "cluster-autoscaler-75ccf5b9c9-lhts8"
我还试图描述podkubectl descripe cluster-autoscaler-75ccf5b9c9-lhts8-n=kube系统,返回:
NAME READY STATUS RESTARTS AGE
cluster-autoscaler-75ccf5b9c9-lhts8 0/1 CrashLoopBackOff 6 8m
failed to open log file "/var/log/pods/8edc3073-dc0b-11e7-a6e5-06361ac15b44/cluster-autoscaler_4.log": open /var/log/pods/8edc3073-dc0b-11e7-a6e5-06361ac15b44/cluster-autoscaler_4.log: no such file or directory
the server doesn't have a resource type "cluster-autoscaler-75ccf5b9c9-lhts8"
那么如何调试这个问题呢?原因是什么?它需要存储在AWS上吗?我还没有在AWS上创建任何存储
顺便说一下,我还有一个问题。如果使用kops
在AWS上创建k8s群集,则更改节点大小的maxSize
,minSize
:
$ kops edit ig nodes
> maxSize: 2
> minSize: 2
$ kops update cluster ${CLUSTER_FULL_NAME} --yes
到目前为止,AWS上的自动缩放组已成为Min:2
Max:4
是否需要再次运行此部署?
kops是否不能同时更改ASG和k8s群集?为什么还要执行另一个步骤将群集自动缩放器设置为kube系统
命名空间
NAME READY STATUS RESTARTS AGE
cluster-autoscaler-75ccf5b9c9-lhts8 0/1 CrashLoopBackOff 6 8m
我从K8s存储库中尝试了这个官方解决方案。您还需要添加其他IAM策略以访问AWS自动缩放资源。
然后,修改中的脚本以在K8s群集上安装Cluster Autoscaler。请注意,您可能希望更改AWS\u区域
和GROUP\u名称
,并且可能希望更改MIN\u节点
和MAX\u节点
。我为我工作
spec:
api:
loadBalancer:
type: Public
authorization:
rbac: {}
additionalPolicies:
node: |
[
{
"Effect": "Allow",
"Action": [
"autoscaling:DescribeAutoScalingGroups",
"autoscaling:DescribeAutoScalingInstances",
"autoscaling:SetDesiredCapacity",
"autoscaling:TerminateInstanceInAutoScalingGroup"
],
"Resource": ["*"]
}
]
在descripe命令中,您缺少一个“po”kubectl description cluster-autoscaler-75ccf5b9c9-lhts8-n=kube系统
变成kubectl description po cluster-autoscaler-75ccf5b9c9-lhts8-n=kube系统
问题是cert
的名称与系统不同!