如何通过rancher部署k8s集群

Posted 巴山农夫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过rancher部署k8s集群相关的知识,希望对你有一定的参考价值。

1 前言

最近的工作中需要使用到K8S,而面临的第一个问题就是如何部署一个K8S集群环境。现有多种部署方式,如:kubeadmin,二进制,rancher。在我看来最便捷的就是通过rancher来部署。本文就简单介绍一下如何操作。

2 安装前准备

2.1 准备计算机

您需要准备三台计算机。虚拟机,物理机,云服务器均可,各项配置尽可能高一些。这三台计算机应部署有Linux系统,且能互相通信。

2.2 环境设置

以下设置需要在三台计算机上都完整地执行一次。

2.2.1 升级Linux内核到最新版

参见我的另外一篇博客:如何将CentOS7的Linux内核便捷地升级到最新版(左侧文字含有超链接,可以直接点击跳转),如果您的操作系统有差异,可以自行在网上查找相关教程。

2.2.2 设置时间同步

您可以同时运行一下date命令,检查一下几台机器的时间是否正常。如果正常,则可以跳过此步。
如果时间有异常,或者为了更稳妥一点,您可以设置一下时间同步。具体操作参见我的另外一篇博客:CentOS7的时间设置与同步 (左侧文字含有超链接,可以直接点击跳转)。如果您的操作系统有差异,可以自行在网上查找相关教程。

2.2.3 hostname设置

vim /etc/hostname 即可设置全限定域名,删除原有内容,输入完整的全限定域名保存退出即可。

2.2.4 hosts设置

vim /etc/hosts 即可设置hosts。

2.2.5 关闭防火墙

CentOS7的命令如下:

# 关闭防火墙
systemctl stop firewalld
#关闭防火墙开机启动
systemctl disable firewalld

2.2.6 关闭selinux

临时关闭:输入命令setenforce 0。但重启系统后还会开启。
永久关闭:输入命令vi /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出。

2.2.7 安装Docker

Docker的安装方式有多种,我最常用的是通过yum进行安装。命令如下:

# 添加yum源
yum-config-manager  --add-repo  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 您可以选择其他版本,但注意与k8s版本匹配。
yum  -y install docker-ce-20.10.9-3.el7
# 启动docker
systemctl start docker
# 设置docker开机启动
systemctl enable docker

3 安装rancher

只需要其中一台机器安装rancher,所以您在您的机器中任选一台进行安装。
安装rancher只需要执行如下命令:

docker run -d --restart=unless-stopped -p 8080:80 -p 8443:443 --privileged rancher/rancher:latest

反馈如图所示:

4 配置Rancher

完成后,访问https://<部署主机的ip或全限定域名>:8443 ,进入rancher管理页面。参照下图进行勾选和信息填写。

点击Continue,跳转到设置服务器URL的页面。注意,此处最好不要设置为全限定域名。否则容易报错。

填写IP地址是最稳妥的方式。

如果您希望用中文界面,可以点击页面右下角切换语言。

5 创建k8s集群

点击右上角的添加集群。
选择自定义。
填写集群名称。
在“kubernetes选项”中选择k8s的版本。

在“高级集训选项”中选择是否启用Nginx Ingress。我这里没有选择没有开启,主要是用不上。是否开启请根据您的需求来定。这个设置项后续可以点击rancher界面中此集群的升级按钮进行重新选择。

点击下一步后,进入添加主机命令页面。点选Etcd,Control Plane,Woker三个选项,然后复制下方的命令,到master节点执行。
只点选Woker一个选项,然后复制下方的命令,到node节点执行。
上述命令实际上就是在各个机器上运行一系列docker容器,整个部署过程大约需要20分钟左右。您可以按照下图的步骤点击进入k8s集群的system项目,观察system相关的命名空间中的资源是否都已经准备好。

如下图所示,左侧状态为Active ,则表示相应的资源准备就绪。当全部资源都是就绪状态,则表示K8S安装完成。

以上是关于如何通过rancher部署k8s集群的主要内容,如果未能解决你的问题,请参考以下文章

K8s 通过 Rancher 管理 k8s 集群

K8s 通过 Rancher 管理 k8s 集群

K8s 通过 Rancher 管理 k8s 集群

centos7系统部署rancher2.x,并创建k8s集群

K8S集群中部署 Rancher 2.5

rancher三节点k8s集群部署例子