CoreOSをVirtualBoxにインストールする
作業環境
Ubuntu 15.04
VirtualBox 4.3
Linux系OSであればインストール方法はだいたい同じです。
はじめに
CoreOS社が公開しているインストール方法に関するドキュメントはこちらです。
初めてVirtualBoxにCoreOSをインストールしようとしたとき、ISOイメージに気を取られて、CoreOSドキュメントページのISOリンクを参照してしまい、無駄な時間を過ごしました。VirtualBoxにインストールしたいときはVirtualBoxリンクを参照します。
インストール手順
これらの作業はVirtualBoxがインストールされているコンピュータ上で行います。
手順
1. VDIファイルを作成するためのシェルクリプトをダウンロードし、実行権限を付与
2. VDIファイルの作成
3. VDIファイルのハードドライブサイズを変更
4. 必要に応じて作成したVDIファイルを複製
5. ISOファイルを作成するためのシェルクリプトをダウンロードし、実行権限を付与
6. ISOファイルの作成
7. 作成したVDIファイルとISOファイルを使って仮想マシンを作成・起動
以上。
1. VDIファイルを作成するためのシェルクリプトをダウンロードし、実行権限を付与
wgetコマンドがない場合はこちらからダウンロードします。
user@localhost:~$ wget https://raw.github.com/coreos/scripts/master/contrib/create-coreos-vdi
user@localhost:~$ chmod a+x create-coreos-vdi
権限を付与した結果です。
user@localhost:~$ ls -l
-rwxrwxr-x 1 user user 3573 11月 18 18:55 create-coreos-vdi
2. VDIファイルの作成
作成するVDIファイルのパスとダウンロードするCoreOSのバージョンを指定してスクリプトを実行します。数百MBあるので、完了するまでに少々時間がかかります。
user@localhost:~$ ./create-coreos-vdi -d /home/user/VirtualBox -V beta
...
Success! CoreOS beta VDI image was created on coreos_production_835.5.0.vdi
スクリプトが正常に完了すると例えば以下のようになります。
user@localhost:~/VirtualBox$ ls -l
-rw------- 1 user user 788529152 11月 19 13:55 coreos_production_835.5.0.vdi
参考までにcreate-coreos-vdiシェルクリプトのヘルプです。
user@localhost:~$ ./create-coreos-vdi -h
Usage: ./create-coreos-vdi [-V version] [-d /target/path]
Options:
-d DEST 作成されたVDIファイルを保存するパスを指定
-V VERSION ダウンロードするCoreOSのバージョンを指定。
alpha, beta, stableのいづれか。指定しなければstableがダウンロードされる。
-h ヘルプを表示
This tool creates a CoreOS VDI image to be used with VirtualBox.
3. VDIファイルのハードドライブサイズを変更
作成されたVDIファイルのハードドライブサイズは4GB程度に設定されているので、変更したい場合は修正します。例えば10GBにしたい場合。
user@localhost:~/VirtualBox$ VBoxManage modifyhd coreos_production_835.5.0.vdi --resize 10240
4. 必要に応じて作成したVDIファイルを複製
CoreOSの仮想マシンを複数構築する場合は、上記VDIファイルをベースイメージとして残します。
VirtualBoxのコマンドを使ってVDIファイルをコピーします。作成する仮想マシンの名前(hostname)を付けることが望ましいです。
user@localhost:~/VirtualBox$ VboxManage clonehd coreos_production_835.5.0.vdi hostname.vdi
...
Clone hard disk created in format 'VDI'. UUID: 2252000e-8a2b-4471-9767-00c469eb60b5
user@localhost:~/VirtualBox$ ls
coreos_production_835.5.0.vdi hostname.vdi
5. ISOファイルを作成するためのシェルクリプトをダウンロードし、実行権限を付与
手順1と同じくwgetコマンドがない場合はこちらからダウンロードします。
user@localhost:~$ wget https://raw.github.com/coreos/scripts/master/contrib/create-basic-configdrive
user@localhost:~$ chmod a+x create-basic-configdrive
user@localhost:~$ ls -l
-rwxrwxr-x 1 user user 4820 11月 18 19:11 create-basic-configdrive
-rwxrwxr-x 1 user user 3573 11月 18 18:55 create-coreos-vdi
6. ISOファイルの作成
ISOファイルを作成するにあたり、SSH公開認証鍵が必要になります。鍵は下記コマンド1行で生成できます。暗号アルゴリズムにはdsaやrsaなどが選べますが、rsaを選択しておけば無難です。
user@localhost:~$ ssh-keygen -t rsa
user@localhost:~$ ls
id_rsa id_rsa.pub
サーバー名(Hostname)を指定するオプションとSSH公開鍵を指定するオプションは必須です。
下記認証鍵はユーザ core に紐付けられます。
user@localhost:~$ ./create-basic-configdrive -H hostname -S id_rsa.pub
...
Success! The config-drive image was created on /home/user/hostname.iso
参考までにcreate-basic-configdriveシェルクリプトのオプションです。
user@localhost:~$ ./create-basic-configdrive -h
Usage: ./create-basic-configdrive -H HOSTNAME -S SSH_FILE [-p /target/path] [-d|-e|-i|-n|-t|-h]
Options:
-d URL Full URL path to discovery endpoint.
-e http://IP:PORT Adviertise URL for client communication.
-H HOSTNAME Machine hostname.
-i http://IP:PORT URL for server communication.
-l http://IP:PORT Listen URL for client communication.
-u http://IP:PORT Listen URL for server communication.
-n NAME etcd node name.
-p DEST Create config-drive ISO image to the given path.
-S FILE SSH keys file.
-t TOKEN Token ID from https://discovery.etcd.io.
-h This help
This tool creates a basic config-drive ISO image.
7. 作成したVDIファイルとISOファイルを使って仮想マシンを作成・起動
仮想マシンを作成するためのVDIファイルとISOファイルが準備できたので、VirtualBoxで仮想マシンを新規に作成します。
名前: 任意のサーバ名(hostname)を記入
タイプ: Linux
バージョン: Other Linux(64-bit)
作成したVDIファイルを選択
手順3でハードドライブのサイズを変更していれば、4.43GB以外のサイズになります。
ストレージ >> CD/DVDドライブ >> 作成したISOファイルを選択
選択し終わると下図のようになります。
下図の画面になればインストール作業は完了です。
パスワードは設定されていないので、この画面はこのままにしておき、ログインは別ホストから鍵を使って行います。
手順6で作成したid_rsa鍵を使って別ホストからログインします。
認証鍵はユーザ core に紐付いています。
ssh -i id_rsa [email protected]
以上。
最後に
Docker, etcd, Fleetなどのソフトウェアはcloud-configファイルを作成し、coreos-cloudinitシェルスクリプトを使って別途インストールします。
Author And Source
この問題について(CoreOSをVirtualBoxにインストールする), 我々は、より多くの情報をここで見つけました https://qiita.com/shigeomi-t/items/ecbfedb67f852d6853e0著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .