天天看点

kuberneters 集群所需要的的组件安装 及 K8s 集群搭建

十年河东,十年河西,莫欺少年穷

学无止境,精益求精

1、安装docker容器

安装docker,请参考:

安装完毕后,登录到阿里云,搜索容器镜像服务,配置docker镜像加速器,和systemd配置,因为k8s推荐使用systemd的配置来代替cgroupfs

kuberneters 集群所需要的的组件安装 及 K8s 集群搭建

 新建一个目录:

mkdir /etc/docker      

配置systemd 及 阿里云镜像加速

sudo cat <<EOF > /etc/docker/daemon.json 
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "registry-mirrors": ["https://5hi74cqh.mirror.aliyuncs.com"]
}
    
EOF      

查看下这个文件是否配置成功

kuberneters 集群所需要的的组件安装 及 K8s 集群搭建

 然后,启动docker ,并设置docker为自启动

[root@node2 ~]# systemctl start docker
[root@node2 ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
[root@node2 ~]#      

2、安装kuberbeters组件

2.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      

2.2、安装kubeadm、kubelet和kubectl

yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0      

为了Docker使用的cgroup drvier和kubelet使用的cgroup drver实现一致,建议修改“/etc/sysconfig/kubelet”文件的内容:

vim /etc/sysconfig/kubelet      

修改内容如下:

KUBELET_EXTRA_ARGS="--cgroup-driver=systemd"
KUBE_PROXY_MODE="ipvs"      

2.3、设置为开机自启动 

systemctl enable kubelet      

至此,K8s的各组件安装及配置就完成了

以上组件均需要在三台服务器上安装。

3、K8s集群安装

master节点上执行

在master节点执行如下命令

我的master节点的Ip为:【192.168.136.135】

# 由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里需要指定阿里云镜像仓库地址
kubeadm init \
  --apiserver-advertise-address=192.168.136.135 \
  --image-repository registry.aliyuncs.com/google_containers \
  --kubernetes-version v1.18.0 \
  --service-cidr=10.96.0.0/12 \
  --pod-network-cidr=10.244.0.0/16      
kuberneters 集群所需要的的组件安装 及 K8s 集群搭建

 根据提示,在master节点上做如下配置

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

转到Node节点,执行提示的语句

kubeadm join 192.168.136.135:6443 --token cuzc43.83wxhfwd4mgul4ts \
    --discovery-token-ca-cert-hash sha256:6eac1ffac64643db9b89cc131a7f731c1ddb302ca3653c931c97283999ef2962      

分别在Node1 和 Node2 上执行即可

 @天才卧龙的博客

继续阅读