Elastic Compute Service(ECS) イメージを使用して複数のリージョンにサービスをデプロイする場合、ECS イメージの手動での複製とマッピング、権限の管理など、複雑な操作を実行する必要があります。デプロイプロセスを簡素化するために、Compute Nest は ECS イメージデプロイメントパッケージを提供します。このトピックでは、ECS イメージデプロイメントパッケージの仕組みについて説明します。また、ECS イメージデプロイメントパッケージを作成および使用する方法についても説明します。
背景情報
目的
サービスデプロイメント中、ECS イメージはマルチリージョンデプロイメントによく使用されます。ただし、ECS イメージはリージョン固有です。マルチリージョンデプロイメントを実装するには、ECS イメージを各リージョンに複製し、テンプレート内の対応するリージョンに ECS イメージを指定する必要があります。操作には、ECS イメージの手動での複製とマッピング、権限の管理が含まれます。新しいイメージバージョンがリリースされるたびに、操作を繰り返す必要があります。これは、マルチリージョンデプロイメントプロセスを複雑にします。
メリット
サービスプロバイダーとして、ソース ECS イメージを作成し、Compute Nest コンソールで ECS イメージデプロイメントパッケージを構成し、次に ECS イメージデプロイメントパッケージをソース ECS イメージに関連付けるだけで済みます。イメージの複製、イメージのマッピング、権限管理などの後続の操作は、Compute Nest によって実行されます。
イメージの複製: Compute Nest は、作成したソース ECS イメージを、複数のリージョンにイメージを複製するために使用される Compute Nest の一般アカウントに複製します。
イメージのマッピング: Compute Nest は、テンプレートで
ImageIdパラメーターが指定されているかどうかを確認します。パラメーターが指定されている場合、イメージ ID はサービス詳細で ECS イメージデプロイメントパッケージに関連付けることができます。顧客がサービスをデプロイすると、Compute Nest はサービスがデプロイされているリージョンを確認し、テンプレートで指定されたイメージ ID の代わりに、リージョンに対応するイメージ ID を自動的に使用します。このように、イメージ ID とリージョンは動的にマッピングされます。権限管理: ECS イメージデプロイメントパッケージの権限は、関連付けられたサービスに関連しています。サービスが ECS イメージデプロイメントパッケージに関連付けられていない場合、ECS イメージデプロイメントパッケージは非公開であり、対応するサービスプロバイダーのみが ECS イメージデプロイメントパッケージを使用できます。少なくとも 1 つの公開サービスが ECS イメージデプロイメントパッケージに関連付けられている場合、ECS イメージデプロイメントパッケージは公開されます。ECS イメージデプロイメントパッケージに関連付けられているすべてのサービスが非公開の場合、ECS イメージデプロイメントパッケージは非公開です。関連付けられたサービスにホワイトリストが構成されている場合、ホワイトリストは ECS イメージデプロイメントパッケージにも適用されます。
制限
テンプレートで ECS イメージデプロイメントパッケージのクラウドリソースを変更できます。
ROS
Resource Orchestration Service(ROS) をサービスデプロイメントに使用する場合は、ROS テンプレートの Resource セクションで ImageId パラメーターを指定する必要があります。
次のクラウドリソースのイメージ ID を指定できます。
ECS インスタンス (ALIYUN::ECS::Instance)
ECS インスタンスグループ (ALIYUN::ECS::InstanceGroup)
スケーリンググループ (ALIYUN::ESS::ScalingGroup)
Elastic High Performance Computing(E-HPC) クラスタ (ALIYUN::EHPC::Cluster)
ImageIdパラメーターを使用してイメージ ID を指定できます。ImageId パラメーターの値は文字列である必要があります。テンプレートの入力パラメーターまたはビルトイン関数から値を取得することはできません。
Terraform
Terraform をサービスデプロイメントに使用する場合は、テンプレートで image_id パラメーターを指定する必要があります。
次のクラウドリソースのイメージ ID を指定できます。
ECS インスタンス (alicloud_instance)
スケーリンググループ (ALIYUN::ESS::ScalingGroup)
image_idパラメーターを使用してイメージ ID を指定できます。image_id パラメーターの値は文字列である必要があります。テンプレートの入力パラメーターまたはビルトイン関数から値を取得することはできません。
ECS イメージデプロイメントパッケージの作成と使用
前提条件
ECS イメージが作成されていること。Compute Nest は、カスタムイメージと Alibaba Cloud Marketplace のイメージをサポートしています。ビジネス要件に基づいてイメージタイプを選択できます。
カスタムイメージ: Alibaba Cloud アカウント内のカスタム ECS イメージ。
カスタムイメージがない場合は、作成できます。詳細については、「インスタンスからカスタムイメージを作成する」をご参照ください。
Alibaba Cloud Marketplace のイメージ: Alibaba Cloud Marketplace で販売されているイメージ。
ビジネス要件に基づいて、Alibaba Cloud Marketplace でイメージを検索できます。
ECS イメージデプロイメントパッケージを作成する
デプロイメントパッケージの基本情報を構成します。
Compute Nest コンソール[サービスデプロイメントパッケージ] にログインします。左側のナビゲーションウィンドウで、[サービスデプロイメントパッケージ] をクリックします。[デプロイメントパッケージ] ページの セクションで、[デプロイメントパッケージの作成] をクリックします。
[デプロイメントパッケージ情報] セクションで、次の表に示すパラメーターを構成します。
パラメーター
説明
デプロイメントパッケージ名
デプロイメントパッケージの名前。名前は 3 ~ 128 文字で、文字、数字、およびアンダースコア(_)を含めることができます。デプロイメントパッケージの作成後、名前を変更することはできません。
バージョン名
デプロイメントパッケージバージョンの名前。名前は 3 ~ 50 文字で、文字、数字、およびアンダースコア(_)を含めることができます。
説明
デプロイメントパッケージの説明。説明は 10 ~ 500 文字でなければなりません。
リソースグループ
デプロイメントパッケージが属するリソースグループの名前。
リソースグループは、使用状況、権限、およびリージョン別にリソースをグループ化するために使用されます。リソースグループを使用して、リソースを階層的に整理し、ユーザーとプロジェクトに基づいてリソースをグループ化できます。詳細については、「リソースグループを管理する」をご参照ください。
タグ設定
デプロイメントパッケージに追加するタグ。完全なタグキーとタグ値を選択または入力します。 デプロイメントパッケージには最大 20 個のタグを追加できます。 タグキーまたはタグ値がない場合は、カスタムタグを作成できます。 詳細については、「カスタムタグを追加する」をご参照ください。
ECS イメージデプロイメントパッケージを構成します。

[デプロイメントパッケージコンテンツ] セクションで、[デプロイメントパッケー ジタイプ] パラメーターに [ECS イメージ] を選択します。準備した ECS イメージに基づいて、[イメージタイプ] パラメーターと [製品の選択] パラメーターを構成します。
[配布設定] セクションで、デプロイメントパッケージを配布するリージョンを選択します。この例では、[すべてのリージョン] が選択されています。
重要デプロイメントパッケージを配布するには、少なくとも 1 つのリージョンを選択する必要があります。
[デプロイメントパッケージの公開] をクリックします。
デプロイメントパッケージが公開されると、公開されたバージョンのコンテンツを変更することはできません。新しいバージョンまたは新しいデプロイメントパッケージのみを作成できます。
説明デプロイメントパッケージをテストする必要がある場合は、[デプロイメントパッケージの保存] をクリックします。テストが完了したら、[デプロイメントパッケージの公開] をクリックします。
デプロイメントパッケージが公開されていない場合、選択した配布リージョンでデプロイメントパッケージをテストすることはできません。この場合、ECS イメージが存在するリージョンでのみデプロイメントパッケージをテストできます。
デプロイメントパッケージを表示します。
[サービスデプロイメントパッケージ] ページに戻ります。作成したデプロイメントパッケージを見つけ、その名前をクリックして [デプロイメントパッケージの詳細] ページに移動し、デプロイメントの進行状況を表示します。
デプロイメントパッケージが [利用可能] 状態になったら、[デプロイメントパッケージのバージョン] タブで表示するバージョンを見つけ、[アクション] 列の [表示] をクリックして、デプロイメントパッケージの配布結果を表示します。
説明イメージの配布にかかる時間は、リージョンとイメージサイズによって数分から数時間までさまざまです。
ECS イメージデプロイメントパッケージを使用する
この例では、ECS イメージデプロイメントパッケージの使用方法を説明するために、プライベートサービスを作成します。
Compute Nest コンソール にログインします。
左側のナビゲーションウィンドウで、[マイサービス] をクリックします。 [マイサービス] ページの [作成済みサービス] タブで、[サービスの作成] をクリックします。
[サービスの作成] ページで、[サービス作成方法の選択] を [カスタム起動] に設定し、[サービスの種類の選択] を [プライベートサービス] に設定して、[次へ: 設定の構成] をクリックします。

[サービスの作成] ページで、指示に従ってサービスの基本情報を指定します。 [テンプレート] セクションで、テンプレートを選択するか、テンプレート名を入力します。この例では、[シナリオベースのテンプレート] が選択されています。
テンプレートの内容に
ImageIdパラメーターが含まれている場合は、[デプロイメントパッケージの関連付け] セクションで [ECS イメージの関連付け] パラメーターを構成します。
[デプロイメントパッケージの選択] をクリックします。表示されるダイアログボックスで、使用するデプロイメントパッケージとバージョンを選択し、[OK] をクリックします。テンプレートで指定されたソースイメージは、ECS イメージデプロイメントパッケージに置き換えられます。
重要ドラフトバージョンのデプロイメントパッケージが配布されていない場合、配布されていない関連 ECS イメージは、イメージが作成されたリージョンでのみ使用できます。
正式バージョンのデプロイメントパッケージが配布されている場合、すでに配布されている関連 ECS イメージは、イメージが作成されたリージョンとイメージが配布されたリージョンで使用できます。

サービスを保存してテストします。サービスがテストに合格したら、サービスが Compute Nest のレビュー基準を満たしているかどうかを確認し、レビューのためにサービスを送信します。詳細については、「レビュー基準」をご参照ください。
サービスが承認されたら、サービスを公開します。詳細については、「サービスを公開する」をご参照ください。
顧客がリージョンでサービスインスタンスを作成すると、そのリージョンに配布されている関連イメージが使用されます。
置換前のイメージ ID

置換後のイメージ ID

参考文献
Compute Nest でサービスを作成する方法の詳細については、「サービスを作成する」をご参照ください。
デプロイパッケージまたはデプロイパッケージバージョンが不要になった場合は、削除できます。 詳細については、「デプロイパッケージを削除する」をご参照ください。
配布リージョンやコンテンツなど、デプロイパッケージを変更する必要がある場合は、新しいバージョンを作成できます。 詳細については、「バージョンを作成する」をご参照ください。
デプロイパッケージの更新設定を構成する方法の詳細については、「サービス更新設定を構成する」をご参照ください。