下面是使用sealos快速搭建K8s集群环境的完整攻略:
环境准备
前提条件
在开始使用sealos安装k8s之前,需要确保所有机器上的以下软件版本符合要求:
- Docker: >= 18.09.0
- iptables: >= 1.6.0
- ipvsadm: >= 1.30
- socat: >= 1.7.0
- 预留的iptables端口(可自定义)
机器列表
在开始部署之前,需要先准备好一组机器,可以在这些机器上进行单机或多机的k8s部署。
举个例子,假设有以下四台机器:
- 192.168.0.1
- 192.168.0.2
- 192.168.0.3
- 192.168.0.4
使用sealos快速搭建K8s集群环境
使用sealos可以快速搭建高可用的k8s集群,具体步骤如下:
1. 安装sealos
$ wget https://sealyun.oss-cn-beijing.aliyuncs.com/latest/sealos && chmod +x sealos && mv sealos /usr/local/bin/
2. 准备部署配置文件
sealos的部署配置文件是一个json格式的文件,包含了集群的一些基本信息和配置参数。
下面是一个例子:
{
"nodes": [
{
"nodeIp": "192.168.0.1",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "master"
},
{
"nodeIp": "192.168.0.2",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "master"
},
{
"nodeIp": "192.168.0.3",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "node"
},
{
"nodeIp": "192.168.0.4",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "node"
}
],
"serviceName": "kubernetes",
"vip": "192.168.0.250",
"dockerProxys": "",
"etcdToken": "liu",
"keepaliveImage": "registry.cn-hangzhou.aliyuncs.com/acs/keepalived:1.3.5",
"haproxyImage": "registry.cn-hangzhou.aliyuncs.com/acs/haproxy:1.5",
"flanneldSubnet": "10.10.0.0/12",
"flanneldBackend": "vxlan"
}
上面的配置文件指定了4台机器,其中前两台是master节点,后两台是node节点,集群的服务名称为kubernetes,vip为192.168.0.250。
3. 执行部署命令
根据前面准备的配置文件,执行以下命令进行k8s集群的部署:
$ sealos init --pkg-url https://sealyun.oss-cn-beijing.aliyuncs.com/1.19.7/rke_linux-amd64
该命令会从远端下载rke二进制包,并使用配置文件中的参数进行安装。
这一步需要联网才能成功。
4. 验证集群
使用以下命令可以检查集群的状态:
$ kubectl get nodes
如果集群状态正常,则会输出所有的node节点信息。
下面是一个demo:
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
192.168.0.1 Ready control-plane,master 5m35s v1.19.7
192.168.0.2 Ready control-plane,master 4m37s v1.19.7
192.168.0.3 Ready <none> 3m36s v1.19.7
192.168.0.4 Ready <none> 2m32s v1.19.7
示例
下面给出两个使用sealos快速搭建k8s集群的示例:
示例1:快速搭建一台k8s单节点环境
创建一个配置文件,指定nodeIp和role即可:
{
"nodes": [
{
"nodeIp": "192.168.0.1",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "master"
}
],
"serviceName": "kubernetes",
"vip": "192.168.0.250",
"dockerProxys": "",
"etcdToken": "liu",
"keepaliveImage": "registry.cn-hangzhou.aliyuncs.com/acs/keepalived:1.3.5",
"haproxyImage": "registry.cn-hangzhou.aliyuncs.com/acs/haproxy:1.5",
"flanneldSubnet": "10.10.0.0/12",
"flanneldBackend": "vxlan"
}
然后执行以下命令即可:
$ sealos init --pkg-url https://sealyun.oss-cn-beijing.aliyuncs.com/1.19.7/rke_linux-amd64
示例2:快速搭建一台k8s多节点环境
创建一个配置文件,指定所有的node节点的ip与role即可:
{
"nodes": [
{
"nodeIp": "192.168.0.1",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "master"
},
{
"nodeIp": "192.168.0.2",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "master"
},
{
"nodeIp": "192.168.0.3",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "node"
},
{
"nodeIp": "192.168.0.4",
"sshUser": "root",
"sshPort": "22",
"sshPwd": "123456",
"role": "node"
}
],
"serviceName": "kubernetes",
"vip": "192.168.0.250",
"dockerProxys": "",
"etcdToken": "liu",
"keepaliveImage": "registry.cn-hangzhou.aliyuncs.com/acs/keepalived:1.3.5",
"haproxyImage": "registry.cn-hangzhou.aliyuncs.com/acs/haproxy:1.5",
"flanneldSubnet": "10.10.0.0/12",
"flanneldBackend": "vxlan"
}
然后执行以下命令即可:
$ sealos init --pkg-url https://sealyun.oss-cn-beijing.aliyuncs.com/1.19.7/rke_linux-amd64
总结:
通过上述文本内容,你应该已经掌握了使用sealos快速搭建K8s集群环境的完整攻略,包括环境准备、使用sealos快速搭建K8s集群环境和示例。希望能对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用sealos快速搭建K8s集群环境的过程 - Python技术站