K8s安装部署

笔者学习理解使用了docker后,了解到K8s是一款基于容器的集群管理平台。于是开始了学习并理解K8s的概念和应用。在这篇文章中,笔者将记录笔者安装部署K8s时的过程以及遇到问题时的解决方案。

搭建一个完整的Kubernetes

  1. 生产环境K8S平台规划
  2. 服务器硬件配置推荐
  3. 官方提供三种部署方式
  4. 为Etcd和APIServe自签SSL证书
  5. Etcd数据库集群部署
  6. 部署Master组件
  7. 部署Node组件
  8. 部署K8s集群网络
  9. 部署Web UI
  10. 部署集群内部DNS解析服务

常见的K8S安装部署方式

  1. Minikube 单节点微型K8S
  2. 二进制安装部署(生产首选,新手推荐)
  3. 使用kubeadm进行部署,K8S的部署工具,在K8S中运行

Minikube

获取Minikube的最简单的方式是去官方网站下载。
kubernetes.io/docs/tutorials/hello-minikube/
K8s安装部署_第1张图片
浏览并找到lauch terminal。点击,在下方会弹出一个控制台。
K8s安装部署_第2张图片
等待出现如下界面即可。
K8s安装部署_第3张图片
输入如下命令,它就能列出资源空间

$ kubectl get pods -n kube-system

K8s安装部署_第4张图片
如果我们只需要预览和学习,那么只用Minikube就可。

kubeadm安装部署

安装软件 kubelet kubeadm kubectl
初始化集群
添加node到集群中
证书自动生成
集群管理系统是以容器方式存在,容器运行在master
容器镜像谷歌提供

首先找到一个比较大的硬盘,然后创建三个文件夹用来存放虚拟机,笔者选择了D盘,并且创建了如下三个文件夹。
K8s安装部署_第5张图片
此时,我们创建一个虚拟机,选择版本CentOS 7 64位
K8s安装部署_第6张图片
按照如下配置
K8s安装部署_第7张图片
K8s安装部署_第8张图片
K8s安装部署_第9张图片
K8s安装部署_第10张图片
对于worker1和worker2也是同样的配置。
接下来安装操作系统,选择CD/DVD自动检测,可以看到如下界面
K8s安装部署_第11张图片
那么我们选择使用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,等待安装。
K8s安装部署_第12张图片
首先选择语言,选择默认英文点击continue继续。
K8s安装部署_第13张图片
选择左下角网络和主机名

K8s安装部署_第14张图片
将off点击,打开后按done完成
K8s安装部署_第15张图片
再选择时区
K8s安装部署_第16张图片
在software selection中,将右侧5个选项选中。
K8s安装部署_第17张图片
点击完成,然后开始安装,在安装过程中设置密码。worker1与worker2也用相同的配置进行安装,安装完reboot重启即可。

接下来要对主机名进行设置。输入命令

hostnamectl set-hostname ×××

那么我们先设置主机名列表

192.168.216.100 master1
192.168.216.101 worker1
192.168.216.102 worker2

K8s安装部署_第18张图片
按照如图所示输入,笔者在第一次输入中粗心忽略了set-hostname中的-因此显示未知操作。在另外两台虚拟机中也用相似命令,并按照worker1与worker2进行操作。
K8s安装部署_第19张图片
我们可以用hostname命令来查看当前的主机名,可以看到笔者第一台虚拟机的主机名是master1。

接下来我们要根据自己主机的实际情况配置IP地址。打开配置文件,按照以下进行修改。
K8s安装部署_第20张图片
重启网络后,用ip a s来查看ip地址,可以看到已经修改到我们需要的ip地址。
K8s安装部署_第21张图片
K8s安装部署_第22张图片
K8s安装部署_第23张图片
用vi打开 /etc/hosts修改,这三个虚拟机执行相同操作
K8s安装部署_第24张图片

ping一下worker1,发现可以链接到
K8s安装部署_第25张图片
接下来做一下主机的安全配置。

  1. 关闭防火墙
  2. SELINUX配置

K8s安装部署_第26张图片
我们可以先用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

K8s安装部署_第27张图片
操作完成后,重启虚拟机,重启后输入命令getenforce,如果出现disabled,那就成功了。
K8s安装部署_第28张图片
接下来对主机时间进行同步设置。
由于最小化安装系统,需要单独安装ntpdate。
使用kubeadm部署必须关闭swap分区,修改配置文件后需要重启操作系统。

输入命令

yum -y install ntpdate

装完这个软件,进行时间同步。
因笔者在虚拟机网络修改上的失误,填写了错误的ip地址和DNS,导致无法正常联网,出现以下界面。
K8s安装部署_第29张图片
因此,笔者开始删除并重新创建虚拟机,并且以视频的方式记录了整个安装过程。过程中遇到多处问题,通过笔者在网上的搜索以及学习,一步步解决难题,最后成功。(视频是一个个片段接在一起的,所以如果发生突然跳跃的情况是很正常的)

下面附上笔者的视频种子链接:
https://pan.baidu.com/s/1x9kYabpeZbk9qpu2C9yaTQ
提取码:i2rx

你可能感兴趣的:(云服务使用体验)