• 秒搭Kubernetes之使用Rancher


    Rancher

    在接触Docker和K8s的前阶段就耳闻目睹到Rancher,但是没有进一步接触过。直到将K8s搭建完成。才进一步了学习与实践Rancher。

    Rancher是简便易用的容器管理。其中Rancher对Kubernetes的支持与维护特别用心,使其在生产环境中的基础设置里更易于搭建与使用。

    但实话实说,其一对于k8s的小白能通过rancher方便部署k8s,但在其封装下,不易理解k8s的内部实现。对于更多专业人士,推荐自己亲自搭建K8s;其二,对于生产中使用Rancher,建议需要更为专业的人士,不能将Rancher只是作为一个搭建平台而已。

    环境与版本说明

    Rancher

    Rancher 版本: v1.6.2

    其中所需镜像:

       
         
         
         
         
         
         
         
         
         
    Docker

    Docker 版本: 1.12.5

    Rancher对支持的Docker版本有相关规定,请仔细阅读官网文档

    Kubernetes

    Kubernetes 版本: v1.5.4

    其中所需镜像:

       
         
         
         
         
         
         
         
         
         
         
         
         
         
         
         

    这些镜像均需加载到所需的寄主机中

    寄主机

    操作系统: Centos7

       
         
         
         
         

    Rancher启动

    在寄主机192-168-1-175上操作:

     

    过一段时间,访问地址(http://192.168.1.175:8080/) 便可进入Rancher的界面。

    随后在系统管理-访问控制中添加本地账户

    Rancher搭建配置原理

    Rancher搭建以Kubernetes模版为基础,其定义以rancher-catalog中的docker-compose.ymlrancher-compose.yml为基础。

    默认官方的rancher-catalog如下图所示:

    kube-system

    这些yml文件当然也可以自己编写,通过在Rancher界面中的第四栏选择系统管理-系统设置-应用商店中,停用官方认证的Rancher,或者社区贡献,添加自定义的可以git clone的URl。名称填写library,地址填写https://xxxxx.git,分支选择你需要的分支即可。

    如果对Rancher和Kubernetes不是特别深入的学习,请勿随意修改这里面的值。当然这里面会涉及到相关镜像,可以修改为自己的,方便拉取

    命名空间kube-system中的dashboard,heapster,grafana,helm等等,其配置文件都在镜像rancher/k8s:v1.5.4-rancher1-4中的/etc/kubernetes/addons/中,这些服务的启动就依靠这些配置文件。

    如果你想修改这些YAML配置问题——例如我想把其中的imagePullPolicy: Always这条去掉,避免始终去拉取相关镜像——你们需要重新制作这个镜像,则可以在rancher/kubernetes-package这个GitHub项目,需要clone到相对应分支或者tag的源码,加以修改,并创建镜像,其创建的镜像就是rancher/k8s:v1.5.4-rancher1-4

    以上操作本人实践过,耗时较长,还没有成功过。主要是卡死在某些步骤上,涉及到一些插件或者依赖包。解决不重建镜像,又能修改配置的方法,可以在Kubernetes-UI中实现,修改完yaml文件,然后进行UPDATE

    添加环境

    在Rancher界面中的第一栏选择环境管理-添加环境中,填写环境名称(k8stest)环境模版(Kubernetes),然后点击创建,如下图

    添加环境

    添加主机

    在Rancher界面中的第三栏选择基础框架-主机-添加主机,认真阅读添加过程中的每一条,再将第五点的shell命令复制到每一台寄主机(192-168-1-176,192-168-1-179,192-168-1-180)上

     

    如此完成后,等所有服务启动完成,即Kubernetes的集群搭建完成

    主机信息图如下图:

    主机信息

    基础设施应用

    在Rancher界面中的第二栏选择KUBERNETES-基础设施应用中,可以看到所有的基础应用。如下图所示:

    基础设施应用

    应用kubernetes中可以列表形式,链接图形式和编排文件形式(docker-compose.yml和rancher-compose.yml)来查看应用。

    以链接图形式查看如下图所示:

    链接图形式

    命名空间kube-system中的服务这里并不能找到。需要在上述的应用中找,如下图所示:

    kube-system

    可以看出这里的镜像标签是端口号,内置的API是错误的。

    Kubernete仪表板

    在Rancher界面中的第二栏选择KUBERNETES-仪表板-Kubernete UI,直接就跳入Dashboard的界面,如下图所示:

    Dashboard

    Rancher重启

    对于某些节点的清扫,一般用到以下命令:

     

    参考博文

    1. Rancher-k8s加速安装文档
    2. Rancher使用入门
    3. CentOS7上Docker安装与卸载
    4. Rancher实现的内部DNS基础服务
    5. 如何hack一下Rancher Kubernetes
  • 相关阅读:
    Python-http请求
    MacOs Big Sur 11.0.1 安装python报错
    linux 根据时间删除某个目录下的文件
    记一次文件上传遇到的坑(文件名|文件格式乱码)
    json_schema参数校验
    K8s
    python实时视频流播放
    pycharm永久激活
    客户端ajax请求为实现Token验证添加headers后导致正常请求变为options跨域请求解决方法
    webstorm修改文件,webpack-dev-server及roadhog不会自动编译刷新
  • 原文地址:https://www.cnblogs.com/duwamish/p/10953665.html
Copyright © 2020-2023  润新知