メインコンテンツまでスキップ

User data

User data(Cloud-init)は、起動後に Bare Metal GPU サーバーを自動的に構成します。これらのスクリプトは通常サーバーの初期構成に使用され、初回起動時に実行されます。

user data を指定してデプロイすると、プロビジョニング中に任意のコマンドを実行し、サーバーのさまざまな設定を変更できます。

user data スクリプトでできることの例を次に示します。

ユーザーを作成して基本パッケージをインストールする

#cloud-config
users:
- name: cloud_user
ssh_authorized_keys:
- ssh-rsa AAAAB3Nz... user@domain
sudo: "ALL=(ALL) NOPASSWD:ALL"
groups: sudo
shell: /bin/bash
packages:
- git
- htop

このスクリプトの動作:

  1. cloud_user という名前のユーザーを作成します。
  2. 安全なリモートログインのために SSH キーを追加します。
  3. git(バージョン管理)や htop(システムモニター)などのパッケージをインストールします。

確認方法:

ログインするには、次の形式のコマンドを使用します。

ssh -i /.ssh/id_rsa maas_user@10.192.226.195

その後、htop を実行したり git コマンドを試したりして、さらに確認できます。

複数ユーザー用に SSH キーを設定する

#cloud-config
users:
- default
- name: user1
ssh_authorized_keys:
- ssh-rsa AAAAB3Nz... user1@domain
- name: user2
ssh_authorized_keys:
- ssh-rsa AAAAB3Nz... user2@domain

このスクリプトの動作:

  1. 既定のユーザーを設定します。
  2. 安全にログインできるよう、user1 と user2 をそれぞれの SSH キー付きで作成します。

Docker をインストールする

#cloud-config
packages:
- docker.io
runcmd:
- systemctl enable docker
- systemctl start docker

このスクリプトの動作:

  1. マシンに Docker をインストールします。
  2. マシンの起動時に毎回 Docker が実行されるよう、有効化して起動します。