ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

K8S练习环境搭建

2022-04-20 17:02:51  阅读:260  来源: 互联网

标签:kubernetes -- 练习 etc yum docker K8S com 搭建


一、环境准备

#域名解析
cat <<EOF>> /etc/hosts
192.168.10.1 master01
192.168.10.2 node01
192.168.10.3 node02
EOF
#关闭防火墙
systemctl stop firewalld
#关闭防火墙开机启动
systemctl disable firewalld
#禁用SELinux
sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
#禁用虚拟内存
swapoff -a && sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
#网桥模块加载
lsmod | grep br_netfilter #确认是否有加载此模块
sudo modprobe br_netfilter  #没有的话可以先加载
#将桥接的IPv4流量传递到iptables的链
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

二、安装docker

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo   https://download.docker.com/linux/centos/docker-ce.repo

yum install -y docker-ce-cli-19.03.15 docker-ce-19.03.15
sudo mkdir /etc/docker
cat <<EOF | sudo tee /etc/docker/daemon.json
{
  "registry-mirrors": ["https://kcniy8yf.mirror.aliyuncs.com"],
  "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
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl enable docker

三、配置kubernetes源

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
               http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
yum clean all  
yum makecache  
yum repolist

四、安装kubeadm、kubelet、kubectl

yum install -y kubeadm-1.20.0 kubelet-1.20.0 kubectl-1.20.0
#开机启动kubelet
systemctl enable kubelet

五、初始化master

kubeadm init --pod-network-cidr=172.16.0.0/16 --image-repository registry.aliyuncs.com/google_containers

添加kubectl命令的变量
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
#将master的config复制到node上
scp ~/.kube/config node01:~/.kube/

六、安装网络插件

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

七、初始化node

#将node节点添加到集群,这里只是做一个比方,需使用初始化master返回的命令;token在24小时后就会失效,需要重新生成
kubeadm join 192.168.88.128:6443 --token oul15r.kcl5ux4frlibgt46 \
    --discovery-token-ca-cert-hash sha256:2cfa90b32e031a28d0cc0019af51597a98258be101cd23e9bc399139e4965877

八、其它

#重新生成token
kubeadm token create --print-join-command

#给node增加roles
kubectl label nodes node01 node-role.kubernetes.io/node01=                  第一个node01为要增加node的name,第二个node01为roles

2022-04-20 16:51:08

标签:kubernetes,--,练习,etc,yum,docker,K8S,com,搭建
来源: https://www.cnblogs.com/xfwangs/p/16170556.html

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

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

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

ICode9版权所有