ARM テンプレートを使用した CycleCloud の実行

Azure CycleCloud は、GitHub に格納されている Azure Resource Manager (ARM) テンプレートを使用して、Azure リソースにインストールできます。 ARM テンプレートは、CycleCloud セットアップの大部分を処理します。 ARM テンプレート:

  1. 3 つの異なるサブネットを持つ仮想ネットワークをデプロイします。
    • cycle: CycleCloud サーバーが開始されるサブネット
    • コンピューティング: HPC クラスターの /22 サブネット
    • user: ユーザー ログインを作成するためのサブネット
  2. サイクル サブネットに VM をプロビジョニングし、それに Azure CycleCloud をインストールします。

CycleCloud をインストールするには、CycleCloud Marketplace イメージを使用することをお勧めします。 CycleCloud Marketplace のインストール に関するクイックスタートに従ってください。 CycleCloud は手動でインストールすることもできます。インストールと構成プロセスをより詳細に制御できます。 詳細については、 CycleCloud の手動インストールのクイックスタートに関するページを参照してください。

前提条件

以下のものが必要になります。

  1. アクティブなサブスクリプションが含まれる Azure アカウント。
  2. ターミナル内のシェル セッション。
    • Windows マシンを使用している場合は、 ブラウザーベースの Bash シェルを使用します。
    • Windows 以外のマシンの場合は、Azure CLI v2.0.20 以降をインストールして使用します。 現在のバージョンを調べるには、az --version を実行します。 インストールまたはアップグレードする必要がある場合は、「Azure CLI 2.0 のインストール」を参照してください。

Azure Cloud Shell を開く

Azure Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 Cloud Shell には一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。 [コピー] ボタンを選択してコードをコピーし、Cloud Shellに貼り付け、Enter キーを押して実行するだけです。 Cloud Shell は、次のようにいくつかの方法で開くことができます。

コード ブロックの右上隅にある緑色の [試してみる] ボタンをクリックします。 この記事の Cloud Shell
ブラウザーで Cloud Shell を開きます。 Cloud Shell起動する
Azure portalの右上隅にあるメニューの [Cloud Shell] ボタンを選択します。 ポータルの Cloud Shell

サービス プリンシパル

Azure CycleCloud には、Azure サブスクリプションへの共同作成者アクセス権を持つサービス プリンシパルが必要です。 使用できるサービス プリンシパルがない場合は、今すぐ作成できます。 サービス プリンシパル名は一意である必要があることに注意してください。次の例では、 CycleCloudApp を好きな名前に置き換えることができます。

az ad sp create-for-rbac --name CycleCloudApp --years 1

出力には、いくつかのパラメーターが表示されます。 、、および tenantappIdpassword保存する必要があります。

"appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"displayName": "CycleCloudApp",
"name": "http://CycleCloudApp",
"password": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

SSH キーペア

CycleCloud VM とクラスターにログインするには、SSH キーが必要です。 SSH キーペアを生成します。

ssh-keygen -f ~/.ssh/id_rsa -m pem -t rsa -N "" -b 4096

Note

CycleCloud CLI で使用される Python 暗号化ライブラリでは、新しい OpenSSH シリアル化形式はサポートされていません。 を使用 ssh-keygen -m pem して、古い標準形式のキーを生成する必要があります。

次を使用して SSH 公開キーを取得します。

cat ~/.ssh/id_rsa.pub

出力は ssh-rsa で始まり、その後に長い文字列が続きます。 このキーを今すぐコピーして保存します。

Linux では、 GitHub の次の手順に 従って、新しい SSH キーペアを生成します。

Azure CycleCloud をデプロイする

下のボタンをクリックして、Azure CycleCloud をサブスクリプションにデプロイします。

デプロイして Azure にデプロイする

必要な情報を入力します。

基本:

  • サブスクリプション: 複数のアクティブな Azure サブスクリプションがある場合は、ここで使用するサブスクリプションを選択します
  • リソース グループ: このクイック スタートによって生成されるすべてのものを保持する (新しい) リソース グループの名前を入力します (例: MyQuickstart)
  • 場所: インスタンスを格納するリージョンを選択します

設定:

  • テナント ID: tenant 上記のサービス プリンシパルの 。
  • アプリケーション ID: appId 上記のサービス プリンシパルからの 。
  • アプリケーション シークレット: password 上記のサービス プリンシパルの 。
  • SSH 公開キー: CycleCloud VM へのログインに使用される公開キー
  • ユーザー名: CycleCloud VM のユーザー名。 ドメインを使用せずに Azure Portal のユーザー名を使用します (例: johnsmithjohnsmith@domain.com代わりに)

残りのフィールドはそのまま残すことができます。 使用条件に同意し、[ 購入] をクリックします。 CycleCloud 製品は無料ですが、Azure で使用されるコア時間の支払いは引き続き行われています。

デプロイ プロセスでは、CycleCloud をインストールして設定するカスタム スクリプト拡張機能としてインストール スクリプトが実行されます。 このプロセスには 5 分から 8 分かかります。

CycleCloud アプリケーション サーバーにログインする

CycleCloud Web サーバーに接続するには、Azure Portal または CLI を使用して、CycleServer VM の完全修飾ドメイン名 (FQDN) を取得します。

# Replace "MyQuickstart" with the resource group you created above.
export RESOURCE_GROUP="MyQuickstart"
az network public-ip show -g ${RESOURCE_GROUP?} -n cycle-ip --query dnsSettings.fqdn

https://<FQDN>/ を参照します。 インストールでは自己署名 SSL 証明書が使用され、ブラウザーに警告が表示される場合があります。

インストール用の サイト名 を作成します。 任意の名前をここで使用できます。

CycleCloud のようこそ画面

Azure CycleCloud エンド ユーザー ライセンス契約が表示されます。クリックして同意します。 その後、アプリケーション サーバーの CycleCloud 管理者ユーザーを作成する必要があります。 上記で使用したのと同じユーザー名を使用することをお勧めします。 入力したパスワードが一覧表示されている要件を満たしていることを確認します。 [ 完了] をクリックして続行します。

CycleCloud の [新しいユーザーの作成] 画面

ユーザーを作成したら、CycleCloud によって作成された Linux VM に簡単にアクセスできるように SSH キーを設定できます。 SSH キーを追加するには、画面の右上隅にある自分の名前をクリックしてプロファイルを編集します。

これで、クラスターを作成して実行できる実行中の CycleCloud アプリケーションが作成されました。

Note

既定の CycleCloud 構成は、 $CS_HOME/config/cycle_server.properties ファイルの設定を使用して、特定の環境に合わせてカスタマイズできます。

もっと読む