一文玩儿转 Rancher Desktop

作者简介
王海龙, SUSE Rancher 中国社区技术经理,负责 Rancher 中国技术社区的维护和运营。拥有 8 年的云计算领域经验,经历了 OpenStack 到 Kubernetes 的技术变革,无论底层操作系统 Linux,还是虚拟化 KVM 或是 Docker 容器技术都有丰富的运维和实践经验。

什么是 Rancher Desktop

Rancher Desktop 是一款在桌面上提供容器和 Kubernetes 管理的应用。它适用于 Mac(包括 Intel 和 Apple 芯片)、Windows 和 Linux,允许在工作站本地运行 Kubernetes 和容器管理。

它提供了许多很棒的功能,例如允许你选择在本地运行的 Kubernetes 版本,使用 containerd 或 Moby(即 dockerd)构建、推送和运行容器镜像。而且,你不需先将镜像推送到镜像仓库就可以构建和运行这些镜像。

Rancher Desktop 架构

Rancher Desktop 基于 Electron 实现跨平台用户界面,封装了 nerdctl、kubectl、Helm、Docker CLI 等工具。在 MacOS 和 Linux 上,Rancher Desktop 利用虚拟机运行 containerd 或 dockerd 和 Kubernetes。在 Windows 中使用的是 Windows Subsystem for Linux 2 (WSL2)。

Rancher Desktop 使用专门的 Rancher K3s 发行版。K3s 是一个 CNCF 沙盒项目,它提供了一个轻量级的 Kubernetes 发行版,主要适用于边缘计算、物联网等场景。K3s 安装简单且非常轻量。不仅适用于生产环境,而且还可以作为本地开发平台在 Rancher Desktop 内运行。

你所需要做的就是下载并运行 Rancher Desktop。

Rancher Desktop 安装和配置

撰写本文时,Rancher Desktop 最新版为 1.0.1

下载 Rancher Desktop

从 Github release (https://github.com/rancher-sandbox/rancher-desktop/releases) 页面下载适用你系统的 Rancher Desktop:

在 Mac 上安装 Rancher Desktop

由于我的电脑是 Mac,我将下载并安装 Rancher Desktop 1.0.1 的 Mac 版本。从上面的截图中可以看出,安装包很小,只有 339 MB。下载 Rancher Desktop 后,只需运行 Rancher.Desktop-1.0.1.x86_64.dmg 并按照提示将 Rancher Desktop 移动到 Applications 中即可完成安装。

更多安装方式请参考官方文档:http://docs.rancher.cn/docs/rancherdesktop/installation/_index

配置 Rancher Desktop Kubernetes

  • 打开 Rancher Desktop 后,会自动配置和启动 Kubernetes 集群:
  • 从 Kubernetes Settings 选项卡中可以看到 Kubernetes 的默认参数配置:
  • 几分钟后,会完成 Rancher Desktop 加载:

此时,你已经完成了 Rancher Desktop 的安装和配置。并且你已经在本地启动了一个可以用来操作的 Kubernetes 集群。

  • General 选项卡提供有关项目状态的一般信息,以及讨论项目、报告问题或了解有关项目的更多信息的链接。

  • 在 Kubernetes Settings 选项卡上,你可以管理虚拟机的设置,比如:Kubernetes 版本、Container Runtime(容器运行时)、内存、CPU 等。你也可以通过 Reset Kubernetes/Reset Kubernetes and Container Images 来重置 Kubernetes 集群。

  • 在 Supporting Utilities 选项卡上,你可以创建指向 /usr/local/bin 中工具的符号链接。默认情况下,如果本地不存在该工具,就会创建一个符号链接。
  • Images 选项卡允许你管理虚拟机上的镜像,包括拉取和构建镜像。
  • Troubleshooting 选项卡可以查看日志,如果遇到问题,还可以将环境重置为出厂配置。

注意:
Windows、Linux 和 Mac 版的 Rancher Desktop 支持的选项可能有所不同,更多支持的选项说明请参考官方文档:https://docs.rancher.cn/docs/rancherdesktop/features-guide/preferences/_index

使用 nerdctl 命令行工具

Nerdctl 是一个与 Docker CLI 风格兼容的 containerd CLI 工具,使用体验和 Docker 基本一致,例如 docker run、docker pull 和 docker logs。Nerdctl 基本涵盖了 Docker CLI 的所有功能,同时,它还实现了很多 Docker 中不具备的功能,比如:延迟拉取镜像(lazy-pulling)、镜像加密(imgcrypt)等。

Rancher Desktop 启动 Kubernetes 集群后,会自动在你的工作站中安装 nerdctl。所以你可以直接通过 nerdctl 来操作你的集群:

使用 Kubectl 连接 Rancher Desktop Kubernetes

现在,我们可以使用 Kubectl 连接到 Rancher Desktop Kubernetes 集群。但首先需要确保你的 kubectl context 设置为 Rancher Desktop Kubernetes 集群。你可以通过 Kubernetes Contexts 来查看或切换当前的 context:

当然,你也可以通过 kubectl config get-contexts 来查看:

最后,就可以使用普通的 kubectl 命令查看 pod 和节点:

仪表盘

Rancher Desktop 1.0.1 没有提供用于管理 Kubernetes 集群的仪表盘。默认情况下,你只能通过 kubectl、helm、nerdctl 管理 Rancher Desktop 创建的 Kubernetes 集群。

如果你想通过一个简洁的仪表盘来管理 Rancher Desktop 创建的 Kubernetes 集群,你可以使用 Kube-explorer (https://github.com/cnrancher/kube-explorer)。

Kube-explorer 是 Kubernetes 的可移植资源管理器,没有任何依赖关系。它集成了 Rancher steve 框架及其仪表板,并经过重新编译、打包、压缩,并提供了一个几乎完全无状态的 Kubernetes 资源管理器。

要安装 kube-explorer,请从 kube-explorer release (https://github.com/cnrancher/kube-explorer/releases) 页面下载二进制文件。

运行 HTTP 的 Server:

/kube-explorer --http-listen-port=9898 --https-listen-port=0

然后,打开浏览器访问 http://x.x.x.x:9898 ,接下来你就可以通过一个非常简洁的仪表盘来管理你的 Kubernetes 集群了。

注意:如果你在 Windows 上安装 Rancher Desktop,你可以使用 kubectl 方式来安装 kube-explorer。

社区常见问题

问:Rancher Desktop 支持中文么?

目前 Rancher Desktop 还不支持中文,但 Rancher Desktop 的中文文档已经上线,大家可以访问 http://docs.rancher.cn/rancherdesktop/ 来查阅相关资料。

问:Rancher Desktop 是 Rancher 的桌面版本吗?

不是,Rancher Desktop 不是桌面上的 Rancher。安装 Rancher Desktop 并不安装 Rancher,但你可以将 Rancher 作为一个工作负载来安装。Rancher Desktop 类似于 minikube、kind 或 Docker Desktop 等应用,其目标是拥有一个易于设置的本地 Kubernetes 环境来管理容器。

问:与 Docker Desktop 相比如何?Rancher Desktop 是不是要取代 Docker Desktop?

我们开始开发 Rancher Desktop 的目的并不是要创建一个替代 Docker Desktop 的产品。相反,我们专注于改善本地运行 Kubernetes 的体验,而 Docker Desktop 专注于容器化应用程序。而且,Docker 多年来一直致力于 Docker Desktop,使其在容器化应用程序方面表现出色。

随着我们向 Rancher Desktop 中添加构建、推送和拉取镜像并运行容器等功能。Rancher Desktop 在功能方面开始与 Docker Desktop 重叠。

后记

Rancher Desktop 是一个很好的解决方案,可以轻松地在本地工作站上建立本地 Kubernetes 环境,而且非常轻量(内置 K3s),非常适用于开发、学习和其他目的。使用 Rancher Desktop 运行 Kubernetes 的过程也非常简单,并且提供了其他开发环境所没有的功能,例如:任意切换 Kubernetes 版本来配置环境;切换你喜欢的容器运行时等。

Rancher Desktop 1.0.1 还不支持离线安装,对应的配置选项也不是特别丰富,需要手动安装仪表盘等。后续版本会支持离线安装,并且也会把 Rancher Dashboard 集成进来,同时也会支持更多你需要的高级配置选项。

用一句最近比较火的一句话结束本篇分享:你永远可以相信 Rancher Team!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容