gpt4 book ai didi

kubernetes - 避免在服务中保留不必要的NodePort

转载 作者:行者123 更新时间:2023-12-02 11:40:41 26 4
gpt4 key购买 nike

我有这个NodePort服务,它公开了两个端口:

kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
type: NodePort
selector:
app: my-service
ports:
- name: nginx-public
port: 443
targetPort: nginx-public
- name: metrics
port: 9200
targetPort: metrics
nginx-public端口必须在节点上公开,因为我将其与aws-alb-ingress-controller一起使用。

但是, metrics的另一个端口仅在内部使用(从群集内部使用)-由prometheus-operator拾取。我需要将其记录在服务规范中,但我不想同时在Node上保留另一个端口。

有没有办法告诉Kubernetes仅为该服务保留一个节点端口?

我尝试在端口规格中指定 nodePort: null,如下所示:
  ports:
- name: nginx-public
port: 443
targetPort: nginx-public
- name: metrics
port: 9200
targetPort: metrics
nodePort: null

但是根据 describe service的说法,这似乎与完全省略 nodePort的效果相同,并且仍然为 metrics保留了随机端口。

最佳答案

您可以定义两个服务,一个选择nginx-public,另一个选择指标。用两个
pods 上的不同标签。

关于kubernetes - 避免在服务中保留不必要的NodePort,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51703237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com