Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何为kops在AWS上安装的k8s进行群集自动缩放?_Amazon Web Services_Kubernetes_Cluster Computing_Autoscaling_Kops - Fatal编程技术网

Amazon web services 如何为kops在AWS上安装的k8s进行群集自动缩放?

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

按照本指南在AWS上创建群集自动缩放器:

我已将
k8s-worker-asg-1
更改为我当前的asg名称,该名称由
kops
创建。 但是当运行
kubectl apply-f deployment.yaml
并检查pods
kubectl 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"
我还试图描述pod
kubectl 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
的名称与系统不同!