Kubernetes 1.23.4 基于docker,centos7安装部署

Kubernetes 1.23.4 部署

基于docker,centos7安装部署

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

关闭selinux

sed -i 's/enforcing/disabled/' /etc/selinux/config #永久
setenforce 0 #临时

关闭swap(k8s禁止虚拟内存以提高性能)

sed -ri 's/.swap./#&/' /etc/fstab #永久
swapoff -a #临时

在master添加hosts

cat >> /etc/hosts << EOF
192.168.218.132 k8smaster
192.168.218.133 k8snode
EOF

#允许 iptables 检查桥接流量
确保 br_netfilter 模块被加载。这一操作可以通过运行 lsmod | grep br_netfilter 来完成。若要显式加载该模块,可执行 sudo modprobe br_netfilter。
为了让你的 Linux 节点上的 iptables 能够正确地查看桥接流量,你需要确保在你的 sysctl 配置中将 net.bridge.bridge-nf-call-iptables 设置为 1。例如:
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system

时间同步

yum install ntpdate -y
ntpdate time.windows.com

Kubernetes安装具体步骤

所有服务器节点安装 Docker/kubeadm/kubelet/kubectl
Kubernetes 默认容器运行环境是Docker,因此首先需要安装Docker;
安装 Docker

更新docker的yum源

yum install wget -y
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo

安装指定版本的docker:

yum install docker-ce

配置加速器加速下载,配置存储路径

/etc/docker/daemon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"],
"data-root": "/data/docker"
}

#修改docker配置
kuberneters官方推荐docker等使用systemd作为cgroupdriver,否则kubelet启动不了
cat < /etc/docker/deamon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"],
"data-root": "/data/docker",
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF

systemctl daemon-reload
systemctl restart docker

设置开机自启

systemctl enable docker.service

#启动docker
systemctl start docker.service

验证docker安装是否成功

docker --version

安装 kubeadm,kubelet 和 kubectl

设置yum源

cat > /etc/yum.repos.d/kubernetes.repo << EOF
name=Kubernetes
baseurl=https://repo.huaweicloud.com/kubernetes/yum/repos/kubernetes-el7-$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=0
gpgkey=https://repo.huaweicloud.com/kubernetes/yum/doc/yum-key.gpg https://repo.huaweicloud.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

安装

yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
systemctl enable --now kubelet

用kubeadm来初始化集群

注意:这个命令仅在master节点执行

1)初始化集群控制台, 失败了可以用kubeadm reset重置

注意:只在主节点运行
kubeadm init --kubernetes-version=1.23.4
--apiserver-advertise-address=10.211.55.200
--image-repository registry.aliyuncs.com/google_containers
--service-cidr=10.96.0.0/12
--pod-network-cidr=10.244.0.0/16

执行了这个命令以后,会帮我们创建集群的控制台
--image-repository registry.aliyuncs.com/google_containers 指定镜像源,由于kubeadm 默认从官网k8s.grc.io下载所需镜像,国内无法访问,因此需要通过--image-repository指定阿里云镜像仓库地址
--kubernetes-version:版本信息 kubectl version 查询
定义POD的网段为: 10.244.0.0/16
apiserver地址就是master本机IP地址
--service-cidr=10.96.0.0/12 : 这个参数后的IP地址直接就套用10.96.0.0/12 ,以后安装时也套用即可,不要更改
--pod-network-cidr=10.244.0.0/16 : k8s内部的pod节点之间网络可以使用的IP段,不能和service-cidr写一样,如果不知道怎么配,就先用这个10.244.0.0/16
–apiserver-advertise-address 集群通告地址
–image-repository 由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里指定阿里云镜像仓库地址
–kubernetes-version K8s版本,与上面安装的一致
–service-cidr 集群内部虚拟网络,Pod统一访问入口
–pod-network-cidr Pod网络,与下面部署的CNI网络组件yaml中保持一致

初始化失败的可以重置,使用命令

kubeadm reset

执行成功后执行获取节点加入命令
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown (id -u):(id -g) $HOME/.kube/config

其他节点加入
kubeadm join 192.168.232.130:6443 --token ujakuy.flet9v4dgg8tjzfz
--discovery-token-ca-cert-hash sha256:b4196fa17a0347dd813df35411af14b0b46675d52c112b72648577972ed5e198

查看节点
kubectl get nodes

安装kubernetes官方仪表盘

kubectl describe secret -n kubernetes-dashboard $(kubectl get secret -n kubernetes-dashboard | grep dashboard-admin| awk '{print $1}')


标题:Kubernetes 1.23.4 基于docker,centos7安装部署
作者:LeeOcean
地址:https://www.leiocean.com/articles/2023/05/06/1683346085375.html

    评论
    0 评论
avatar

取消