Bak*_*vic 6 kubernetes kubernetes-ingress aws-alb
我正在尝试为这个看起来很常见的问题找到解决方案。
这适用于在 8088 端口上公开一项服务:
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: myingress
namespace: myns
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/healthcheck-path: /ping
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/tags: Environment=dev,Team=test
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 8088}]'
spec:
rules:
- host: myhost
http:
paths:
- path: /*
backend:
serviceName: firstservice
servicePort: 8088
Run Code Online (Sandbox Code Playgroud)
如何使用 ONE Ingress 为两种服务实现相同的目标?
提前致谢。
最后,为了解决这个问题,我使用了 ALB 入口控制器组功能,目前处于 alpha 状态:https : //github.com/kubernetes-sigs/aws-alb-ingress-controller/issues/914
这是我的入口资源现在的样子:
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: myingress_1
namespace: myns
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/tags: Environment=dev,Team=test
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/group.name: mygroup
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 8088}]'
spec:
rules:
- host: <HOST>
http:
paths:
- path: /*
backend:
serviceName: myservice
servicePort: 8088
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: myingress_2
namespace: myns
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/tags: Environment=dev,Team=test
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/group.name: mygroup
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 60004}]'
spec:
rules:
- host: <HOST>
http:
paths:
- path: /*
backend:
serviceName: myservice
servicePort: 60004
Run Code Online (Sandbox Code Playgroud)
关键在哪里
alb.ingress.kubernetes.io/group.name: mygroup
Run Code Online (Sandbox Code Playgroud)
连接这两个入口资源。
因此,我最终得到以下结果:
| 归档时间: |
|
| 查看次数: |
3421 次 |
| 最近记录: |