CoreOSのIgnitionをConfigDrive経由で渡す
CoreOSのIgnitionは、たいてい以下の方法で渡しているのではないかと想像しています。
- ISOの場合、起動後のUIで取得先のURLを渡す
- QCOW2の場合、カーネルパラメーターとして取得先のURLを渡す
QCOW2の場合、以下の方法でConfigDriveでも渡すことができました。あまり需要ないかもしれませんが、うまくいったので共有させていただきました。
1. ConfigDrive用のISOを作る
user_dataにIgnitionを直接書き込んでおきます。
こんな感じです。
$ mkdir -p /tmp/new-drive/openstack/latest
$ cp user_data /tmp/new-drive/openstack/latest/user_data
$ mkisofs -R -V config-2 -o configdrive.iso /tmp/new-drive
$ rm -rf /tmp/new-drive
2. ISOをマウントする
3. QCOW2を起動する
CoreOS起動後、ISOの/openstack/latest/user_dataがIgnitionとして読み込まれます。
以上です〜。