前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >openshift/origin学习记录(2)——添加Router组件

openshift/origin学习记录(2)——添加Router组件

作者头像
胡了了
发布2017-12-28 17:50:06
1.5K0
发布2017-12-28 17:50:06
举报
代码语言:javascript
复制
学习资料来源于官方英文文档与《开源容器云OpenShift》一书,因为刚开始学习,不确定博客的正确性,以下内容仅供参考。

本部分是在openshift/origin学习记录(1)——基于二进制文件的安装(单机版)的基础上进行。

代码语言:javascript
复制
Router是openshift集群中的一个重要组件,它是外部访问集群内容器应用的入口。
集群外部的请求都会到达Router,由Router分发到具体的容器中。

Router组件需要读取集群的信息,所以它需要关联一个系统账号Service Account,并为这个账号授权。

以下操作基于oc(命令行客户端)指令实现。

  • 以管理员登录,并切换到default工程。
代码语言:javascript
复制
# oc login -u system:admin
这里写图片描述
这里写图片描述
代码语言:javascript
复制
# oc project default
这里写图片描述
这里写图片描述
  • 创建Router。
代码语言:javascript
复制
# oadm policy add-scc-to-user privileged system:serviceaccount:default:router
# oadm router router --replicas=1 --service-account=router
这里写图片描述
这里写图片描述

在实际生产时,为了达到高可用的效果,可以通过设置--replicas创建夺个Router实例实现负载均衡并防止单点失效。

  • 查看Router状态。
代码语言:javascript
复制
# oc get pod -n default
# ss -ltn|egrep -w "80|443"
这里写图片描述
这里写图片描述

通过检查实验主机上的端口监听状态,可以发现主机的端口80、443正在被Haproxy监听。

从技术上来说,Router就是一个运行在容器里的Haproxy

至此,Router组件部署已经完成。

之后,用户可以创建route对象,称为route规则,一个route规则会与一个service相关联,并且绑定一个域名。

route规则会被Router加载。当用户通过指定的域名访问应用时,域名会被解析并指向Router所在的计算节点上。Router获取这个请求后,会根据route规则定义转发给与这个域名对应的service后端相关联的Pod容器实例。

Router负责将集群外的请求转发到集群的容器。 Service负责将集群内的请求转发到指定的容器。 一个对外,一个对内。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-09-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档