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

学习资料来源于官方英文文档与《开源容器云OpenShift》一书,因为刚开始学习,不确定博客的正确性,以下内容仅供参考。

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

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

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

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

  • 以管理员登录,并切换到default工程。
# oc login -u system:admin
# oc project default
  • 创建Router。
# oadm policy add-scc-to-user privileged system:serviceaccount:default:router
# oadm router router --replicas=1 --service-account=router

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

  • 查看Router状态。
# 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负责将集群内的请求转发到指定的容器。 一个对外,一个对内。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏后端技术探索

Nginx隐藏响应头信息的Server信息和版本信息

在nginx.conf里面加server_tokens off;就可以隐藏版本号。

933
来自专栏技术博文

Linux下安全扫描工具Nmap用法详解

扫描器是一种能够自动检测主机安全性弱点的程序。扫描器通过发送特定的网络数据包,记录目标主机的应答消息,从而收集关于目标主机的各种信息。目前网络上有很多扫描软件,...

3888
来自专栏小樱的经验随笔

【全网最全的博客美化系列教程】07.添加一个分享的按钮吧

我们可以到分享按钮的设计网站:http://www.jiathis.com/去生成代码,当然也可以自定义生成代码,也可以直接使用默认的代码~

501
来自专栏我的博客

SOCKET,TCP/UDP,HTTP,FTP

(一)TCP/UDP,SOCKET,HTTP,FTP简析 TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层: 网络层:IP协议、ICMP协议、A...

2855
来自专栏Android点滴积累

快速搭建一个本地的FTP服务器

快速搭建一个本地的FTP服务器   如果需要开发FTP文件上传下载功能,那么需要在本机上搭建一个本地FTP服务器,方便调试。 第一步:配置IIS Web服务器 ...

3568
来自专栏小筱月

webpack 配置文件相关解说

WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,TypeS...

912
来自专栏Jed的技术阶梯

Linux下使用Nexus创建maven私服

关于系统运行级别以及chkconfig命令的用法参考Linux的运行级别和chkconfig用法

2882
来自专栏有困难要上,没有困难创造困难也要上!

Redis实现类似同步方法调用的功能(二)

26610
来自专栏软件开发 -- 分享 互助 成长

Android Studio修改包名和applicationId的方法

背景: 如果新做的项目跟以前做的某一个项目十分相似,那么一个简单的方法就是把原来项目拷贝一份,然后修改代码,但是这样包名还是原来项目的包名,还有如果想在同一台手...

3337
来自专栏从零开始学 Web 前端

绑定Github上的个人博客到Godaddy域名

2141

扫码关注云+社区