centos 6 で xen を使う話

21
2013/12/22 - 4回とある勉強会での発表資料 - Yuki Kawaguchi CentOS 6.5 で Xen を使う話 1

Upload: yuki-kawaguchi

Post on 18-Dec-2014

5.217 views

Category:

Technology


0 download

DESCRIPTION

2013/12/22 (日) の第4回とある勉強会での発表スライド

TRANSCRIPT

Page 1: CentOS 6 で Xen を使う話

2013/12/22 - 第4回とある勉強会での発表資料 -

Yuki Kawaguchi

CentOS 6.5 で Xen を使う話

���1

Page 2: CentOS 6 で Xen を使う話

自己紹介

���2

名前: Yuki Kawaguchi twitter: @kawa0810 はてな id: kawa0810

・学生時代の研究 並列・分散処理,GPGPU,数値計算関係

・本業 ラブライバー

Page 3: CentOS 6 で Xen を使う話

仮想マシンの利用数

���3

出典) IDC - 国内サーバ市場における仮想マシンの出荷予想 - http://www.idcjapan.co.jp/Press/Current/20130411Apr.html

仮想マシンの出荷台数は増加傾向

2012年以降は仮想マシンの 出荷台数のほうが多くなる見込み

Page 4: CentOS 6 で Xen を使う話

仮想化アーキテクチャ

���4

パーティショニング ハイパーバイザ

アプリケーション Linux Containersハードウェア

ファームウェア (仮想ソフト)ゲスト OS ゲスト OS

ハードウェア仮想マシンソフト

管理 OS ゲスト OS

ハードウェアホスト OS

ゲスト OS ゲスト OS仮想マシンソフト 調査中

ex) Hyper-V,Xen

ex) VirtualBox,KVM

ベンダーに依存

Page 5: CentOS 6 で Xen を使う話

時代は Xen から KVM?

���5

CentOS 5 までは Xen だったが, CentOS 6 から KVM に変更

Page 6: CentOS 6 で Xen を使う話

ではなぜ今回 Xen を扱うか?

���6

愛でしょう

(KVM は @wahho_yahho さんがやるしね)

Page 7: CentOS 6 で Xen を使う話

発表の趣旨

���7

Xen の概要について

Xen のインストール方法

Xen における仮想マシンの管理方法

Page 8: CentOS 6 で Xen を使う話

Xen とは - 仮想化のタイプ 1 -

���8

OSS のハイパーバイザ型仮想化ソフトウェア http://www.xenproject.org

準仮想化 Para-Virtualization

完全仮想化 Full-Virtualization

ハードウェア仮想マシンモニタ

Domain 0 Domain U

ハードウェア仮想マシンモニタ

Domain 0 HVMAPI API

・オーバヘッドが少ない ・専用カーネルやドライバが必要 ・BIOS なし

・オーバヘッドが大きい //PV ドライバの設定で改善可能 ・CPU の仮想化支援機能が必要 ・BIOS がある ・QEMU を使用する

Page 9: CentOS 6 で Xen を使う話

Xen とは - 仮想化のタイプ 2 -

���9

OSS のハイパーバイザ型仮想化ソフトウェア http://www.xenproject.org

準仮想化 Para-Virtualization

完全仮想化 Full-Virtualization

ハードウェア仮想マシンモニタ

Domain 0 Domain U

ハードウェア仮想マシンモニタ

Domain 0 HVMAPI API

使用できる OS に制限がある - 基本的に Linux only - Domain 0 が 32bit だと Domain U も 32bit のみ使用可能

使用できる OS に制限はない - Domain 0 が 32bit だと Domain U も 32bit のみ使用可能

Page 10: CentOS 6 で Xen を使う話

とりあえず,そのままインストール

Xen の設定

���10

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

Page 11: CentOS 6 で Xen を使う話

Xen の設定

���11

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

お約束の実行!# yum update!# yum upgrade!# yum install emacs!# reboot

Page 12: CentOS 6 で Xen を使う話

Xen の設定

���12

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

Xen のリポジトリを追加!# yum centos-release-xen!# reboot!# yum update //Xen カーネルの更新!# yum upgrade!# reboot //カーネルの切り替え

参考: http://wiki.centos.org/HowTos/Xen/Xen4QuickStart

Page 13: CentOS 6 で Xen を使う話

Xen の設定

���13

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

# yum install xen!# /usr/bin/grub-bootxen.sh! //GRUB の更新!# less /boot/grub/grub.conf

title CentOS (3.10.23-11.el6.centos.alt.x86_64) root (hd0,0) kernel /xen.gz dom0_mem=1024M,max:1024M loglvl=all guest_loglvl=all module /vmlinuz-3.10.23-11.el6.centos.alt.x86_64 ro root=/dev/mapper/vg_tx130s3-lv_root rd_LVM_LV=vg_tx130s3/lv_root rd_NO_LUKS rd_NO_MD crashkernel=128M KEYBOARDTYPE=pc KEYTABLE=jp106 rd_DM_UUID=ddf1_4c53492020202020808627c3000000004711471100001450 rd_LVM_LV=vg_tx130s3/lv_swap LANG=ja_JP.UTF-8 rhgb quiet module /initramfs-3.10.23-11.el6.centos.alt.x86_64.img

/boot/grub/grub.conf の中身

参考: http://wiki.centos.org/HowTos/Xen/Xen4QuickStart

Page 14: CentOS 6 で Xen を使う話

Xen の設定

���14

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

Xen が正常に動いているか確認する!# xm info!# xm list!# service xend status!etc...

# reboot //カーネルを切り替え!# uname -r!3.10.23-11.el6.centos.alt.x86_64

Xen 用カーネルか確認

参考: http://wiki.centos.org/HowTos/Xen/Xen4QuickStart

Page 15: CentOS 6 で Xen を使う話

Xen の設定

���15

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

libvirt をインストールする!# yum install libvirt!# yum install virt-install //CUI!# yum install virt-manager //GUI!# service libvirtd start //起動

Page 16: CentOS 6 で Xen を使う話

余談: libvirt とは

���16

Redhat が主体となって開発を進めている 仮想マシンを制御するための抽象化ライブラリ

http://libvirt.org

virtsh virtsh-manager virtsh-factory oVirt

KVM LXC OpenVZ UML Xen ESX other…

libvirt (VIRTULIZATION API)

Page 17: CentOS 6 で Xen を使う話

GUI で仮想マシンを簡単に作成・管理する!# virt-manager

Xen の設定

���17

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

Page 18: CentOS 6 で Xen を使う話

Xen の設定

���18

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

GUI で仮想マシンを簡単に作成・管理する!# virt-manager

Page 19: CentOS 6 で Xen を使う話

Xen の設定

���19

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

いや,Linux なんだから CUI やろ?!# virt-install --prompt

時間なくて未確認 orz

Page 20: CentOS 6 で Xen を使う話

Xen の設定

���20

管理OSを インストール

Xen 用の カーネルを用意

Xen 用の カーネルで起動

仮想マシン の作成・管理

仮想マシンの電源オン!# xm create <ドメイン名>

仮想マシンの仮想コンソールを開く!# xm console <ドメイン名>!

Ctrl + ] でドメイン0に戻る

仮想マシンの電源オフ!# xm shutdown <ドメイン名>

仮想マシンを強制終了!# xm destroy <ドメイン名>

Page 21: CentOS 6 で Xen を使う話

まとめ

���21

CentOS 6 でも簡単に (?) Xen 環境が使用可能

libvirt と xm コマンドで 楽に仮想マシンの管理が可能

マイグレーションとかもできるらしいので 今後も調査がんばります

@wahho_yahho 先生へ あとはよろしく!!