MEGAZONE

MEGAZONEブログ

Apple on AWS: Managing dev environments on Amazon EC2 Mac instances
Compute re:Invent 2023

Apple on AWS: Managing dev environments on Amazon EC2 Mac instances

Pulisher : Enterprise Managed Service Group イ・ヒェイン
Description:Amazon EC2 Macインスタンスのユースケースに関するセッション

ほとんどの韓国企業はLinuxやWindowsオペレーティングシステムを使用しており、Macintosh系を使用するケースは珍しいと思います。
Appleのアプリケーション開発系のワークロードと管理方法を聞きながら、これまであまり扱ったことのないAmazon EC2 Macインスタンスの使用事例を学びたいと思い、セッションを申し込みました。

このセッションでは、Amazon EC2 Macインスタンスを活用してAppleアプリケーション開発ワークロードをサポートする方法に焦点を当て、MacOS Instanceの全体的な解説をします。

EC2 Macインスタンスが持ついくつかの利点は以下の通りです。

1.数分以内にオンデマンドでmacOSにアクセスでき、拡張も可能です。
2.スナップショットとAMIでインスタンスを構成し、複数のバージョンのオペレーティングシステムと一緒に他のハードウェアにデプロイすることができます。
3.低遅延、高帯域幅のネットワーキングを提供します。
4.複数のリージョンで高可用性と復元力のための構成が可能です。
5.Mac環境でAWSへの安全な接続が可能です。

AWSでMac OSを使う場合、提供される機能は下記の通りです。
1.Automation
 a)IaCを使用してオンデマンド方式で構築することができます。
 b)AWS System Managerを使用してアップデートやパッチをすべてのインスタンスに同じように適用することができます。
2.運営効率性
 a)すべてのソフトウェアとツールを使用してAMIを作成し、保管することができます。
 b)1回の作業でインスタンスのルートボリュームを交換することができます。
3.モニタリングとレポート
 a)AWS Cloudwatchを活用し、CPU、memory、network utilizationまたはディスク性能に対するモニタリングを行うことができます。
 b)Amazon Eventbridgeを通じてAPIベースの作業を実装することができます。
4.セキュリティとコンプライアンス
 a)Amazon VPCを通じてネットワーク分離が可能です。
 b)AWSを通じた細分化されたアクセス制御と管理が可能(AWS IAM)。
 c)HIPAA対象; PCL、OSC、FedRampを遵守します。

以下は、AWS MacOSを使用する際に知っておくべき4つのポイントです。

1.課金単位:Amazon EC2専用ホスト
 ・シングルテナント* – Mac miniリソースに完全にアクセスできます。
2.課金細分化:毎秒24時間の最小割り当て (macOSソフトウェアライセンス契約要件)
 ・専用ホストが使用可能または実行中である場合のみ課金されます(従量課金制)
3.インスタンスタイプ : bare metal
 ・インスタンスは開始および停止することができ、課金には影響しません。
4.購入モデル : オンデマンドまたはSavings Plan(両方を使用することを推奨)
 ・AWSはデイリーバーストをサポートする唯一のクラウドオプションです。

AWSが提供しているMacOS専用EC2の詳細スペックは上記の通りです、
AMIを通じて複数のMacOSバージョンを使うことができます。

また、他のOSと同じようにMac OS InstanceにもAuto scaling機能を提供しており、動作方法について簡単に説明します。

まず、AWS License Managerからスタートしてライセンス構成を生成します。
このライセンス構成はAMIと連結され、複数のAMIと連結することができます。
ホストリソースグループを作成する時、このライセンス構成をパラメータとして活用することになります。

開始テンプレートを定義する過程でホストリソースグループを参照することになり、開始テンプレートに基づいてAuto Scalingグループを生成します。

ライセンス構成は、ソフトウェアライセンスのパラメータを制御します。
通常、ライセンス構成はソフトウェアライセンスの制御に使用されます。
ホストリソースグループは、Macインスタンスの専用ホストの割り当てと割り当て解除を担当します。

EC2インスタンスを起動するには、利用可能な専用ホストが必要です。
起動テンプレートは、AWS IAMインスタンスプロファイル、セキュリティグループ、サブネットなど、EC2インスタンスの様々な要素を管理します。
これらの部分は一般的なAuto Scaling Groupと似ています。

最後に、開始テンプレートを基にAuto Scalingグループを生成します。Auto Scalingグループは、新しいEC2インスタンスを生成し、新しい専用ホストを生成し、同様にEC2インスタンスを終了するタイミングを知らせるコントローラーの役割を果たします。
未使用の専用ホストは、ホストリソースグループによって追跡および終了されます。

このセッションを通じて、慣れていなかったAWS MacOS Instanceの様々なスペック、特徴などについて知ることができ、Mac OSのAuto Scalingの動作方式についても詳しく知ることができました。
MacOSが韓国で商用化される可能性は少ないと予想されますが、ハイブリッド/マルチクラウドの時代なので、様々なOSに触れてみるのも有意義だと思います。

ブログ一覧

この記事の読者はこんな記事も読んでいます