标签: amazon-eks

kubectl logs -f 得到“授权错误”

我最近使用 eksctl 在 EKS 上创建了一个集群。kubectl logs -f mypod-0遇到授权错误:

Error from server (InternalError): Internal error occurred: Authorization error (user=kube-apiserver-kubelet-client, verb=get, resource=nodes, subresource=proxy) 任何建议和见解表示赞赏

authorization kubernetes amazon-eks

12
推荐指数
1
解决办法
1万
查看次数

Terraform AWS EKS ALB Kubernetes Ingress 不会创建侦听器或目标组

我正在尝试使用 Terraform 资源创建一个带有 ALB 入口的 AWS EKS 集群。

该文档表明入口将自动创建一个带有关联侦听器和目标组的负载均衡器。

Kubernetes Ingress 创建 ALB 负载均衡器、安全组和规则,但不创建目标组或侦听器。我曾尝试使用网关或应用程序子网,但没有任何区别。我尝试设置安全组,但 ALB 设置并使用了它自己的自我管理的安全组。

我依赖本指南

ALB 的卷曲让我感到

无法连接到 de59ecbf-default-mainingre-8687-1051686593.ap-southeast-1.elb.amazonaws.com 端口 80:连接被拒绝

我分别创建了 IAM 角色和 ACM 证书,因为 AWS 对这些有配额限制。我的 EKS 集群和节点角色是标准的,节点角色附加了最新的策略。

我曾经kubectl单独应用 kubernetes 入口,但结果相同。它创建 ALB 和一个安全组,其中包含端口规则,但没有目标组或侦听器。

当我将集群端点粘贴aws eks describe-cluster --name my-tf-eks-cluster --query "cluster.endpoint"到浏览器中时,我得到以下信息:

{ "kind": "Status", "apiVersion": "v1", "metadata": { }, "status": "Failure", "message": "forbidden: User "system:anonymous" cannot get path "/ "", "reason": "Forbidden", "details": { }, "code": 403 }

此外,入口没有 IP 地址。 …

terraform kubernetes-ingress terraform-provider-aws amazon-eks

12
推荐指数
1
解决办法
2930
查看次数

Switch terraform 0.12.6 to 0.13.0 给了我 provider["registry.terraform.io/-/null"] 是必需的,但它已被删除

我在远程 terraform-cloud 中管理状态

我已经下载并安装了最新的 terraform 0.13 CLI

然后我删除了.terraform

然后我跑terraform init了,没有错误

然后我做了

? terraform apply -var-file env.auto.tfvars

Error: Provider configuration not present

To work with
module.kubernetes.module.eks-cluster.data.null_data_source.node_groups[0] its
original provider configuration at provider["registry.terraform.io/-/null"] is
required, but it has been removed. This occurs when a provider configuration
is removed while objects created by that provider still exist in the state.
Re-add the provider configuration to destroy
module.kubernetes.module.eks-cluster.data.null_data_source.node_groups[0],
after which you can remove the provider configuration again.

Releasing state lock. …
Run Code Online (Sandbox Code Playgroud)

terraform terraform-provider-aws amazon-eks

12
推荐指数
3
解决办法
7379
查看次数

如何在EKS上获取k8s主日志?

我正在寻找这些日志:

/var/log/kube-apiserver.log
/var/log/kube-scheduler.log
/var/log/kube-controller-manager.log
Run Code Online (Sandbox Code Playgroud)

在EKS中,用户无权访问控制平面,无法直接查看这些文件.

我知道AWS宣布的CloudTrail集成.但它显示的事件不是来自k8s API,而是来自事件的AWS EKS API CreateCluster.还有一个问题是如何获取调度程序和控制器管理器日志.

在pods列表中没有用于api和控制器的pod.

$ kubectl get po --all-namespaces
NAMESPACE     NAME                             READY     STATUS             RESTARTS   AGE
kube-system   aws-node-9f4lm                   1/1       Running            0          2h
kube-system   aws-node-wj2cg                   1/1       Running            0          2h
kube-system   kube-dns-64b69465b4-4gw6n        3/3       Running            0          2h
kube-system   kube-proxy-7mt7l                 1/1       Running            0          2h
kube-system   kube-proxy-vflzv                 1/1       Running            0          2h
Run Code Online (Sandbox Code Playgroud)

节点列表中没有主节点

$ kubectl get nodes
NAME                        STATUS    ROLES     AGE       VERSION
ip-10-0-0-92.ec2.internal   Ready     <none>    9m        v1.10.3
ip-10-0-1-63.ec2.internal   Ready     <none>    9m        v1.10.3
Run Code Online (Sandbox Code Playgroud)

amazon-web-services kubernetes amazon-eks

11
推荐指数
1
解决办法
4800
查看次数

Kubernetes Pod 终止 - 退出代码 137

我需要一些关于 k8s 1.14 和在其上运行 gitlab 管道的问题的建议。许多作业都抛出退出代码 137 错误,我发现这意味着容器突然终止。


集群信息:

Kubernetes 版本:1.14 正在使用的云:AWS EKS 节点:C5.4xLarge


深入挖掘后,我发现了以下日志:

**kubelet: I0114 03:37:08.639450**  4721 image_gc_manager.go:300] [imageGCManager]: Disk usage on image filesystem is at 95% which is over the high threshold (85%). Trying to free 3022784921 bytes down to the low threshold (80%).

**kubelet: E0114 03:37:08.653132**  4721 kubelet.go:1282] Image garbage collection failed once. Stats initialization may not have completed yet: failed to garbage collect required amount of images. Wanted to free 3022784921 bytes, but freed 0 …
Run Code Online (Sandbox Code Playgroud)

linux kubernetes kubernetes-pod amazon-eks

11
推荐指数
5
解决办法
2万
查看次数

EKS:找不到任何合适的子网来创建 ELB

我正在尝试使用loadBalancer类型服务向外界公开服务。

为此,我遵循了这个文档

https://aws.amazon.com/premiumsupport/knowledge-center/eks-kubernetes-services-cluster/

我的loadbalancer.yaml看起来像这样

apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  type: LoadBalancer
  selector:
    app: nginx
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
Run Code Online (Sandbox Code Playgroud)

但是负载平衡器没有按预期创建我收到以下错误

Warning  SyncLoadBalancerFailed  8s (x3 over 23s)  service-controller  Error syncing load balancer: failed to ensure load balancer: could not find any suitable subnets for creating the ELB
Run Code Online (Sandbox Code Playgroud)

似乎是因为子网标签中的一些问题需要解决,但我的子网中有所需的标签

kubernetes.io/cluster/<cluster-name>. owned  
kubernetes.io/role/elb   1
Run Code Online (Sandbox Code Playgroud)

但是,我仍然收到错误 could not find any suitable subnets for creating the ELB

amazon-web-services kubernetes aws-load-balancer amazon-eks

11
推荐指数
2
解决办法
1万
查看次数

Kubernetes:无法将 int64 转换为字符串。Kubernetes 无法解释 helmchart values.yaml 文件中的整数值

我有一个values.yaml文件,其中我已经给出了spring_datasource_hikari_maximum_pool_size: "10"

我已deployment yaml将此值用作

 - name: SPRING_DATASOURCE_HIKARI_MAXIMUM-POOL-SIZE
    value: {{ .Values.spring_datasource_hikari_maximum_pool_size }}
Run Code Online (Sandbox Code Playgroud)

但是,当在deployment.yaml 文件内部使用时,它会失败并出现以下错误。


Deploy failed: The request is invalid: patch: Invalid value: "map[metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":
{
(helm values etc)
`{"name":"SPRING_DATASOURCE_HIKARI_MAXIMUM-POOL-SIZE","value":10}]` **(this is the incorrect value)** 
}
cannot convert int64 to string

Run Code Online (Sandbox Code Playgroud)

values.yaml 在文件中使用文件中的整数值的正确格式是什么deployment.yaml

我还尝试了多种带引号“”的组合,但似乎没有任何效果。

感谢任何帮助,提前致谢。

kubernetes spinnaker kubectl kubernetes-helm amazon-eks

11
推荐指数
1
解决办法
2万
查看次数

与服务器localhost:8080的连接被拒绝-您是否指定了正确的主机或端口?

当我尝试测试kubectl的配置时

kubectl get svc 
Run Code Online (Sandbox Code Playgroud)

我收到此错误:服务器没有资源类型“ svc”

当我尝试这个命令

kubectl get services 
Run Code Online (Sandbox Code Playgroud)

我收到错误消息:与服务器localhost:8080的连接被拒绝-您是否指定了正确的主机或端口?

我正在按照本用户指南在Mac上部署kubernetes应用程序

https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html#eks-create-cluster

Admins-MacBook-Pro:~ Harshin$ kubectl version --short --client
Run Code Online (Sandbox Code Playgroud)

客户端版本:v1.10.3

请帮我!!

kubernetes kubectl amazon-eks

10
推荐指数
4
解决办法
1万
查看次数

在私有子网中运行时,AWS EKS上的DNS问题

我在VPC中设置了EKS群集.工作节点在私有子网中启动.我可以成功部署pod和服务.

但是,我无法从pod中执行DNS解析.(它在容器外部的工作节点上工作正常.)

使用https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/进行故障排除会导致nslookup出现以下情况(大约一分钟后超时):

服务器:172.20.0.10地址1:172.20.0.10

nslookup:无法解析'kubernetes.default'

当我在一个全公开的VPC中启动集群时,我没有这个问题.我是否缺少私有子网内DNS解析的必要步骤?

非常感谢,丹尼尔

amazon-vpc kubernetes amazon-eks

10
推荐指数
2
解决办法
6304
查看次数

如何在 AWS ALB 入口控制器中重写目标 url?

在经典的 Kubernetes Nginx 入口中,我知道可以通过应用此注释基于特定的正则表达式重写目标 url nginx.ingress.kubernetes.io/rewrite-target: /$1

但是此注释在 AWS ALB 入口中不起作用。有谁知道是否可以使用这种入口进行重写工作?

url-rewriting kubernetes kubernetes-ingress amazon-eks aws-application-load-balancer

10
推荐指数
1
解决办法
5880
查看次数