Amazon EC2 Mac インスタンス - Amazon Elastic Compute Cloud

Amazon EC2 Mac インスタンス

Amazon EC2 Mac インスタンスは macOS オペレーティングシステムをネイティブでサポートしています。

  • EC2 x86 Mac インスタンス (mac1.metal)は 2018 Mac mini ハードウェア上に構築され、3.2 GHz Intel 第 8 世代 (Coffee Lake) Core i7 プロセッサを搭載しています。

  • EC2 M1 Mac インスタンス (mac2.metal) は Apple Silicon M1 プロセッサを搭載した 2020 Mac mini ハードウェアに構築されています。

  • EC2 M2 Mac インスタンス (mac2-m2.metal) は Apple シリコン M2 プロセッサを搭載した 2023 Mac mini ハードウェアに構築されています。

  • EC2 M2 Pro Mac インスタンス (mac2-m2pro.metal) は Apple Silicon M2 Pro プロセッサを搭載した 2023 Mac mini ハードウェアに構築されています。

EC2 Mac インスタンスは、iPhone、iPad、Mac、Vision Pro、Apple Watch、Apple TV、Safari などの Apple プラットフォーム用アプリケーションの開発、構築、テスト、署名に最適です。Mac インスタンスには、SSH または Apple Remote Desktop (ARD) を使用して接続できます。

注記

[unit of billing] (請求の単位) は [dedicated host] (専有ホスト) です。そのホストで実行されているインスタンスには追加料金はかかりません。

考慮事項

Mac インスタンスには、次の考慮事項が適用されます。

  • Mac インスタンスは、Dedicated Hosts のベアメタルインスタンスとしてのみ使用でき、Dedicated Host をリリースできる前の最低割り当て期間は 24 時間です。Dedicated Host ごとに 1 つの Mac インスタンスを起動できます。Dedicated Host は、AWS アカウント、 AWS 組織内の 組織単位、あるいは AWS 組織全体と共有することができます。

  • Mac インスタンスは オンデマンドインスタンス としてのみ使用できます。スポットインスタンス または リザーブドインスタンス では使用できません。Savings Plan を購入すると、Mac インスタンスでコストを節約できます。

  • Mac インスタンスでは、次のいずれかのオペレーティングシステムを実行できます。

    • macOS Mojave (バージョン 10.14) (x86 Mac インスタンスのみ)

    • macOS Catalina (バージョン 10.15) (x86 Mac インスタンスのみ)

    • macOS Big Sur (バージョン 11) (x86 および M1 Mac インスタンス)

    • macOS Monterey (バージョン 12) (x86 および M1 Mac インスタンス)

    • macOS Ventura (バージョン 13) (すべての Mac インスタンス、M2 および M2 Pro Mac インスタンスは macOS Ventura バージョン 13.2 以降をサポート)

    • macOS Sonoma (バージョン 14) (すべての Mac インスタンス)

  • EBS ホットプラグはサポートされています。

  • AWS は、Apple ハードウェアの内部 SSD を管理またはサポートしません。代わりに、Amazon EBS ボリュームを使用することが強く推奨されます。EBS ボリュームは、他の EC2 インスタンスと同等の伸縮性、可用性、耐久性などの利点を Mac インスタンスにもたらします。

  • Mac インスタンスで EBS のパフォーマンスを最適化するには、汎用 SSD (gp2gp3) およびプロビジョンド IOPS SSD (io1io2) の併用が推奨されます。

  • Mac インスタンスは、Amazon EC2 Auto Scaling をサポートしています。

  • x86 Mac インスタンスでは、自動ソフトウェア更新は無効化されています。インスタンスを本番環境に置く前に、更新を適用し、インスタンスでテストすることをお勧めします。詳細については、オペレーティングシステムとソフトウェアの更新 を参照してください。

  • Mac インスタンスを停止または終了すると、Dedicated Host でスクラブワークフローが実行されます。詳細については、Mac インスタンスの停止と終了 を参照してください。

警告

FileVault は使用しません。パーティションがロックされているので、FileVault を有効にするとホストの起動に失敗します。データ暗号化が必要な場合は、Amazon EBS 暗号化を使用して、ブートの問題やパフォーマンスへの影響を回避します。Amazon EBS の暗号化では、暗号化オペレーションはインスタンスをホストするサーバー上で実行されるため、インスタンスとそれにアタッチされた EBS ストレージ間に保管中のデータと転送中のデータの両方のセキュリティが確保されます。詳細については、「Amazon EBS ユーザーガイド」の「Amazon EBS 暗号化」を参照してください。

インスタンスの準備状況

Mac インスタンスを起動したら、インスタンスに接続する前に、インスタンスの準備が整うまで待機する必要があります。x86 Mac インスタンスまたは Apple Silicon Mac インスタンスを含む AWS 提供の AMI の場合、起動時間は約 6 分から 20 分の範囲です。選択した Amazon EBS のボリュームサイズ、ユーザーデータへの追加スクリプトの導入、カスタム macOS AMI への追加ロードソフトウェアなどにより、起動時間が長くなる場合があります。

以下のような小さなシェルスクリプトを使用すれば、describe-instance-status API をポーリングし、インスタンスが接続できる状態になったかどうかを確認できます。次のコマンドで、インスタンス ID の例を独自の インスタンス ID に置き換えます。

for i in $(seq 1 200); do aws ec2 describe-instance-status --instance-ids=i-0123456789example \ --query='InstanceStatuses[0].InstanceStatus.Status'; sleep 5; done;

Mac インスタンスの作成

EC2 Mac インスタンスには専有ホストが必要です。まず、アカウントにホストを割り当ててから、そのホストにインスタンスを作成する必要があります。

AWS Management Console または AWS CLI を使用して Mac インスタンスを起動できます。

コンソールを使用した Mac インスタンスの起動

Mac インスタンスを Dedicated Host 上で起動するには
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. 以下のように専有ホストを割り当てます。

    1. ナビゲーションペインで [Dedicated Hosts] を選択します。

    2. [Dedicated Host の割り当て] を選択し、次の操作を行います。

      1. [インスタンスファミリー] で、[mac1][mac2][mac2-m2][mac2-m2pro] のいずれかを選択します。リストにインスタンスファミリーが表示されない場合、それは、現在選択されているリージョンではサポートされていません。

      2. [インスタンスタイプ] で、選択したインスタンスファミリーに基づき[mac1.metal][mac2.metal][mac2-m2.metal][mac2-m2pro.metal] のいずれかを選択します。

      3. [アベイラビリティーゾーン] で、専有ホストのアベイラビリティーゾーンを選択します。

      4. [Quantity] (数量) は [1] のままにします。

      5. [割り当て] を選択します。

  3. 次のように、ホストにインスタンスを作成します。

    1. 作成した Dedicated Host を選択し、次の操作を実行します。

      1. [Action] (アクション)、[Launch instance(s) onto host] (ホストにインスタンスを作成) の順に選択します。

      2. [Application and OS Images (Amazon Machine Image)] (アプリケーションおよび OS イメージ (Amazon マシンイメージ)) で、macOS AMI を選択します。

      3. [インスタンスタイプ] で、適切なインスタンスタイプ ([mac1.metal][mac2.metal][mac2-m2.metal][mac2-m2pro.metal] のいずれか) を選択します。

      4. [Advanced details] (詳細設定) で、[Tenancy] (テナンシー)、[Tenancy host by] (テナンシーホスト)、[Tenancy host ID] (テナンシーホスト ID) が、作成した専有ホストに基づいて事前設定されていることを確認します。必要に応じて [Tenancy affinity] (テナンシーのアフィニティ) を更新します。

      5. ウィザードを完了し、必要に応じて EBS ボリューム、セキュリティグループ、およびキーペアを指定します。

      6. [Summary] (サマリー) パネルで、[Launch instance] (インスタンスの起動) を選択します。

    2. 確認ページは、インスタンスが起動中であることを通知します。[View all instances] (すべてのインスタンスの表示) を選択して確認ページを閉じ、コンソールに戻ります。インスタンスの初期状態は pending です。インスタンスの状態が running に変わると、ステータスチェックに合格すると、インスタンスは準備完了になります。

AWS CLI を使用した Mac インスタンスの起動

専有ホストを割り当てる

次の allocate-hosts コマンドを使用して、お使いの Mac インスタンスに専有ホストを割り当て、instance-typemac1.metalmac2.metalmac2-m2.metalmac2-m2pro.metal のいずれかに置き換え、regionavailability-zone をお使いの環境に適したものに置き換えます。

aws ec2 allocate-hosts --region us-east-1 --instance-type mac1.metal --availability-zone us-east-1b --auto-placement "on" --quantity 1

ホスト上でインスタンスを起動する

次の run-instances コマンドを使用して Mac インスタンスを起動します。ここでも、instance-typemac1.metalmac2.metalmac2-m2.metalmac2-m2pro.metal のいずれかに置き換え、regionavailability-zone を以前使用したものに置き換えます。

aws ec2 run-instances --region us-east-1 --instance-type mac1.metal --placement Tenancy=host --image-id ami_id --key-name my-key-pair

インスタンスの初期状態は pending です。インスタンスの状態が running に変わると、ステータスチェックに合格すると、インスタンスは準備完了になります。インスタンスのステータス情報を表示するには、次の describe-instance-status コマンドを使用します。

aws ec2 describe-instance-status --instance-ids i-017f8354e2dc69c4f

次に、ステータスチェックに合格した実行中のインスタンスの出力例を示します。

{ "InstanceStatuses": [ { "AvailabilityZone": "us-east-1b", "InstanceId": "i-017f8354e2dc69c4f", "InstanceState": { "Code": 16, "Name": "running" }, "InstanceStatus": { "Details": [ { "Name": "reachability", "Status": "passed" } ], "Status": "ok" }, "SystemStatus": { "Details": [ { "Name": "reachability", "Status": "passed" } ], "Status": "ok" } } ] }

Mac インスタンスへ接続する

SSH またはグラフィカルユーザーインターフェイスを使用して Mac インスタンスに接続できます。

SSH を使用したインスタンスへの接続

重要

複数のユーザーが同時に OS にアクセスできます。ポート 5900 の画面共有サービスが組み込まれているため、通常、1:1 user:GUI セッションがあります。macOS 内で SSH を使用すると、sshd_config ファイルの [最大セッション] クォータまで、複数のセッションがサポートされます。

Amazon EC2 Mac インスタンスは、デフォルトではリモートルート SSH を許可しません。パスワード認証は、パスワードのブルートフォース攻撃を防ぐために無効になっています。ec2-user アカウントは、SSH を使用してリモートでログインするように設定されています。ec2-user アカウントにも sudo 権限があります。インスタンスに接続したら、他のユーザーを追加できます。

SSH を使用したインスタンスへの接続をサポートするには、SSH アクセスを許可するキーペアとセキュリティグループを使用してインスタンスを起動し、インスタンスにインターネット接続があることを確認します。インスタンスに接続するときに、キーペアの .pem ファイルを指定します。

SSH クライアントを使用して Mac インスタンスに接続するには、次の手順に従います。インスタンスの接続でエラーが発生した場合は、「インスタンスへの接続に関するトラブルシューティング」を参照してください。

SSH を使用してインスタンスに接続するには
  1. コマンドラインで「ssh」と入力して、ローカルコンピュータに SSH クライアントがインストールされていることを確認します。コンピュータがコマンドを認識しない場合は、お使いのオペレーティングシステム用の SSH クライアントを検索し、インストールします。

  2. インスタンスのパブリック DNS 名を取得します。Amazon EC2 コンソールを使用して、[詳細] タブと [ネットワーク] タブの両方でパブリック DNS 名を確認できます。AWS CLI を使用して、describe-instances コマンドを使用してパブリック DNS 名を見つけることができます。

  3. インスタンスの起動時に指定したキーペアの .pem ファイルを見つけます。

  4. 次の ssh コマンドを使用してインスタンスに接続し、インスタンスのパブリック DNS 名と .pem ファイルを指定します。

    ssh -i /path/key-pair-name.pem ec2-user@instance-public-dns-name

インスタンスのグラフィカルユーザーインターフェイス (GUI) に接続する

VNC、Apple Remote Desktop (ARD)、または Apple Screen Sharing アプリケーション (macOS に付属) を使用してインスタンスの GUI に接続するには、以下の手順に従います。

注記

macOS 10.14 以降では、画面共有がシステム環境設定で有効になっている場合のみ制御できます。

ARD クライアントまたは VNC クライアントを使用してインスタンスに接続するには
  1. ローカルコンピュータに、ARD をサポートしている ARD クライアントまたは VNC クライアントが、インストールされていることを確認します。macOS では、組み込みの画面共有アプリケーションを利用できます。インストールされていない場合は、お使いのオペレーティングシステム向けの ARD を検索し、インストールします。

  2. ローカルコンピュータから、SSH を使用してインスタンスに接続します

  3. 次のように passwd コマンドを使用して、ec2-user アカウントのパスワードを設定します。

    [ec2-user ~]$ sudo passwd ec2-user
  4. 次のコマンドを使用して macOS スクリーン共有をインストールして起動します。

    [ec2-user ~]$ sudo launchctl enable system/com.apple.screensharing sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist
  5. exit と入力して Enter キーを押して、インスタンスとの接続を切断します。

  6. コンピュータから、次の ssh コマンドを使用してインスタンスに接続します。前のセクションで示したオプションに加えて、ポート転送を有効にしローカルポート 5900 のすべてのトラフィックをインスタンスの ARD サーバーに転送する場合は、-L オプションを使用します。

    ssh -L 5900:localhost:5900 -i /path/key-pair-name.pem ec2-user@instance-public-dns-name
  7. ローカルコンピュータから、ARD をサポートしている ARD クライアントまたは VNC クライアントを使用して、localhost:5900 に接続します。例えば、macOS で画面共有アプリケーションを次のように使用します。

    1. [検索] を開いて、[移動] を選択します。

    2. [サーバーに接続] を選択します。

    3. [サーバーアドレス] フィールドに、vnc://localhost:5900 と入力します。

    4. プロンプトに従って、ec2-user を使用して ec2-user アカウント用に作成したユーザ名とパスワードでログインします。

Mac インスタンスで macOS の画面解像度を変更する

ARD または ARD をサポートする VNC クライアントを使用して EC2 Mac インスタンスに接続したら、displayplacer などの公開されている macOS ツールやユーティリティのいずれかを使用して macOS 環境の画面解像度を変更できます。

displayplacer を使用して画面解像度を変更するには
  1. displayplacer をインストールします。

    [ec2-user ~]$ brew tap jakehilborn/jakehilborn && brew install displayplacer
  2. 現在の画面情報と可能な画面解像度を表示します。

    [ec2-user ~]$ displayplacer list
  3. 希望の画面解像度を適用します。

    [ec2-user ~]$ displayplacer "id:<screenID> res:<width>x<height> origin:(0,0) degree:0"

    例:

    RES="2560x1600" displayplacer "id:69784AF1-CD7D-B79B-E5D4-60D937407F68 res:${RES} scaling:off origin:(0,0) degree:0"

EC2 macOS AMI

Amazon EC2 macOS は、Amazon EC2 Mac インスタンスで実行されるデベロッパーワークロードに対して、安定性、安全性、高パフォーマンスの環境を実現するように設計されています。EC2 macOS AMI には、起動設定ツールや一般的な AWS ライブラリやツールなど、AWS との統合を容易にするパッケージが含まれています。

EC2 macOS AMI の詳細については、「Amazon EC2 macOS AMI リリースノート」を参照してください。

AWS は、更新済みの EC2 macOS AMI を定期的に提供します。これには、AWS が所有するパッケージの更新と、完全にテストされた macOS の最新バージョンが含まれます。さらに、AWS は更新された AMI を提供し、さらに完全にテストおよび検証できるとすぐに最新のマイナーバージョンアップデートやメジャーバージョンアップデートを提供します。Mac インスタンスのデータやカスタマイズ情報を保持する必要がない場合は、現在の AMI を使用して新しいインスタンスを起動してから、前のインスタンスを終了することで、最新の更新プログラムを取得できます。また、Mac インスタンスに適用するアップデートを選択できます。

macOS AMI の通知をサブスクライブする方法については、「macOS AMI の通知へのサブスクライブ」を参照してください。

オペレーティングシステムとソフトウェアの更新

警告

ベータ版またはプレビュー版の macOS バージョンのインストールは、Amazon EC2 M1 Mac インスタンスでのみ可能です。Amazon EC2 は macOS のベータ版やプレビュー版をサポートしていないため、実稼働前の macOS バージョンに更新した後もインスタンスが機能し続けることは保証されません。

ベータ版またはプレビュー版の macOS バージョンを Amazon EC2 にインストールすると、インスタンスの停止または終了時に、x86 Mac インスタンスが Amazon EC2 Mac 専有ホストのパフォーマンスを低下させるため、そのホストで新しいインスタンスを開始または起動できなくなります。

x86 Mac インスタンスと Apple シリコン Mac インスタンスでソフトウェアを更新する手順

x86 Mac インスタンスでのソフトウェアの更新

x86 Mac インスタンスでは、softwareupdate コマンドを使用して、Apple からオペレーティングシステムの更新をインストールできます。

x86 Mac インスタンスで Apple からオペレーティングシステムの更新プログラムをインストールするには
  1. 次のコマンドを使用して、利用可能な更新プログラムを含むパッケージを一覧表示します。

    [ec2-user ~]$ softwareupdate --list
  2. すべての更新プログラムをインストールするか、特定の更新プログラムのみをインストールします。特定の更新プログラムをインストールするには、次のコマンドを使用します。

    [ec2-user ~]$ sudo softwareupdate --install label

    すべての更新プログラムをインストールするには、次のコマンドを使用します。

    [ec2-user ~]$ sudo softwareupdate --install --all --restart

システム管理者は、AWS Systems Manager を使用することで、事前に承認されたオペレーティングシステムの更新を x86 Mac インスタンスにロールアウトできます。詳細については、AWS Systems Manager ユーザーガイドを参照してください。

Homebrew を使用して、EC2 macOS AMI にパッケージへの更新プログラムをインストールします。これにより、インスタンスでこのパッケージの最新バージョンを使用できます。また、Homebrew を使用して Amazon EC2 macOS に共通の macOS アプリケーションをインストールして実行することもできます。詳細については、Homwbrew ドキュメントを参照してください。

Homebrew を使用して更新プログラムをインストールするには
  1. 次のコマンドを使用して Homwbrew を更新します。

    [ec2-user ~]$ brew update
  2. 次のコマンドを使用して、利用可能な更新プログラムを含むパッケージを一覧表示します。

    [ec2-user ~]$ brew outdated
  3. すべての更新プログラムをインストールするか、特定の更新プログラムのみをインストールします。特定の更新プログラムをインストールするには、次のコマンドを使用します。

    [ec2-user ~]$ brew upgrade package name

    すべての更新プログラムをインストールするには、次のコマンドを使用します。

    [ec2-user ~]$ brew upgrade

Apple Silicon Mac インスタンスでソフトウェアを更新する

考慮事項

Elastic Network Adapter (ENA) ドライバー

ネットワークドライバー設定が更新されたため、ENA ドライバーバージョン 1.0.2 は macOS 13.3 以降と互換性がありません。ベータ版、プレビュー版、または実稼働版の macOS バージョン 13.3 以降をインストールする必要があり、最新の ENA ドライバーをインストールしていない場合は、次の手順を使用して新しいバージョンのドライバーをインストールします。

ENA ドライバーの新しいバージョンをインストールするには
  1. ターミナルウィンドウで、SSH を使用して Apple Silicon Mac インスタンスに接続します。

  2. 次のコマンドを使用して、ENA Applications アプリケーションをファイルにダウンロードします。

    [ec2-user ~]$ brew install amazon-ena-ethernet-dext
    トラブルシューティングのヒント

    警告が表示されたら No available formula with the name amazon-ena-ethernet-dext、次のコマンドを実行します。

    [ec2-user ~]$ brew update
  3. exit と入力して return キーを押して、インスタンスとの接続を切断します。

  4. VNC クライアントを使用して ENA アプリケーションをアクティブ化します。

    1. インスタンスのグラフィカルユーザーインターフェイス (GUI) に接続する を使用して VNC クライアントを設定します。

    2. 画面共有アプリケーションを使用してインスタンスに接続したら、Applications フォルダーに移動して ENA アプリケーションを開きます。

    3. [Activate] を選択します。

    4. ドライバーが正しくアクティブ化されたことを確認するには、ターミナルウィンドウで次のコマンドを実行します。コマンドの出力は、古いドライバが終了状態で、新しいドライバがアクティブ状態であることを示しています。

      systemextensionsctl list;
    5. インスタンスを再起動すると、新しいドライバーのみが表示されます。

Apple Silicon Mac インスタンスでのソフトウェアの更新

Apple Silicon Mac インスタンスでは、オペレーティングシステムのインプレースアップデートを実行するために数ステップの手順を実行する必要があります。最初に、VNC (仮想ネットワークコンピューティング) クライアントで GUI を使用してインスタンスの内部ディスクにアクセスします。この手順では、組み込みの VNC クライアントである macOS 画面共有を使用します。次に、Amazon EBS ボリュームに aws-managed-user としてサインインして、管理ユーザー (ec2-user) に所有権を委任します。

この手順を進めると、2 つのパスワードが作成されます。1 つのパスワードは管理ユーザー (ec2-user) 用で、もう 1 つのパスワードは特別な管理ユーザー (aws-managed-user) 用です。これらのパスワードは手順を進めるときに使用しますので、覚えておいてください。

注記

macOS Big Sur でこの手順を実行すると、macOS Big Sur 11.7.3 から macOS Big Sur 11.7.4 へのアップデートなど、マイナーアップデートのみしか実行できません。macOS Monterey 以降では、主要なソフトウェアアップデートを実行できます。

内部ディスクにアクセスするには
  1. ローカルコンピュータのターミナルで、次のコマンドで SSH を使用して Apple Silicon Mac インスタンスに接続します。詳細については、「SSH を使用したインスタンスへの接続」を参照してください。

    ssh -i /path/key-pair-name.pem ec2-user@instance-public-dns-name
  2. 次のコマンドを使用して macOS スクリーン共有をインストールして起動します。

    [ec2-user ~]$ sudo launchctl enable system/com.apple.screensharing sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist
  3. 次のコマンドを実行して、ec2-user のパスワードを設定します。パスワードは後で使用するので覚えておいてください。

    [ec2-user ~]$ sudo /usr/bin/dscl . -passwd /Users/ec2-user
  4. exit と入力して return キーを押して、インスタンスとの接続を切断します。

  5. ローカルコンピュータのターミナルで、次のコマンドを使用して VNC ポートへの SSH トンネルを使用してインスタンスに再接続します。

    ssh -i /path/key-pair-name.pem -L 5900:localhost:5900 ec2-user@instance-public-dns-name
    注記

    次の VNC 接続と GUI の手順が完了するまで、この SSH セッションを終了しないでください。インスタンスを再起動すると、接続は自動的に終了します。

  6. ローカルコンピュータから、次の手順を使用して localhost:5900 に接続します。

    1. [検索] を開いて、[移動] を選択します。

    2. [サーバーに接続] を選択します。

    3. [サーバーアドレス] フィールドに、vnc://localhost:5900 と入力します。

  7. macOS ウィンドウで、ステップ 3 で作成したパスワードを使用して、ec2-user として Apple Silicon Mac インスタンスのリモートセッションに接続します。

  8. 次のいずれかのオプションを使用して、InternalDisk という名前の内部ディスクにアクセスします。

    1. macOS Ventura 以上の場合: [システム設定] を開き、左側のペインで [一般] を選択し、ペインの右下で [起動ディスク] を選択します。

    2. macOS Monterey 以下の場合: [システム環境設定] を開いて、[起動ディスク] を選択し、ウィンドウの左下にあるロックアイコンを選択してペインのロックを解除します。

    トラブルシューティングのヒント

    内部ディスクをマウントする必要がある場合は、ターミナルで次のコマンドを実行します。

    APFSVolumeName="InternalDisk" ; SSDContainer=$(diskutil list | grep "Physical Store disk0" -B 3 | grep "/dev/disk" | awk {'print $1'} ) ; diskutil apfs addVolume $SSDContainer APFS $APFSVolumeName
  9. InternalDisk という名前の内部ディスクを選択し、[再起動] を選択します。メッセージが表示されたら、もう一度 [再起動] を選択します。

    重要

    内部ディスクの名前が InternalDisk ではなく Macintosh HD の場合は、専有ホストを更新できるようにインスタンスを停止して再起動する必要があります。詳細については、「Mac インスタンスの停止と終了」を参照してください。

管理ユーザーに所有権を委任するには、次の手順に従います。SSH でインスタンスに再接続すると、特別な管理ユーザー (aws-managed-user) を使用して内部ディスクから起動されます。aws-managed-user 用の初期パスワードは空白なため、最初の接続時に上書きする必要があります。その後、ブートボリュームが変更されたため、手順を繰り返して macOS の画面共有をインストールして起動する必要があります。

Amazon EBS ボリュームの管理者に所有権を委任するには
  1. ローカルコンピュータのターミナルで、次のコマンドを使用して Apple Silicon Mac インスタンスに接続します。

    ssh -i /path/key-pair-name.pem aws-managed-user@instance-public-dns-name
  2. WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! の警告が表示されたら、以下のいずれかのコマンドを使用してこの問題を解決します。

    1. 次のコマンドを使用して、既知のホストを削除します。次に、前の手順を繰り返します。

      rm ~/.ssh/known_hosts
    2. 前の手順の SSH コマンドに、次の形式を追加します。

      -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no
  3. 次のコマンドを実行して、aws-managed-user のパスワードを設定します。aws-managed-user 初期パスワードは空白であるため、最初の接続時に上書きする必要があります。

    1. [aws-managed-user ~]$ sudo /usr/bin/dscl . -passwd /Users/aws-managed-user password
    2. プロンプトが表示されたら、Permission denied. Please enter user's old password:、Enter キーを押します。

      トラブルシューティングのヒント

      passwd: DS error: eDSAuthFailed のエラーが発生した場合は、次のコマンドを使用します。

      [aws-managed-user ~]$ sudo passwd aws-managed-user
  4. 次のコマンドを使用して macOS スクリーン共有をインストールして起動します。

    [aws-managed-user ~]$ sudo launchctl enable system/com.apple.screensharing sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist
  5. exit と入力して return キーを押して、インスタンスとの接続を切断します。

  6. ローカルコンピュータのターミナルで、次のコマンドを使用して VNC ポートへの SSH トンネルを使用してインスタンスに再接続します。

    ssh -i /path/key-pair-name.pem -L 5900:localhost:5900 aws-managed-user@instance-public-dns-name
  7. ローカルコンピュータから、次の手順を使用して localhost:5900 に接続します。

    1. [検索] を開いて、[移動] を選択します。

    2. [サーバーに接続] を選択します。

    3. [サーバーアドレス] フィールドに、vnc://localhost:5900 と入力します。

  8. macOS ウィンドウで、ステップ 3 で作成したパスワードを使用して、aws-managed-user として Apple Silicon Mac インスタンスのリモートセッションに接続します。

    注記

    Apple ID でサインインするように求めるメッセージが表示されたら、[後でセットアップ] を選択します。

  9. Amazon EBS ボリュームには、次のいずれかのオプションを使用してアクセスします。

    1. macOS Ventura 以降の場合: [システム設定] を開き、左側のペインで [一般] を選択し、ペインの右下で [起動ディスク] を選択します。

    2. macOS Monterey 以前の場合: [システム環境設定] を開き、[起動ディスク] を選択し、ウィンドウの左下にあるロックアイコンを使用してペインのロックを解除します。

    注記

    再起動するまで、管理者パスワードの入力を求められたら、上記で設定した aws-managed-user 用のパスワードを使用してください。このパスワードは、ec2-user 用に設定したパスワードやインスタンスのデフォルトの管理者アカウントとは異なる場合があります。以下の手順では、インスタンスの管理者パスワードをいつ使用するかを指定します。

  10. Amazon EBS ボリューム ([起動ディスク] ウィンドウの InternalDisk という名前が付いていないボリューム) を選択し、[再起動] を選択します。

    注記

    Apple Silicon Mac インスタンスに複数の起動可能な Amazon EBS ボリュームがアタッチされている場合は、必ず各ボリュームにそれぞれ固有の名前を使用してください。

  11. 再起動を確認し、プロンプトが表示されたら [ユーザーを認証] を選択します。

  12. [このボリュームペインのユーザーを認証] で、管理者ユーザー (デフォルトで ec2-user) が選択されていることを確認し、[承認] を選択します。

  13. 前の手順の手順 3 で作成した ec2-user パスワードを入力し、[続行] を選択します。

  14. プロンプトが表示されたら、特別管理ユーザー (aws-managed-user) のパスワードを入力します。

  15. ローカルコンピュータからターミナルで、ec2-user ユーザー名を使用して SSH を使用してインスタンスに再接続します。

    トラブルシューティングのヒント

    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! の警告が表示されたら、次のコマンドを実行し、SSH を使用してインスタンスに再接続します。

    rm ~/.ssh/known_hosts
  16. ソフトウェアアップデートを実行するには、x86 Mac インスタンスでのソフトウェアの更新 の下にあるコマンドを使用します。

EC2 macOS Init

EC2 macOS Init は、起動時に EC2 Mac インスタンスを初期化するために使用します。優先順位グループを使用して、タスクの論理グループを同時に実行します。

launchd plist ファイルは /Library/LaunchDaemons/com.amazon.ec2.macos-init.plist です。EC2 macOS Init 用のファイルは、/usr/local/aws/ec2-macos-init にあります。

詳細については、https://github.com/aws/ec2-macos-init を参照してください。

macOS 用の Amazon EC2 System Monitor

macOS 用の Amazon EC2 System Monitor は、Amazon CloudWatch で CPU 使用率メトリクスを使用できるようにします。このメトリクスは、カスタムシリアルデバイス経由で 1 分間隔で CloudWatch に送信されます。このエージェントを有効または無効にするには、次の手順に従います。このエージェントは、デフォルトでは有効になっています。

sudo setup-ec2monitoring [enable | disable]
注記

macOS 用の Amazon EC2 System Monitor は、現在、Apple Silicon Mac インスタンスではサポートされていません。

Mac インスタンスの EBS ボリュームのサイズを増やす

Mac インスタンスの Amazon EBS ボリュームのサイズを増やすことができます。詳細については、「Amazon EBS ユーザーガイド」の「Amazon EBS Elastic Volumes」を参照してください。

ボリュームのサイズを大きくした後、APFS コンテナのサイズを以下のように大きくする必要があります。

使用可能なディスク容量を増やす
  1. 再起動が必要かどうかを判断します。実行中の Mac インスタンスで既存の EBS ボリュームのサイズを変更した場合、新たなサイズを使用可能にするには、そのインスタンスを再起動する必要があります。起動中にディスク領域の変更が行われた場合、再起動は必要ありません。

    ディスクサイズに関する現在のステータスを表示します。

    [ec2-user ~]$ diskutil list external physical /dev/disk0 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *322.1 GB disk0 1: EFI EFI 209.7 MB disk0s1 2: Apple_APFS Container disk2 321.9 GB disk0s2
  2. 以下のコマンドをコピーして貼り付けます。

    [ec2-user ~]$ PDISK=$(diskutil list physical external | head -n1 | cut -d" " -f1) APFSCONT=$(diskutil list physical external | grep "Apple_APFS" | tr -s " " | cut -d" " -f8) yes | sudo diskutil repairDisk $PDISK
  3. 以下のコマンドをコピーして貼り付けます。

    [ec2-user ~]$ sudo diskutil apfs resizeContainer $APFSCONT 0

Mac インスタンスの停止と終了

Mac インスタンスを停止すると、インスタンスは、stopping 状態に入るまでの約 15 分間は stopped 状態のままになります。

Mac インスタンスを停止または終了すると、Amazon EC2 は基盤となる専有ホスト上でスクラブワークフローを実行して、内部 SSD を消去し、永続的な NVRAM 変数をクリアし、最新のデバイスファームウェアに更新します。これにより、Mac インスタンスは、他の EC2 Nitro インスタンスと同じセキュリティとデータプライバシーを提供できます。また、最新の macOS AMI を実行することも可能です。スクラブワークフローの最中に、専有ホストは一時的に保留状態になります。x86 Mac インスタンスでは、スクラブワークフローが完了するまでに最大で 50 分かかる場合があります。Apple シリコン Mac インスタンスでは、スクラブワークフローが完了するまでに最大で 110 分かかる場合があります。さらに、x86 Mac インスタンスでは、デバイスファームウェアの更新が必要な場合、スクラブワークフローが完了するまでに最大で 3 時間かかる場合があります。

スクラブワークフローが完了するまで、停止した Mac インスタンスを起動したり、新しい Mac インスタンスを起動したりすることはできません。完了の時点で、Dedicated Host は available 状態になります。

専有ホストが pending 状態になると、メータリングと課金が一時停止されます。スクラブワークフロー中は課金されません。

専有ホストでサポートされている macOS バージョン

Amazon EC2 Mac 専有ホストでサポートされている最新の macOS バージョンを表示できます。この機能を使用すると、専有ホストが任意の macOS バージョンでのインスタンスの起動をサポートできるかどうかを検証できます。

macOS の各バージョンで正常に起動するには、基盤となる Apple Mac でファームウェアの最小バージョンが必要です。割り当てられた Mac 専有ホストが長期間アイドル状態のままである場合、または長時間実行されているインスタンスがある場合、Apple Mac ファームウェアのバージョンが古くなる可能性があります。

最新の macOS バージョンを確実にサポートするために、割り当てられた Mac 専有ホストでインスタンスを停止または終了できます。これにより、ホストスクラブワークフローがトリガーされ、基盤となる Apple Mac のファームウェアが最新の macOS バージョンをサポートするように更新されます。インスタンスが長時間実行されている専有ホストは、実行中のインスタンスを停止または終了すると、自動的に更新されます。

スクラブワークフローの詳細については、「Mac インスタンスの停止と終了」を参照してください。

Mac インスタンスの起動方法の詳細については、「Mac インスタンスの作成」を参照してください。

Amazon EC2 コンソールまたは AWS CLI を使用して、割り当てられた専有ホストでサポートされている最新の macOS バージョンに関する情報を表示できます。

Console
コンソールを使用して専有ホストのファームウェア情報を表示するには
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインで [Dedicated Hosts] を選択します。

  3. [専有ホストの詳細] ページの [サポートされている最新の macOS バージョン] に、ホストがサポートできる最新の macOS バージョンが表示されます。

AWS CLI
AWS CLI を使用して専有ホストファームウェア情報を表示するには

describe-mac-hosts コマンドを使用して、region を適切な AWS リージョンに置き換えます。

$ aws ec2 describe-mac-hosts --region us-east-1 { "MacHosts": [ { "HostId": "h-07879acf49EXAMPLE", "MacOSLatestSupportedVersions": [ "14.3", "13.6.4", "12.7.3" ] } ] }

macOS AMI の通知へのサブスクライブ

新しい AMI のリリース時、あるいは BridgeOS の更新時に通知を受け取るには、Amazon SNS を使用して通知にサブスクライブします。

macOS AMI の通知にサブスクライブするには
  1. Amazon SNS コンソール(https://console.aws.amazon.com/sns/v3/home)を開きます。

  2. ナビゲーションバーで、必要に応じて、リージョンを [米国東部 (バージニア北部)] に変更します。購読する SNS 通知がこのリージョンで作成されているため、このリージョンを使用する必要があります。

  3. ナビゲーションペインで [Subscriptions] を選択します。

  4. [Create subscription] を選択します。

  5. [サブスクリプションの作成] ダイアログボックスで、次の操作を行います。

    1. [ARN のトピック] で、次の Amazon リソースネーム (ARN) のいずれかをコピーアンドペーストします。

      • arn:aws:sns:us-east-1:898855652048:amazon-ec2-macos-ami-updates

      • arn:aws:sns:us-east-1:898855652048:amazon-ec2-bridgeos-updates

      [プロトコル] の設定

    2. E メール:

      [エンドポイント] では、通知を受信するために使用できる E メールアドレスを入力します。サブスクリプションを作成した後、件名が「AWS Notification - Subscription Confirmation」とされた確認メッセージが送られてきます。このメールを開き、[サブスクリプションの確認] をクリックして受信登録を完了します。

    3. SMS:

      エンドポイントに、通知を受信するために使用する E メールアドレスを入力します。

    4. AWS Lambda、Amazon SQS、Amazon Data Firehose (通知は JSON 形式で送信されます):

      [Endpoint] (エンドポイント) に、通知を受信するために使用する Lambda 関数、SQS キュー、または Firehose ストリームの ARN を入力します。

    5. [Create subscription] を選択します。

macOS AMI がリリースされるたびに、amazon-ec2-macos-ami-updates トピックのサブスクライバーに対し通知が送信されます。BridgeOS が変更されるたびに、amazon-ec2-bridgeos-updates トピックのサブスクライバーに対し通知が送信されます。通知が不要になった場合は、次の手順で受信登録を解除します。

macOS AMI の通知のサブスクライブを解除するには
  1. Amazon SNS コンソール(https://console.aws.amazon.com/sns/v3/home)を開きます。

  2. ナビゲーションバーで、必要に応じて、リージョンを [米国東部 (バージニア北部)] に変更します。SNS 通知はこのリージョンで作成されたため、このリージョンを使用する必要があります。

  3. ナビゲーションペインで [Subscriptions] を選択します。

  4. サブスクリプションを選択し、[アクション]、[サブスクリプションの削除] を選択します。確認のプロンプトが表示されたら、[削除] を選択します。

Mac インスタンス用の専有ホストをリリースする

Mac インスタンスの使用が終了したら、専有ホストをリリースすることでクリーンアップできます。専有ホストをリリースする前に、Mac インスタンスを停止または終了する必要があります。割り当て期間が少なくとも 24 時間を超えるまで、ホストをリリースすることはできません。

専有ホストをリリースするには
  1. Amazon EC2 コンソール (https://console.aws.amazon.com/ec2/) を開きます。

  2. ナビゲーションペインで、[インスタンス] を選択します。

  3. インスタンスを選択し、[インスタンスの状態] をクリックしてから、[インスタンスの停止] または [インスタンスの終了 ] を選択します。

  4. ナビゲーションペインで [Dedicated Hosts] を選択します。

  5. 専有ホストを選択し、[アクション][ホストのリリース] の順に選択します。

  6. 確認を求めるメッセージが表示されたら、[リリース] を選択します。

料金については、「 料金表」を参照してください。

Mac インスタンスの詳細については、「Amazon EC2 Mac インスタンス」を参照してください。

Mac インスタンスのハードウェア仕様とネットワークパフォーマンスについて詳しくは、「汎用インスタンス」を参照してください。