前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rancher多主机部署

Rancher多主机部署

原创
作者头像
simplezhao
修改2021-06-24 17:57:53
2.1K0
修改2021-06-24 17:57:53
举报
文章被收录于专栏:simple时间simple时间

整理在腾讯云上如何使用rancher搭建k8s集群,以下操作不适用于生产环境,用于个人测试

1 配置说明

使用到的服务:CFSCVM

在部署中使用的CVM服务器配置如下:

image-20210623144304343
image-20210623144304343

使用的文件存储配置如下:

image-20210624143319616
image-20210624143319616

2 端口要求

参考:端口要求 | Rancher文档;需要在安全组内开放以上端口

其中

master

2核4G

安装rancher server, 集群etcd、control角色

node

4核8G

安装k8s 节点,集群worker角色

3 安装rancher server

Ssh远程连接到master节点

代码语言:txt
复制
docker pull rancher/rancher
sudo docker run -d --privileged --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher

以上执行时,使用自签名证书,如果使用CA签名证书,可以参考如下命令

代码语言:txt
复制
sudo docker run -d  --restart=unless-stopped \
	-p 80:80 -p 443:443 \
	-v <rancher/data path>:/var/lib/rancher \
	-v <full_chain.pem path>:/etc/rancher/ssl/cert.pem \
	-v <private.pem path>:/etc/rancher/ssl/key.pem \
	-v /var/log/rancher/auditlog:/var/log/auditlog \
	--privileged --name rancher-server  rancher/rancher --no-cacerts

4 添加集群

登录到Rancher 管理页面

image-20210511144233895
image-20210511144233895

点击添加集群,选择自定义

image-20210511144255559
image-20210511144255559

4.1 配置master节点

  1. 选择Etcd、Control角色
  2. 填写内网地址
  3. 填写节点名称
image-20210511152659512
image-20210511152659512

然后会生成命令,在Master节点主机上执行

image-20210624131205714
image-20210624131205714

4.2 配置worker节点

  1. 选择Worker角色
  2. 填写内网地址
  3. 填写节点名称

然后会生成命令,在Node节点主机上执行

image-20210624131205714
image-20210624131205714

Rancher会监测角色是否齐全,如果不齐全,它会一直等待,只有我们创建的节点包含所有角色,才会去创建K8s服务

4.3 最后的结果

image-20210624131709858
image-20210624131709858

5 部署应用测试

选择已经安装的集群,选择命名空间Default

image-20210624133826105
image-20210624133826105

里面有工作负载、负载均衡等项

image-20210624133946097
image-20210624133946097

点击部署服务,填写名称、docker镜像、端口映射等,点击启动

image-20210624134301378
image-20210624134301378

完成后,显示当前处于Active,对外暴露端口为31621

image-20210624134430442
image-20210624134430442

如果想通过公网访问,需要手动在安全组开放端口

image-20210624134713237
image-20210624134713237

打开浏览器,输入IP/域名+端口号进行访问

image-20210624135020120
image-20210624135020120

5.1 通过Ingress访问

在负载均衡页面添加转发规则,点击保存,等待生效

image-20210624140420462
image-20210624140420462

这样就可以通过id/域名+path的方式访问

image-20210624140608911
image-20210624140608911

6 增加持久卷

以下使用腾讯云产品cfs NFS方式挂载PV;首先需要购买腾讯云的文件存储

6.1 购买文件存储

  1. 新建文件系统
  2. 购买资源包(个人测试建议选择跟云主机同一区域的)
image-20210624141158272
image-20210624141158272
  1. 查看挂点信息中的IP
image-20210624141316684
image-20210624141316684

6.2 在Rancher中添加持久卷PV

选择集群,然后选择存储--持久卷,点击添加PV

  • 卷插件选择NFS Share
  • 服务器填写上一步生成的地址
  • 路径填写/;新建的NFS系统中没有其他文件夹,如果想挂载二级目录,需要先手动创建目录
  • 访问模式选择多主机读写
image-20210624141553553
image-20210624141553553

6.3 添加PVC

点击添加PVC,选择上一步新建的持久卷(一个PV只能在一个PVC下面),删除PVC时,会将PV也“删除"😱

image-20210624141855083
image-20210624141855083

6.4 挂载数据卷

新建工作负载或者升级已有负载

选择数据卷--添加卷--使用现有PVC

  • 添加正确的容器路径
  • 子路径填写相对路径(相对于根路径),这里面写的路径,会自动在NFS文件系统中创建😄
image-20210624142438484
image-20210624142438484

通过df -h 能看到挂载成功

image-20210624142958655
image-20210624142958655

7 证书申请

免费证书可以在这个网站生成,使用比较简单,具体使用参考网上说明

image-20210624143604995
image-20210624143604995

参考

1(https://docs.rancher.cn/docs/rancher2.5/installation/other-installation-methods/single-node-docker/_index/)

2(https://docs.rancher.cn/docs/rancher2/installation/requirements/_index/)

3(https://docs.rancher.cn/docs/rancher2/quick-start-guide/deployment/quickstart-manual-setup/_index)

4(https://docs.rancher.cn/docs/rancher2/best-practices/use-in-china/_index/)

5(https://docs.rancher.cn/docs/rancher2/installation/other-installation-methods/single-node-docker/troubleshooting/_index/)

6(https://docs.rancher.cn/docs/rancher2.5/installation/other-installation-methods/single-node-docker/advanced/_index/)

7(https://docs.rancher.cn/docs/rancher2.5/admin-settings/replace-ip-domain/_index/)

8(https://github.com/theAkito/rancher-helpers/blob/master/scripts/cleanup_rancher.sh)

9(https://blog.csdn.net/aixiaoyang168/article/details/88664263)

10(https://blog.csdn.net/aixiaoyang168/article/details/88600530#t12)

11(https://cloud.tencent.com/document/product/582/36929)

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 配置说明
    • 2 端口要求
    • 3 安装rancher server
    • 4 添加集群
      • 4.1 配置master节点
        • 4.2 配置worker节点
          • 4.3 最后的结果
          • 5 部署应用测试
            • 5.1 通过Ingress访问
            • 6 增加持久卷
              • 6.1 购买文件存储
                • 6.2 在Rancher中添加持久卷PV
                  • 6.3 添加PVC
                    • 6.4 挂载数据卷
                    • 7 证书申请
                    • 参考
                    相关产品与服务
                    容器服务
                    腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档