1. 下载Rancher

1.1通过docker进行安装,首先需要下载个docker
Docker基础以及使用Docker发布SpringBoot项目

#安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

1.2 开始下载rancher镜像

sudo docker run --privileged -itd --restart=unless-stopped -p 86:86 -p 443:443 -v /home/rancher:/var/lib/rancher/:rw  --name "rancher" rancher/rancher:stable

rancher 管理docker镜像 docker部署rancher_docker

2. 访问Rancher

2.1 输入服务的ip+对外暴露https加密的端口

443 和 80 默认url是不显示的,例如 我的地址是 https://192.168.34.10

rancher 管理docker镜像 docker部署rancher_容器_02


2.2 查看rancher的默认密码 以及修改 密码

docker logs  rancher  2>&1 | grep "Bootstrap Password:"
2022/05/28 06:53:31 [INFO] Bootstrap Password: dsk588lbl5cbkf8nwvc664x9kjlpwp9pk5hvncfnxjkfhf2zcwrsq5
docker exec -ti rancher reset-password

rancher 管理docker镜像 docker部署rancher_kubernetes_03


2.3 修改密码并登录进入rancher主页面

rancher 管理docker镜像 docker部署rancher_容器_04

3. 部署k8s

3.1 准备开始创建 k8s

rancher 管理docker镜像 docker部署rancher_rancher 管理docker镜像_05


rancher 管理docker镜像 docker部署rancher_容器_06


3.2 创建集群,下边数据默认就行

rancher 管理docker镜像 docker部署rancher_docker_07


3.3 在master主节点运行,选中 etcd、 Control Plane、Worker, 复制下边代码到master节点执行

rancher 管理docker镜像 docker部署rancher_kubernetes_08


3.4 在node节点执行,只需要选中 Worker 复制下边代码到node节点

rancher 管理docker镜像 docker部署rancher_kubernetes_09


3.5 如果之前有安装过,需要将之前安装的容器删除,并清空挂载卷目录

rm -rf /etc/ceph \
       /etc/cni \
       /etc/kubernetes \
       /opt/cni \
       /opt/rke \
       /run/secrets/kubernetes.io \
       /run/calico \
       /run/flannel \
       /var/lib/calico \
       /var/lib/etcd \
       /var/lib/cni \
       /var/lib/kubelet \
       /var/lib/rancher/rke/log \
       /var/log/containers \
       /var/log/pods \
       /var/run/calico

3.6 查看集群是否正常

rancher 管理docker镜像 docker部署rancher_容器_10


3.7 如果已经存在k8s集群,可以导入已存在的集群

rancher 管理docker镜像 docker部署rancher_kubernetes_11


rancher 管理docker镜像 docker部署rancher_容器_12


rancher 管理docker镜像 docker部署rancher_容器_13


rancher 管理docker镜像 docker部署rancher_ico_14

4. 使用rancher发布pod

4.1 进入集群

rancher 管理docker镜像 docker部署rancher_docker_15


4.2 选择命名空间,默认选择default,这里我们pod由deploy管理器创建

rancher 管理docker镜像 docker部署rancher_kubernetes_16


rancher 管理docker镜像 docker部署rancher_ico_17


4.4 创建harbor 安全认证

rancher 管理docker镜像 docker部署rancher_docker_18


rancher 管理docker镜像 docker部署rancher_kubernetes_19


rancher 管理docker镜像 docker部署rancher_docker_20

4.4 开始创建由deployment管理的pod

rancher 管理docker镜像 docker部署rancher_rancher 管理docker镜像_21


rancher 管理docker镜像 docker部署rancher_容器_22


4.5 查看刚才创建的deploy

rancher 管理docker镜像 docker部署rancher_rancher 管理docker镜像_23

4.6 创建对外访问端口 命令仅供参考,rancher图形化可以直接操作
请注意 rancher中的 selector 对应deploy中的标签

kubectl expose deploy demo --type=NodePort --port=8080 --target-port=8080

rancher 管理docker镜像 docker部署rancher_kubernetes_24

rancher 管理docker镜像 docker部署rancher_rancher 管理docker镜像_25


rancher 管理docker镜像 docker部署rancher_ico_26

4.7 动态扩缩容 命令仅供参考,rancher图形化可以直接操作

##kubectl scale --replicas=3 资源类型/资源名称
kubectl scale --replicas=3 deploy/test-deploy

rancher 管理docker镜像 docker部署rancher_docker_27


4.8 回滚/升级 项目

rancher 管理docker镜像 docker部署rancher_容器_28


4.9 创建PV挂载

rancher 管理docker镜像 docker部署rancher_ico_29


rancher 管理docker镜像 docker部署rancher_ico_30


4.10 创建PVC挂载

rancher 管理docker镜像 docker部署rancher_容器_31


rancher 管理docker镜像 docker部署rancher_容器_32


rancher 管理docker镜像 docker部署rancher_kubernetes_33

5. 进入rancher控制台

rancher 管理docker镜像 docker部署rancher_docker_34

rancher 管理docker镜像 docker部署rancher_docker_35

6. 通过部署rancher的容器进入

docker exec -it rancher bash

rancher 管理docker镜像 docker部署rancher_docker_36

7. 部署Prometheus监控页面

7.1 点击下载 图中是我下载完成后的界面

rancher 管理docker镜像 docker部署rancher_ico_37

7.2 查看监控页面,deploy或单个pod监控都可以查看

rancher 管理docker镜像 docker部署rancher_kubernetes_38

7.3 点击跳转,查看详细 Grafana 页面

rancher 管理docker镜像 docker部署rancher_rancher 管理docker镜像_39


rancher 管理docker镜像 docker部署rancher_rancher 管理docker镜像_40

2.6.5 版本rancher 长时间使用后,日志不打印

这个属于rancher的bug,目前可以通过删除rancher的配置恢复