栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Kubernetes(二)——安装部署集群

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Kubernetes(二)——安装部署集群

安装

环境:4台服务器,1台master(192.168.2.248),3台node(192.168.2.249~251)

前提:都安装好Docker

修改主机名

每台主机都要修改

 hostnamectl set-hostname master
 hostnamectl set-hostname node1
 hostnamectl set-hostname node2
 hostnamectl set-hostname node3

修改Cgroup驱动
由于我们是在虚拟机的场景下运行,硬件资源比较紧缺,因此我们还需要修改Cgroup的驱动,将每一台主机的驱动改为systemd。

cat < /etc/docker/daemon.json
{
"exec-opts":["native.cgroupdriver=systemd"]
}
EOF
systemctl restart docker
#重启
docker info | grep Cgroup
#查看驱动

安装完Docker执行命令docker info时如果报以下警告

WARNING: bridge-nf-call-iptables is disabled WARNING:bridge-nf-call-ip6tables is disabled

执行命令vim /etc/sysctl.conf,在文件中追加以下内容后保存退出

net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-arptables = 1

关闭swap分区
每台主机都要关闭

swapoff -a
#临时关闭
sed -i '/swap/s/^(.*)$/#1/g' /etc/fstab
#永久关闭,注释/ext/fstab/的/dev/mapper/centos-swap
cat /etc/fstab
#查看是否注释
su -root

添加解析记录

cat >>/etc/hosts < 

kubelet kubeadm kubectl安装
配置Kubernetes的yum仓库

cat >/etc/yum.repos.d/kubernetes.repo < 
yum install kubelet kubeadm kubectl -y
systemctl enable kubelet
部署Kubernetes Master

准备coredns镜像

docker pull coredns/coredns
docker tag coredns/coredns registry.aliyuncs.com/google_containers/coredns
kubeadm init 
--apiserver-advertise-address 192.168.2.248
--image-repository registry.aliyuncs.com/google_containers 
--pod-network-cidr=10.244.0.0/16 
--service-cidr=10.1.0.0/16 

–apiserver-advertise-address 192.168.2.248 填写你自己master的IP地址

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

node节点加入K8S集群

建议不要在node节点运行kublet服务,不然会导致join失败,如果已经运行,建议执行kubeadm reset然后删除提示的文件和目录。

kubeadm join 192.168.2.248:6443 --token m5p64y.x4x1k0hthzic9ss4 
	--discovery-token-ca-cert-hash sha256:6e43392975c729de140d8f11bb8375844461b19b3be1686f0453e64b43380fe4 

默认token有效期为24小时,当过期之后,该token就不可用了。这时就需要重新创建token,可以直接使用命令快捷生成:

kubeadm token create --print-join-command

报错就重启docker服务,问题就会解决。

master查看node节点状态

kubectl get nodes

现在还没有准备好

删除节点可以使用命令

 kubectl drain node1 --delete-emptydir-data --force --ignore-daemonsets node/node1
 kubectl delete node node1
kubectl get pods -n kube-system -o wide
master安装网络插件fanel
wget https://raw.githubusercontent.com/yutao517/code/main/kube-flannel.yml

kubectl apply -f kube-flannel.yml

kubectl get nodes -n kube-system -o wide

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/845412.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号