久々の投稿です。ネタは結構あるのですが、環境づくりとかが好きなので進んでませんでした。
(テスト前になると片づけしたくなる気持ちと同じ)
今回は後輩から「tak0さん家、とうとうクラウドにリプレースですか?」という言葉に心動かされて
逆にAWSからオンプレ化できないかなー?とネタ探し調査してたら、出来そうじゃないですか!!
参考元:Amazon Linux 2 を仮想マシンとしたオンプレミスでの実行 – Amazon Elastic Compute Cloud
事前準備(必要なものまとめ)
- Hyper-Vが動作する環境(Hyper-Vじゃなくても動きそう)
- seed.iso (meta-data と user-data が入ってるAmazonLinuxを起動するために必要なデータ)
- AmazonLinuxのディスクイメージを持ってくる
seed.iso 作成
作成ネタは、参考元(AWS資料)です。
meta-deta の作成
# ホスト名を指定 (これで行くと vm_al2022 になる)
local-hostname: vm_al2022
# ipアドレスを指定
network-interfaces: |
auto eth0
iface eth0 inet static
address 192.168.10.11
network 192.168.10.0
netmask 255.255.255.0
broadcast 192.168.10.255
gateway 192.168.10.1
アドレスとかは、読者さんの環境に合わせて適宜修正してください。
上記などの内容で「meta-data」(拡張子なし)で保存します。
user-data の作成
users:
# A user by the name `ec2-user` is created in the image by default.
- default
chpasswd:
list: |
ec2-user:******
あえてコメント残してますが、ec2-user は使用するimageに入っているそうです。
皆さんは既にご存じかと思いますが、ec2-userにはパスワードが設定されてない(意識してない)ですが
ここでパスワードを変更することが出来るそうです。
*****には各々パスワードを入力してください。
マニュアルとちゃんと読むと、ユーザ作成とか出来るそうですが、まずはこれで進めます。
上記は「user-data」(拡張子なし)で保存します。
作成したファイルを元に seed.iso を作成
windows環境ではキツそうだったので、ちょっとしたズルをしました。
wslを使って作成してみました。
※ちなみに genisoimage は wslには入っていなかったので、インストールしました。
user-data と meta-data をコマンド実行場所に置き、下記を実行する。
genisoimage -output seed.iso -volid cidata -joliet -rock user-data meta-data

すると コマンドが正常終了すると、seed.iso が作成されます。

これで面倒な作業は、ほぼ終了です。
seed.iso についての考察
設定ファイルを書いてて思ったのですが、AWS上だと”よしなにやってくれている部分”が
当然オンプレ上では恩恵をあやかれない。そのため、IPアドレスを予め起動isoという形で一度
VMを起動してあげることで、[mete-data][user-data]に指定した値を使って起動できるのでは
ないか・・。
ということは、AWS上EC2マネコンでも同じようなことがしれっと動作している・・・?
まさか、そんなことはないでしょう。。。
AmazonLinuxのディスクイメージを持ってくる
上部記載の参考元には、 [Amazon Linux 2 virtual machine images]というようなリンクがついている。そこから自分の環境にあったものをもらってきます。

もらったディスクイメージは、適切な環境に配置します。
起動してみよう(Hyper-V編)
起動方法の詳細は、参考サイトに丁寧に書いてあるので、起動することの確認までを書いておく。



ここでまず感じた違和感。キーボードが日本語じゃない。
この辺って user-data に仕込めるのかな?
ちなみに seed.iso を起動時に使わないとどうなるか
これは今回の設定だと、ipアドレスが固定ではなくてDHCPで払い出されました!!
一部設定が読み込まれないということです。seed.isoなくても固定する方法あるのかな?要調査です。
まとめ
まさかの思い付きで調べてみたら、あってびっくりした。
ということは AmazonLinux自体の検証作業などは、ローカルで出来るってことですな。
AMI選択では表示されはじめた AmazonLinux2023との比較も少ないお金で出来そうですね。
ちなみにダウンロードには課金不要でした。
あと、読み直したら 設定ファイルではホスト名とIP出してるのに、画像では消してしまって、
画像転載みたくなってますが、確実に私の環境です。(大事だと思って消したw
おわり。
コメント