centos7.5部署rancher2

在上一节部署minikube的基础上继续部署rancher到环境中

前言

rancher简单理解就是一个管理k8s集群的界面工具,其可以管理各种环境下面的k8s集群。

集成k8s有多种方式,其官网给的是案装程序中自动案装一个k8s集群。笔者尝试这种方式的时候失败了,其还有一种方式是直接导入现有的k8s集群,这种方式比较简单,也比较容易理解,本次实验使用的就是导入鲜有的k8s集群的方式。

 

部署过程

1.启动rancher服务

启动rancher管理模块。这个比较简单,rancher管理模块直接被打包成一个镜像,使用镜像启动rancher的server容器就可以。

$ docker run -d --restart=unless-stopped -v /opt/rancher/data/:/var/lib/rancher/ -p 80:80 -p 443:443 rancher/rancher:stable

这里容易出现的问题是镜像下载失败,笔者从dockerhub官网下载的时候曾经出现ahentication request的错误提示,提示我需要授权。

笔者配置了国内的镜像加速器,采用国内的镜像加速器手动下载了rancher镜像。然后再启动rancher容器。这里的版本号是stable,不是具体的版本号,其封版后对应的版本号应该为v2.2.8。

2.导入现有的k8s集群到rancher中

安装完后,rancher的访问是

https://ip

其中ip为rancher安装的宿主机的机器IP,笔者安装rancher的虚拟机IP为10.0.0.94,

输入:https://10.0.0.94

打开后,页面会提示要输入默认管理员账号admin的密码,输入密码后,点击continue

然后提示rancher服务端的地址,这里保留默认值,点击Save进入下一步。

下一步后进入到一个cluster的列表页面,由于系统中还没有添加任何k8s集群,这里是空白的,提示要添加k8s集群。

点击右上方或者下方的add cluster进入添加k8s集群页面。

 

进入添加页面后,默认的是安装谷歌的GKE集群。这里我们添加集群的方式是导入现有k8s集群,要选择右侧的

import existing cluster。

默认为添加GKE集群:

选择导入现有集群:

为集群输入一个name,然后点击create。


这里的页面提示要在安装的k8s集群上执行命令。

本次实验笔者的minikube和rancher都是安装在同一台机器上,即IP10.0.0.94机器上。

如果是minikube与rancher不是安装在同一台集群上,或者k8s集群是多节点的集群,则需要在minikube机器上或者多节点集群中可以执行kubectl命令的机器上输入页面提示的命令。

第一条命令是权限绑定,后面的USER_ACCOUNT需要查看kubeconfig文件中的账号,这里为minikube.

第二条命令是添加集群到rancher中,第二条执行可能会报错,可以用第三条命令代替第二条命令。

笔者这里直接执行第一条命令和第三条命令安装。

切换到minikube宿主机的命令行终端,执行以下命令:

$ kubectl create clusterrolebinding cluster-admin-binding --clusterrole cluster-admin --user minikube

$ curl --insecure -sfL https://10.0.0.94/v3/import/ldk2594788vt47fjk4pz8vwmbl7mxqd522kqbvrqxt5zhlqvsgdgwz.yaml | kubectl apply -f -

执行完命令后切换回页面,点击Done完成添加,进入集群详情页面。这时候集群并没有马上加加入到rancher中,需要等待

一段时间才能完全加入到rancher中。

这个地方也很容易出现一个问题是拉取镜像失败,页面一致提示集群在pending状态。

可以通过如下方式检查:

$ kubectl get pod -n cattle-system

如果显示pod的状态为ErrImgPull或者其他异常状态,一般就是镜像没有拉取成功导致。如果遇到这种情况,可以先通过命令查看pod中下载的镜像:

$ kubectl describe pod xx -n cattle-system

其中xx替换为pod的ID。查看其下载的image是多少,手动将pod下载的镜像下载下来,然后将有问题的pod删除。

这个时候deployment会使用的本地的镜像重新创建pod。

等待一段时间以后,集群会加入到rancher,这个时候页面显示集群的信息:

后台显示rancher相关的pod也是正常:

$ kubectl get pod -n cattle-system

至此,minikube集群就加入到rancher中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值