代码之家  ›  专栏  ›  技术社区  ›  rishi007bansod

在Google云中部署nginx服务时出现连接拒绝错误

  •  0
  • rishi007bansod  · 技术社区  · 6 年前

    我正在谷歌云中使用以下部署文件部署nginx映像。

    对于Replicationcontroller:

    apiVersion: v1
    kind: ReplicationController
    metadata:
      name: nginx-web
      labels:
        name: nginx-web
        app: demo
    spec:
      replicas: 2
      template:
        metadata:
          labels:
            name: nginx-web
        spec:
          containers:
            - name: nginx-web
              image: nginx
              ports:
                - containerPort: 5000
                  name: http
                  protocol: TCP
    

    用于服务部署

    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-web
      labels:
        name: nginx-web
        app: demo
    spec:
      selector:
        name: nginx-web
      type: LoadBalancer
      ports:
       - port: 84
         targetPort: 5000
         protocol: TCP
    

    但当我在84端口的external\u IP(我从loadbalancer获得)上执行curl时,我得到了连接拒绝错误。可能是什么问题?

    1 回复  |  直到 6 年前
        1
  •  1
  •   whites11    6 年前

    您在复制控制器中使用的nginx映像正在侦听端口80(这就是映像的构建方式)。

    您需要像这样修复replication controller规范:

    apiVersion: v1
    kind: ReplicationController
    metadata:
      name: nginx-web
      labels:
        name: nginx-web
        app: demo
    spec:
      replicas: 2
      template:
        metadata:
          labels:
            name: nginx-web
        spec:
          containers:
            - name: nginx-web
              image: nginx
              ports:
                - containerPort: 80
                  name: http
                  protocol: TCP
    

    还可以这样调整您的服务:

    apiVersion: v1
    kind: Service
    metadata:
      name: nginx-web
      labels:
        name: nginx-web
        app: demo
    spec:
      selector:
        name: nginx-web
      type: LoadBalancer
      ports:
       - port: 84
         targetPort: 80
         protocol: TCP