线上环境服务器搭建k8s基于docker
线上环境服务器搭建k8s基于docker
版本和硬件配置信息
1、版本信息
liunx内核:5.4.239-1.el7.elrepo.x86_64
操作系统:CentOS 7.9
kubelet-1.23.6
kubeadm-1.23.6
kubectl-1.23.6
2、服务器配置
阿里云一台:2核4G
腾讯云两台:2核4G
搭建k8s
1、打开k8s常用端口
2、安装最新docker
-- 清除安装
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
-- 下载
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
-- 安装
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
-- 启动
sudo systemctl start docker
-- 开机自启
sudo systemctl enable docker
-- 配置镜像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json<<-'EOF'
{"registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
"exec-opts": [
"native.cgroupdriver=systemd"
]}
EOF
--重启
sudo systemctl daemon-reload
sudo systemctl restart docker
3、关闭交换分区
swapoff -a
free -m
4、重命名服务器主机名字
sudo hostnamectl set-hostname 名字
5、添加虚拟网卡(一定要加,不然初始化不会成功)
cat > /etc/sysconfig/network-scripts/ifcfg-eth0:1 <<EOF
BOOTPROTO=static
DEVICE=eth0:1
IPADDR=你的公网IP
PREFIX=32
TYPE=Ethernet
USERCTL=no
ONBOOT=yes
EOF
# step2 如果是centos8,需要重启
systemctl restart network
# step3 查看新建的IP是否进去
ip addr 或者 ifconfig
6、修改内核信息
cat <<EOF >> /etc/sysctl.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_nonlocal_bind = 1
net.ipv4.ip_forward = 1
vm.swappiness=0
EOF--
sysctl -p
7、添加host
cat >> /etc/hosts << EOF
你的ip k8s-master
你的ip k8s-node1
你的ip k8s-node2
EOF
8、添加kubernetes yum软件源
cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
9、安装kubeadm,kubelet,kubectl,并且指定版本,因为1.24的版本默认运行时环境不是docker了,并且设置开机自启
yum install -y kubelet-1.23.6 kubeadm-1.23.6 kubectl-1.23.6
---
systemctl enable kubelet
10、提前准备coredns:1.8.4的镜像
docker pull coredns/coredns:1.8.4
---
docker tag coredns/coredns:1.8.4 registry.aliyuncs.com/google_containers/coredns:v1.8.4
注意:这上面的这些步骤在每台服务器上都要进行操作
11、在master服务器上进行初始化操作
kubeadm init \
--kubernetes-version 1.23.6 \
--apiserver-advertise-address=你的ip \
--image-repository registry.aliyuncs.com/google_containers \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16
12、完成初始化的新建文件和目录的操作,在master上完成
mkdir -p $HOME/.kube
---
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config---
sudo chown $(id -u):$(id -g) $HOME/.kube/config
13、在node服务器上进行,加入集群
kubeadm join 192.168.44.210:6443 --token 0xp3gm.wzbsahhxwa1dtaeh \
--discovery-token-ca-cert-hash sha256:bc28a61b1de3bfa7cb95c619ef050fe67238471347b16d9e34e400e405efe0bb
14、在master上查看node节点信息
kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master NotReady control-plane,master 11m v1.23.6
k8s-node1 NotReady <none> 3m49s v1.23.6
k8s-node2 NotReady <none> 100s v1.23.6
k8s-node3 NotReady <none> 96s v1.23.6
15、在master服务器安装网络插件flannel
---下载
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
---执行
kubectl apply -f kube-flannel.yaml
注意查看红色字体,按照步骤直接无脑安装正常是可以随便跑的!
ok结束下班!
更多推荐
所有评论(0)