如何使用kubeadm方式快速安装Kubernetes
本篇内容主要讲解"如何使用kubeadm方式快速安装Kubernetes",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用kubeadm方式快速安装Kubernetes"吧!
Kubeadm安装
kubeadm是Kubernetes官方提供的用于快速安装Kubernetes集群的工具,伴随Kubernetes每个版本的发布都会同步更新,kubeadm会对集群配置方面的一些实践做调整,通过实验kubeadm可以学习到Kubernetes官方在集群配置上一些新的最佳实践。
安装Docker ce
Docker安装 每个机器都需要装
环境准备
编辑hosts对应关系
cat <>/etc/hosts192.168.37.61 Smile1192.168.37.62 Smile2192.168.37.63 Smile3EOF
关闭防火墙
systemctl stop firewalld.service systemctl disable firewalld.service
禁用SELINUX
sudo setenforce 0sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
关闭swap
swapoff -ased -i 's/.*swap.*/#&/' /etc/fstab
配置内核参数添加如下内容
cat > /etc/sysctl.d/k8s.conf < cat < kubelet的启动环境变量要与docker的cgroup-driver驱动一样 docker的cgroup-driver是cgroupfs,而k8s默认是systemd 修改docker的cgroup-driver 最终文件内容 { "registry-mirrors": [ "https://dockerhub.azk8s.cn", "https://reg-mirror.qiniu.com" ], "exec-opts": ["native.cgroupdriver=systemd"] } 重启Docker Master节点执行命令 : kubeadm init --kubernetes-version=1.15.0 \ --apiserver-advertise-address=192.168.37.61 \ --image-repository=gcr.azk8s.cn/google_containers \ --pod-network-cidr=10.244.0.0/16 --kubernetes-version : 指定版本号 --apiserver-advertise-address : 指定主机地址 其中设置image-repository这一步很重要,kubeadm默认从官网k8s.grc.io下载所需镜像,国内无法访问,因此需要指定阿里云或者是其他国内镜像仓库地址。 定义POD的网段为: 10.244.0.0/16, 运行初始化成功后返回的三条命令 有很多种选择参考 我们选择的是flannel,其它的几种可能会有问题 执行安装命令 查看运行状态 确保所有的pod都处在运行状态 将所有的node节点加入到kubernets集群 再次查看各个pod的状态,确保都是处于Runing状态 到此,相信大家对"如何使用kubeadm方式快速安装Kubernetes"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!配置K8S的yum源
安装kubelet、kubeadm、kubectl
yum makecache fastyum install -y kubelet kubeadm kubectl
调整启动方式
docker info | grep -i cgroupCgroup Driver: cgroupfs --> 运行命令显示
vim /etc/docker/daemon.json加入内容 : { "exec-opts": ["native.cgroupdriver=systemd"] }
systemctl restart dockersystemctl status docker
启动kubelet服务
systemctl enable kubelet.servicesystemctl start kubelet.service
配置Master节点
进行kubernetes集群初始化
--token-ttl 0初始化成功后会返回如下信息
//这个返回信息三条命令是配置kubectl工具的命令mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config// 这个返回信息是配置Node节点的命令kubeadm join 192.168.98.230:6443 --token dexs09.ftjp7y7obq6a3t6n \ --discovery-token-ca-cert-hash sha256:4aace846f8a6c381902592049591152fd7250b63e500e370a4b64902d202f7f2
配置kubectl工具
部署pod的网络
wget https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml//在kube-flannel.yml里面默认的镜像下载地址是quay.io,国内无法访问,这里替换所有的quay.io为 quay-mirror.qiniu.comsed -i "s/quay.io/quay-mirror.qiniu.com/g" kube-flannel.yml
kubectl apply -f kube-flannel.yml
kubectl get pod --all-namespaces -o wide
部署Node节点
//在Node节点上执行(这个命令就是集群初始化之后的返回信息)kubeadm join 192.168.98.230:6443 --token dexs09.ftjp7y7obq6a3t6n \ --discovery-token-ca-cert-hash sha256:4aace846f8a6c381902592049591152fd7250b63e500e370a4b64902d202f7f2
最后检测集群各节点的运行状态
kubectl get nodes
kubectl get pod --all-namespaces -o wide
如果有问题,重新配置Master
kubeadm reset