Rancher 使用指南

Rancher 使用指南

    • Rancher 是什么?
    • Rancher 与 OpenShift / Kubesphere 主要区别对比
      • Rancher
      • OpenShift
      • Kubesphere 对比 Rancher 和 OpenShift
    • Rancher 安装

Rancher 使用指南_第1张图片

Rancher 是什么?

企业级Kubernetes管理平台

Rancher 是供采用容器的团队使用的完整软件堆栈。它解决了管理多个Kubernetes集群的运营和安全挑战,并为DevOps团队提供用于运行容器化工作负载的集成工具。

  • Rancher 是一个 Kubernetes 管理工具,让你能在任何地方和任何提供商上部署和运行集群。
  • Rancher 可以创建来自 Kubernetes 托管服务提供商的集群,创建节点并安装 Kubernetes,或者导入在任何地方运行的现有 Kubernetes 集群。
  • Rancher 基于 Kubernetes 添加了新的功能,包括统一所有集群的身份验证和 RBAC,让系统管理员从一个位置控制全部集群的访问。
  • 此外,Rancher 可以为集群和资源提供更精细的监控和告警,将日志发送到外部提供商,并通过应用商店(Application Catalog)直接集成 Helm。如果你拥有外部 CI/CD 系统,你可以将其与 Rancher 对接。没有的话,你也可以使用 Rancher 提供的 Fleet 自动部署和升级工作负载。
  • Rancher 是一个 全栈式 的 Kubernetes 容器管理平台,为你提供在任何地方都能成功运行 Kubernetes 的工具。

详细可查看 https://ranchermanager.docs.rancher.com/zh/getting-started/overview

Rancher 与 OpenShift / Kubesphere 主要区别对比

OpenShift 与 Rancher 本质上都是基于 k8s 进行功能扩展,形态更接近 K8S Dashboard,而不是容器平台

如果熟悉 k8s 且对 k8s 有完全的掌控力,选择哪个都可以。

Rancher

  1. Rancher 侧重运维,DevOps 领域功能较少

  2. Rancher 的重心还是在多集群管理方面,支持 4 种类型

    • 从提供 K8S 托管服务的云厂商创建集群
    • 导入已有的集群
    • 使用云厂商提供的主机创建集群
    • 使用已有的主机创建集群
    • 另外 Rancher 提供了开源的跨集群通信方案 Submariner
  3. Rancher 的主要功能:
    Rancher 使用指南_第2张图片

  4. Rancher 优点

    • 采用图形化方式:
      易用的 Web 管理界面,在 Docker 易用性的基础上,再一次降低了使用容器技术部署容器应用的难度。
    • 支持多种调度器:
      通过环境模板,很容易地创建和部署 Cattle、Swarm、K8S、Mesos 容器集群管理调度平台。
    • 管理主机集群:
      管理对象是多台主机的集群,而不仅仅是单台容器主机,创建和管理几台、几十台应用服务器集群,只需要Ctrl+C、Ctrl+V,复制粘贴就解决了。
    • 内置应用商店:
      使用其中的 WordPress 模板,创建一个 WordPress 博客系统,只需点点鼠标,部署难度不高于申请一个免费的电子邮箱!
    • 资源弹性分配:
      内置应用负载均衡器,“服务”最小只需 1 个容器实例,当负载不够/或过剩时,只需点点鼠标,增加/减少“服务”中容器的实例数,即可解决问题,应用系统具有天生的弹性扩容能力。
  5. 不足

    • K8S 部署的问题:
      由于国内网络和国外网络访问的问题,在国内部署 K8S 集群,有点不方便;
    • 应用商店的问题:
      默认的 Rancher 官方认证和社区贡献的应用商店内容有限,应用还不够丰富,基本上都是网络和存储等基础的应用;个别应用部署后,无法通过相同的操作,再部署同样的另一套应用,比如 Rancher NFS;

OpenShift

  1. OpenShift 侧重应用

    OpenShift 在 k8s 基础上扩展了一些功能,如构建镜像、主机组管理等,其他如监控、告警、日志等等。

    DevOps 领域相关功能均使用开源方案且无扩展增强

  2. 一些内置的功能特性如下:

    • Operator 市场
    • 自研服务与发现 Route
    • 构建镜像
    • 集成 Promethus 监控告警
    • 机器(主机)管理
  3. Openshift 的主要功能:
    Rancher 使用指南_第3张图片

Kubesphere 对比 Rancher 和 OpenShift

KubeSphere定位是以应用为中心的容器平台,提供简单易用的操作界面,一定程度上降低了学习成本,同时集成了原生istio等功能,更加符合开发的使用习惯。总的来说Rancher注重于对K8s的管理,KubeSphere对应用的管理。

  1. 优点

    • 贴近原生 K8S,运维人员无需学习新东西,kubesphere 更像是 k8s 的前端。
    • 图形化强,直观,美观,赏心悦目。
    • 便于没有运维能力的开发人员,学习成本低,零基础运维。
    • 集成灰度发布,镜像构建器,S2I,prometheus,istio,Jenkins, ES, sonarqube,日志,事件查询,操作审计,资源消费统计,监控等等自动功能,能够称之为“云原生全栈系统”,无需开发人员另外学习这些运维技术。
    • 商业版相对于 openshift 经济实惠得多。
    • 相对于 rancher 客户服务好,因为是国产产品,符合国情,而且客户服务沟通无障碍,rancher 商业版网上信息较少。
  2. 缺点

    • 多集群管理逊色于 rancher 和 openshift,多集群功能是 3.0 版本才新增的。
    • rancher 提供了极其简便的K8s部署及管理能力。
    • kubesphere 安装比较麻烦,困难,特别是离线安装。
    • 起步晚,系统稳定程度比不上 rancher 和 openshift。
    • 国际影响力不强,K8S 发行版位列第三,github 上没有 rancher 和 openshift 知名。
    • 相对 rancher 比较消耗资源。
    • 客户服务和技术支持当然没有商业版的 OpenShift 牛,但是 OpenShift 价格不菲,系统稳定性需求大于预算限制的用户建议 openshift,反之则酌情考虑 kubesphere 或 rancher。

Rancher 安装

本次我们按照官网安装本地版的rancher

  1. 准备Linux主机
    准备一台已安装64位Ubuntu 20.04或18.04的Linux主机(或其他Rancher所支持的Linux发行版),要求至少4GB内存。在该主机上安装Rancher支持的Docker版本。
  2. 运行Server
    在主机上执行以下Docker命令,完成Rancher的安装与运行:
    sudo docker run --privileged -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher:stable
    
    之后,打开浏览器,输入https://<安装容器的主机名或IP地址>,您即可以访问Rancher Server的UI了。跟随用户界面给您的引导,即可设置完成您的第一个Rancher集群。
  3. 查找登录密码
[root@node-138 ~]# docker logs container-id 2>&1 | grep "Bootstrap Password:"
[root@node-138 ~]# docker logs f12  2>&1 | grep "Bootstrap Password:"
2023/10/10 02:13:38 [INFO] Bootstrap Password: c5mnjh6rsj96v8d2xnpgbnmgkhx82zgvzfvf2twz4fwvm29qkwqqvc
  1. 登录
    Rancher 使用指南_第4张图片
    password:SrNCv6wOkN6bzVaA

登陆成功后,需要手动配置新的密码和url,这些都跳过,继续,自动跳转到dashboard

  1. 体验
    创建个nginx的服务进行体验
    Rancher 使用指南_第5张图片Rancher 使用指南_第6张图片进入rancher容器
f1201320cf49:/var/lib/rancher # crictl ps
WARN[0000] runtime connect using default endpoints: [unix:///run/k3s/containerd/containerd.sock unix:///var/run/dockershim.sock unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
WARN[0000] image connect using default endpoints: [unix:///run/k3s/containerd/containerd.sock unix:///var/run/dockershim.sock unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
CONTAINER           IMAGE               CREATED             STATE               NAME                ATTEMPT             POD ID              POD
f7e7a5175fadc       61395b4c586da       About an hour ago   Running             container-0         0                   b8bfc5e898216       nginx-vfcw6
e623538be0d03       ead0a4a53df89       2 hours ago         Running             coredns             3                   80d1409730642       coredns-59b4f5bbd5-dx6tz
f1201320cf49:/var/lib/rancher # crictl images
WARN[0000] image connect using default endpoints: [unix:///run/k3s/containerd/containerd.sock unix:///var/run/dockershim.sock unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
IMAGE                                        TAG                 IMAGE ID            SIZE
docker.io/library/nginx                      latest              61395b4c586da       70.5MB
docker.io/rancher/mirrored-coredns-coredns   1.10.1              ead0a4a53df89       53.6MB
docker.io/rancher/mirrored-pause             3.6                 6270bb605e12e       686kB
f1201320cf49:/var/lib/rancher # curl 127.0.0.1:80
<a href="https://127.0.0.1/">Found</a>.

可以看到容器是contarinerd,服务可以正常开启

你可能感兴趣的:(#,Kubernetes,rancher)