点击上方“芋道源码”,选择“设为星标

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 10:33 更新文章,每天掉亿点点头发...

源码精品专栏

 

来源:blog.csdn.net/weixin_46902396


一、Rancher 简介

Rancher 是为使用容器的公司打造的容器管理平台,通过 Rancher,企业不再需要使用一系列开源软件从零开始构建一个容器服务平台。同时 Rancher 还提供了一个全栈容器部署和管理平台,用于管理 Docker 和 Kubernetes。

1.Rancher API Server 的功能

Rancher API Server 是基于嵌入式 Kubernetes API Server 和 ETCD 数据库建立的,它提供了以下功能:

1)授权和角色权限控制
  • 「用户管理:」 Rancher API Server 除了管理用户在公司内部使用的认证信息之外,还可以管理用户访问外部服务所需的认证信息。

  • 「授权:」 Rancher API Serrver 可以管理权限控制策略和安全策略。

2)使用 Kubernetes 的功能
  • 「运行 Kubernetes 集群:」 Rancher API Server 不仅可以在已经存在的节点上运行 K8s 集群,还可以对 K8s 集群进行版本升级。

  • 「应用商店管理:」 Rancher 可以使用 Helm Charts 应用商店重复部署应用。

  • 「项目管理:」 项目是由一个 K8s 集群内的多个命名空间和多个访问控制策略组成,允许用户以组为单位,管理多个命名空间。

  • 「流水线:」 Rancher 支持对每一个项目单独配置流水线。

3)查看集群信息
  • 「日志:」 Rancher 可以和多种主流日志工具集成(如:ELK)

  • 「监控:」 使用 Rancher,我们可以通过 Prometheus 监控集群节点、Kubernetes 组件、软件部署的状态和进度。

  • 「告警信息:」 当我们 K8s 集群内出现问题时,Rancher 会在界面上进行提示。

2.Rancher 主要组件和功能图示

964cc08e7b9a33daa90e4ed4c4d7d7fb.png

Rancher 提供的功能:

  • 支持 K8s 集群的身份验证和基于角色的访问控制(RBAC),使管理员可以全方面的控制所有集群的访问。

  • 支持 K8s 资源监控,并在需要时发送告警,同时可以将容器内的日志发送给外部日志系统,还可以通过应用商店与 Helm 集成。

  • 支持与外部的 CI/CD 流水线系统进行对接,同时 Rancher 本身也提供了简单易用的流水线来帮忙我们自动部署和升级工作负载。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro

  • 视频教程:https://doc.iocoder.cn/video/

二、Rancher 安装

我们这里安装是在 Kubernetes 的基础上,可以参考:

  • https://blog.csdn.net/weixin_46902396/article/details/122303350

1.通过 Docker 来进行安装

[root@k8s-master01 ~]# docker run --privileged -d --name rancher --restart=unless-stopped -p 80:80 -p 443:443 -v /opt/rancher:/var/lib/rancher rancher/rancher:v2.5.11
[root@k8s-master01 ~]# docker ps | grep rancher
  • 「--privileged:」 可以使我们启动的容器用 root 的方式启动(在 Rancher 2.5 版本以上需要加)

  • 「--restart:」 重启策略,我们配置的是 unless-stopped,表示当容器退出时,便会重新启动容器(除非容器之前就处于停止)

2.在 Rancher 的界面上绑定 K8s

访问:https://192.168.1.1

940a3b6af85781f8eb72c43258ebe1e9.png
1)配置 Kubernetes 集群
7296bb6084f638fe69304863a0e9d2c2.png c6de7e7f4efb98627fc2e9febe208269.png 57367eb5836befe977b27bc78a06c49a.png 4e93003d2daef326986bcf7a1ec477d2.png 141d0e92da6764be360f45a82e28f32d.png e7f73e9d9399f4e89ed7c3580811c06e.png

要是我们上面的 Kubernetes 持续处于 Pending 时,我们可以

[root@k8s-master01 ~]# kubectl get pod -n cattle-system       # 查看 Rancher 状态
cf122c4d47745ee8ab4b041a07d8c71c.png 62faaf6e66ce4de569deebe34a247f00.png 1e05f03f14116f918586d3d9b03be1fc.png

3.在 Rancher 上部署应用

1)创建应用
9097969a27419bd670abb272c26312aa.png 85f24deab0fb69115469756e4bb91006.png a3059982bc93d5ceac3cc1da33b35538.png
2)验证
9eda479efb5c2aa1a80e0f3cca412999.png
3)查看 Pod 日志
67317c216f1fc4cfca54f6a8483deb5f.png e9dcf5df0f4482afd5df88316a77d5aa.png

欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

996bceb49f108cfb61031f01797202b8.png

已在知识星球更新源码解析如下:

3b1223f8c67d03fa733a3e9c26cd8ba4.jpeg

ecfff158257cba8f08dd3ab95359b882.jpeg

ff41f5906ed4868ff1914f29e61a79b0.jpeg

7f189b24153597f323750aba48a6ef35.jpeg

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 101 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

文章有帮助的话,在看,转发吧。
谢谢支持哟 (*^__^*)
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐