Rancher有分为v1和v2版本,都是提供容器调度与编排,不同之处在于在k8s盛行之前有许多人都搞过容器编排,所以rancher v1上会有几种不同的编排模式,例如cattle ,swarm,kubernetes。从这里可以看出Rahcner v1时代,它给自己的定位是各种编排工具的上层,也就是k8s的上层,然后你再通过它去管理k8s。
因为k8s后来发展得势不可挡,所以Rancher v2应运而生,移除了其他类型的编排工具,只剩下k8s。
所以总结一下,两者的关系是Rancher对k8s进行了功能的拓展与实现了和k8s集群交互的一些便捷工具,包括执行命令行,管理多个 k8s集群,查看k8s集群节点的运行状态等等。
Rancher这种做法放在云厂商就是:阿里云的k8s服务,谷歌的k8s服务亚马逊的k8s服务,他们都以k8s为底层核心调度系统,然后开发一些方便企业开发运维的工具。所以企业内部测试环境一般可以直接使用rancher去管理k8s或者使用Rancher去初始化一个k8s集群。
如果要自建私有云,也可以考虑使用Rancher,当然云厂商也有私有云的容器集群解决方案,可自行选择。