首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes使用负载均衡器公开入口资源(API对象)?

Kubernetes使用负载均衡器公开入口资源(API对象)?
EN

Stack Overflow用户
提问于 2018-06-13 14:34:47
回答 1查看 263关注 0票数 0

我在amazon新闻上有一个kubernetes集群,我打算在这个集群上运行多个应用程序。

我有多个服务,它们构成了一个这样的应用程序,我想使用一个亚马逊负载均衡器(elb)将它们公开到互联网上。我想要使用ELB,因为我不想直接使用端口80,因为许多应用程序共享这个端口,我希望每个应用程序都可以独立于其他应用程序来定义它们的入口资源。

我读到了库伯奈特的入口资源,并认为这正是我想要的。但是,我没有设法通过负载均衡器的服务公开它。现在,当我阅读documentation时,它的目的是公开豆荚,但入口是:

管理对集群中服务(通常为HTTP )的外部访问的API对象。

我想要做的事情是可能的,还是我没有抓住一些概念,试图做一些不可能的或错误的事情?

我的代码:

代码语言:javascript
复制
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
  labels:
    id: ingress
spec:
  rules:
  - http:
      paths:
      - path: /api/devices
        backend:
          serviceName: device-management
          servicePort: 3001
      - path: /api/datasources
        backend:
          serviceName: data-acquisition
          servicePort: 3001
      - path: /auth,/account,/api/tenants,/api/users
        backend:
          serviceName: device-management
          servicePort: 3001
## TODO: Find out how to add subdomain entry for auth.domain and s3.domain 
---
apiVersion: v1
kind: Service
metadata:
  name: ingress
  labels:
    id: ingress
spec:
  type: LoadBalancer
  ports:
  - name: http
    port: 80
    targetPort: 80
  - name: https
    port: 443
    targetPort: 443
  selector:
    id: ingress 

来自kubectl describe service ingress的输出

端点:无

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-15 07:35:23

问题是我没有安装入口控制器。这些文件指出:

您需要一个宏控制器来满足一个宏,简单地创建资源就不会有任何效果。

入口控制器创建一个nginx吊舱和一个服务(负载均衡器),然后实现所有入口资源中描述的规则。安装指南提供了关于如何在不同平台上安装它的进一步信息。

入口控制器取代了我上面描述的服务,实现了集群中所有的入口资源。

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

https://stackoverflow.com/questions/50839897

复制
相关文章

相似问题

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