rancher安装教程

一、安装 docker

1. 创建 build.sh 文件,到 Linux下执行
#!/bin/bash
 
# 检查Docker是否已经安装
if which docker > /dev/null; then
    echo "Docker已经安装,开始卸载..."
    # 卸载Docker及其相关组件
    docker stop $(docker ps -aq)
    docker rm $(docker ps -aq)
    docker system prune -f
    docker volume rm $(docker volume ls -q)
    docker image rm $(docker image ls -q)
    yum remove -y docker-*
    yum remove -y containerd
    # 删除Docker的相关目录
    rm -rvf /var/lib/docker
    rm -rvf /etc/docker
    
    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
else
    echo "Docker未安装"
    echo "正在安装Docker..."
fi
 
cat > /etc/motd <<EOF
 #############################
 #    Welcome  to  Docker    #
 #############################
EOF
 
### 获取网卡名称
ens=$(ip a | grep -o 'ens[[:alnum:]]*' | head -n 1)
 
sed -i 's/ONBOOT=no/ONBOOT=yes/g' /etc/sysconfig/network-scripts/ifcfg-$ens
cat >> /etc/sysconfig/network-scripts/ifcfg-$ens << EOF
#DNS1=114.114.114.114
#DNS2=8.8.8.8
EOF

systemctl restart network
echo "###################"
echo "#     网卡配置    #"
echo "###################"

echo "##############################"
echo "#     更新 yum 相关配置     #"
echo "##############################"
yum install -y yum-utils

rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/centos.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all;yum repolist
 
yum install -y yum-utils device-mapper-persistent-data lvm2 bash-com*
echo "##############################"
echo "#     docker依赖安装完成     #"
echo "##############################"
 
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
echo "##################################"
echo "#     docker安装仓库配置完成     #"
echo "##################################"
 
yum install docker-ce docker-ce-cli containerd.io
#yum install -y docker-ce-20.10.14 docker-ce-cli-20.10.14  containerd.io-1.5.11
rm -rf /etc/yum.repos.d/*
echo "##############################"
echo "#     安装指定版本docker     #"
echo "##############################"
 
systemctl enable docker --now
echo "####################################"
echo "#     docker开机自启动设置成功     #"
echo "####################################"
 
mkdir -p /etc/docker
cat > /etc/docker/daemon.json << EOF
{
  "registry-mirrors": ["https://chqac97z.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "data-root": "/data/docker",
  "storage-driver": "overlay2"
}
EOF
 
systemctl daemon-reload
systemctl restart docker
echo "##################################"
echo "#     docker镜像加速配置完成     #"
echo "##################################"
 
docker version
echo "##########################"
echo "#     docker安装完成     #"
echo "##########################"
 
curl -o /usr/local/bin/docker-compose https://mirrors.aliyun.com/docker-toolbox/linux/compose/1.21.2/docker-compose-Linux-x86_64?spm=a2c6h.25603864.0.0.7f2560faaaCcYj
chmod +x /usr/local/bin/docker-compose
docker-compose version
echo "###################################"
echo "#     docker-compoes 安装完成     #"
echo "###################################"

docker pull mysql:latest
echo "###################################"
echo "#     mysql 安装完成     #"
echo "###################################"

docker pull redis:6.2
echo "###################################"
echo "#     redis 安装完成     #"
echo "###################################"

docker pull quay.io/minio/minio
echo "###################################"
echo "#     minio 安装完成     #"
echo "###################################"

docker pull nacos/nacos-server:v1.4.3
echo "###################################"
echo "#     nacos 安装完成     #"
echo "###################################"

docker pull apache/rocketmq:4.5.0
echo "###################################"
echo "#     rocketmq 安装完成     #"
echo "###################################"

docker run --privileged -d --restart=unless-stopped -p 8080:80 -p 8443:443 rancher/rancher:v2.6.7
echo "###################################"
echo "#     rancher  安装完成     #"
echo "###################################"

img

注:在Linux下面,找个文件位置 创建 “build.sh” 文件,输入指令 ./build 执行文件。部署 docker镜像与 docker compose 依赖,同时在文件中,还有拉取 mysql, redis, nacos, minio, rocketmq 相关镜像依赖。

二、安装 Rancher 容器

2.1 使用指令,查看 rancher 运行容器

注:rancher 在 build中也有拉取镜像,现在只需要看 rancher 运行容器状况

使用指令:

# 【获取初始密码1】获取到容器id
docker ps |grep rancher

# 查看 rancher 运行日志
docker logs -f <rancher容器id>

img

正常运行状态( successfully )
img

2.2 在 浏览器上面,输入 https://:<端口号>

img

2.3 输入 指令,查看rancher 初始密码
docker logs  container-id  2>&1 | grep "Bootstrap Password:"

img

2.4 输入密码,修改密码,自己进行密码设置

img

三、创建 rancher 集群

3.1 创建集群

注: 进入首页, 点击创建, 进入创建集团页面, 选择自定义创建集群
img

img

3.2 输入 集群名称, 配置相关权限, 创建集群

img

3.3 rancher 配置相关服务器的权限

执行 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.6.7 --server https://192.168.159.142:8443 --token g277mhb57rtfpt6mhpqn57zvqs9vmbclvfc7kqk8lxzzfkvq7j7g6c --ca-checksum 39408bf30c724b1af1457207f881434cbf60f5dad91aad0e99e81756753e4639 --etcd --controlplane --worker

img

3.4 部署完成界面

注:rancher 部署完成所有镜像在 1.5 G左右,必须保存证好网络的畅通,网络不稳定,容易影响下载的进程,将下载的通道关闭。

部署成功之后,在页面刷新,会显示成页面。
img

img

四、创建命名空间,部署相关中间件

3.1 进入 deploy页面,创建命名空间

创建 mid 空间,用于分配相关中间件容器,对应在 springboot文件中,可以直接用此 中间件文件加mid 进行部署。减少相关的配置。
img

3.2 创建 mysql 中间件
  1. 创建mysql中间件
    img
    img

  2. 配置相关数据

    • 在 Pod,下面的 Storage 下面设置服务的 my.cnf 文件路径与 容器中的 映射 的 my.cnf 文件路径
    • 在 Containers 中,设置 mysql内置的端口号与外部的端口号;同时设置 mysql 的密码。
      img
posted @ 2024-05-13 01:51  yikes_ygr  阅读(109)  评论(0编辑  收藏  举报