NetBSD on Conoha VPS at JNUG BoF 2014
-
Upload
ryo-onodera -
Category
Software
-
view
538 -
download
1
Transcript of NetBSD on Conoha VPS at JNUG BoF 2014
![Page 1: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/1.jpg)
NetBSD on Conoha VPS
Ryo ONODERA<[email protected]>
2014-07-12
NetBSD BoF at JNUG A.G.M. 2014Takeda building in the University of Tokyo
![Page 2: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/2.jpg)
Conoha VPSの問題
● KDDI Web comminicationsのCloudCore VPSで知られている問題を抱えているようで、無修正のNetBSD/amd64を起動することはできない(NetBSD/i386は試していない)
● CloudCore VPSでの情報は、以下を参照してください。一時期消えていましたが、復活してもらえました。ありがとうございます。http://www.aktado.net/netbsd-on-ccvps.html
– NetBSD/amd64 currentであれば、sys/arch/amd64/conf/GENERIC.local にoptions PCI_CONF_MODE=1 と指定するだけ。
● しかも、自分でbuild.sh iso-imageしたiso imageはなぜか起動しない(bootable iso imageとして起動してもらえない)。nyftpのsnapshotやNetBSDのrelease版は起動する。
– 実機では起動するのに…
![Page 3: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/3.jpg)
解決方法
● どうにもならないように思ったが、以下のような方策がありそう。
● ddでイメージを書き込む
● PXEブートする
●
● ddは気が向かなかったので、PXEブートをやってみることにした。
![Page 4: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/4.jpg)
PXEブートの準備
● ConoHa VPSにlocal network機能があれば、netbootで修正したkernelを起動できるのではないか?
● global IP addressな環境のままでもnetbootできるかもしれないが、local network機能があるのであれば、それを使うに越したことはなさそう。
![Page 5: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/5.jpg)
もう一台のVPSを申し込む(1/2)
![Page 6: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/6.jpg)
もう一台のVPSを申し込む(2/2)
![Page 7: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/7.jpg)
local networkを申し込む
![Page 8: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/8.jpg)
local networkの確認
![Page 9: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/9.jpg)
local networkの有効化(1/2)
![Page 10: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/10.jpg)
local networkの有効化(2/2)
![Page 11: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/11.jpg)
母艦側の設定(1/5)
● CentOS/x86_64 6.5が標準でインストールされているので、以下のようにdhcpdとtftpdを設定する。
●
● host# yum install dhcp
● host# yum install tftp-server
● host# yum install nfs-utils●
● まずは、local networkを使えるようにする。
● VPSを選び、local networkを有効にする。
● これで、CentOSでeth1、iPXEでnet1が追加される。
● ここで、2台のVPSのMACアドレスは控えておく。
● Host: FA:16:3E:01:A8:11
● Client: FA:16:3E:01:A2:F1
![Page 12: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/12.jpg)
母艦側の設定(2/5)
● host# ifconfig eth1 10.0.0.1 netmask 0xffffff00●
● ホスト/クライアント双方のfirewallを無効にし、global IP addressの
● 割り当てられたeth0を消す。
●
● host/client# /etc/init.d/iptables stop
● host/client# ifconfig eth0 down
![Page 13: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/13.jpg)
母艦側の設定(3/5)
● dhcpdをセットアップする。
● host# man 5 dhcpd.conf
● としてみると、ISC DHCPDがinstallされたらしい。
●
● host# cat /etc/dhcp/dhcpd.conf
● subnet 10.0.0.0 netmask 255.255.255.0 {
● range 10.0.0.12 10.0.0.100;
● }●
● host pxehost {
● hardware ethernet FA:16:3E:01:A2:F1;
● fixed-address 10.0.0.12;●
● # stage 1:
● filename "pxeboot_ia32.bin";●
● # stage 2:
● next-server 10.0.0.11;
● option root-path "/export/amd64/root";
● }●
● のようにして、読み込むファイルと、root filesystemの場所を指定する。
●
![Page 14: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/14.jpg)
母艦側の設定(4/5)
● \u6b21\u306btftpd\u3092\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3059\u308b\u3002●
● host# /etc/init.d/xinetd start
● host# cd /var/lib/tftpboot
● host# wget http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201406222200Z/amd64/installation/misc/pxeboot_ia32.bin●
●
● \u6b21\u306b\u3001NFS server\u3092setup\u3059\u308b\u3002●
● host# cat /etc/exports
● /export/amd64/root 10.0.0.12(rw,sync)
● host# exportfs -a
● host# /etc/init.d/rpcbind start
● host# /etc/init.d/nfslock start
● host# /etc/init.d/nfs start
● host# showmount -e
● (snip)
● /export/amd64/root 10.0.0.2
![Page 15: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/15.jpg)
母艦側の設定(5/5)
● host# cd /export/amd64/root
● host# wget http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201406222200Z/amd64/binary/sets/base.tgz
● host# wget http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201406222200Z/amd64/binary/sets/etc.tgz
● host# wget http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201406222200Z/amd64/binary/sets/modules.tgz
● host# wget http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201406222200Z/amd64/binary/sets/kern-GENERIC.tgz
● host# for name in *tgz; do tar zxvf $name; done
● host# mv netbsd /var/lib/tftpboot
● host# cat etc/fstab
● 10.0.0.1:/export/amd64/root / nfs rw 0 0●
![Page 16: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/16.jpg)
クライアント側の設定
● クライアント側 (NetBSDをインストールする側) を再起動させる。
● これはHTML 5なconsoleから実施すること。sshなconsoleではnetbootの
● 選択の段階を表示できない。●
● Ctrl-bでiPXEのメニューに入り以下を実行する。
●
● iPXE> autoboot net1●
![Page 17: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/17.jpg)
おわりに
● あとは、VPSのコントロールパネルからvirtioを無効にしてPXEブートさせ、sysinstを使わずにinstallするだけです。
– virif(4)ではPXEブートできません。● installさえしてしまえば、virtio機能も使えました(負荷はかけていないので安定性とかは不明)。
![Page 18: NetBSD on Conoha VPS at JNUG BoF 2014](https://reader035.fdocuments.net/reader035/viewer/2022081401/55781366d8b42ab40c8b47fd/html5/thumbnails/18.jpg)
ライセンス
● This is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).
●
● http://creativecommons.org/licenses/by/4.0/