Спустя несколько лет настойчивых просьб пользователей Джефф Барр в своем блоге анонсировал возможность запускать MacOS инстансы в облаке AWS в рамках сервиса EC2.
Инстансы построены на базе оборудования Mac mini и платформы виртуализации AWS Nitro System с использованием процессора 6-core Intel Core i7 (Coffee Lake) с тактовой частотой от 3.2 Ghz до 4.6Ghz и доступной 32Gb RAM.
Инстансы могут использоватьcя совместно с Amazon Elastic Block Store (EBS), Amazon Elastic File System (EFS), Amazon FSx for Windows File Server, Amazon Simple Storage Service (S3), AWS Systems Manager.
Особенности использования Mac-инстансов:
по юридическим ограничениям доступны только как bare metal с минимальным временем использования 24 часа. .
Доступны только on-demand, никаких спотов и зарезервированных
Работают под управлением macOS Mojave (version 10.14) или macOS Catalina (version 10.15).
Для того чтобы инстанс увидел приаттаченный EBS-volume, нужно перезагрузить его, то же для вновь приаттаченных сетевых интерфейсов.
Инстансы нельзя использовать в составе autoscaling групп.
Автоматическое обновление ОС не работает
Управление инстансами доступно через SSH, также можно использовать VNC. Запустить инстанс можно из консоли либо через CLI.
В 2021 году планируется добавить возможность запускать инстансы с использованием Apple M1 чипа.
slbeat
А для каких задач это нужно?
random1st Автор
Например для того, чтобы построить облачный CI/CD для сборки мобильных приложений.
Closer
ИМХО для CI/CD с ограничениями описанными в статье они не очень подходят т.к. обычно билд сервера для мобильных приложений нужны часов на 8-10 в день максимум и обычно только в рабочии дни. Разумнее будет наверное MacMini отдельный купить под это дело (ну или несколько если проектов будет много собираться).
Хотя если деньги есть у компании, то почему бы и нет.
alexac
На моей прошлой работе держали 200+ mac mini для сборочной фермы. Простои у них, конечно, бывали, но от силы пару-тройку часов в сутки. Если посчитать все сборки, прогоны юнит-тестов и интеграционных тестов на каждый пулл-реквест, бисект-сборки, дистрибутивные сборки, то набегает очень большое время работы. К тому же разработка велась не только под ios, но и под mac.
Другой вопрос, что если масштабы достигают таких как там, то докупать полсотни дополнительных mac mini раз в год, если есть необходимость в расширении, и держать несколько людей, которые их поддерживают, будет дешевле, чем платить амазону за такое же количество инстансов.
Stas911
Ну, тут надо учитывать, что это не сферический конь в вакууме, а полноценный сервис AWS c интеграцией, масштабированием и прочими плюшками. Все можно сделать на коленке — вопрос цены и времени
p4s8x
Если я правильно понял, то с текущими ограничениями и стоимостью оно не особо меняет ситуацию с mac CI/CD на рынке.
Для своего CI/CD получается как-то ни то ни се. Минимум 24 часа это будет от 26$ в день — поднимать чистый инстанс на каждую сборку не выгодно(только если сама сборка не идет по 24 часа)
Если суммарные расходы приблизятся к 1500$ в месяц, то строить такое облако лучше уже на www.macstadium.com.(кажется unity cloud и многие другие готовые его и используют)
Мы построили у себя сборку Unity проектов(ios export+ios build) на dedicated в www.macincloud.com, выходит что-то около ~250$ в месяц для конкурентности = 2 на 8 ядрах(i7-3615QM CPU @ 2.30GHz).
Chvanikoff
или протестировать сборку под мак для тех, у кого его нет