我是k8的新手,正在探索有关生产级部署的更多信息。 我们有运行在(例如9000)节点端口中的py Django应用。当我尝试使用k8s服务ELB公开它们时, -通过分别运行80和443来工作;在AWS经典ELB中不支持80到443重定向。
然后我切换到aws alb入口控制器;我面临的问题是 -ALB不适用于节点端口,仅适用于http和https端口。
任何想法都将不胜感激!
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ABC
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/target-type: instance
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/subnets: 'subnet-1, subnet-2'
alb.ingress.kubernetes.io/security-group: sg-ABC
alb.ingress.kubernetes.io/healthcheck-path: "/"
alb.ingress.kubernetes.io/success-codes: "200"
labels:
name: ABC
spec:
rules:
- http:
paths:
- path: /
backend:
serviceName: ABC
servicePort: 80 ```
答案 0 :(得分:1)
谢谢@sulabh和@Fahri,它现在可以完美运行了。我再次浏览了文档,并更正了我的错误。
问题与ALb中的路由路径有关;
设置就像;
pod中的python-django-uwsgi应用程序,并将其作为服务在NodePort中公开,并使用AWS Ingress控制器进行ALB;
干杯!