笔者学习理解使用了docker后,了解到K8s是一款基于容器的集群管理平台。于是开始了学习并理解K8s的概念和应用。在这篇文章中,笔者将记录笔者安装部署K8s时的过程以及遇到问题时的解决方案。
搭建一个完整的Kubernetes
常见的K8S安装部署方式
Minikube
获取Minikube的最简单的方式是去官方网站下载。
kubernetes.io/docs/tutorials/hello-minikube/
浏览并找到lauch terminal。点击,在下方会弹出一个控制台。
等待出现如下界面即可。
输入如下命令,它就能列出资源空间
$ kubectl get pods -n kube-system
kubeadm安装部署
安装软件 kubelet kubeadm kubectl
初始化集群
添加node到集群中
证书自动生成
集群管理系统是以容器方式存在,容器运行在master
容器镜像谷歌提供
首先找到一个比较大的硬盘,然后创建三个文件夹用来存放虚拟机,笔者选择了D盘,并且创建了如下三个文件夹。
此时,我们创建一个虚拟机,选择版本CentOS 7 64位
按照如下配置
对于worker1和worker2也是同样的配置。
接下来安装操作系统,选择CD/DVD自动检测,可以看到如下界面
那么我们选择使用ISO镜像文件,并且浏览本地存放镜像的地址,选中镜像。笔者使用的是CentOS-7-x86_64-DVD-2003.iso镜像。
这里可以提一下,官方的下载链接为http://isoredirect.centos.org/centos/7/isos/x86_64/
阿里云站点http://mirrors.aliyun.com/centos/7/isos/x86_64/
选中ISO镜像文件即可下载。
然后点击确定,点击开启虚拟机。选择安装centOS7,等待安装。
首先选择语言,选择默认英文点击continue继续。
选择左下角网络和主机名
将off点击,打开后按done完成
再选择时区
在software selection中,将右侧5个选项选中。
点击完成,然后开始安装,在安装过程中设置密码。worker1与worker2也用相同的配置进行安装,安装完reboot重启即可。
接下来要对主机名进行设置。输入命令
hostnamectl set-hostname ×××
那么我们先设置主机名列表
192.168.216.100 master1
192.168.216.101 worker1
192.168.216.102 worker2
按照如图所示输入,笔者在第一次输入中粗心忽略了set-hostname中的-因此显示未知操作。在另外两台虚拟机中也用相似命令,并按照worker1与worker2进行操作。
我们可以用hostname命令来查看当前的主机名,可以看到笔者第一台虚拟机的主机名是master1。
接下来我们要根据自己主机的实际情况配置IP地址。打开配置文件,按照以下进行修改。
重启网络后,用ip a s来查看ip地址,可以看到已经修改到我们需要的ip地址。
用vi打开 /etc/hosts修改,这三个虚拟机执行相同操作
ping一下worker1,发现可以链接到
接下来做一下主机的安全配置。
我们可以先用systemctl status firewalld查看防火墙状态。我们使用命令systemctl stop firewalld关闭防火墙。
我们现在要把它设置成开机禁用,因此我们要执行
systemctl disable firewalld
firewall-cmd --state
如果出现not running就是关闭的。
输入命令getenforce查看SELINUX是否为开启状态,如果出现Enforcing就是开启的。因此我们要对其配置文件进行修改。
cat /etc/selinux/config
sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
操作完成后,重启虚拟机,重启后输入命令getenforce,如果出现disabled,那就成功了。
接下来对主机时间进行同步设置。
由于最小化安装系统,需要单独安装ntpdate。
使用kubeadm部署必须关闭swap分区,修改配置文件后需要重启操作系统。
输入命令
yum -y install ntpdate
装完这个软件,进行时间同步。
因笔者在虚拟机网络修改上的失误,填写了错误的ip地址和DNS,导致无法正常联网,出现以下界面。
因此,笔者开始删除并重新创建虚拟机,并且以视频的方式记录了整个安装过程。过程中遇到多处问题,通过笔者在网上的搜索以及学习,一步步解决难题,最后成功。(视频是一个个片段接在一起的,所以如果发生突然跳跃的情况是很正常的)
下面附上笔者的视频种子链接:
https://pan.baidu.com/s/1x9kYabpeZbk9qpu2C9yaTQ
提取码:i2rx