您现在的位置是:电脑教程 >>正文
如何建设一个用于编译 iOS App 的 MacOS 云服务器集群?
电脑教程2853人已围观
简介作者:京东零售 叶萌现代软件开发一般会借助 CI/CD 来提升代码质量、加快发版速度、自动化重复的事情,iOS App 只能在 mac 机器上编译,CI/CD 工具因此需要有一个 macOS 云服务器 ...
作者:京东零售 叶萌
现代软件开发一般会借助 CI/CD 来提升代码质量、何建加快发版速度、用于云服自动化重复的编译事情,iOS App 只能在 mac 机器上编译 ,集群CI/CD 工具因此需要有一个 macOS 云服务器集群来执行 iOS App 的何建编译。
今天就来谈谈如何建设 macOS 云服务器集群
购买 mac mini / Mac Studio 机器
最简单的用于云服方式就是购买一批 mac 机器,买它个 1000 台 ,编译买回来后放入机房 ,集群把其中一台机器作为管理机,何建申请办公网访问这台机器的用于云服网络权限 ,每次要维护这批机器里的编译软件时,高防服务器先从办公网进入管理机 ,集群然后从管理机在远程连接到其他机器 。何建
虚拟化 macOS 集群
借助 macOS 官方的用于云服 Virtualization.Framework ,可以分钟级创建 macOS 虚拟机 ,编译这种方式创建的虚拟机性能、稳定性、安全性都很高,可以持续采用更新、更快、更高级的 mac 硬件,最终实现更快的 App 编译速度 。
在企业内部申请 macOS 机器,香港云服务器需要经历申请预算、领导审批 、采购、运输、部署至机房等繁琐步骤 ,现在可通过购买高配置的 mac 机器 ,然后再将其按需配置成多台虚拟机 ,减少了硬件维护成本,提高了扩容效率。这方面代表性产品有
https://github.com/cirruslabs/tarthttps://www.macstadium.com/anka移动端 CI/CD 平台 bitrise 采用的是这种方式 ,只不过他们做了很多自研工作 ,打造了 Gen2 编译基础设施 ,宣称能让客户更快 、源码库更频繁的发布 App
云端管理 macOS 服务器
自行购买并维护 mac 机器还是不太方便,成本很高,如果能云端管理 、按需付费就更好了 。亚马逊的 AWS 解决了这个问题,他家的 Amazon EC2 Mac Instances 能让我们按需申请 macOS 服务器 ,如果能接受云端服务的话,其实这种方式最省事。与这种服务类似的产品有
https://flow.swiss/mac-bare-metalhttps://www.scaleway.com/en/hello-m1/在 linux 里运行 macOS 虚拟机
sickcodes/Docker-OSX 是最近流行的免费模板一个项目 。
借助 KVM 技术,实现了在 linux 里运行 macOS 虚拟机借助 docker ,简化了 macOS 虚拟机的部署这个项目具有很多优势,例如
不依赖专门的 Apple 硬件 ,能够运行 KVM 的 x86_64 机器就行能够通过 docker 容器来部署 macOS 虚拟机 。未来借助 k8s,能够实现大规模 macOS 服务器的管理,轻易实现扩缩容也有风险
不太合规,macOS 正常只能在 Apple 硬件上运行在 KVM 里运行 macOS,兼容性 、性能 、模板下载稳定性需要评估 。如果出现问题需要付费找项目维护者解决我在裸金属上利用 Docker-OSX 项目确实跑起来了 macOS 虚拟机 。运行该项目有以下几点要注意
linux 宿主机需要支持嵌套虚拟化(Nested Hardware Virtualization)。开启硬件虚拟化后才能安装 kvm 。裸金属和物理机正常都支持对 Linux 内核有要求 ,操作系统最好比较新 ,CentOS 8 可以 ,CentOS 7 不行在 Apple 硬件上用 k8s 来调度 macOS
有没有可能在私有云里实现 aws 这种 mac 管理体验呢?MacStadium 家的 Orka 平台做到了。Orka 有以下好处
1 - 降低了 mac 集群的管理成本
花时间更少 ,例如管理服务器、在服务器上安装软件利用 Kubernetes 调度 mac 服务器,这与 Linux 服务器的管理保持一致,方便融入公司已有技术栈
2 - 在真正的建站模板 Apple 硬件上运行 mac 虚拟机
不用担心兼容性、稳定性、性能问题3 - 用心为开发者设计
提供多种操作方式(命令行、REST API)来管理 mac 虚拟机对于企业来说,可以考虑购买 Orka 平台 ,在私有云里面搭建 macOS 云服务器集群。GitLab SaaS 版也是使用这种方式来提供托管的 macOS Runner 的
总结
我讲了建设 macOS 云服务器集群的 5 种方式,这些方式各有利弊,总的来说:
如果能接受使用云服务器 ,建议直接购买 AWS 的 Amazon EC2 Mac Instances,方便、成本低自建机房 ,如果计划建设的 macOS 集群规模很大,建议购买 MacStadium 的 Orka 平台来建设 ,专业服务,避免踩坑 ,省时省力自建机房,如果 macOS 集群规模比较小,对自动化要求不高 ,建议购买高配的 apple 硬件,然后通过 Virtualization.Framework 虚拟化出多台 macOS 机器,整体架构比较简单 ,也能解决问题Tags:
转载:欢迎各位朋友分享到网络,但转载请说明文章出处“商站动力”。http://www.noorid.com/news/213a9099696.html
下一篇:人工智能与安全:互联孪生
相关文章
十行 Python 代码,使用 OTP 实现对文件的加密解密
电脑教程不知道你是否相信,只需 10 行代码,就可以使用 Python 100% 安全地加密文件。这背后的原理就是 OTP。原理OTP 就是 One-time password,翻译过来就是一次性密码。它的原 ...
【电脑教程】
阅读更多海盗船8G内存条的性能与优势剖析(高性能内存条,提升电脑运行速度的不二之选)
电脑教程随着科技的不断发展,计算机的运行速度变得越来越重要。而内存作为计算机性能的关键组件之一,对于提升计算机的运行速度起着至关重要的作用。本文将重点介绍海盗船8G内存条的性能和优势,为读者们提供一份详尽的购 ...
【电脑教程】
阅读更多金立S6信号稳定性如何?(金立S6信号强度、信号漫游、信号丢失等问题分析)
电脑教程随着手机的普及和通信技术的发展,人们对手机信号的稳定性和强度要求越来越高。本文将就金立S6手机的信号质量进行详细分析和评估,包括信号强度、信号漫游、信号丢失等方面的问题。1.金立S6信号强度如何?金立 ...
【电脑教程】
阅读更多