问题描述
我正在GCP上开发Cloud Run Anthos,并在GKE集群上托管。
我跟随这个qwiklabs研究Cloud Run Anthos,
动手实验中的示例。他们使用以下命令检查服务是否正常工作。
curl -H Host : <URL> <IP_CLUSTER>
我不知道所使用的现实。没有人在每项要求正常运行的请求中添加 Host 。
我的问题是,有什么可能解决这个问题?我只想通过浏览器或任何应用程序使用调用请求,但不确定是否可以?
我到达了有关Istio入口的资源文档,qwiklab的示例也使用了它。
有关 VirtualSerivce 的信息,在构建此代理之前,我好像有一个 Istio Ingress 。
这是解决问题的正确方法吗?
https://istio.io/latest/docs/reference/config/networking/virtual-service/#HTTPRewrite
解决方法
您可以在knative名称空间中更改config-domain配置映射。您可以看到这样的配置
kubectl describe configmap config-domain --namespace knative-serving
然后您可以像这样更新它
- 在文件
config-domain.yaml
中创建配置文件(例如)
apiVersion: v1
kind: ConfigMap
metadata:
name: config-domain
namespace: knative-serving
data:
gblaquiere.dev: ""
- 应用配置
kubectl apply -f config-domain.yaml
使用新域名,将您的DNS注册商配置为将您的域名与负载均衡器的外部IP匹配,您的网站将在每个请求中显示正确的主机。
curl -H Host ...是欺骗Istio控制器并对其说“是的,我来自那里”的作弊手段。如果您确实来自那里(您自己的域名),则无需作弊!