一,Rancher是什么

1.1 Rancher背景

❶Rancher Labs成立于2014年。总部设立在美国加州的Cupertino。在美国的亚利桑那州的菲尼克斯和中国的深圳设立有研发中心。

❷核心团队自2008年就在一起工作,曾创立Cloud.com并推出了CloudStack,

经历了从VM到容器的整个虚拟化技术演进过程。

❸Rancher的两个产品,Rancher平台和Rancher操作系统,已经有了超过4000

万次的下载量,被大量的运用在了云计算的各个领域。

❹作为容器领域的先行者和重要参与者,Rancher Labs是OCI、CNCF的成员;也是Docker生态核心组织-Docker治理委员会(DGAB)的成员。

1.2 Rancher创始人

❶Rancher创始人是梁胜博士。

❷梁胜博士是美国Rancher Labs Inc.公司联合创始人及公司CEO。

❸在此之前,从2011年至2014年间,梁博士担任Citrix System Inc.公司云平台首席技术官,也是Citrix公司首位华人CTO。

❹在加入Citrix公司之前,梁胜创立了cloud.com公司并担任首席执行官,直至2011年7月被Citrix以2.3亿美金购入旗下。

❺之前他作为Sun Microsystems公司核心主任工程师,先后领导设计和开发了Java 2平台的JNI(Java Native Interface)和JVM(Java虚拟机)。

❻梁胜毕业于中国科技大学少年班,并拥有耶鲁大学计算机博士学位。

1.3 Rancher简介

1.4 容器生态圈

❶什么是容器?

与宿主机系统共享内核但与系统中的其他进程资源隔离的运行环境。

❷容器相关技术的历史(部分)

1982 chroot in Unix

2000 FreeBSD Jail

2001 Linux VServer

2004 Solaris Zone o 2005 OpenVZ

2008 LXC

2013 Docker

2014 Rocket(Rkt) o ......

❸容器生态圈知名产品体系

1.5 Rancher容器管理平台系统架构图

1.6 Rancher容器管理UI界面

二,Rancher如何搭建

提示:为了降低理解难度,以下过程全部采用图形化界面操作以及汉语进行演示,如果想有更进一步的认识或者你是一个极客,请手动敲命令进行操作

2.1 安装Docker环境

❶Windows用户或者Mac用户通过下载  DockerToolbox 来安装 docker, docker-machine 和其他辅助工具,可以到页面https://www.docker.com/products/docker-toolbox中下载

❷安装过程中会检测是否已经安装Virtual Box,如果未安装,则会提示安装Virtual Box

❷安装成功后,桌面会出现Docker Quickstart Terminal 和 Kitematic (Beta)图标

❸点击Kitematic(Docker图形化管理工具),第一次启动的时候自动创建 Virtual Box 的  default 虚拟机.可以打开Virtual Box进行查看,如下图:

❹Kitematic启动成功之后如下图,至此,Docker环境创建成功

2.2 安装Rancher

❶Rancher的各种容器管理理念均架构在由Rancher server和rancher agent构建的Infrastructure之上。Rancher server是Rancher的核心,提供核心容器管理服务以及API服务。

❷Rancher的一个设计理念是所有组件都Containerized(容器化)

❸搭建一个单节点的Rancher Server为例,首先安装一个Rancher server,直接在Kitematic搜索Rancher,如下图,点击CREATE:

❹然后选中Rancher server,点击Start,加载完毕后,点击EXEC,输入命令:PS AUX,可以看到内部,/usr/bin/s6-svscan是容器的第一个启动进程,/service这个 路径作为其命令行参数,又分别内部启动了mysql,graphite_exporter,cattle等服务,注:单节点rancher server的数据都保存在其内部的MySQL中,而多节点rancher server则采用一个外部的MySQL存储数据。

❺等待一定时间后,WEB PREVIEW出现了预览界面,点击小箭头,直接在浏览器打开。

❻打开Rancher server界面,如下,至此,Rancher server已经初步搭建成功!

2.3 管理Rancher,添加用户(Account)

❶第一次启动Rancher后,Rancher的UI是没有访问控制的,点击系统管理->访问控制,如下图,可以看到有7种方式,选择LOCAL,输入用户名和密码

❷然后点击退出登录,可以看到如下界面,访问控制已经添加上

2.4 管理Rancher,设置环境(Environment)

❶登录之后,点击左上角环境管理,Rancher 支持将资源分组归属到多个环境。 每个环境具有自己独立的基础架构资源及服务,并由一个或多个用户、团队或组织所管理。

例如,您可以创建独立的“开发”、“测试”及“生产”环境以确保环境之间的安全隔离,将“开发”环境的访问权限赋予全部人员,但限制“生产”环境的访问权限给一个小的团队。

如下图,建立Pass云测试和Pass云管理,两套环境,分别给测试和开发人员使用,可以修改它的Name、Container Orchestration引擎(cattle、k8s和swarm,默认cattle)以及Access Control,我们使用Cattle进行编排引擎。

下图可以体现出环境的隔离性:

环境管理,也可以基于环境模板,如下图,比如Cattle,上面已经安装好了ipsec,healthcheck等服务:

❷创建好环境后,环境下面还没有设置没有任何Resources(主机、存储 等)可供使用(比如创建Containers)。

选择基础架构,添加主机(hosts),如下图,可以自己定义物理机或者虚拟机,也可以选择亚马逊云等,如果没有发现你想使用的云,比如阿里云,可以选择管理docker-machine驱动进行添加:

2.5 管理Rancher,设置主机(Hosts)

❶以添加本地环境作为主机资源为例,将下图中的命令在命令行进行执行

❷执行成功后,可以看到基础设施里面多了一个主机,并且这个主机上,已经默认在跑了一些应用,比如healthcheck,至此一套基础的架构已经具备了

2.6 管理Rancher,设置应用(Stacks)

❶应用(stacks)就是由一组服务组成,比如上图的应用:ipsec由cni-driver-1和ipsec-1服务组成。

❷而服务是一组由相同docker镜像创建的容器,服务扩展了Docker的“link”概念以利用Rancher的轻量级分布式DNS服务用于服务发现。服务可以单独添加或通过应用商店部署。

❸服务也能够利用其他Rancher内置服务,如负载均衡、健康监控、升级支持以及高可用。

下面这幅图直观描述了用户, 环境与应用之间的关系:

❹在Pass云管理环境,创建一个example应用,如下图,点击创建:

❺创建成功后如下图:

2.7 管理Rancher,设置服务(Services)

❶如上图,点击添加服务,输入名称,选择镜像,镜像就可以理解成为用户提供服务的运行程序。这里选择healthcheck为例子。下面可以进行一些端口映射,服务连接,网络,安全,调度等配置

❷成功后,可以看到下图,可以对这个服务进行升级,停止,删除等操作

❸如果用户访问量过大,还可以进行针对这个服务,增加运行节点的数量或者说集群,如下图,可以增加节点数量,点击后,会自动寻找hosts列表,资源比较空闲的主机,或者其他策略。可以快速的将服务部署到任意多个主机节点上。

❹点击查看日志,可以看到服务运行的实时日志:

三,Rancher使用体验

3.1 Rancher自带了一套网络方案

❶rancher 自带了一套网络方案,可以实现跨机器的docker容器互联。

❷其原理大致是:在每个机器上通过docker启动一个路由容器,将docker容器启动时的ip定义为XX.XX网段,并在iptables中将XX.XX网段的请求转发到路由进程的监听端口,进行udp的封装和解封。

❸其原理是隧道技术,都是通过一个程序进行封包解包,并引导docker启动容器时指定相应的ip。

3.2 Rancher使用性

❶自带了一套UI,并集成了日志,shell等

❷支持服务发现,在rancher-agen容器中运行了dns服务

❸支持容器伸缩,一键扩容

❹支持多套环境管理(一套方案,支持开发、测试,生成等多个环境,环境彼此隔离,也即多租户隔离)

总体而言,比较稳定,易于使用

3.3 Rancher解决的典型场景

❶新一代的私有云、混合云

混合云下的容器服务:

应用在不同云间动态扩展和迁移:

容器改变了应用管理的模式:

❷企业应用商店和一键部署应用

❸构建轻量级Pass服务

利用Racher轻松构建PASS平台相关推荐

  1. 项目如何简单的使用pass平台部署服务

    目录 前言: 一:Pass平台的优势 二:Pass平台的相关要素 三:docker|jenkins\k8s\pass\git之间关系 四:项目如何使用pass 五:pass平台常规操作 5.1应用重启 ...

  2. K8S 快速入门(一)虚拟化、容器化构建云计算平台的基本概念及原理解析

    本章主题 1.认识kubernetes (k8s) 在企业中应用场景? ----- 为什么要学习K8s?? 2.云技术(云计算平台) - 虚拟化及虚拟化基本概念及原理 3.云技术(云计算平台) - 容 ...

  3. 【方案】去哪儿网徐磊:如何利用开源技术构建日处理130亿+的实时日志平台?...

    转自:http://mp.weixin.qq.com/s?__biz=MzIzMzEzODYwOA==&mid=2665284466&idx=1&sn=2b06a5298217 ...

  4. 利用爬虫技术构建Nifty Gateway的NFT数据分析平台

    摘要: 本文将介绍如何利用爬虫技术构建Nifty Gateway的NFT数据分析平台.首先,我们将对Nifty Gateway进行简要介绍,并解释爬虫技术在NFT领域的重要性.然后,我们将详细阐述如何 ...

  5. c语言构建栈_选择技术栈构建通用平台

    c语言构建栈 Java社区中有许多关于Spring vs Java EE的话题. 一群人会争辩说您应该使用一个而不是其他.等等.当我看到这一点时,我不禁要想为什么我们不能同时使用它们呢? 实际上,我认 ...

  6. 选择技术栈构建通用平台

    Java社区中有很多关于Spring vs Java EE的话题. 一群人会争辩说您应该使用一个而不是其他.等等.当我看到这一点时,我不禁要想为什么我们不能同时使用它们呢? 实际上,我认为有效地使用它 ...

  7. 大数据平台构建_如何像产品一样构建数据平台

    大数据平台构建 重点 (Top highlight) Over the past few years, many companies have embraced data platforms as a ...

  8. 利用amWiki轻松打造知识库或技术文档系统

    利用amWiki轻松打造知识库或技术文档系统 1. 我为什么选择amWiki 1.1. 用什么来写? 1.2. 用什么系统? 1.3. amWiki的优点 1.4. amWiki的架构 2. 如何使用 ...

  9. 构建多平台Docker镜像

    利用 Docker 19.03 以上版本引入的插件 buildx[4],可以很轻松地构建多平台 Docker 镜像.buildx 是 docker build ... 命令的下一代替代品,它利用 Bu ...

  10. 联合 EMQ 发布云原生物联网消息服务联合解决方案,云上轻松构建 IoT 应用

    近日,「DaoCloud 道客」联合「EMQ 映云科技」发布云原生物联网消息服务联合解决方案,并完成「DaoCloud Enterprise云原生应用云平台」和「EMQX Enterprise 企业级 ...

最新文章

  1. mysql mac客户端: sequel,mysql-workbench
  2. 一起谈.NET技术,C#权限管理和设计浅谈
  3. Javascript 获取和设置日期
  4. Ubuntu下的Linux内核的编译及安装
  5. 石头剪刀布程序流程图_石头剪刀布!我要与电脑决战到天明!(14天)
  6. java开始到熟悉60
  7. numpy 矩阵拼接_Numpy学习笔记(下篇)
  8. 对象行为型 - 模版方法模式
  9. jQuery的介绍和选择器详解
  10. win10 戴尔电脑 禁用触摸板
  11. OSR推出在线SSL/TLS安全测试工具
  12. MFC界面编程基础(01):Windows 编程模型
  13. 更新fielddata为true_[翻译]Elasticsearch重要文章之五:预加载fielddata
  14. SC-Lego-LOAM解析(下)
  15. 【Writeup】BUUCTF_Web_高明的黑客
  16. fedora17下nvidia双显卡闭源驱动的安装
  17. 计算机丢失quartz.dll什么意思,计算机中丢失quartz.dll解决方法
  18. TokenGazer 深度研究 | Harmony:技术层面有一定创新 生态发展仍需时间验证
  19. 叫好不叫座的网红狗狗出路何在?
  20. Python爬虫自学系列(五)

热门文章

  1. Gerber文件各层的介绍
  2. 在逍遥模拟器下安装XPOSED框架
  3. 网站压力测试工具Webbench介绍
  4. C语言课程设计——工资管理系统
  5. HRM人力资源系统-Day07
  6. 像Selenium爬网页一样爬手机App,可见即可爬——appium 教程(二)appium实战抓取手机知乎APP的热点标题
  7. DirectSOFT(光洋PLC编程软件)v6.3官方版
  8. 总结Android各类常用三方框架
  9. (一)密码学之数论基础
  10. windows 7系统的无损分区软件