gpt4 book ai didi

kubernetes - 我可以在不设置负载均衡器的情况下将k8s入口服务与外部IP一起使用吗

转载 作者:行者123 更新时间:2023-12-02 12:16:59 25 4
gpt4 key购买 nike

几个月前,我开始使用kubernetes,为不同的后端应用程序创建服务和副本集。

现在,我想使用入口服务通过我的域名从外部访问我的差异应用程序。因为它还没有投入生产,我只在节点上使用,所以我不想使用loadbalancer。

是否可以通过NodePort设置Service并将其附加到Ingress而不使用loadbalancer?

这是我的配置:

kind: Service
metadata:
name: nginx-replicaset-service
labels:
app: nginx-demo
spec:
externalIPs:
- XXX.XXX.XXX.XXX
selector:
app: nginx-replica
type: NodePort
ports:
- name: http
port: 80
kind: Ingress
metadata:
name: my-ingress
annotations:
kubernetes.io/ingress.class: nginx
spec:
rules:
- host: www.mydomain.com
http:
paths:
- path: /
backend:
serviceName: nginx-replicaset-service
servicePort: 80
- host: test.mydomain.com
http:
paths:
- path: /test
backend:
serviceName: other-service
servicePort: 80

当我检查集群上的入口信息时,我有以下内容:
NAME         HOSTS                                   ADDRESS   PORTS   AGE
my-ingress www.mydomain.com,test.mydomain.com 80 4d22h

地址始终为空

最佳答案

如果您的集群在GCP或GKE上运行,则可以

1)创建一个全局IP地址

gcloud compute addresses create ingress-static-ip --global

2)在Ingress配置上设置 kubernetes.io/ingress.global-static-ip-name 批注
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: my-ingress
annotations:
kubernetes.io/ingress.global-static-ip-name: ingress-static-ip
labels:
app: nginx-replica

3)和服务
apiVersion: v1
kind: Service
metadata:
name: nginx-replicaset-service
labels:
app: nginx-demo
spec:
selector:
app: nginx-replica
type: NodePort
ports:
- name: http
port: 80

https://cloud.google.com/kubernetes-engine/docs/tutorials/configuring-domain-name-static-ip

关于kubernetes - 我可以在不设置负载均衡器的情况下将k8s入口服务与外部IP一起使用吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55445679/

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