0x1 基于Rancher的容器云管理平台介绍

1)Rancher概述

一个良好的企业架构需要一个容器云级别的平台,这个平台可以自主研发,也可以通过通过开源软件二次开发。
对于非BAT级别企业而言,自主研发的成本太高,不成功便成仁。得不偿失。相反,如果选择一个良好的开源软件进行二次开发,反而能够达到事半功倍的效果。让自己的业务主体更加集中在性能的提升上。而不是花费大量的时间重复造轮子。
2014年Docker技术的出现对与计算乃至虚拟化技术产生比较大的影响,2014年国际大厂逐渐放弃以OpenStack平台的二次开发,转向以Docker K8S PodMan等技术为主的轻量化的容器云平台。其中JD是最先实现容器云的。2017年阿里巴巴双11技术更是完全基于容器云平台实现,国内阿里云作为云计算的老大在云计算技术上确实起到领头羊的角色。
Rancher就是一个开源的企业级容器管理平台。通过Rancher企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台。Rancher提供了可以在生产环境中使用的管理Docker和Kubernetes的全栈化容器部署与管理平台。
具体由以下4部分组成。




容器云 pod 突然停止 容器云管理_基础设施


Rancher主要组件和功能


a)基础设施编排

Rancher可以使用任何公有云或私有云的Linux主机资源。Linux主机可以是虚拟机VM,也可以是物理机。
Rancher仅需要主机有CPU、内存、本地磁盘和网络资源即可。
从Rancher的角度来说,一台云厂商提供的云主机和一台自己的物理机是一样的。
Rancher为运行容器化的应用提供了一层灵活的基础设施服务。Rancher的基础谁是服务包括 网络、存储、负载均衡、DNS和安全模块。
Rancher的基础设置服务也是通过容器部署的,所以Rancher的基础设施服务同样也可以运行在任何的Linux主机上。

b)容器编排与调度

很多用户都会选择使用容器编排调度框架来运行容器化的应用。
Rancher包含了当前全部主流的编排调度引擎。例如Swarm、K8S和Mesos。
同一个用户可以创建Swarm或K8S集群,并且可以使用原生的Swarm或K8S工具管理应用。
除了Swarm或K8S和Mesos,Rancher还支持自己的Cattle容器编排调度引擎。
Cattle被广泛用于编排Rancher自身的基础设施服务,也被用于实现Swarm集群、Kubernetes集群和Mesos集群的配置、管理与升级。

c)应用商店

Rancher用户可以在应用商店里意见部署由多个容器组成的应用。用户可以管理这个应用,并且在这个应用有新的可用版本的时候进行自动化升级。
Rancher提供一个由Rancher社区维护的应用商店,其中包括一系列的流行应用。
Rancher的用户也可以创建自己的私有的应用商店。




容器云 pod 突然停止 容器云管理_应用商店_02


官方认证





容器云 pod 突然停止 容器云管理_容器云 pod 突然停止_03



全部软件


d)企业级权限管理

Rancher支持灵活的插件式的用户认证,支持AD、LDAP、Github等认证方式。支持基于角色的权限访问控制(RBAC),可以通过角色来配置某个用户或用户组对开发环境以及生产环境的访问权限。

0x2 Rancher单节点的安装

安装教程传送门

0x3 Rancher对IaaS的管理

一个PaaS容器云平台最重要的能力就是跨混合云的IaaS管理能力。
那么具备这种能力是如何实现的呢?
比如我们使用Rancher中的NFS管理功能






容器云 pod 突然停止 容器云管理_Docker_04


image.png



容器云 pod 突然停止 容器云管理_Docker_05


比如在混合云中搭建NFS



容器云 pod 突然停止 容器云管理_Docker_06


现有的主机情况


容器云 pod 突然停止 容器云管理_应用商店_07


NFS详情



容器云 pod 突然停止 容器云管理_基础设施_08


配置好之前搭建的NFS服务器



容器云 pod 突然停止 容器云管理_容器云 pod 突然停止_09


启动开始安装NFS管理


容器云 pod 突然停止 容器云管理_应用商店_10


所有Rancher管理的主机都已经自动安装好了NFS


注意在使用NFS管理前我们需要搭建一台NFS服务器

Rancher官方NFS文档