LoginSignup
2
2

More than 5 years have passed since last update.

Xen上でCoreOSを動かす

Last updated at Posted at 2014-10-17

概要

なんか、CoreOSのバージョンがチョロチョロかわって、よくわかりませんが、Xen4.4の上でCoreOSを動かしてみます

もうXenの環境は構築し終わっていて、rootfstype=tmpfsなCoreOSを追加のGuestVMとして投入する方法です

作業

PXE bootのファイルを取得し、それを使って起動できます

XenHost:

$ sudo mkdir /boot/coreos/
$ cd /boot/coreos/
$ sudo wget http://stable.release.core-os.net/amd64-usr/current/coreos_production_pxe.vmlinuz
$ sudo wget http://stable.release.core-os.net/amd64-usr/current/coreos_production_pxe_image.cpio.gz
coreos01.cfg
name = 'coreos01'
kernel = '/boot/coreos/coreos_production_pxe.vmlinuz'
ramdisk = '/boot/coreos/coreos_production_pxe_image.cpio.gz'
extra = 'rootfstype=tmpfs sshkey="ssh-rsa AA...N8= foobar@example.jp"'
memory = 512
vcpus = 2
vif = [ 'bridge=xenbr0' ]

※rootをtmpfsにしているので、ディスクは入れていません

ポイント

PXE bootのノウハウがそのまま使えます

  • PXE bootのappend行内のinitrdは、.cfgのramdiskに書きます
  • それ以外のappend行のパラメータを、extraに書きます

ほんと、それだけです。cloud-config.yamlもここで指定できます

ここまでくれば、あとはなんとかできるでしょ

起動とかログインとか

XenHost:

$ sudo xl create coreos01.cfg -c

余談(IPv6の話)

DHCPサーバが立っていないと、IPv6のリンクローカルアドレスのみがCoreOSへアクセスできる、唯一の方法となります

言い方を変えれば、IPv6でならsshログインできます

$ ssh -6 core@fe80::....:123a%xenbr0

リンクローカルアドレスへのアクセスは、インターフェイスの指定が必要です
CoreOSのeth0はvif*を通じてxenbr0に接続されているので、xenbr0を指定します

あとがき

IPv6。。。なんかめんどい

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2