1. Rancher概述
Rancher是一套容器管理平台,它可以帮助组织在生产环境中轻松快捷的部署和管理容器。 Rancher可以轻松地管理各种环境的Kubernetes,满足IT需求并为DevOps团队提供支持。
Kubernetes不仅已经成为的容器编排标准,它也正在迅速成为各类云和虚拟化厂商提供的标准基础架构。Rancher用户可以选择使用Rancher Kubernetes Engine(RKE)创建Kubernetes集群,也可以使用GKE,AKS和EKS等云Kubernetes服务。 Rancher用户还可以导入和管理现有的Kubernetes集群。
Rancher支持各类集中式身份验证系统来管理Kubernetes集群。例如,大型企业的员工可以使用其公司Active Directory凭证访问GKE中的Kubernetes集群。IT管理员可以在用户,组,项目,集群和云中设置访问控制和安全策略。 IT管理员可以在单个页面对所有Kubernetes集群的健康状况和容量进行监控。
Rancher为DevOps工程师提供了一个直观的用户界面来管理他们的服务容器,用户不需要深入了解Kubernetes概念就可以开始使用Rancher。 Rancher包含应用商店,支持一键式部署Helm和Compose模板。Rancher通过各种云、本地生态系统产品认证,其中包括安全工具,监控系统,容器仓库以及存储和网络驱动程序。下图说明了Rancher在IT和DevOps组织中扮演的角色。每个团队都会在他们选择的公共云或私有云上部署应用程序。
2. 新功能介绍
早期的Rancher1.X版本是基于Docker以Cattle为调度引擎的容器管理平台。在Rancher1.X成功和经验的基础上,基于Kubernetes基础上重新设计Rancher2.0版本。 Rancher2.0保留了1.6版的友好功能,如UI和应用商店。但是,2.0包含许多新功能,例如:
- 内置CI/CD;
- 告警和日志收集;
- 多集群管理;
- Rancher Kubernetes Engine (RKE);
- 与云Kubernetes服务(如GKE,EKS和AKS)集成;
3.入门须知
- 熟悉Linux基础命令;
- 了解SSH使用方法,了解公钥/私钥工作原理;
- 熟悉Docker基本使用方法及基础命令,比如:容器日志查看;
- 了解SSL证书使用方法;
- 了解负载均衡工作原理(L4/L7);
- 了解域名解析原理;
- 了解K8S基本概念
4. 配置Linux主机
通过配置Linux主机开始创建自定义集群。您的主机可以是:
-
云主机
-
本地虚拟机
-
本地物理机
注意: 在使用云主机时,您需要允许TCP/80和TCP/443入站通信端口。请查阅您的云主机文档以获取有关端口配置的信息。
根据以下要求配置主机:
- Ubuntu 16.04 +(64位)
- Centos/RedHat Linux 7.5+(64位)
- RancherOS 1.3.0+(64位)
Ubuntu操作系统有Desktop和Server版本,选择安装server版本.
5. 硬件需求:
- CPU: 2C
- 内存: 4GB
注意: 此配置仅为满足小规模测试环境的最低配置。如用于生产,请参考基础配置要求。
6. 软件需求:
- 软件: Docker
- 支持的Docker版本:
- 17.03.x
- 18.06.x
- 18.09.x
7. 安装Rancher
要想在主机上安装Rancher,需要先登录到主机上,接着进行以下步骤:
- 通过shell工具(例如PuTTy或远程终端连接)登录到主机
- 在shell中执行以下命令:
1. 安装docker-ce
1.1 配置docker-ce yum源
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
sed -i 's#download.docker.com#mirrors.tuna.tsinghua.edu.cn/docker-ce#g' /etc/yum.repos.d/docker-ce.repo
1.2 修改主机名与hosts
10.0.0.201 rancher
1.3 安装docker-ce
yum install docker-ce -y
1.4 启动docker并设置开机自启
[root@rancher ~]# systemctl start docker
[root@rancher ~]# systemctl enable docker
2. 安装rancher
[root@rancher ~]# mkdir /usr/local/rancher
[root@rancher ~]# docker run -d --restart=unless-stopped -v /usr/local/rancher/:/var/lib/rancher/ -p 80:80 -p 443:443
rancher/rancher:latest
8da163db510ad1bfb0070d29d78c7932969e40c7e9683dbe6da90096b06ca662
[root@rancher ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8da163db510a rancher/rancher:latest "entrypoint.sh" 37 seconds ago Up 35 seconds 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp gallant_hellman
8. 登录Rancher
登录并开始使用Rancher。登录后,您将进行一些一次性配置。
8.1 打开浏览器,输入https://
,server_ip
替换为运行Rancher容器主机的ip;
8.2 因为是自动使用的自签名证书,在第一次登录会提示安全授信问题,信任即可;
8.3 设置管理员密码
第一次登录会要求设置管理员密码,默认管理员账号为: admin
8.4 设置Rancher Server URL
Rancher Server URL是agent节点注册到Rancher Serverd的地址,需要保证这个地址能够被agent主机访问,不要设置为127.0.0.1
或者localhost
。
9. 创建K8S集群
现在创建第一个Kubernetes集群,可以使用自定义选项。您可以添加云主机、内部虚拟机或物理主机作为集群节点,节点可以运行任何一种或多种主流Linux发行版:
9.1 在全局视图下,点击菜单中的集群 , 并点击添加集群;
9.2 选择 自定义,并设置集群名称,其他参数可不用修改,点击下一步;
9.3 选择节点运行的角色
默认会勾选Worker角色,根据需要可以一次勾选多种角色。比如,假设我只有一个节点,那就需要把所有角色都选择上,选择后上面的命令行会自动添加相应的命令参数;
9.4 其他参数保持默认,点击命令行右侧的复制按钮,复制命令参数
9.5 登录预添加集群的主机,执行以上复制的命令;俺就在master节点注册了
[root@rancher ~]# sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.3.3 --server https://10.0.0.201 --token lhc2jz5rlfmlnn9gvgmhvqrdhzwp9mn7r8pd4k7xdv2xpkrrb5swv9 --ca-checksum 59b07400903a578554491e940fc2eef3d67358ab119850963d0daef66b1bdb71 --etcd --controlplane --worker
Unable to find image 'rancher/rancher-agent:v2.3.3' locally
v2.3.3: Pulling from rancher/rancher-agent
7ddbc47eeb70: Downloading [================================================> ] 26.08MB/26.69MB
c1bbdc448b72: Download complete
8c3b70e39044: Download complete
45d437916d57: Download complete
9d0628a9505a: Download complete
86ff83498dc8: Waiting
75a4645b34c1: Downloading [==================> ] 875.1kB/2.311MB
24a0b57bdc62: Waiting
f4f0caf7fc9b: Waiting
e4f54def8dda: Waiting
等待镜像拉取成功后会自动注册主机---->最后点击完成
9.6 点击集群名称,进入集群视图