首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在端口80上访问Kubernetes服务

在端口80上访问Kubernetes服务
EN

Stack Overflow用户
提问于 2016-11-03 02:30:11
回答 2查看 12K关注 0票数 19

我有一个使用LoadBalancer类型的Kubernetes服务(一个Python Flask应用程序),它在端口30000上公开(据我所知,所有Kubernetes NodePorts必须在30000-32767范围内)。我需要在标准HTTP端口80上访问我的面向公众的服务。做这件事最好的方法是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-11-03 07:25:51

如果您想要使用云提供商的LB,假设您的应用程序在端口8080上公开,并且您想要在端口80上公开它,下面是配置应该是什么样子:

代码语言:javascript
运行
复制
apiVersion: v1
kind: Service
metadata:
  name: flask_app
  labels:
    run: flask_app
  namespace: default
spec:
  type: LoadBalancer
  ports:
  - port: 80
    targetPort: 8080
    protocol: TCP
    name: http
  selector:
    run: flask_app
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: flask_app
  namespace: default
spec:
  replicas: 1
  strategy:
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 0
    type: RollingUpdate
  template:
    metadata:
      labels:
        run: flask_app
    spec:
      restartPolicy: Always
      terminationGracePeriodSeconds: 60
      containers:
      - name: flask_app
        image: repo/flask_app:latest
        ports:
        - containerPort: 8080
        imagePullPolicy: Always

另一种选择是使用入口控制器,例如Nginx。

https://kubernetes.io/docs/concepts/services-networking/ingress/

票数 7
EN

Stack Overflow用户

发布于 2016-11-03 12:37:17

如果您不使用任何云提供商,您只需在服务中设置externalIPs选项,并在节点上搭建此IP,kube-proxy会为您将此IP的流量路由到您的pod。

代码语言:javascript
运行
复制
{
    "kind": "Service",
    "apiVersion": "v1",
    "metadata": {
        "name": "my-service"
    },
    "spec": {
        "selector": {
            "app": "MyApp"
        },
        "ports": [
            {
                "name": "http",
                "protocol": "TCP",
                "port": 80,
                "targetPort": 9376
            }
        ],
        "externalIPs" : [
            "80.11.12.10"
        ]
    }
}

https://kubernetes.io/docs/concepts/services-networking/service/#external-ips

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40387264

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档