【发布时间】:2021-11-20 20:51:44
【问题描述】:
我有一个需要通过我的网络应用代理的网站。
传统上,我们通过带有代理指令的 apache 代理来完成它。
代理还重写了一些标头并添加了一些新标头。
现在该应用程序已迁移到 OpenShift (Kubernetes),我正在尝试避免使用 apache 部署另一个 pod。
我可以通过 K8 入口执行此标头重写和代理吗?还是路由器?
我尝试过这种方法,但没有成功。
我也不知道如何获取 OpenShift Ingress 日志,那里似乎没有发生任何事情。
我尝试使用外部名称,但它不起作用:
kind: Service
metadata:
name: es3
spec:
externalName: google.com
type: ExternalName
---
kind: Route
apiVersion: route.openshift.io/v1
spec:
host: host.my-cluster-url.net
to:
kind: Service
name: es3
port:
targetPort: es3
我也尝试过使用 Endpoints ,结果相同
apiVersion: v1
kind: Service
metadata:
name: mysvc
spec:
ports:
- name: app
port: 80
protocol: TCP
targetPort: 80
clusterIP: None
type: ClusterIP
---
apiVersion: v1
kind: Endpoints
metadata:
name: mysvc
subsets:
- addresses:
- ip: my.ip.address
ports:
- name: app
port: 80
protocol: TCP
【问题讨论】:
-
不起作用?你的意思是? Conf 看起来不错。也许后端站点上有一些 http 到 https 重定向,尝试在您的 Route 中更改 tls 终止
标签: kubernetes openshift kubernetes-ingress