ユーザーデータおよび登録トークンを使用して Ubuntu/Debian Amazon Web Servicesのサーバーを展開する
このガイドでは、systemdを使用して UbuntuまたはDebian Amazon Web Servicesのクラウドサーバーをアドバンストサーバーアクセスのチームに展開するための情報を提供します。チームのプロジェクトに登録トークンが使用されない場合や、プロジェクトに異なるサーバータイプを追加予定の場合など、ターゲットサーバーおよび登録タイプによっては、このガイドの一部のトピックが当てはまらない場合もあります。 必要に応じて、チームに適合するようこれらの手順を変更するか、別のクラウド展開ガイドを参照してください。
ユーザーデータを使用してクラウドサーバーを作成することは、クラウドプロバイダーを使用してサーバーを作成するのと同時に、アドバンストサーバーアクセスのサーバーエージェントをインストールすることを意味します。 ユーザーデータを使用すると、新しいクラウドサーバーにソフトウェアをインストールするための特定のソフトウェアを決定することができます。クラウドサーバーの作成時に、クラウドサーバーにアドバンストサーバーアクセスのサーバーエージェントをインストールする必要はありませんが、サーバーの作成と同時に起動スクリプトとしてインストールを実行すると、クラウドの展開が可能な限り安全になります。
前提条件
ユーザーデータを使用してAmazon Web Servicesを展開するには、次の権限とリソースが必要になります。
Amazon Web Services(AWS)
必要条件 | 説明 |
---|---|
Amazon Web Servicesアカウント | チームの仮想マシンを作成するためにAWS管理コンソールにアクセスするには、Amazon Web Servicesのアカウントが必要になります。 |
アドバンストサーバーアクセス
必要条件 | 説明 |
---|---|
アドバンストサーバーアクセス・チーム | アドバンストサーバーアクセス内の組織を表す最上位レベルのオブジェクトです。 |
アドバンストサーバーアクセスプロジェクト | ユーザー、グループ、サーバーを編成するチームの承認の範囲です。 |
登録トークンを作成する
- アドバンストサーバーアクセスのダッシュボードで[Projects (プロジェクト)]をクリックします。
- サーバーを追加するプロジェクトを選択します。
- [Enrollment (登録)]タブを選択し、[Create Enrollment Token (登録トークンを作成する)]をクリックします。
注意: サーバーをチームに追加するたびに、同じ登録トークンを使うことができます。既に登録トークンを作成している場合は、この手順を省略してください。
- トークンの説明を入力し、[Submit (送信)]をクリックします。
- トークンが正常に作成されたら、[Token (トークン)]フィールドの文字列をコピーして、後の手順で使用するために安全な場所に保存します。
ユーザーデータを使用してAmazon Web Servicesサーバーの作成と登録を行う
- Amazon Web Services管理コンソールにアクセスします。
- コンソールの上部にある[Services (サービス)]タブをクリックし、[Computer (コンピュータ)]カテゴリーの[EC2]オプションを選択して新しいEC2サーバーを作成します。
- [Launch Instance (インスタンスを起動する)]をクリックします。
[Choose an Amazon Machine Image (AMI) (Amazonマシンイメージを選択する)]ページが開きます。
- サポートされているUbuntu/Debianのバージョンを確認して[Select (選択)]をクリックします。
詳細は、「サポートされているオペレーティングシステム」を参照してください。[Choose an Instance Type (インスタンスタイプを選択する)]ページが開きます。
- [Next: Configure Instance Details (次:インスタンスの詳細を構成する)]をクリックします。
[Configure Instance Details (インスタンスの詳細を構成する)]ページが開きます。
- [Advanced Details (詳細情報)]を展開します。
- [User Data (ユーザーデータ)]フィールドに次のテキストを貼り付けます。
#!/bin/bash
echo "Add an enrollment token"
sudo mkdir -p /var/lib/sftd
echo "<enrollment-token>" | sudo tee /var/lib/sftd/enrollment.token
export DEBIAN_FRONTEND=noninteractive
echo "Add a basic sftd configuration"
sudo mkdir -p /etc/sft/
sftcfg=$(cat <<EOF
---
# CanonicalName: Specifies the name clients should use/see when connecting to this host.
CanonicalName: "ubuntu-target"
EOF
)
echo -e "$sftcfg" | sudo tee /etc/sft/sftd.yaml
echo "Retrieve information about new packages"
sudo apt-get update
sudo apt-get install -y curl
echo "Add the ScaleFT testing apt repo to your /etc/apt/sources.list system config file"
echo "deb http://pkg.scaleft.com/deb/ linux main" | sudo tee -a /etc/apt/sources.list
echo "Trust the repository signing key"
curl -C - https://dist.scaleft.com/pki/scaleft_deb_key.asc | sudo apt-key add -
echo "Retrieve information about new packages"
sudo apt-get update
echo "Install sftd"
sudo apt-get install scaleft-server-tools
注意: このスクリプトはサーバー用のsftd.yamlファイルを作成し、正規名としてubuntu-targetを使用します。必要に応じて、この情報を変更、生成して、チームとプロジェクトの環境に適合させます。
- [User Data (ユーザーデータ)]フィールドの<enrollment_token>を以前に作成した登録トークンで置き換えます。
- [Review and Launch (確認して起動する)]をクリックした後、[Launch (起動する)]をクリックします。
[Select an existing key pair or create a new key pair (既存のキーペアを選択するか新しいキーペアを作成する)]ダイアログボックスが表示されます。
- ドロップダウンボックスから、[Proceed without a key pair (キーペアなしで続行する)]オプションを選択します。
- 関連するチェックボックスをオンにして選択を確認し、[Launch Instances (インスタンスを起動する)]をクリックします。