ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

CentOS-8构建K8s高可用集群搭建

2021-02-08 16:58:06  阅读:341  来源: 互联网

标签:kubernetes CentOS -- etc yum 集群 docker K8s com


部署环境版本:

  • Mware_Fusion_Pro版本:VMware_Fusion_Pro_12.1.0_Build_17195230
  • CentOS8版本:CentOS-Stream-8-x86_64-20210204
  • Docker version: 20.10.3

安装注意事项:

  • centos8默认安装podman和docker有冲突需要卸载掉
yum erase podman
  • 配置阿里yum
  • 关闭selinux
    SELinux:即安全增强型 Linux(Security-Enhanced Linux)
    它是一个 Linux 内核模块,也是 Linux 的一个安全子系统
    它主要由美国国家安全局开发,
    它的主要作用:最大限度地减小系统中服务进程可访问的资源(最小权限原则)
    有的软件对于selinux的安全规则支持不够好,就会建议在安装前把selinux先关闭
vim /etc/selinux/config

在这里插入图片描述

  • 关闭swap
swapoff -a
vim /etc/fstab 注释掉swap项

在这里插入图片描述

安装docker version 20.10.3

yum install yum-utils device-mapper-persistent-data lvm2
官方地址:
sudo yum-config-manager --add-repo  https://download.docker.com/linux/centos/docker-ce.repo
阿里:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
设置环境变量:
echo "export LC_ALL=en_US.UTF-8"  >>  /etc/profile
source /etc/profile

yum install --allowerasing docker-ce

Set up the Docker daemon

mkdir /etc/docker
cat <<EOF | sudo tee /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2",
  "storage-opts": [
    "overlay2.override_kernel_check=true"
  ]
}
EOF
mkdir -p /etc/systemd/system/docker.service.d
sudo systemctl daemon-reload
sudo systemctl restart docker
systemctl enable docker

修改驱动

docker info

在这里插入图片描述

安装kubernetes

配置kubernetes 国内yum源

vim /etc/yum.repos.d/kubernetes.repo
[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

安装kubeadm、kubectl、kubelet

yum install -y kubelet kubeadm kubectl

启动kubelet服务

systemctl enable kubelet
systemctl start kubelet
systemctl restart kubelet

初始化kubernetes集群

kubeadm init \
    --apiserver-advertise-address=192.168.43.122 \   # 当前机器的IP
    --image-repository registry.aliyuncs.com/google_containers \
    --kubernetes-version v1.20.0 \
    --pod-network-cidr=10.244.0.0/16 \
    --ignore-preflight-errors=docker
    
kubeadm init --apiserver-advertise-address=192.168.43.122 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.20.0 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=docker

要使kubectl适用于您的非root用户,请运行以下命令,这些命令也是kubeadm init输出的一部分

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

安装网络插件flannel(网络插件有很多)

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

标签:kubernetes,CentOS,--,etc,yum,集群,docker,K8s,com
来源: https://blog.csdn.net/qq_33430322/article/details/113757712

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有