ユースケース
CVMを作成する時に、カスタムデータを指定することでインスタンスを構成できます。CVMを初回起動する時に、カスタムデータがテキスト形式でCVMに渡され、実行されます。一度に複数台のCVMを購入する場合、カスタムデータは、すべてのCVMの初回起動時にこのテキストを実行します。
本書では、Windows CVMの初回起動時に、PowerShell形式のスクリプトを渡すことを例として説明します。
注意事項
カスタムデータをサポートするWindows OSには次のものが含まれています:
Windows Server 2019データセンター版 64ビット英語
Windows Server 2016データセンター版 64ビット英語
Windows Server 2012 R2データセンター版 64ビット英語
CVMの初回起動時のみ、テキストを渡すことでコマンドを実行します。
カスタムデータのコンテンツは、Base64コーディングの前に16KBを超えてはいけません。
カスタムデータはBase64エンコードによって渡されます。Base64ではないスクリプトファイルを直接コピーする場合は、「Base64形式のテキストとして入力」ボックスにチェックを入れないでください。
起動時に、カスタムデータで指定されたタスクを実行すると、サーバーの起動時間が長くなります。数分間待ってから、タスクが完了した後にタスクが正常に実行されたかどうかをテストすることをお勧めします。
この例では、<powershell></powershell>タグなどのPowerShellタグを使用してWindows PowerShellスクリプトを指定してください。
操作手順
テキストを準備する
実際のニーズに応じてテキストを準備してください。
PowerShellスクリプト
PowerShellタグを使用して、1つのPowerShellスクリプトファイルを準備します。
たとえば、CVMのC:ドライブでコンテンツが「Hello Tencent Cloud.」である「tencentcloud.txt」ファイルを作成する必要がある場合、PowerShellタブを使用して次の内容を準備できます:
<powershell>
"Hello Tencent Cloud." | Out-File C:\\tencentcloud.txt
</powershell>
Base64エンコードスクリプト
1. 次のコマンドを実行して、「script_text.ps1」という名前の PowerShellスクリプトファイルを作成します。
2. iを押して編集モードに切り替え、次の内容を参照し、「script_text.ps1」スクリプトファイルに記述して保存します。
<powershell>
"Hello Tencent Cloud." | Out-File C:\\tencentcloud.txt
</powershell>
3. 次のコマンドを実行して、「script_text.ps1」スクリプトファイルに対してBase64エンコーディング操作を実行します。
次の情報が返されます:
PHBvd2Vyc2hlbGw+CiJIZWxsbyBUZW5jZW50IENsb3VkLiIgfCBPdXQtRmlsZSAgQzpcdGVuY2VudGNsb3VkLnR4dAo8L3Bvd2Vyc2hlbGw+Cg==
テキストを渡す
インスタンスを起動するさまざまな方法が提供されます。主に次の2つの方法があり、実際のニーズに応じて選択してください:
1. 下図に示すように、インスタンスの作成 を参照してインスタンスを購入し、「2.ネットワークとホストの設定」の他の設定から詳細設定をクリックしてください:
2. 「詳細設定」では、実際のニーズに応じて、「カスタムデータ」のテキストボックスに用意されたテキスト内容を入力します。
Base64エンコードスクリプト:下図のように、まず「上記の入力はBase64エンコードを使用しています」にチェックを入れてから、Base64エンコードスクリプト を入力する必要があります:
3. 画面情報に従って逐次に操作し、CVMの作成を完了します。
APIを介してCVMを作成する場合、Base64コーディングスクリプト で返されたコーディング結果をRunInstancesインターフェースのUserDataパラメータに代入することにより、テキストを渡すことができます。
たとえば、UserDataパラメータ付きのCVMのリクエストパラメータを作成する場合、例は次のとおりです: https://cvm.tencentcloudapi.com/?Action=RunInstances
&Version=2017-03-12
&Placement.Zone=ap-guangzhou-2
&ImageId=img-pmqg1cw7
&UserData=PHBvd2Vyc2hlbGw+CiJIZWxsbyBUZW5jZW50IENsb3VkLiIgfCBPdXQtRmlsZSAuXHRlbmNlbnRjbG91ZC50go=
&<パブリックリクエストパラメータ>
カスタムデータの設定を検証する
1. CVMにログインします。
2. OS画面で、 C:ドライブを開き、「tencentcloud.txt」テキストファイルがあるかどうかを確認します。
下図に示すように、tencentcloud.txt
テキストファイルが存在する場合、設定が成功したことを意味します:
実行ログの確認
C:\\Program Files\\Cloudbase Solutions\\Cloudbase-Init\\log\\cloudbase-init.log
ファイルを確認すると、スクリプトの実行ログを取得できます。
この記事はお役に立ちましたか?