【问题标题】:Running Kubernetes locally on M1 Mac在 M1 Mac 上本地运行 Kubernetes
【发布时间】:2021-04-28 00:47:34
【问题描述】:

我正在寻找目前是否可以在 2020 M1 MacBook air 上本地运行 Kubernetes。

我需要的环境比较简单,只是用来做一些教程。例如,这个operator-sdk guide

到目前为止,我已经尝试过 microk8sminikube,因为它们是我以前在其他机器上使用过的工具。

对于这两个,我在“使用 Rosetta 2”打开终端应用程序后使用 brew 安装了它们 (例如this)。我的进度是:

Minikube

当我运行minikube start --driver=docker(已安装tech preview of Docker Desktop for M1)时,出现初始化错误。在我看来,这里正在跟踪https://github.com/kubernetes/minikube/issues/9224

Microk8s

microk8s install 要求安装multipass,然后出现An error occurred with the instance when trying to start with 'multipass': returned exit code 2. Ensure that 'multipass' is setup correctly and try again. 错误。 Multipass 显示microk8s-vm 卡在启动中。我认为这可能与这个问题有关https://github.com/canonical/multipass/issues/1857

我知道我可能会更好地追查这些问题以寻求有关这些特定错误的帮助。如果目前可以/建议设置一个基本的 Kubernetes 环境以在 M1 mac 上玩,任何一般性建议都会很棒。我对这里的底层技术没有经验,所以欢迎任何额外的上下文。 :)

如果有人对实践 Kubernetes 提出建议,而不是设置本地集群,我也将不胜感激。谢谢!

【问题讨论】:

    标签: kubernetes minikube microk8s apple-silicon


    【解决方案1】:

    首先,在使用容器时使用 Docker 通常是件好事。 Docker 现在有一个Tech Preview of Docker for Apple M1 based macs

    当你的机器上有一个工作的 Docker 时,它也应该可以使用 Kind - 一种在 Docker 容器上运行 Kubernetes 的方法。

    【讨论】:

    • @KarthikaiselvanR - 是的,我能够使用上面链接的图像 (kind create cluster --image rossgeorgiev/kind-node-arm64:v1.20.0) 创建一个集群,同时运行 Docker 技术预览。我已将该集群用于问题中提到的 operator-sdk 教程,以及 kubernetes.io 文档中的一些示例。没什么大不了的,但对我来说绝对没问题。
    • 那么如何连接集群呢?我能够运行 skaffold dev 并且服务正在运行,但我无法使用 Ingress Nginx 连接到它们
    • @AndreyGritsay,请看here
    • @KarthikaiselvanR 我对新的更新版本也有问题,因为 Kubernetes 仍然停留在启动进度上。你在 docker desktop 中使用那个内置的 Kubernetes 吗?
    • @SayJeyHi 我对 m1 的 Docker Desktop 上的内置 Kubernetes 也有这个问题。我能找到摆脱“Kubernetes 正在启动”状态的唯一方法是从故障排除菜单中执行“重置为出厂默认设置”。我现在已经按照上面的线程从 Kind 转到 Minikube,并且对我来说工作正常。具体来说,我按照this视频中的说明进行操作。
    【解决方案2】:

    更新(2022 年 1 月):我注意到 microk8s 文档已发布 tutorial for m1 installs。我遵循了这个,现在它在我的机器上运行良好。

    此外,我现在还可以按照docs 中的说明以ARM64 作为我的架构,在 Minikube 上设置集群。

    【讨论】:

      猜你喜欢
      • 2021-04-10
      • 2022-08-24
      • 2018-08-23
      • 2023-02-08
      • 1970-01-01
      • 2022-01-18
      • 1970-01-01
      • 1970-01-01
      • 2021-06-04
      相关资源
      最近更新 更多