当前位置: 首页 > news >正文

macOS 上安装 Kubernetes(k8s)

在 macOS 上安装 Kubernetes(k8s)主要有三种主流方案,以下根据安装复杂度、资源占用和适用场景分类说明,并附详细步骤:


⚙️ 一、推荐方案:Minikube(单节点本地集群)

适用场景:学习、开发测试、资源有限(需 2-4GB 内存)。

安装步骤
  1. 安装依赖工具

    • 安装 Docker Desktop(推荐)或 VirtualBox:
      brew install --cask docker
      
      brew install virtualbox  # 若选 VirtualBox 驱动
      
    • 安装 kubectl(Kubernetes 命令行工具):
      brew install kubectl
      
  2. 安装 Minikube

    brew install minikube
    
  3. 启动集群(以 Docker 驱动为例)

    minikube start --driver=docker
    
    • 国内镜像加速(避免拉取超时):
      minikube start --driver=docker --image-mirror-country=cn --image-repository=registry.cn-hangzhou.aliyuncs.com/google_containers
      
  4. 验证安装

    kubectl get nodes  # 应显示 `minikube` 节点状态为 `Ready`
    `minikube dashboard  # 开启 Web 控制台(自动打开浏览器)`
    

🐳 二、简化方案:Docker Desktop 内置 Kubernetes

适用场景:已安装 Docker Desktop,追求快速启用(需 4-8GB 内存)。

启用步骤
  1. 安装 Docker Desktop

    • 从https://www.docker.com/products/docker-desktop并拖入应用目录。
  2. 启用 Kubernetes

    • 打开 Docker Desktop → SettingsKubernetes → 勾选 Enable Kubernetes → 点击 Apply & Restart(等待 5-10 分钟下载组件)。
  3. 验证集群

    kubectl cluster-info  # 查看控制平面信息
    kubectl get nodes     # 显示单节点 `docker-desktop`
    

📦 三、进阶方案:MicroK8s + Multipass(轻量级虚拟机集群)

适用场景:需要接近生产环境的多节点模拟(需 4GB+ 内存)。

安装步骤
  1. 安装 Multipass(Ubuntu 虚拟机管理工具)

    brew install --cask multipass
    
  2. 创建虚拟机并安装 MicroK8s

    multipass launch --name microk8s-vm --mem 4G --disk 20G
    multipass exec microk8s-vm -- sudo snap install microk8s --classic
    
  3. 配置本地访问

    multipass exec microk8s-vm -- /snap/bin/microk8s.config > kubeconfig
    export KUBECONFIG=./kubeconfig  # 临时生效
    
  4. 启用 Dashboard

    multipass exec microk8s-vm -- /snap/bin/microk8s enable dashboard
    multipass exec microk8s-vm -- /snap/bin/microk8s kubectl proxy --address='0.0.0.0'
    

⚠️ 常见问题解决

  1. 资源不足导致启动失败

    • Minikube:分配更多资源 minikube config set memory 4096 && minikube config set cpus 2
    • Docker Desktop:调整 Resources 中的 CPU/内存限制。
  2. 镜像拉取超时

    • 使用国内镜像源(如阿里云),参考上述 --image-repository 参数。
  3. kubectl 命令补全

    echo 'source <(kubectl completion zsh)' >> ~/.zshrc  # Zsh 用户
    

💎 方案对比

方案资源占用复杂度适用场景
Minikube中等(2-4GB)学习、本地测试
Docker Desktop较高(4-8GB)极低快速启用、轻量开发
MicroK8s中等(4GB+)中高多节点模拟、生产仿真

📌 总结建议

  • 新手首选 Minikube:步骤明确,社区支持丰富,适合从零入门。
  • 效率优先选 Docker Desktop:省去集群配置,但需订阅 Pro 版避免商业限制。
  • 网络问题:国内用户务必配置镜像加速或代理,避免组件下载失败。

安装完成后,可通过 kubectl run nginx --image=nginx 测试基础功能。若需进一步管理集群,推荐安装 Lens IDE 或使用 k9s 命令行工具提升效率。

http://www.lryc.cn/news/595324.html

相关文章:

  • React 中使用immer修改state摆脱“不可变”
  • Ubuntu安装k8s集群入门实践-v1.31
  • HOT100——图篇Leetcode207. 课程表
  • Redis入门教程(一):基本数据类型
  • (LeetCode 每日一题) 1957. 删除字符使字符串变好 (字符串)
  • 17 BTLO 蓝队靶场 Pretium 解题记录
  • 【C++11】哈希表与无序容器:从概念到应用
  • 【Unity基础】Unity中2D和3D项目开发流程对比
  • 用户虚拟地址空间布局架构
  • git_guide
  • 【Git#6】多人协作 企业级开发模型
  • 【面经】实习经历
  • 深入理解 C++ 中的指针与自增表达式:*a++、(*a)++ 和 *++a 的区别解析
  • 破除扫描边界Photoneo MotionCam-3D Color 解锁动态世界新维度
  • 京东疯狂投资具身智能:众擎机器人+千寻智能+逐际动力 | AI早报
  • 2021 RoboCom 世界机器人开发者大赛-本科组(复赛)解题报告 | 珂学家
  • [硬件电路-64]:模拟器件 -二极管在稳压电路中的应用
  • 物流链上的智慧觉醒:Deepoc具身智能如何重塑搬运机器人的“空间思维”
  • 库卡气体保护焊机器人省气的方法
  • Java IO流体系详解:字节流、字符流与NIO/BIO对比及文件拷贝实践
  • 大模型高效适配:软提示调优 Prompt Tuning
  • 【Windows】多标签显示文件夹
  • PLC之间跨区域通讯!无线通讯方案全解析
  • SQL通用增删改查
  • Spring Cache 扩展:Redis 批量操作优化方案与 BatchCache 自定义实现
  • C++中的deque容器
  • vue3实现可视化大屏布局
  • 相机标定(非ROS相机)
  • hard_err错误
  • 【PTA数据结构 | C语言版】哥尼斯堡的“七桥问题”