ブートイメージ設定ツール
SUSE Manager VMイメージは、JeOS firstboot設定ダイアログで準備されます。 |
1. Ignition
を使用したSUSE Managerの基本設定
Ignition
は、最初のブート時に仕様に従ってシステムを設定できるようにするプロビジョニングツールです。 システムが初めてブートされると、Ignition
がinitramfsの一部としてロードされ、特定のディレクトリ(USBフラッシュディスク上、またはURLを指定することもできます)内で設定ファイルを検索します。
Ignition
はJSON形式の設定ファイルを使用します。 このファイルの名前は config.ign
です。
config.ign
は、Ignitionの規定を提供するJSON設定ファイルです。 このファイルをJSONで手動で作成することも、Fuel Ignitionツールを使用して基本的な規定セットを生成することもできます。 Fuel Ignitionツールにはすべてのオプションが用意されているわけではないので、ファイルを手動で変更する必要がある場合があります。 詳細については、https://ignite.opensuse.org/を参照してください。
インストールする際、設定ファイルconfig.ign
は、ignition
というラベルのついた設定メディア上のignition
サブディレクトリに存在する必要があります。 ディレクトリ構造は次のようになっている必要があります。
<root directory> └── ignition └── config.ign
QEMU/KVM仮想マシンを設定する場合は、qemuコマンドの属性としてconfig.ign
ファイルへのパスを指定します。 例を以下に示します。
-fw_cfg name=opt/com.coreos/config,file=PATH_TO_config.ign
config.ign
ファイルには、オブジェクト、文字列、整数、ブール値、オブジェクトのリストなど、さまざまなデータ型が含まれています。 完全な仕様については、https://coreos.github.io/ignition/configuration-v3_3/を参照してください。
1.1. Ignition
を使用してrootパスワードを設定する
SUSE Manager VMイメージは、rootまたはその他のユーザアカウントをセットアップしません。 ユーザ認証またはroot
認証は、最初のブート時にセットアップする必要があります。 passwd
属性はユーザを追加するために使用されます。 システムにログインする場合は、rootを作成してrootのパスワードを設定するか、Ignition
設定にSSHキーを追加します。 たとえば、openssl
コマンドを使用してrootパスワードをハッシュする必要があります。
openssl passwd -6
このコマンドは、選択したパスワードのハッシュを作成します。 このハッシュを、 passwordHash
属性の値として使用します。
users属性には、少なくとも1つのname
属性が含まれている必要があります。 ssh_authorized_keys
は、ユーザのsshキーのリストです。
root/ignition/config.ign
ファイルを次の内容で作成します。
{ "ignition": { "version": "3.2.0" }, "passwd": { "users": [ { "name": "root", "passwordHash": "$2a$10$qV298UV11u9lCFDjpHpCUe1cErBiVR.G3shukxs3.2PAO1xhJWs0K" } ] } }
次のコマンドを使用して、Ignition
ISOファイルを準備します。
mkisofs -full-iso9660-filenames -o suma_ignition.iso -V ignition root
作成したsuma_ignition.iso
ファイルを初回ブート時に仮想マシンにボリュームとしてアタッチします。 この特定の例では、root
パスワードをlinux
に設定しています。 この例のパスワードハッシュを自分のパスワードハッシュに置き換えてください。
Ignition
の詳細については、https://documentation.suse.com/sle-micro/5.4/single-html/SLE-Micro-deployment/#cha-images-ignitionを参照してください。