Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)

目录

      • 一、安装前准备工作
          • 计算机
          • 升级linux内核
          • 时间同步
          • Hostname设置
          • hosts设置
          • 关闭防火墙,selinux
          • 关闭swap
          • 安装docker
      • 二、安装rancher
          • 部署rancher
      • 三、安装k8s
          • 安装k8s集群
          • 易错点,重新初始化
      • 四、安装kutectl
      • 五、测试安装nginx工作负载

一、安装前准备工作

计算机
机器名 IP地址 部署内容
rancher 172.16.5.221 rancher
k8smaster 172.16.5.222 Control Plane, Etcd
k8sworker01 172.16.5.223 worker
k8sworker02 172.16.5.224 worker
k8sworker03 172.16.5.225 worker

需在每个节点都进行操作,可以使用xshell工具分屏进行批量操作。

升级linux内核
#导入ELRepo仓库的公钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
#为yum安装ELRepo仓库
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
#查看可用版本
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
#安装最新内核
yum --enablerepo=elrepo-kernel install kernel-ml

# 查看当前可用内核
sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
#升级
grub2-set-default 0
时间同步
#查看系统时间
timedatectl 
#设置北京时间
timedatectl set-timezone Asia/Shanghai
#安装ntp服务
yum install -y ntp

#修改ntp相关参数,修改成如下内容
vi /etc/sysconfig/ntpd
SYNC_HWCLOCK=yes
OPTIONS="-g -x"

#启动ntp服务,开机自启动
systemctl restart ntpd && systemctl enable ntpd

#设置linux系统时间宇远程ntp服务器同步
Hostname设置
#修改主机名
sudo hostnamectl set-hostname k8smaster
#bash生效
bash
#重启
reboot
hosts设置
#修改hosts文件
vim /etc/hosts

172.16.5.222 k8smaster
172.16.5.223 k8sworker01
172.16.5.224 k8sworker02
172.16.5.225 k8sworker03
172.16.5.221 rancher
关闭防火墙,selinux
# 关闭防火墙
systemctl stop firewalld
# 关闭防火墙开机启动
systemctl disable firewalld

#关闭selinux
setenforce 0 && sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
reboot
关闭swap
# 临时
swapoff -a 
# 永久
sed -ri 's/.*swap.*/#&/' /etc/fstab 
安装docker
yum install -y yum-utils
# 添加yum源,这里添加的是阿里云的yum源
yum-config-manager  --add-repo  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 查看docker版本
yum list docker-ce --showduplicates | sort -r
# 您可以选择其他版本
yum  -y install docker-ce-20.10.12-3.el7
# 设置国内镜像加速,你也可以用自己的仓库镜像,这里是我申请的阿里云个人加速镜像
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://fuchp8pk.mirror.aliyuncs.com"]
}
EOF
# 导入镜像设置
systemctl daemon-reload
# 启动docker
systemctl restart docker
# 设置docker开机启动
systemctl enable docker

二、安装rancher

部署rancher

自行选择安装rancher版本,rancher平台地址:ip:8443

docker run -d --restart=unless-stopped -p 8080:80 -p 8443:443 -v /opt/rancher/data:/var/lib/rancher --privileged rancher/rancher:v2.6.3


# 找到您的容器ID
docker ps
# 找到密码
docker logs  ${container-id}  2>&1 | grep "Bootstrap Password:"

Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第1张图片

三、安装k8s

安装k8s集群

通过RKE的方式安装k8s,在rancher里面创建自定义k8s集群,如果报错,请重启rancher,自定义项目名称,选择k8s版本,然后选择Control Plane, Etcd复制语句在master执行,选择worker到worker节点上面执行。
Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第2张图片
Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第3张图片
Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第4张图片

Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第5张图片

易错点,重新初始化

如果报错,请在每个节点上面清除安装的残留文件,重启后重新初始化,正常情况下节点会正常初始化成功,如果有报错请检查前面的准备工作是否完成,细节点。如果有问题请清理残余文件重新初始化。

docker stop $(docker ps -aq)
docker system prune -f
docker volume rm $(docker volume ls -q)
docker image rm $(docker image ls -q)
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

四、安装kutectl

#下载最新版本:
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

#验证二进制文件(可选)
#下载 kubectl 校验和文件:
curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"

#根据校验和文件验证 kubectl 二进制文件:
echo "$(<kubectl.sha256) kubectl" | sha256sum --check
如果有效,则输出为:
kubectl: OK

#安装 kubectl
install -o root -g root -m 0755 kubectl /usr/bin/kubectl

#测试以确保您安装的版本是最新的:
kubectl version --client

#将rancher集群中kubeconfig的内容复制到服务器config中
mkdir -p $HOME/.kube
vi $HOME/.kube/config    #粘贴复制的内容

#测试kubectl
kubectl get node

下载文件传入到主节点 $HOME/.kube/config

Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第6张图片

在这里插入图片描述

五、测试安装nginx工作负载

Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第7张图片
Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第8张图片
Rancher部署k8s集群测试安装nginx(节点重新初始化方法,亲测)_第9张图片

你可能感兴趣的:(DevOps,rancher,kubernetes,nginx)