Rancher Desktop虚拟机

Rancher Desktop 实际上是使用 Lima: Linux Machines 虚拟机来实现 macOS 上运行 Docker 以及 Kubernetes 的。也就是说,一旦使用 Rancher Desktop 跑起来 Kubernetes ,系统中必然有一个虚拟机:

  • 如果是macOS 13 及以后的系统,则可以使用 VZ 虚拟化(即 Apple Virtualization )

  • 如果是macOS 13 之前的系统,则必须使用 QEMU 虚拟化

那么,如何进入 Lima: Linux Machines 提供的这个虚拟机呢?

rdctl

Rancher Desktop 提供了一个官方工具 rdctl 可以简便地进入虚拟机:

通过 rdctl 进入 Lima 虚拟机
rdctl shell

此时会看到shell提示符:

进入 lima-rancher-desktop 虚拟机的提示符
lima-rancher-desktop:/Applications/Rancher Desktop.app/Contents/Resources/resources/darwin/lima/bin$
  • 检查当前用户id可以看到,原来进入 Rancher Desktop 虚拟机后用户是 lima :

用户身份是 lima
# id 显示
uid=501(lima) gid=1000(lima) groups=102(docker),1000(lima)
  • 检查内核以及运行环境( uname -a ):

uname -a 显示输出
Linux lima-rancher-desktop 6.6.65-0-virt #1-Alpine SMP PREEMPT_DYNAMIC 2024-12-12 12:13:04 x86_64 Linux
  • 检查虚拟机操作系统版本( cat /etc/os-release )

可以看到运行的是一个 Alpine Linux 虚拟机
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.20.3
PRETTY_NAME="Alpine Linux v3.20"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues"
BUILD_ID="v0.2.41.rd3"
VARIANT_ID="rd"
  • 检查磁盘( sudo df -h )需要使用 root 身份,因为当前运行的 Kubernetes 容器挂载存储都需要root权限:

sudo df -h 输出
Filesystem                Size      Used Available Use% Mounted on
devtmpfs                 10.0M         0     10.0M   0% /dev
shm                       1.9G         0      1.9G   0% /dev/shm
/dev/sr0                269.0M    269.0M         0 100% /media/sr0
tmpfs                     1.9G    420.4M      1.5G  21% /
tmpfs                   784.4M      1.1M    783.3M   0% /run
/dev/loop0               19.5M     19.5M         0 100% /.modloop
efivarfs                255.9K     22.8K    228.1K   9% /sys/firmware/efi/efivars
/dev/disk/by-label/cidata
                         45.9M     45.9M         0 100% /mnt/lima-cidata
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /mnt/data
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /etc
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /home
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /root
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /tmp
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /usr/local
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /var/lib
/dev/disk/by-label/data-volume
                         97.9G      1.2G     91.6G   1% /root
:/Users/admin           953.7G    543.1G    393.3G  58% /Users/admin
:/tmp/rancher-desktop
                        953.7G    543.1G    393.3G  58% /tmp/rancher-desktop
:/Volumes               953.7G    543.1G    393.3G  58% /Volumes
:/var/folders           953.7G    543.1G    393.3G  58% /var/folders
:/private/tmp           953.7G    543.1G    393.3G  58% /private/tmp
:/private/var/folders
                        953.7G    543.1G    393.3G  58% /private/var/folders
:/Applications/Rancher Desktop.app/Contents/Resources/resources
                        953.7G    543.1G    393.3G  58% /Applications/Rancher Desktop.app/Contents/Resources/resources
tmpfs                     3.8G     12.0K      3.8G   0% /var/lib/kubelet/pods/61eb4e59-ecc9-4408-8b8f-89b6855ad3cb/volumes/kubernetes.io~projected/kube-api-access-zzqn2
tmpfs                     3.8G     12.0K      3.8G   0% /var/lib/kubelet/pods/59fe63fc-c3f8-4792-8b25-18a68528b7e7/volumes/kubernetes.io~projected/kube-api-access-g9gb2
tmpfs                   170.0M     12.0K    170.0M   0% /var/lib/kubelet/pods/ee84fa10-b916-4dbc-b635-2c96f28d1409/volumes/kubernetes.io~projected/kube-api-access-j2gvp
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/48fb64f01ada55a47b936f48fb8f3952a753cba8a29a888b01c17f0200e4bd6d/merged
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/c5bcbffbadc26906d1abda05c68f20e6f09c738a42c516351e6972f9f52f9839/merged
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/add1064b9928db372cd5d5e555bf03965baed3e03140859d4a82e8df6209aa36/merged
shm                      64.0M         0     64.0M   0% /var/lib/docker/containers/78ac34ee2254be0165d59583de42cbef1a10f2063c22a8822656da776e405d77/mounts/shm
shm                      64.0M         0     64.0M   0% /var/lib/docker/containers/487feab7ab33edfd3b0e402806c4c4da851b3b36264c099086ddb19ef5a82321/mounts/shm
shm                      64.0M         0     64.0M   0% /var/lib/docker/containers/a5d2a7091b1c07520ff25621e9360e4c335d393de2a3b9ad28cbcfb5785972fc/mounts/shm
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/e9b9a4033ba37a1d779678ae5c22da88670bed07a21c1c69e35bc4c2d76940ec/merged
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/537a3309d87ac3045e05b29e02a9b863bdc5fd6d30be4636db7136ed4ae618a6/merged
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/655f2a74f43e50d012d6872d8b6b2760f4fa254415cbceb6e90f1efef4ca0ada/merged
tmpfs                     3.8G     12.0K      3.8G   0% /var/lib/kubelet/pods/86670587-6719-4fe5-ab4e-81e5f27aedcf/volumes/kubernetes.io~projected/kube-api-access-c5w69
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/25156db0fb96edac43438b60dce241725df3b3468493ac4279954b65cd2eb531/merged
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/2f0e4b8aa5f849be23a2e199cb009beafe101c242c5484fb4d8d8fb9468637d2/merged
shm                      64.0M         0     64.0M   0% /var/lib/docker/containers/767da741e7843938551fd2c5c6953f3597f323a116dde9d2e5ac7e45837f813d/mounts/shm
shm                      64.0M         0     64.0M   0% /var/lib/docker/containers/1ebe2a10abc8769084ca3d69ae9ca64379b491630a84fa62937eb2261762e34c/mounts/shm
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/1ea1fbc2929b2f98dee78bd2930c9b41bf0ee707a251b5a3a26300c1605f7e2c/merged
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/a4df0740a838ce9453810fb9a94f58eddabcbcc109b626080f02826a34b54b12/merged
overlay                  97.9G      1.2G     91.6G   1% /var/lib/docker/overlay2/f73f89d929b4b33733b8532f3de1099b51f966f1fcfa6cb0236ed18dd5198be6/merged
  • 检查运行的容器( docker ps )

检查运行容器
CONTAINER ID   IMAGE                        COMMAND                  CREATED       STATUS       PORTS     NAMES
2362fda57793   f7415d0003cb                 "entry"                  4 hours ago   Up 4 hours             k8s_lb-tcp-443_svclb-traefik-8e5714a6-mg86l_kube-system_04b16cac-8fc4-4028-93da-f6e44641bd86_0
3a359d5afbff   f7415d0003cb                 "entry"                  4 hours ago   Up 4 hours             k8s_lb-tcp-80_svclb-traefik-8e5714a6-mg86l_kube-system_04b16cac-8fc4-4028-93da-f6e44641bd86_0
97e5915300be   3a1e150bf4c5                 "/entrypoint.sh --gl…"   4 hours ago   Up 4 hours             k8s_traefik_traefik-c98fdf6fb-phtrn_kube-system_86670587-6719-4fe5-ab4e-81e5f27aedcf_0
767da741e784   rancher/mirrored-pause:3.6   "/pause"                 4 hours ago   Up 4 hours             k8s_POD_traefik-c98fdf6fb-phtrn_kube-system_86670587-6719-4fe5-ab4e-81e5f27aedcf_0
1ebe2a10abc8   rancher/mirrored-pause:3.6   "/pause"                 4 hours ago   Up 4 hours             k8s_POD_svclb-traefik-8e5714a6-mg86l_kube-system_04b16cac-8fc4-4028-93da-f6e44641bd86_0
e82a7cad593c   0392ee038903                 "/coredns -conf /etc…"   4 hours ago   Up 4 hours             k8s_coredns_coredns-64fd4b4794-x6jcg_kube-system_ee84fa10-b916-4dbc-b635-2c96f28d1409_0
7ef2becaab04   b9e1e3849e07                 "/metrics-server --c…"   4 hours ago   Up 4 hours             k8s_metrics-server_metrics-server-7bfffcd44-65kns_kube-system_59fe63fc-c3f8-4792-8b25-18a68528b7e7_0
c5e7288d323f   8309ed19e06b                 "local-path-provisio…"   4 hours ago   Up 4 hours             k8s_local-path-provisioner_local-path-provisioner-774c6665dc-qc9zt_kube-system_61eb4e59-ecc9-4408-8b8f-89b6855ad3cb_0
487feab7ab33   rancher/mirrored-pause:3.6   "/pause"                 4 hours ago   Up 4 hours             k8s_POD_metrics-server-7bfffcd44-65kns_kube-system_59fe63fc-c3f8-4792-8b25-18a68528b7e7_0
a5d2a7091b1c   rancher/mirrored-pause:3.6   "/pause"                 4 hours ago   Up 4 hours             k8s_POD_coredns-64fd4b4794-x6jcg_kube-system_ee84fa10-b916-4dbc-b635-2c96f28d1409_0
78ac34ee2254   rancher/mirrored-pause:3.6   "/pause"                 4 hours ago   Up 4 hours             k8s_POD_local-path-provisioner-774c6665dc-qc9zt_kube-system_61eb4e59-ecc9-4408-8b8f-89b6855ad3cb_0