zoukankan      html  css  js  c++  java
  • Rancher管理k8s集群

    一、概述

    Rancher和k8s都是用来作为容器的调度与编排系统。但是rancher不仅能够管理应用容器,更重要的一点是能够管理k8s集群。Rancher2.x底层基于k8s调度引擎,通过Rancher的封装,用户可以在不熟悉k8s概念的情况下轻松的通过Rancher来部署容器到k8s集群当中。

    为实现上述的功能,Rancher自身提供了一套完整的用于管理k8s的组件,包括Rancher API Server, Cluster Controller, Cluster Agent, Node Agent等等。组件相互协作使得Rancher能够掌控每个k8s集群,从而将多集群的管理和使用整合在统一的Rancher平台中。Rancher增强了一些k8s的功能,并提供了面向用户友好的使用方式。


    k8s虽然有dashboard,但是功能没有Rancher强大。因此,企业内部,可以用Rancher来管理k8s集群。
     
    所以总结一下,两者的关系是Rancher对k8s进行了功能的拓展与实现了和k8s集群交互的一些便捷工具,包括执行命令行,管理多个 k8s集群,查看k8s集群节点的运行状态等等。

    二、安装Rancher

    版本选择

    Rancher有分为v1和v2版本,都是提供容器调度与编排,不同之处在于在k8s盛行之前有许多人都搞过容器编排,所以rancher v1上会有几种不同的编排模式,例如cattle ,swarm,kubernetes。从这里可以看出Rahcner v1时代,它给自己的定位是各种编排工具的上层,也就是k8s的上层,然后你再通过它去管理k8s。

    因为k8s后来发展得势不可挡,所以Rancher v2应运而生,移除了其他类型的编排工具,只剩下k8s。


    v1版本的dockerhub地址:
     
    v2版本的dockerhub地址:
     
    本文采用的v2版本,下载命令为:
    docker pull rancher/rancher:stable

    这里下载的是稳定版本

     

    环境介绍

    系统 k8s版本 docker ip 主机名 配置
    centos 7.6 1.18.1 19.03.5 10.212.20.94  k8s-master 2核4G 
    centos 7.6 1.18.1 19.03.5 10.212.20.240 k8s-node01 2核4G
    centos 7.6 19.03.5 10.212.20.213 rancher-master 2核4G
     
     
     
     
     
    注意:rancher是一台单独的服务器,不在k8s集群里面。
    关于k8s 1.18.1请参考链接:
     
     

    安装Rancher

    docker run -d --restart=always --name rancher -p 80:80 -p 443:443 rancher/rancher:stable

    查看日志

    # docker logs -f rancher

    等待几分钟,没有日志输出了,表示已经启动好了。

    访问页面

    https://10.212.20.213

     注意:这里必须要用http。即使你用http访问,它还是会强制跳转到https

    第一次访问时,显示的是英文。提示默认的admin密码不安装,需要设置一个复杂性密码。

    这里直接默认了,如果你需要使用域名方式,请根据实际情况更改。

     

    切换中文

     登录之后,点击右下角的语言。默认是英文

    切换为中文

     

    三、导入k8s集群

    注意:已经有一个k8s集群了,只需要导入即可。

    添加集群

    选择导入

    输入test,点击导入

     

     这里选择最后一个,因为我是ip方式访问的,https访问是不受信任的。注意:自签证书,也是不受信任的。

    只有花钱购买的证书,才是受信任的,可以选择中间的那个。

     

     登录k8s-master主机,执行命令:

    curl --insecure -sfL https://10.212.20.213/v3/import/xxpv9dfjtkfwcxcmh475khx2mcscs6mfhmqmbznbkcrf2mkq77l5nm.yaml | kubectl apply -f -

    等待几分钟,查看pod

    # kubectl get pods -n cattle-system
    NAME                                   READY   STATUS    RESTARTS   AGE
    cattle-cluster-agent-bf7cbffdd-rqmmw   1/1     Running   0          18s
    cattle-node-agent-8fnsq                1/1     Running   0          5s
    cattle-node-agent-bqrk9                1/1     Running   0          15s

    确保状态为Running

    点击集群,确保状态为Active

     点击集群test,效果如下:

     点击导航栏的主机,效果如下:

     本文就介绍到这里了,其他功能,请参考中文文档。

     https://rancher2.docs.rancher.cn/

     
    本文参考链接:
  • 相关阅读:
    python 协程之Greenlet
    python 协程
    python 多进程通信之Manger
    python 多线程通信之Queue
    python 多进程
    python threading之queue
    python threading之同步条件(Event)
    python threading之条件变量同步(condition)
    python之字符串常用方法
    python之字典操作
  • 原文地址:https://www.cnblogs.com/ExMan/p/13960229.html
Copyright © 2011-2022 走看看