Rancher2.1从集群搭建到Pipeline部署完整教程。Rancher Kubernetes管理平台 ,可以让用户在生产环境中轻松快捷的部署和管理容器及Kubernetes。Rancher 2.x版本内置的CI/CD Pipeline,让用户得以快速搭建团队所需的CI/CD流水线。本文将分享用户自身的最佳实践,step by step完成从集群搭建到Pipeline部署的完整流程。node
快速搭建集群的更详细教程可参照官方文档:linux
https://www.cnrancher.com/docs/rancher/v2.x/cn/overview/quick-start-guide/#topdocker
建立第一个集群json
配置要求最好按照官方建议的来:centos
IP | 角色 |
---|---|
192.168.242.80 | rancher server |
192.168.242.81 | master1 |
192.168.242.82 | master2 |
192.168.242.83 | node1 |
192.168.242.84 | node2 |
要求(列出大体要求,具体步骤特别是docker安装部分参照上面的基础环境配置): - CPU: 4C; - 内存:8G以上(亲测16G比较舒服,4G的也能够吧,可是部署应用基本上起不来3个Pod); - Centos/RedHat Linux 7.5+(64位); - Docker 17.03.2;(用其余版本的立马从新装吧) - 配好主机名和host,关防御墙和selinux;(/etc/hosts和/etc/hostname) - 配置Docker镜像加速地址等信息 /etc/docker/daemon.json,以下代码 - 使用非root帐户 - 主机名只支持包含 - 和 .(中横线和点)两种特殊符号,不能重复 centos7修改hostname和hosts 一、修改/etc/hostname vi /etc/hostname 打开以后的内容是: localhost.localdomain 把它修改为想要的名字就能够,好比:master 保存退出 1.一、修改主机IP(虚拟机才使用此步) 1.二、修改主机网卡(虚拟机才使用此步) 1.三、关闭防火墙 firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status firewalld 开机禁用 : systemctl disable firewalld 开机启用 : systemctl enable firewalld 二、修改/etc/hosts文件 vi /etc/hosts 打开以后的内容是: 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 而后在最后面加一行: 192.168.80.10 master 保存退出,而后重启机器,这时候就能够经过hostname来访问这台机器的服务了 三、映射互访问(如master和slave1) 在/etc/hosts里面再加一行: 192.168.80.10 master 192.168.80.11 slave1 四、查看主机名: uname -n //单独主机名 uname -a //详细信息 hostname //单独主机名 查看主机IP: hostname -i //主机IP
二、安装Docker服务器
root执行less
curl https://releases.rancher.com/install-docker/17.03.sh | sh
配置加速器(此处是个人专属加速器,可填写公共加速器或自行注册阿里云的)dom
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://oegbalmw.mirror.aliyuncs.com"] } EOF 重启Docker服务 sudo systemctl daemon-reload sudo systemctl restart docker
登录服务器curl
配置好环境后执行下面命令建立rancher server(这里须要点耐心等等) $ sudo docker run -d -v /opt/rancher:/var/lib/rancher --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:latest
运行完后,就能够经过IP来访问Rancher的管理台了,接下来咱们就能够点击 “添加集群” 来添加个“集群圈”了,里面才是添加宿主机为不一样节点(主机)进来管理容器。ide
除了rancher server 不执行管理端命令外,都要先安装Docker。
四、建立一个集群
这里命名是根据一个IP网段来的,加入你有阿里云-深圳A或深圳B等都须要单首创建它的集群来管理这个网段类的服务器。
我搭设的是1个server 2个master 2个node的集群 ,选择好角色,粘贴至各主机去运行,在高级选项中写上对应的主机外网ip;
4.1 master只选择etcd和control,
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.1.6 --server https://192.168.0.80 --token zkp8f6829qz4w6mp5f9kvp6672msbsxh4rcxfskqs6qn8wbn7k9rmr --ca-checksum 50aa0d2435a0dae2b49739f46408e0d237af88a43232819cecd23ff7564978d7 --etcd --controlplane
4.2 node只选择worker;
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.1.6 --server https://192.168.0.80 --token zkp8f6829qz4w6mp5f9kvp6672msbsxh4rcxfskqs6qn8wbn7k9rmr --ca-checksum 50aa0d2435a0dae2b49739f46408e0d237af88a43232819cecd23ff7564978d7 --worker
搭多各master实现高可用也是没问题的。(到这里要需等片刻,主机还在拉取文件,出现下图才算成功)