您现在的位置是:首页 >学无止境 >【云原生】使用外网Rancher2.5.12搭建阿里云内网K8s 1.20集群网站首页学无止境

【云原生】使用外网Rancher2.5.12搭建阿里云内网K8s 1.20集群

登云时刻 2024-06-14 17:20:31
简介【云原生】使用外网Rancher2.5.12搭建阿里云内网K8s 1.20集群

一、目标

在云平台搭建一套高可用的K8s集群

二、解决方案

第一种:使用阿里云ACK/ASK或者华为云的CCE/CCI等云产品都可以直接实现
第二种:完全自己动手自建

第一种方案比较简单,云厂商直接提供一套K8s或者提供简易搭建K8s产品,如果有很多人想了解的话,在评论区留言视情况而定吧

本篇说下第二种方案,在云厂商平台上自建K8s集群。搭建Rancher暴露到外网,登录外网Rancher创建内网K8s集群,当然这种方法根据自己具体不同的需求也是有很多种解决方案的,我这里只是分享其中一种~

三、草图

[在这里插入图片描述](https://img-blog.csdnimg.cn/46b802c9076b4f95834ecdc8cf19a309.png

四、版本信息

服务版本
Rancher2.5.12
K8s1.20
云平台阿里云

五、资源规划

ECS服务器IP
Rancher172.16.131.161
K8s-master01172.16.131.162
K8s-master02172.16.131.173
K8s-worker01172.21.205.94
K8s-worker02172.26.234.175

付费:
1、5台ECS:应该是6台ECS,资金有限省掉1台master节点
2、NAT网关+弹性公网IP:出网
3、弹性公网IP:独立绑定Rancher服务
免费:
1、VPC
2、安全组

六、必要条件

1、使用NAT公网网关产品,SNAT绑定EIP做交换机粒度,这里的交换机是与ECS交换机是一样的,目的是让使用绑定该交换机的ECS有访问外网的能力,方便拉取K8s容器镜像
2、所有ECS在一个VPC、安全组内,同一个VPC、安全组网络是互通的
3、Rancher的ECS绑定EIP,方便管理内网K8s集群,其他ECS不绑EIP

七、开始部署

1、安装Docker

所有服务器安装docker

curl https://releases.rancher.com/install-docker/19.03.sh | sh

#注:这个脚本会安装iptables,关闭selinux,安装19.03版本docker

2、安装Rancher

在规划的Rancher ECS安装Rancher服务

docker pull rancher/rancher:v2.5.12
docker run -d  --restart=unless-stopped 
  --privileged 
  -p 80:80 -p 443:443 
  -v /opt/rancher:/var/lib/rancher 
  --name rancher 
  rancher/rancher:v2.5.12

开启安全组的443和80端口号
在这里插入图片描述打开浏览器,访问Rancher服务,默认重置下密码
在这里插入图片描述配置Rancher Server的URL,会在注册K8s集群的时候用到,不会影响到使用Rancher

在这里插入图片描述

3、解析Rancher Server URL域名

阿里云解析的话,点击这里
在这里插入图片描述

4、创建K8s集群

在Rancher界面操作
在这里插入图片描述选择创建一个新的集群
在这里插入图片描述我这里集群名字:test-k8s,1.20版本,canal网络组件
在这里插入图片描述下一步就可以看到注册集群的命令了
在这里插入图片描述

5、注册K8s集群节点

K8s-master节点操作:

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run  rancher/rancher-agent:v2.5.12 --server https://rancher.vrgv.tech --token 4xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx4r6k --ca-checksum 64f7xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11c9b33a4f --etcd --controlplane --worker

K8s-worker节点操作:

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run  rancher/rancher-agent:v2.5.12 --server https://rancher.vrgv.tech --token 4xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx4r6k --ca-checksum 64f7xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11c9b33a4f --worker

八、验证

集群全部注册完成,使用kubectl命令测试下
在这里插入图片描述在这里插入图片描述在这里插入图片描述

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。