在GKE clsuter中,我不能在内部http loadbalancer配置中使用主机名调用。这是生成的入口yaml文件。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
ingress.kubernetes.io/backends: '{"k8s1-d21262da-default-hellorest-backend-service-80-698951b3":"HEALTHY","k8s1-d21262da-kube-system-default-http-backend-80-43d0837a":"HEALTHY"}'
ingress.kubernetes.io/forwarding-rule: k8s2-fr-h23zc63d-default-hellorest-ingress-i-jxaunyik
ingress.kubernetes.io/target-proxy: k8s2-tp-h23zc63d-default-hellorest-ingress-i-jxaunyik
ingress.kubernetes.io/url-map: k8s2-um-h23zc63d-default-hellorest-ingress-i-jxaunyik
kubernetes.io/ingress.class: gce-internal
creationTimestamp: "2021-04-08T09:29:50Z"
finalizers:
- networking.gke.io/ingress-finalizer-V2
generation: 1
managedFields:
- apiVersion: extensions/v1beta1
fieldsType: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
.: {}
f:kubernetes.io/ingress.class: {}
f:spec:
f:rules: {}
manager: GoogleCloudConsole
operation: Update
time: "2021-04-08T09:29:50Z"
- apiVersion: networking.k8s.io/v1beta1
fieldsType: FieldsV1
fieldsV1:
f:metadata:
f:annotations:
f:ingress.kubernetes.io/backends: {}
f:ingress.kubernetes.io/forwarding-rule: {}
f:ingress.kubernetes.io/target-proxy: {}
f:ingress.kubernetes.io/url-map: {}
f:finalizers:
.: {}
v:"networking.gke.io/ingress-finalizer-V2": {}
f:status:
f:loadBalancer:
f:ingress: {}
manager: glbc
operation: Update
time: "2021-04-08T09:30:44Z"
name: hellorest-ingress-i
namespace: default
resourceVersion: "39841"
selfLink: /apis/extensions/v1beta1/namespaces/default/ingresses/hellorest-ingress-i
uid: 728a4e1b-8435-4b1e-a378-82665e7a8a6c
spec:
rules:
- host: hello
http:
paths:
- backend:
serviceName: hellorest-backend-service
servicePort: 80
pathType: ImplementationSpecific
status:
loadBalancer:
ingress:
- ip: 10.178.100.7
# success with ip
$ curl http://10.224.13.150/hello
I am hellorest-backend-67fddc48f9-5hnmg(10.220.0.7)
# cannot resolve host
$ curl http://hello/hello
curl: (6) Couldn't resolve host 'hello'
GKE集群
:区域/私有集群/1.18.16-gke.302/2节点/控制平面172.16.0.0/28,禁用全局访问/启用http负载平衡部署的服务
:hellorest-backend-service/3 pods/80到8080 tcp转发/默认命名空间/nodeport入口服务
:hellorest-ingress-i/internal http(s)lb/默认名称空间/10.178.100.7/运行状况检查没有问题正如在注释中已经提到的,为了使其工作,您需要有一个带有记录a:hello
的DNS私有区域。这可以通过使用云控制台来完成。谷歌云私有DNS专区更详细地解释了这一点:
谷歌云DNS现在可以提供:
>
创建专用DNS区域,为您的专用网络资源(VM、负载均衡器等)提供DNS名称解析。
使用变量重写时 当使用标准Kubernetes时,我可以使用作为冲突解决程序: 但Openshift并没有提供这一点。我已经尝试使用容器的,它只是我集群中运行DNS服务器的节点之一,但它仍然无法解析。 最奇怪的部分是从容器终端内部使用中的名称服务器,它工作正常。 有没有一个等效于我可以使用的开放移位中的库伯内特斯DNS主机名,或者其他解决方案来解决这个问题?
问题内容: 我在Ubuntu操作系统上使用了2个容器:Gitlab-ce和gitlab-runner 容器名称是:和 我通过访问我的gitlab应用 我使用以下命令成功注册了跑步者: 然后,当我开始工作时,出现以下错误消息: 在这两个容器中,我都可以访问主机名。我认为问题来自无法解决主机的高山图像。 我该如何解决? 谢谢 编辑1 docker-compose.yml 编辑2 docker-comp
问题内容: 我正在尝试在我的机器(Ubuntu)上的docker上做一个詹金斯。 我必须访问我公司中的git repo。但是在詹金斯,我得到这个错误: 无法解析主机:gogs.mycompany.com 我认为这是DNS错误,因此我尝试像这样启动docker(使用–dns和–dns-search) sudo docker run -p 8080:8080 -p 50000:50000 -v / h
我的android应用程序中的Amazon analytics正在尝试连接到此主机“mobileanalytics.eu-west-1.amazonaws.com”,但无法解决此问题,导致以下错误: I/AmazonHttpClient:无法执行HTTP请求:无法解析主机“mobileanalytics.eu-west-1.amazonaws.com”:没有与主机名10-12 14:05:34.8
我已经检查了关于同一问题的大多数主题,但我找不到解决方案。 我的应用程序使用连接到一个服务,当我使用托管该服务的机器的IP地址时,它工作正常。但是,当我用主机名替换它时,它无法连接。我使用的连接方法非常标准: 例外情况是: JAVA网。UnknownHostException:无法解析主机“myHostname”:没有与主机名关联的地址 myHostname是我的实际主机名。 当我在我的电脑上使用
问题内容: 我正在尝试使用CURL来获取页面的内容。正在执行获取的页面是https,并且正在尝试获取的页面也是https。我尝试的所有设置都出现错误“无法解析主机”。 有任何想法吗? 问题答案: 也许是DNS问题? 根据以下代码尝试您的网址: