黑马

文章 分类 评论
14 6 0

站点介绍

致一的小博客,分享技术,记录生活点滴

快速部署一套K8s集群

黑马 2024-05-01 124 0条评论 Linux

首页 / 正文
这里是,站点公告,暂无内容

发布于2021-12-30

一、准备环境

服务器规划:
角色 IP地址
k8s-master 192.168.1.71
k8s-node1 192.168.1.72
k8s-node2 192.168.1.73
服务器要求:
 建议最小硬件配置:2核CPU、2G内存、20G硬盘。
 服务器可以访问互联网,会联网下载镜像。
软件环境:
软件 版本
操作系统 CentOS7.9_x64
Docker 24.0.0(CE)
Kubernetes 1.28

二、初始化配置

关闭Selinux

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

关闭Swap

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

根据规划设置主机名

~]# hostnamectl set-hostname <hostname>

确保网络桥接的数据包经过Iptables处理,启用相关的内核参数

~]# cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
~]# sysctl --system  # 生效

三、安装Docker

安装Docker:

~]# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
~]# yum -y install docker-ce
~]# systemctl enable docker && systemctl start docker

配置镜像下载加速器和设置Cgroup驱动:

~]# cat > /etc/docker/daemon.json << EOF
  {
    "registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"],
    "exec-opts": ["native.cgroupdriver=systemd"]
  }
EOF
~]# systemctl restart docker
~]# docker info

安装cri-dockerd(Docker与Kubernetes通信的中间程序):

~]# wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.2/cri-dockerd-0.3.2-3.el7.x86_64.rpm
~]# rpm -ivh cri-dockerd-0.3.2-3.el7.x86_64.rpm

指定依赖镜像地址为国内镜像地址:

~]# vi /usr/lib/systemd/system/cri-docker.service
ExecStart=/usr/bin/cri-dockerd --container-runtime-endpoint fd:// --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.9

~]# systemctl daemon-reload 
~]# systemctl enable cri-docker && systemctl start cri-docker

四、部署Kubernetes集群

4.1 添加阿里云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

4.2 安装kubeadm,kubelet和kubectl

~]# yum install -y kubelet-1.28.0 kubeadm-1.28.0 kubectl-1.28.0
~]# systemctl enable kubelet

4.3 初始化Master节点

~]# kubeadm init \
  --apiserver-advertise-address=192.168.1.71 \
  --image-repository registry.aliyuncs.com/google_containers \
  --kubernetes-version v1.28.0 \
  --service-cidr=10.96.0.0/12 \
  --pod-network-cidr=10.244.0.0/16 \
  --cri-socket=unix:///var/run/cri-dockerd.sock

初始化完成后,根据提示信息,拷贝kubectl工具认证文件到默认路径:

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

使用kubectl工具查看节点状态:

~]# kubectl get nodes
NAME               STATUS     ROLES            AGE   VERSION
k8s-master     NotReady   control-plane        20s   v1.28.0
注:由于网络插件还没有部署,节点会处于“NotReady”状态。

4.4 将Node节点加入集群
执行上述输出的“kubeadm join”命令,将本节点加入到Kubernetes集群中:

~]# kubeadm join 192.168.1.71:6443 --token 7gqt13.kncw9hg5085iwclx \
--discovery-token-ca-cert-hash sha256:66fbfcf18649a5841474c2dc4b9ff90c02fc05de0798ed690e1754437be35a01 --cri-socket=unix:///var/run/cri-dockerd.sock

4.5 安装网络组件
这里使用Calico作为Kubernetes的网络插件,负责集群中网络通信。
创建Calico网络组件的资源:

~]# kubectl create -f tigera-operator.yaml 
~]# kubectl create -f custom-resources.yaml 

应用完成后,等待5分钟后,查看Pod运行状态:

注:如果Pod处于“ContainerCreating”状态说明在下载镜像中,需耐心等待~

4.6 安装Dashboard
Dashboard是官方提供的一个UI,可用于基本管理K8s资源。

~]# kubectl apply -f kubernetes-dashboard.yaml
~]# kubectl get pods -n kubernetes-dashboard

浏览器访问“https://节点IP地址:30001”,将看到Dashboard登录界面。
创建服务账号并授权管理员权限:

# 创建用户
~]# kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard
# 用户授权
~]# kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin
# 获取用户Token
~]# kubectl create token dashboard-admin -n kubernetes-dashboard

使用输出的Token登录Dashboard,将进入到首页

至此,Kubernetes集群部署完成。

评论(0)

日历

2024年11月

     12
3456789
10111213141516
17181920212223
24252627282930

文章目录

推荐关键字: Ubuntu Linux Java Python 前端 后端 web Vue uniapp 服务器

站点公告
这里是,站点公告,暂无内容
点击小铃铛关闭
配色方案