当前位置: 首页 > 知识库问答 >
问题:

Google Cloud Kubernetes入口静态IP地址未反映,与设置不同

慕宜民
2023-03-14

我正在尝试在Google云上使用GKE部署一个完整的web应用程序(后端为nodejs,前端为angular)。然后为其启用SSL。

我创建了一个全局IP地址(并在后面的列表中看到):gcloud compute addresses create mathbux static IP--全局

之后,我部署了后端和前端容器以及yaml文件。

这里的问题是入口控制器上反映的IP地址来自任何地方,并且与我设置的不同(我刚刚在上面制作的静态IP地址)。

我遵循了如何在GKE上安装Nginx入口设置的指南,如下所示:https://kubernetes.github.io/ingress-nginx/deploy/#gce-gke

kubectl create clusterrolebinding cluster-admin-binding \
  --clusterrole cluster-admin \
  --user $(gcloud config get-value account)

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.34.1/deploy/static/provider/cloud/deploy.yaml

这是我入门的一个片段。yaml:

.... truncated . . .
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: mathbux-ingress-frontend
  namespace: default
  annotations:
    kubernetes.io/ingress.class: nginx
    kubernetes.io/ingress.global-static-ip-name: "mathbux-static-ip"
    networking.gke.io/managed-certificates: mathbux-ssl
    nginx.ingress.kubernetes.io/rewrite-target: /

这是我在Google文档中托管证书文件的片段:

apiVersion: networking.gke.io/v1beta2
kind: ManagedCertificate
metadata:
  name: mathbux-ssl
spec:
  domains:
    - mathbux.com
    - www.mathbux.com

当我转到生成的IP地址时,整个应用程序都能完美地工作,并且只在以下情况下工作:

1.)IP地址不是我创建并在我的ingress.yaml上设置的特定静态全局IP地址

2)SSL也分别失败。(请注意,我已经将域名指向我手动创建的静态IP地址)

共有1个答案

吴兴国
2023-03-14

您正在使用的注释-kubernetes.io/ingress.global-static-ip-name-可用于默认的GKE入口,它本质上是一个google负载均衡器-请参阅此处的留档-https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer.

然而,您所做的是部署了ingress nginx(这是一个不同的ingress提供者),并通过kubernetes为其分配了ingress资源。io/入口。类:nginx,它本质上使静态ip注释变得毫无意义。

因此,您需要决定要使用哪个入口。如果您想使用GKE的负载平衡器,请删除ingress nginx,并遵循我上面链接的关于默认GKE入口的文档。

如果您想使用ingress nginx,可以在此处找到其文档,包括ssl配置-https://kubernetes.github.io/ingress-nginx/.

 类似资料:
  • 本文向大家介绍Ubuntu16.04 静态IP地址设置(NAT方式),包括了Ubuntu16.04 静态IP地址设置(NAT方式)的使用技巧和注意事项,需要的朋友参考一下 为VMware虚拟机内安装的Ubuntu 16.04设置静态IP地址NAT方式 1.安装环境 VMware 12 Ubuntu 16.04 x86_64 2.在VMware中,配置网络环境 VMware在默认安装完成之后,会创建

  • 本文向大家介绍VMware下Ubuntu 14.04静态IP地址的设置方法,包括了VMware下Ubuntu 14.04静态IP地址的设置方法的使用技巧和注意事项,需要的朋友参考一下 VMware虚拟机下运行Linux系统已经是非常常见了,本人就是在WMware中安装了Ubuntu,但问题是每次启动Ubuntu系统,VMWare都会为Ubuntu分配一个动态IP,在做SSH操作或者ip共享操作时很

  • 本文向大家介绍静态IP地址和动态IP地址之间的区别,包括了静态IP地址和动态IP地址之间的区别的使用技巧和注意事项,需要的朋友参考一下 静态IP地址和动态IP地址都用于标识网络或Internet上的计算机。静态IP地址由Internet服务提供商提供,并且在系统连接到网络之前一直保持固定。动态IP地址由DHCP提供,通常公司会获得一个静态IP地址,然后为其在组织网络内的计算机生成动态IP地址。 以

  • 当初始化Swarm是,我们指定参数--advertise-addr来广播当前节点的IP地址给其他Manager节点。由于manager节点作为一个稳定的基础组件,我们应该给它分配一个固定的静态IP地址,以防止服务器重启造成IP地址改变。 如果Swarm重启,并且所有的manager节点都因为重启而获得一个新的IP地址,其他节点就无法链接到manager节点。Swarm就会出现故障被挂起。 Work

  • 本文向大家介绍PowerShell脚本实现网卡DHCP自动获取IP地址、设置静态IP地址的方法,包括了PowerShell脚本实现网卡DHCP自动获取IP地址、设置静态IP地址的方法的使用技巧和注意事项,需要的朋友参考一下 PowerShell设置DHCP自动获取IP地址,PowerShell可以很方便的设置本地计算机启用DHCP来动态获取IP地址,这需要用到WMI扩展。本文介绍详细的脚本程序。

  • 我必须在ConsumerGroup中设置zookeeper IP地址,而不是Kafka-Host IP地址。因为我将复制因子设置为3,并且创建了3个代理。因此,如果一个主机出现故障,那么另一个主机可以接管。 当我尝试将zookeeper的IP地址而不是Kafka-Host的IP地址放在ConsumerGroup中时,它不会接收到任何来自生产者API的消息。 我希望这样,如果我在ConsumerGr