阿里云部署rancher2.1

背景:近期因为公司须要将部署在ucloud上的rancher迁移到阿里云上,因此将部署到阿里云的图中遇到的问题和踩到的坑在这里进行记录

没法删除namespace

在安装新环境的rancher以前,须要将kubernetes集群中cattle-system ns下面的cluster-agent和node-agent干掉,这里我选择直接删除cattle-system这个命名空间前端

kubectl delete ns cattle-system

然而问题来了,在删除命名空间以后,这个命名空间并无马上被删除,而是一直处于Terminating状态,这里我专门写了一篇文章解决这个问题,这里就再也不赘述node

阿里云证书配置

因为以前使用的ucloud的机器进行测试,使用默认自签名证书并无使用SSL证书,因此在配置证书这里遇到的许多的问题
首先根据官方文档使用权威CA机构颁发的证书,这里使用的是本公司本身的证书
获取证书方法:nginx

进入证书页面
clipboard.pngdocker

点击下载证书,选择nginx证书下载segmentfault

clipboard.png

以后将下载的证书上传到rancher所在服务器,并配置好数据卷挂载
将下面代码的挂载地址指向证书文件,运行代码后端

docker run -d --restart=unless-stopped \
  -p 80:80 -p 443:443 \
  -v /root/var/log/auditlog:/var/log/auditlog \
  -e AUDIT_LEVEL=3 \
  -v /etc/your_certificate_directory/fullchain.pem:/etc/rancher/ssl/cert.pem \
  -v /etc/your_certificate_directory/privkey.pem:/etc/rancher/ssl/key.pem \
  rancher/rancher:latest --no-cacerts

以后会自动冲dockerhub上拉取最新的rancher进行进行安装,以后使用命令服务器

docker ps

查看容器是否在运行,若是运行正常,则后端的配置就完成了
划重点:这是是在后端配置了证书,因此在阿里云的配置上要使用四层TCP监听
这个地方但是坑了我许久,我一直在前端配置https七层监听,致使一直没法正常访问,一度已经到了怀疑人生的地步=。=
以后就是简单的阿里云SLB配置四层TCP监听,这里也就再也不赘述了less

k8s集群导入rancher

先后端都准备就绪,如今就能够访问rancher了,访问rancher根据页面提示进行基本配置,登陆后选择添加集群
选择导入现有集群测试

clipboard.png

为集群建立一个rancher中的名称,而后根据提示将命令拷贝到k8s集群所在宿主机执行便可,注意:这里因为配置了证书,因此选择有证书,不绕过证书的那个命令执行,以后就可看到集群数据导入中
图片描述阿里云

等待几秒便可开心的使用rancher了!

鸣谢

感谢RancherLabs的尹学峰老师的指点
rancher官网:https://www.cnrancher.com/

相关文章
相关标签/搜索