インフラMemoブログ

IT系エンジニア(インフラらしい)の備忘録的ブログ

KVMインストール

CentOS7へKVM環境を構築する

自宅検証用に以下のPCを使って環境を整えていく

samoa.hatenablog.com

参考にしたのはいつもお世話になっている、Server Worldさんのページを元にKVMをインストールしていく

www.server-world.info

環境構築

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

サービス起動/設定

libvirtサービスの起動と自動起動を有効化する

[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を選択
f:id:nekaro:20170910030149p:plain:w500

まぁ近そうなところから落としましょう
f:id:nekaro:20170910030539p:plain:w500

ダウロードしたファイルサイズは680MB
Minimalサイコー

USBメモリはドンキで一番やすかったTOSHIBAの8GBのやつにした。
大きいファイルじゃないので、これで十分と判断。

www.toshiba-personalstorage.net

USBメモリへイメージのインストール

いまいち理解していなくて詰まった。USBメモリはイメージインストールはツールを使うらしいという情報を入手。
情報がいろいろ出てきた「UNetbootin」をダウンロード。

UNetbootin - Homepage and Downloads

しかしこれが詰まった。
どうやらブートローダの書き込みが悪いらしく、一向にOSインストールが進まない。
使い方が悪いのだと何度もUSBメモリにイメージをインストールし直すがダメ。

そんで調べなおしてみると「Rufus」なる別のツールがあるとの情報を入手。

https://rufus.akeo.ie/

使い勝手も含めて 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日しかからないのが素晴らしいです。
その間に入金なんかの対応もしていますが、それでも早いなぁと思った。

実際のマシンのレビューについては、今後余裕があれば書いていこうかと。。。

システム基盤設計のメモ

基盤設計の要点をメモ

内容は非機能要件になるのかな?
 

可用性

  可用性、耐障害性、災害対策、回復性、成熟性
 

性能、拡張性

  業務処理量、性能目標値、リソース拡張性、性能品質
 

運用、保守性

  通常運用、保守運用、障害時運用、運用環境、運用体制、運用管理方針
 

移行性

  移行期間、移行方式(機器)、移行対象(データ)、移行計画
 

セキュリティ

  前提条件・制約事項、セキュリティ対応、セキュリティ診断、etc.
 
 

はてなブログはじめてみた

とりあえずはじめてみた。

いろいろとブログサービス使ってみたけど長続きせず、それでもブログ書きたい!という思いから新たに開設。

今度は続くといいけど。。。

IT系だし、いろいろ備忘録的に記事書いていきたいなぁ。

以上です