KVMインストール
CentOS7へKVM環境を構築する
自宅検証用に以下のPCを使って環境を整えていく
参考にしたのはいつもお世話になっている、Server Worldさんのページを元にKVMをインストールしていく
環境構築
CPU周り
まずはCPUで仮想化機能が有効になっているかの確認
% sudo lscpu アーキテクチャ: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 8 On-line CPU(s) list: 0-7 コアあたりのスレッド数: 2 ソケットあたりのコア数: 4 Socket(s): 1 NUMAノード: 1 ベンダーID: GenuineIntel CPUファミリー: 6 モデル: 158 Model name: Intel(R) Core(TM) i7-7700T CPU @ 2.90GHz ステッピング: 9 CPU MHz: 3046.925 BogoMIPS: 5800.00 仮想化: VT-x L1d キャッシュ: 32K L1i キャッシュ: 32K L2 キャッシュ: 256K L3 キャッシュ: 8192K NUMAノード 0 CPU: 0-7
仮想化でVT-xになっていることを確認
パッケージインストール
KVM環境構築に必要なパッケージをインストール
% yum -y install qemu-kvm libvirt virt-install bridge-utils
読み込みモジュールの確認(kvm)
% lsmod | grep kvm kvm_intel 170181 0 kvm 554609 1 kvm_intel irqbypass 13503 1 kvm
サービス起動/設定
[hoge@localhost] ~ % sudo systemctl enable libvirtd.service [hoge@localhost] ~ % sudo systemctl start libvirtd.service
libvirtサービスが問題なく起動していることを確認
[hoge@localhost] ~ % sudo systemctl status libvirtd.service ● libvirtd.service - Virtualization daemon Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled) Active: active (running) since 月 2017-09-11 21:52:41 JST; 5s ago Docs: man:libvirtd(8) http://libvirt.org Main PID: 11413 (libvirtd) CGroup: /system.slice/libvirtd.service ├─11413 /usr/sbin/libvirtd ├─11485 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-scr... └─11486 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-scr... 9月 11 21:52:41 localhost.localdomain systemd[1]: Starting Virtualization daemon... 9月 11 21:52:41 localhost.localdomain systemd[1]: Started Virtualization daemon. 9月 11 21:52:42 localhost.localdomain dnsmasq[11485]: started, version 2.66 cachesize 150 9月 11 21:52:42 localhost.localdomain dnsmasq[11485]: compile time options: IPv6 GNU-getopt DBus no-i18...uth 9月 11 21:52:42 localhost.localdomain dnsmasq-dhcp[11485]: DHCP, IP range 192.168.122.2 -- 192.168.122.2...1h 9月 11 21:52:42 localhost.localdomain dnsmasq[11485]: reading /etc/resolv.conf 9月 11 21:52:42 localhost.localdomain dnsmasq[11485]: using nameserver 192.168.11.1#53 9月 11 21:52:42 localhost.localdomain dnsmasq[11485]: read /etc/hosts - 2 addresses 9月 11 21:52:42 localhost.localdomain dnsmasq[11485]: read /var/lib/libvirt/dnsmasq/default.addnhosts -...ses 9月 11 21:52:42 localhost.localdomain dnsmasq-dhcp[11485]: read /var/lib/libvirt/dnsmasq/default.hostsfile Hint: Some lines were ellipsized, use -l to show in full.
ネットワーク周り
ブリッジの作成
管理用通信を行うためのブリッジを作成する
[hoge@localhost] ~ % sudo brctl addbr br0 [hoge@localhost] ~ % sudo brctl stp br0 on
作成したブリッジを確認する
[hoge@localhost] ~ % brctl show br0 bridge name bridge id STP enabled interfaces br0 8000.000000000000 yes
インターフェースの設定
作成したブリッジの設定ファイルを作成する
[hoge@localhost] ~ % sudo cat /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 TYPE=Bridge BOOTPROTO=static IPADDR=192.168.11.9 NETMASK=255.255.255.0 GATEWAY=192.168.11.1 ONBOOT=yes DELAY=0 NM_CONTROLLED=no
物理インターフェースをブリッジにアサインする
[hoge@localhost] ~ % sudo cat /etc/sysconfig/network-scripts/ifcfg-enp1s0 TYPE=Ethernet BOOTPROTO=none DEVICE=enp1s0 ONBOOT=yes BRIDGE=br0 NM_CONTROLLED=no
ゲストVM用準備
OSイメージアップロード
ローカル(操作PC)に保存してあったイメージをwinscpでアップロード
% sudo ls -l /var/lib/libvirt/iso 合計 857088 -rw-r--r--. 1 root root 632291328 9月 15 2016 CentOS-7-x86_64-Minimal-1511.iso -rw-r--r--. 1 root root 245366784 12月 11 2016 vyos-1.1.7-amd64.iso
ディスクイメージの作成
用意したisoを使ってqcowイメージを作成する ※この辺から理解が怪しくなっている
[root@localhost libvirt]# qemu-img create -f qcow2 centos7_1.qcow2 20G Formatting 'centos7_1.qcow2', fmt=qcow2 size=21474836480 encryption=off cluster_size=65536 lazy_refcounts=off
ゲストOSインストール
作成したイメージを使い、ゲストOS(CentOS7.2)をインストールする
virt-install \ --name centos7_1 \ --ram 1024 \ --disk /var/lib/libvirt/images/centos7_1.img,size=20 \ --vcpus 2 \ --os-type linux \ --network bridge=br0 \ --graphics none \ --console pty,target_type=serial \ --location=/var/lib/libvirt/iso/CentOS-7-x86_64-Minimal-1511.iso \ --extra-args 'console=ttyS0,115200n8 serial'
ディスクイメージのテンプレート化
毎回初回インストールのセットアップ作業がめんどいので、テンプレート化しておくと2台目以降が楽になる
[root@kvm-host libvirt]# virt-clone --original centos7_1 --name template --file /var/lib/libvirt/template/template.img 割り当て中 'template.img' | 20 GB 00:00:07 'template'のクローニングに成功しました。
クローンからVM作成するとき
書式: virt-clone -o [クローン対象VMのName] -n [クローンしたVMのName] -f [クローンしたVMのイメージファイルPATH]
[root@kvm-host ~]# virt-clone -o template -n pike-man -f /var/lib/libvirt/images/pike-man.img 割り当て中 'pike-man.img' | 20 GB 00:00:18 'pike-man'のクローニングに成功しました。
もう少しいろいろやってたのだが、メモが散乱してるのでひとまずこれで公開する
余裕があれば編集する
CentOS7をUSBからインストール
自宅検証用にPCを買ったのでセットアップのためにOSインストールしていきたいと思う。
届いたPCはこれ↓ samoa.hatenablog.com
やりたいこと
- CentOS7.X 使いたい
- RPM系の方がなれているため
- あとは新しめの方が現場で使った時の学習コスト減ると考えて
- Minimal構成で使いたい
- 足りないパッケージは後から投入する方向で
- インストールとか起動/停止で早くなるならそのほうが良い
- USBでなんとかやりたい
- CD/DVDでやりたくない CDドライブない
- 汎用性もないよねたぶん?
そんなこんなで進めていこうかと。
準備したもの
まずはイメージ本体を用意する
https://www.centos.org/download/
Minimalを選択
まぁ近そうなところから落としましょう
ダウロードしたファイルサイズは680MB
Minimalサイコー
USBメモリはドンキで一番やすかったTOSHIBAの8GBのやつにした。
大きいファイルじゃないので、これで十分と判断。
www.toshiba-personalstorage.net
USBメモリへイメージのインストール
いまいち理解していなくて詰まった。USBメモリはイメージインストールはツールを使うらしいという情報を入手。
情報がいろいろ出てきた「UNetbootin」をダウンロード。
UNetbootin - Homepage and Downloads
しかしこれが詰まった。
どうやらブートローダの書き込みが悪いらしく、一向にOSインストールが進まない。
使い方が悪いのだと何度もUSBメモリにイメージをインストールし直すがダメ。
そんで調べなおしてみると「Rufus」なる別のツールがあるとの情報を入手。
使い勝手も含めて UNetbootinを大差はなかった。
CentOSインストール
いざインスールとなったが、特に変わったこともなく、時間とかrootパスワードなどを設定し終了。
再起動後に無事CentOSが起動することを確認して作業完了。
UNetbootinで3時間ぐらい使ってダメだったけど、Rufusを使ったら30分で終わった。。。
自宅検証サーバー購入
内容
会社でCentOSやらvyosなんかでいろいろ環境構築して検証しているけど、
やっぱり手元で作って気兼ねなく壊したりしたい!と思い、家で検証できるサーバーを買うことに至る。
選定条件
機材購入にあたり自分なりの条件をまとめてみた
- OSなし
- 作ったり壊したりしたいのでWindowsいらね
- CPUはいいやつ
- OpensStackとかもやりたいのでそこそこのコア数欲しい
- メモリもそこそこ
- メモリについてもOpensStackやりたいからそこそこ積みたい
- 予算10万
列挙してみたら大した要件なかった。
自作も検討したけど調達コスト省きたいので今回はBTOで購入。
調達先
昔デスクトップパソコン購入した時は、OSなし選べるところ結構あったように思ったけど
今はそこまで多くないのね。
ということで、今回はパソコン工房さんから購入。
www.pc-koubou.jp
はじめてのお付き合い
UIも2回ほど試しせばどんなラインナップなのか分かりやすかったのも評価。
スペック
そしてカスタマイズで選択したスペックが以下。
———————————————————–
【下取りキャンペーン】下取りキャンペーンなし
【OS】OSなし(OSに関するサポートは無くなります。)
【プロセッサー】インテル® Core i7-7700T プロセッサー (2.9-3.8GHz/4コア/8スレッド/8MBキャッシュ/TDP35W)
【CPU冷却グリス】【熱伝導率が標準グリスの約15倍!】シルバーグリス Arctic Silver 5 塗布サービス
【CPUクーラー】標準(リテール)クラスCPUクーラー [トップフロー]
【メインメモリ】DDR4-2400 8GB×2(デュアルチャンネル/計16GB)
【増設2.5インチSSD[選択時OSインストール]】なし
【3.5インチHDD[基本構成時OSインストール]】1TB HDD / 3.5インチ Serial-ATA
【HDD[追加1]】なし
【光学式ドライブ】DVDスーパーマルチドライブ [LG GH24NSxx]
【カードリーダー】なし
【外付けカードリーダー】なし
【チップセット】インテル® H110 Express チップセット
【グラフィックアクセラレーター】インテル® HD Graphics 630(CPU統合グラフィックス) [高解像度2画面出力対応]
【サウンド機能】 High Definition Audio subsystem
【内蔵ネットワークカード】マザーボード標準搭載LAN
【電源】500W [80PLUS GOLD認証] / ATX電源 [高変換効率]
【ケースファン】【高品質と高耐久】静音9cmケースファン(山洋製 SF9-S4)
【ケース】ミニタワーMicroATXケース HEC 6TJB [フロントUSB3.0] ブラック
【スピーカー】なし
【ヘッドフォン/ヘッドセット】なし
【WEBカメラ】なし
【キーボード】なし
【マウス】なし
【キーボード・マウス セット】なし
【ペンタブレット】なし
【液晶モニター】なし
【モニターアーム】なし
【プリンター】なし
【電源タップ】なし
【保証】1年間無償保証
【パソコン設置・設定サービス】パソコン設置・設定サービス なし
【PCリサイクル】家庭系パソコン(PCリサイクル料金込み、回収再資源化料金不要)
———————————————————–
メモリを32GBにしたかったが、筐体が大きくなりそうなので今回は16GBを選択。
足りないような場合はスケールアップ用のメモリを購入することに。
価格
少し予算をオーバーしてしまったけど、
まぁ満足のいくスペックになったのでこれで発注!
<BTO PC製造工場>
【商品名】STYLE-E022-i7-HN [OS LESS]
【数量】1
【単価】 ¥103,766(税込)
【小計】 ¥103,766(税込)
———————————————————–
【商品代金合計】 ¥103,766(税込)
【配送料合計】 ¥2,160(税込)
===============================
【合計金額】 ¥105,926(税込)
===============================
発注/納品
- 発注 8/28
- 出荷 8/31
- 納品 9/2 (土日指定配達)
上記のように発注から出荷まで3日しかからないのが素晴らしいです。
その間に入金なんかの対応もしていますが、それでも早いなぁと思った。
実際のマシンのレビューについては、今後余裕があれば書いていこうかと。。。