gpt4 book ai didi

kubernetes - Kubernetes服务指向外部资源

转载 作者:行者123 更新时间:2023-12-02 12:21:46 24 4
gpt4 key购买 nike

我们有一个现有的网站,比方说example.com,这是where.my.server.really.is.com的CNAME。

我们现在正在使用Kubernetes开发新服务。我们的第一个服务/login已准备好部署。使用模拟HTML服务器,我已经能够部署两个Pod,它们具有分别映射到example.comexample.com/login的单独服务。

我想做的是摆脱我的模拟HTML服务器,并在集群内部提供服务,该服务指向服务器外部的完整网站。然后,我可以将example.com的DNS更改为指向我们的kubernetes集群,人们仍然会从where.my.server.really.is.com获得主站点。

我们正在使用Traefik进行入口,这些是我对网站配置进行的更改:

---
kind: Service
apiVersion: v1
metadata:
name: wordpress
spec:
type: ExternalName
externalName: where.my.server.really.is.com

---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: wordpress
annotations:
kubernetes.io/ingress.class: traefik
spec:
backend:
serviceName: wordpress
servicePort: 80
rules:
- host: example.com
http:
paths:
- backend:
serviceName: wordpress
servicePort: 80

不幸的是,当我访问 example.com时,而不是得到 where.my.server.really.is.com时,我得到了一个503,其内容为“服务不可用”。 example.com/login正常工作

我错过了什么?

最佳答案

正在traefik documentation on using ExternalName

When specifying an ExternalName, Træfik will forward requests to the given host accordingly and use HTTPS when the Service port matches 443.

This still requires setting up a proper port mapping on the Service from the Ingress port to the (external) Service port.


我相信您缺少该服务的 ports配置。就像是
apiVersion: v1
kind: Service
metadata:
name: wordpress
spec:
ports:
- name: http
port: 80
type: ExternalName
externalName: where.my.server.really.is.com
您可以看到 a full example in the docs

关于kubernetes - Kubernetes服务指向外部资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47911431/

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