すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:初期化ツール

最終更新日:Nov 25, 2024

デフォルトでは、Elastic Compute Service (ECS) インスタンスは初期化ツールを使用して、インスタンスの作成時または起動時に、ネットワーク設定、ホスト名の割り当て、カスタムスクリプトの実行などの事前定義された設定タスクを自動的に実行します。 異なるタイプのオペレーティングシステムは、異なる初期化ツールを使用する。 Linuxインスタンスは自動初期化にcloud-initツールを使用し、Windowsインスタンスは自動初期化にVminitツールを使用します。 このトピックでは、LinuxインスタンスとWindowsインスタンスで使用される初期化ツールについて説明します。

Cloud-init

Linuxインスタンスは、オープンソースのcloud-initツールを使用して自動初期化を完了します。 詳細については、「Cloud-initドキュメント」をご参照ください。

  • Cloud-initは、タスクと設定を実行する一連のモジュールを定義します。 各モジュールには、名前、実行頻度、および構成パラメータの要素があります。 実行周波数は、モジュールが実行される周波数を示す。 ほとんどの場合、インスタンスごとに1回、常に実行中の周波数が使用されます。 インスタンスごとに1回の実行頻度は、モジュールがECSインスタンスが最初に起動されたときに1回だけ実行されることを示します。 常に実行頻度は、ECSインスタンスが起動されるたびにモジュールが実行されることを示します。 詳細については、「モジュールリファレンス」をご参照ください。

  • Cloud-initは、/etc/cloud/cloud.cfg設定ファイルを使用して、実行するモジュールの決定など、ECSインスタンスの初期化動作を制御します。 モジュールが実行されると、cloud-initはメタデータサービスからECSインスタンスのインスタンスIDやホスト名などのメタデータを取得できます。 たとえば、ECSインスタンスが起動されると、cloud-initはSet Hostnameモジュールを実行して、メタデータサービスからインスタンスのホスト名を取得し、インスタンスのホスト名を取得したホスト名に設定します。

説明

Cloud-initは、すべてのAlibaba Cloudパブリックイメージと、パブリックイメージに基づいて作成されたカスタムイメージにインストールされます。 イメージからECSインスタンスを作成すると、インスタンスにcloud-initが自動的にインストールされます。 オンプレミスのデバイスに基づいて作成されたカスタムイメージを使用してECSインスタンスを作成し、cloud-initがイメージにインストールされていない場合は、インスタンスにcloud-initを手動でインストールする必要があります。 cloud-initのインストール方法については、「cloud-initのインストール」をご参照ください。

Vminit

Windowsインスタンスは、Vminit初期化ツールを使用して自動初期化を完了します。 Vminitは一連のプラグインを順番に実行して、システム初期化設定を完了します。 複数のプラグインは、ECSインスタンスが最初に起動されたときにのみ実行されます。 他のプラグインは、インスタンスが起動されるたびに実行されます。 デフォルトでは、インスタンスがWindowsイメージから作成されると、すべてのVminitプラグインが自動的に実行され、ECSインスタンスが初期化されます。

説明

Vminitは、2023年9月以降にリリースされたWindowsパブリックイメージと、Windowsパブリックイメージに基づいて作成されたカスタムイメージにインストールされます。 イメージからECSインスタンスを作成すると、インスタンスにVminitが自動的にインストールされます。 オンプレミスのデバイスに基づいて作成されたカスタムイメージを使用してECSインスタンスを作成し、イメージにVminitがインストールされていない場合は、インスタンスにVminitを手動でインストールする必要があります。 これにより、ECSインスタンスが初期化設定を完了できるようになります。 詳細については、「Vminitのインストール」をご参照ください。

次の表に、10個のVminitプラグインを示します。

Vminitプラグイン

プラグイン名

実行頻度

機能

説明

Plugin_Main_StartDepend

ECSインスタンスが初めて起動されたときにのみ実行されます。

WindowsオペレーティングシステムのIP Helperサービス、Dynamic Host Configuration Protocol (DHCP) クライアント、およびWindows Timeサービス (W32Time) を開始します。

既定では、上記のシステムサービスはWindowsイメージに対して有効になっています。 サービスがカスタムイメージで無効になっている場合、プラグインはサービスがネットワークおよびネットワークタイムプロトコル (NTP) の設定例外を防ぐことを可能にします。

Plugin_Main_OpenRDP

リモートデスクトッププロトコル (RDP) を使用してECSインスタンスに接続できます。

デフォルトでは、RDPはWindowsで有効になっています。 プラグインは、RDPが無効になっているイメージに対してRDPを有効にできます。

Plugin_Main_NetworkClean

ネットワーク設定を初期化します。 システムはDHCPを使用して、ECSインスタンス上のすべてのネットワークインターフェイスコントローラーのIPアドレスとDNSサーバー設定を自動的に取得します。

ECSインスタンスに対してIP HelperおよびDHCPサービスが不適切に有効化されていると、プラグインの実行に失敗する可能性があります。 その結果、内部ネットワーク経由でインスタンスメタデータにアクセスすることはできません。

Plugin_Main_ConfigDisk

パーティションの作成やドライブ文字の割り当てなど、ECSインスタンスとともに作成されたデータディスクを初期化します。 デフォルトでは、GUIDパーティションテーブル (GPT) パーティション形式が使用されます。

  • インスタンスの作成中に新しいデータディスクがECSインスタンスにアタッチされた場合、データディスクは初期化されません。 運用効率を向上させるために、プラグインはデータディスクを自動的に初期化し、ディスクをオンラインにします。

  • インスタンスの作成中にデータが保存されているデータディスクがECSインスタンスにアタッチされている場合、Vminitはデータディスクを初期化しません。

Plugin_Main_ExtendVolume

Windowsインスタンスのシステムディスクの使用可能な領域を自動的に検出し、diskpartコマンドを実行してシステムディスクを拡張します。

なし。

Plugin_Main_CloudinitUserData

Alibaba Cloudメタデータサービスから設定したインスタンスユーザーデータを取得し、システムアカウントを使用してユーザーデータスクリプトを自動的に実行します。

Plugin_Main_ConfigHostname

ECSインスタンスが起動されるたびに実行されます。

ECSインスタンスにホスト名を割り当てます。 インスタンスの作成中に、Alibaba Cloudは各ECSインスタンスにホスト名を割り当てます。 ECSインスタンスの作成時にホスト名を指定した場合、システムは指定したホスト名をインスタンスに割り当てます。 それ以外の場合、Alibaba Cloudはランダムなホスト名をインスタンスに割り当てます。

  • オペレーティングシステムは、プラグインが実行された直後に強制的に再起動されます。

  • 自動割り当てされたホスト名が指定したホスト名と同じ場合、ホスト名は繰り返し指定されません。

  • Alibaba CloudがECSインスタンスのホスト名を変更しない場合は、プラグインを無効にできます。 たとえば、インスタンスの起動時にホスト名をカスタムイメージに変更するための設定ロジックを追加すると、設定ロジックがVminitプラグインの設定ロジックと競合する可能性があります。 この場合、カスタムイメージでプラグインを無効にすることを推奨します。

Plugin_Main_ConfigWsus

Alibaba CloudメタデータサービスからWindows Server Update Services (WSUS) アドレスを取得し、ECSインスタンスに追加します。 Alibaba CloudのWSUSアドレスがすでにインスタンスに設定されている場合、プラグインは設定を繰り返しません。

プラグインは内部ネットワークへのアクセスを必要とします。

Plugin_Main_ConfigKms

Alibaba CloudメタデータサービスからKey Management Service (KMS) エンドポイントを取得します。 ECSインスタンスのエンドポイントを設定した後、プラグインはKMSをアクティブ化します。 KMSがアクティブ化され、インスタンスのKMSエンドポイントが取得したKMSエンドポイントと同じである場合、プラグインはKMSを再アクティブ化しません。

プラグインは内部ネットワークへのアクセスを必要とします。

Plugin_Main_ConfigNtp

時刻同期用にNTPクロックソースを設定します。 プラグインは、Alibaba CloudメタデータサービスからNTPサーバーアドレスを取得し、ECSインスタンスのNTPサーバーアドレスを設定します。 インスタンスのNTPサーバーアドレスが取得したNTPサーバーアドレスと同じ場合、プラグインはインスタンスのNTPサーバーアドレスを再設定しません。

  • プラグインは内部ネットワークへのアクセスを必要とします。

  • プラグインにはW32Timeサービスが必要です。

リリースノート

Vminitは時々更新される。 次の表に、Vminitバージョンのリリース情報を示します。

Vminitバージョン

リリースコンテンツ

リリース日

2.0.1.2

  • Windowsイベントマネージャーでエラー通知がクリアされました。

  • 遅延変数は、ユーザーデータのバッチスクリプトでサポートされました。

January 2024

2.0.1.0

最初のリリース。 構成可能なプラグインがサポートされました。

9月2023

関連ドキュメント

インスタンスの作成時に、インスタンスのユーザーデータを使用してECSインスタンスを初期化できます。 詳細については、「インスタンスの初期化設定のカスタマイズ」をご参照ください。

イメージの作成時に初期化ツールをインストールして使用する方法については、「cloud-initのインストール」および「Vminitのインストール」をご参照ください。