[英]EKS cluster is not showing my an IP on the Ingress controller
我是 K8S 的新手,所以请保持温柔。 我有一个测试 hello world Flask 应用程序,我想将它部署在 EKS 上。 我正在使用下面的链接使用 AWS 负载均衡器 Controller 插件。 最后,当我检查部署时,它显示没有任何问题,如链接所述。 https://docs.aws.amazon.com/eks/latest/userguide/aws-load-balancer-controller.html
当我应用下面的三个文件时,它们都正确应用并且我看到了 pod,但是在入口处我没有看到外部 IP 地址并且无法访问我的 Flask 应用程序。
我的目标是让 AWS 创建一个虚拟的 DNS 名称,然后我可以将我的公共 DNS 名称作为 CNAM 条目指向它。 此外,Ingress 应该在端口 80 中,然后应该在内部转发到 Flask 应用程序的端口 5000。
我错过了什么? 有人可以指出我正确的方向吗?
入口.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: "flask-test-ingress"
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 80}, {"HTTPS": 443}]'
labels:
app: hello-world
spec:
rules:
- host: testing.somesite.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: "hello-world-service"
port:
number: 80
部署.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: hello-world
spec:
selector:
matchLabels:
app: hello-world
replicas: 2
template:
metadata:
labels:
app: hello-world
spec:
containers:
- name: hello-world
image: gitlab.privaterepo.com:5050/jmartinez/flask_helloworld:v4
ports:
- containerPort: 5000
protocol: TCP
imagePullSecrets:
- name: regcred
服务.yaml
apiVersion: v1
kind: Service
metadata:
name: hello-world-service
spec:
selector:
app: hello-world
type: NodePort
ports:
- protocol: "TCP"
port: 80
targetPort: 5000
nodePort: 30000
终于让它工作了。 当我意识到 ALB 不是自动创建时,我研究并找到了解决方案。 我必须从注释中删除 ingress.class 值并删除主机。 所以现在我的入口看起来像下面这样。 删除旧的入口并重新应用这个入口后,我等了大约 10 分钟,我的 hello world 应用程序现在正在运行。
入口.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: "flask-test-ingress"
annotations:
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: ip
labels:
app: hello-world
spec:
ingressClassName: alb
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: "hello-world-service"
port:
number: 80
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.