このページでは、オンプレミス サーバーで Cuttlefish を実行する方法について説明します。Cuttlefish をオンプレミス サーバーで実行するには、Cuttlefish の Docker イメージと Cloud Orchestrator のウェブサービスを使用する必要があります。
Cuttlefish の Docker イメージには、コンテナでの Cuttlefish の起動に必要な依存関係がすべて含まれています。この Docker イメージを使用すると、さまざまなホスト環境で Cuttlefish インスタンスをリモートで実行するためのインフラストラクチャをセットアップしたり、OS の種類(Debian、Linux)、OS のバージョン、アーキテクチャの種類(x86_64、ARM64)、その他のインストールの依存関係など、ホストマシンのセットアップから独立して Cuttlefish を起動したりできます。
Cloud Orchestrator は、Cuttlefish を実行できる VM またはコンテナをホストするためのウェブサービスです。cvdr
は、Cloud Orchestrator と連携するためのクライアントサイドのコマンドライン インターフェースです。
Cuttlefish インスタンスを実行するためのサーバーの要件
Cuttlefish インスタンスを実行するためのサーバーの要件(CPU やメモリの要件など)は、同時に実行される Cuttlefish インスタンスの数と、それぞれのインスタンスで使用されるリソースの量に応じて異なります。たとえば、各インスタンスで 4 個の CPU コアと 8 GB の RAM を使用している Cuttlefish インスタンスを 40 個実行する場合、サーバーには少なくとも 160 個のコアと 320 GB の RAM が必要になります。グラフィック アクセラレーションを使用する場合は、GPU も必要になります。
参考までに、Cuttlefish チームでは Cuttlefish ハイブリッド デバイス(CHD)を実行するために、ARM のオンプレミス サーバー設定を使用しています。40 個の CHD インスタンスを同時に実行するために、128 個のコア(現在使用しているバージョンは ARM v8.2 ですが、最新バージョンでも構いません)と 512 GB の RAM を使用しています。
Cuttlefish を実行するためのオンプレミス サーバーをセットアップする
Cuttlefish を実行するためのオンプレミス サーバーをセットアップするには、オンプレミス サーバーで Cloud Orchestrator を有効にするの手順に沿って操作します。ここでは、Cloud Orchestrator を実行して Cuttlefish の Docker イメージをダウンロードし、ホストとして実行する方法について説明します。
cvdr
を使用して Cloud Orchestrator と連携し、ホストと Cuttlefish インスタンスを作成、削除、および一覧表示します。
Cuttlefish の Docker イメージをダウンロードする
Cuttlefish の Docker イメージをダウンロードするには、GitHub の android-cuttlefish/docker/README.md の手順に沿って操作します。