阿里配管专家解读:如何最优成本搭建非标准的iOS构建集群
作者簡介:董必勝(叔大),阿里巴巴配置管理專家,負責集團、螞蟻的移動端構建,負責研發協同平臺RDC無線。
背景:在移動物聯網大潮中iOS構建的重要性日益突出,如何能提供穩定的iOS構建服務?中大型的企業如何搭建、管理這種非標準的iOS構建集群?如何能做到集群搭建的成本最優?本文以alibaba集團的場景和大家分享iOS構建集群搭建的方案選型。
我們都知道iOS的構建需要在macOS Sierra的系統上構建。針對我們構建集群的搭建有幾種思路:
- 直接采購mac mini、mac pro用于構建;
- 在linux虛機里安裝macOS Sierra(應用層);
- 在PC、linux等裸機上安裝macOS Sierra(系統層)。
一、 系統層虛擬化方案
在裸機上直接安裝macOS Sierra。
這種機器在業界有個說法叫黑蘋果,最著名的黑蘋果論壇:https://www.tonymacx86.com/?。詳細裝機文檔:https://www.tonymacx86.com/threads/unibeast-install-macos-sierra-on-any-supported-intel-based-pc.200564/。
從文檔可以看出:
常見做法是在PC上直接裝,PC機運維成本比較高; 無法做到自動化。
使用vmware的虛擬化工具 vmwareEXSi,測試驗證結果:
1)最新版本6.5.0版本在mac pro安裝失敗,achi無法識別;
2)6.0.0patch2版本在mac pro安裝成功一次,但安裝后,訪問虛擬機管理頁面有錯誤。測試重啟服務器,虛擬機自動重新開機不生效。部分帖子反饋,磁盤讀取部分虛擬化有問題,讀寫效率低,目前未驗證;
3)在惠普微服務器gen8上安裝6.0.0版本,雖然6.0.0標記僅支持macOS10.10,但可以升級到macOS10.12.4;
4)燒制6.5.0EXSi后安裝后,即使返回安裝6.0.0patch2,EXSi安裝后,能正常讀取ip,但網絡訪問有問題,并且無法進入exsi系統的命令行模式;
5)借用Lenovo T4500,因網卡不識別,無法安裝EXSi,可見EXSi兼容范圍有限。
二、應用層的虛擬化方案
Windows + vmare + macOS Sierra,這種方案的裝機文檔網上比較多,不過也存在上述問題:
linux+ VirtualBox + macOS Sierra,這種方案存在一個問題,virtualBox只能支持 i386和AMD64的架構。
另外上述方案最大的優點在成本低。但是還有兩個通用致命的問題:
1. 法務問題:?https://store.apple.com/Catalog/US/Images/MacOSX.htm
根據MacOSX的使用協議, MacOSX 只能用在Apple-labeled computer,所以在部分企業基本不能使用非mac的機器用來做iOS構建
2. Permitted License Uses and Restrictions. A. This License allows you to install and use one copy of the Apple Software on a single Apple-labeled computer at a time. This License does not allow the Apple Software to exist on more than one computer at a time,and you may not make the Apple Software available over a network where it could be used by multiple computers at the same time. You may make one copy of the Apple Software (excluding the Boot ROM code) in machine-readable form for backup purposes only; provided that the backup copy must include all copyright or other proprietary notices contained on the original.
2. app上傳問題:
從黑蘋果用戶了解到,在黑蘋果機器上構建的app無法通過app store審核。也就是說你即使打出app也沒發走官方渠道,只用用于framework構建或者一些越獄渠道。
三、直接用mac mini、mac pro搭建mac集群
這種方式裝機的問題不存在,但是也存在一些問題
- IDC的標準化,像BAT這種會自己搭建了符合IDC規范的機房
- 裝機的標準化,已有的OS升級安裝等都可以實現命令行自動化
- 監控的標準化:mac機器已經接入到服務端監控平臺
說了這么多,總結下:
- mac mini、mac pro的運維標準化已經在路上了
- 黑蘋果的包有法務、app store上傳的問題,這條路在部分大企業是走不通的
掃碼免費體驗研發協同RDC
點此立即預約
總結
以上是生活随笔為你收集整理的阿里配管专家解读:如何最优成本搭建非标准的iOS构建集群的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Nginx配置防盗链
- 下一篇: 编译GSLSDevil的全过程