centOS部署master node

本文档提供了一步一步的指南,详细解释了如何在CentOS上部署Kubernetes Master Node。包括更新系统、安装Docker、启用Docker服务、安装Kubernetes包、配置kubelet、设置防火墙规则、管理IPTables、拉取Kubernetes镜像以及初始化集群。过程中还涵盖了处理常见错误的方法,如关闭swap和检查IPTable设置。最后,通过kubectl命令检查运行的pods和节点状态,确保Master Node已成功部署。

版本:

虚拟机:VMware

部署master node

1. 首先更新系统
命令是: sudo yum update -y

2. 安装Docker
命令是:sudo yum install -y docker

3. 激活并启动允许Docker作为一个service
命令是:sudo systemctl enable docker && sudo systemctl start docker

4. 检查是否docker的版本在1.13 或者更高
命令是: sudo docker version

5.安装kubernetes包

1. 首先我们要修改配置文件
sudo bash -c 'cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name = Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
EOF'
<img src = "https://img-blog.csdnimg.cn/20190814154916724.PNG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0plcnJ5X0p0,size_16,color_FFFFFF,t_70" width = "80%" height = "80%"/>
2. 关闭SELinux来防止nodes间的任何沟通问题
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
3. 然后输入命令安装
sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

6. 安装完成后,激活并启动kubelet作为一个service
命令:sudo systemctl enable kubelet && sudo systemctl start kubelet

7. 从防火墙上允许6443和10250访问master node
命令:sudo firewall-cmd --permanent --add-port=6443/tcp && sudo firewall-cmd --permanent --add-port=10250/tcp && sudo firewall-cmd --reload
注意!如果不输入以上指令,会出现以下问题

8. 设置IPTables
命令:
sudo bash -c ‘cat < /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF’

之后输入命令:sudo sysctl --system来执行修改
然后执行命令: sudo lsmod | grep br_netfilter 来load br_netfilter

9.开始配置master node
首先把可能需要用到的镜像全部拉取下来
sudo kubeadm config images pull

拉取成功后开始集群设置
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
这个时候会遇到错误:running with swap on is not supported. Please disable swap

按照以下步骤来关闭swap
cat /proc/swaps 显示所有现在正在运行的swap
swapoff -a 关闭所有active的swaps
swapoff /swap 是关闭指定的swap,比如/swap作为其中的一个filename,我可以通过这个命令来单独disable swap

如果出现以下错误,就需要去检查之前的IPTable是否输入正确

如果遇到以下错误需要去虚拟机设置里面把cpu数量改成2


能正常运行后会有以下输出

  1. 输入上图的第一段命令来使正常用户也能在本地access k8s
    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown ( i d − u ) : (id -u): (idu):(id -g) $HOME/.kube/config

  2. 最后给pods申请网络设置
    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml
    这样master node就部署完了

可以通过kubectl get pods -A来查询所有正在运行的容器镜像
可以通过kubectl get nodes来查询所有节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值