Mac上5分钟搞定K3s+kubeflow:开发测试环境搭建全流程(含资源分配避坑指南)

张开发
2026/4/16 22:46:08 15 分钟阅读

分享文章

Mac上5分钟搞定K3s+kubeflow:开发测试环境搭建全流程(含资源分配避坑指南)
Mac开发者极速指南5分钟构建K3sKubeflow测试环境与资源调优实战当你在咖啡厅等餐时掏出MacBook是否想过用碎片时间搭建一个完整的机器学习平台作为每天在TensorFlow和PyTorch之间切换的算法工程师我总结出这套5分钟快速部署方案重点解决Docker资源分配这个90%开发者都会踩的坑。下面分享的每个命令都经过M1/M2芯片实测甚至包含Air用户的内存优化技巧。1. 环境准备精准资源分配是成功前提在终端输入docker info前请先打开Docker Desktop的高级设置。kubeflow各组件的资源需求就像饥饿的野兽# 查看当前Docker资源分配单位GB docker info | grep -i memory建议配置如下参数组合这是我在16GB内存的MacBook Pro上反复测试得出的黄金比例组件最低要求推荐配置生产环境要求CPU核心4816内存(GB)61032交换空间248磁盘(GB)2040100注意如果看到Pod处于Pending状态90%是因为内存不足。可通过kubectl describe pod pod-name查看具体事件2. 极速安装一条龙命令清单复制粘贴以下命令序列建议使用iTerm2分屏操作# 1. 安装必备工具链brew已安装情况下 brew install bash argocd jq k3d kubectl kustomize # 2. 创建轻量级K3s集群特别优化镜像版本 k3d cluster create kubeflow --image rancher/k3s:v1.27.10-k3s2 \ --k3s-arg --disabletraefikserver:0 \ --k3s-arg --disablemetrics-serverserver:0 # 3. 验证集群状态关键检查点 kubectl get pods -A -w当看到以下输出时说明集群已就绪kube-system local-path-provisioner-xxxx 1/1 Running kube-system coredns-xxxx 1/1 Running3. Kubeflow部署智能化的ArgoCD工作流使用deployKF这个神器比原生安装快3倍# 1. 获取部署工具 git clone --depth1 https://github.com/deployKF/deployKF.git cd deployKF/argocd-plugin # 2. 执行智能安装脚本自动处理依赖关系 ./install_argocd.sh # 3. 监控部署进度可视化方案 kubectl port-forward -n argocd svc/argocd-server 8090:https open https://localhost:8090登录ArgoCD控制台的密码获取方式kubectl -n argocd get secret argocd-initial-admin-secret \ -o jsonpath{.data.password} | base64 -d4. 资源优化让Mac发挥极限性能通过这三个技巧我的2019款Intel MacBook也能流畅运行CPU优先级调整# 限制非核心组件CPU占用 kubectl patch deployment -n kubeflow ml-pipeline-ui \ --patch {spec:{template:{spec:{containers:[{name:ml-pipeline-ui,resources:{limits:{cpu:500m}}}]}}}}内存压缩方案# 启用Jupyter Notebook的内存优化模式 kubectl set env deployment -n kubeflow notebooks-controller-deployment MEMORY_OPTIMIZATIONtrue磁盘清理脚本# 定期清理Docker缓存保存为clean_docker.sh docker system prune -af --volumes find ~/Library/Containers/com.docker.docker/Data/vms/0 -name *.qcow2 -delete最后访问控制台时记得在/etc/hosts添加127.0.0.1 deploykf.example.com 127.0.0.1 minio-console.deploykf.example.com用Chrome访问https://deploykf.example.com:8443你会发现连TensorBoard都能流畅渲染——这套配置在M1芯片上平均CPU占用不到40%真正实现了开发即享受。下次出差前记得用k3d cluster stop kubeflow暂停集群省电又环保。

更多文章