[ k8s-001 ] k8s集群搭建(1)

150 阅读2分钟

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第1天,点击查看活动详情

本章节主要是按照官方提供的工具kubadmin,进行k8s集群标准化安装

安装命令

首先是服务器的准备。不管是实体机还是阿里云服务器,我们需要准备3台,然后进行以下操作

以下命令需要在k8s-master、node1和node2三个节点都操作。

通过yum源来安装docker

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r | grep "20.10"
yum install -y docker-ce-20.10.9-3.el7
systemctl start docker
systemctl status docker
systemctl enable docker
docker version

设置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=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

安装kubeadmin、kubectl和kublet服务

yum list -y kubeadm --showduplicates
yum install -y kubeadm-1.23.1-0 kubectl-1.23.1-0 kubelet-1.23.1-0
kubeadm version

下载所需镜像,这里可能需要解决网络问题

kubeadm config images pull --image-repository=registry.aliyuncs.com/google_containers
docker images

docker pull quay.io/coreos/flannel:v0.12.0-amd64

systemctl enable kubelet

注意: 这里不能运行systemctl start kubelet,因为还未进行kubeadm init或者kubeadm join

以下初始化操作只需要在k8s-master节点操作。

初始化网络,主要是网段相关设置,执行以下命令即可

kubeadm init --kubernetes-version=v1.23.1 \
  --pod-network-cidr=10.244.0.0/16 \
  --service-cidr=10.1.0.0/16 \
  --image-repository=registry.aliyuncs.com/google_containers
  
mkdir -p $HOME/.kube && cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config

vi /etc/kubernetes/manifests/kube-apiserver.yaml
systemctl daemon-reload && systemctl restart kubelet

kubectl get nodes
kubectl get all -n kubesystem

–-pod-network-cidr:用于指定Pod的网络范围

–-service-cidr:用于指定service的网络范围

--image-repository: 镜像仓库的地址

总结

初学者往往需要理解很多容器化相关的概念,而本文直接采用使用脚本方式直接进行安装,是什么东西先上手把玩一下,自然就懂了。当你熟悉以下安装操作后,再适当的去读几本书,能起到事半功倍的效果。这里推荐基本k8s相关的数据《Kubernetes权威指南》、《自己动手写Docker》等等。另外一个是安装过程中,因为涉及到docker和google,这个对于国内用户网速可能不太友好,这里需要自行解决网络问题,这里就不做详细说明了,请自行搜索