狠狠撸
Submit Search
しつこく齿别苍と锄蹿蝉で作る家庭内惫诲颈サーバ2015年版
?
4 likes
?
10,143 views
Z
zgock
Follow
2015年東海道らぐ12月オフの発表スライドです http://www.slideshare.net/zgock/203o のその後の話
Read less
Read more
1 of 38
Download now
Downloaded 21 times
More Related Content
しつこく齿别苍と锄蹿蝉で作る家庭内惫诲颈サーバ2015年版
1.
あるいは最近のパススルー事情 zgock(安藤)@東海道らぐ2015年12月オフin名古屋
2.
レジュメ ? zgock?だからお前誰よ? ? 2013年版VDIサーバその後 ?
KVM乗り換えを画策して絶望した話 ? 使い分けようXenとKVM ? openSUSE xenカーネルでもzfs ? 実用レベルになってきたbtrfs ? 最近のXenでの環境設定 ? デモとか质疑応答とか
3.
zgock?だからお前誰よ? ? 安藤と申します、愛知県の隅っこで流し の画像処理屋(自称)やってます ? ちと2年ほど病気リタイヤでこの界隈か ら姿消してました ?
前回のスライドが狠狠撸Shareで2万 ビュー超えてて吹いたw ? 仮想化はただの趣味です
4.
2013年版VDIサーバその後 ? 特に大きなトラブルなく2年間安定稼動 ? VGAだけ強化(RADEON6870(中古)) ?
XPゲストを破棄してWin7に統一 ? SSDを調達して載せてみたり ? そうこうしててzgockが病気でダウン ? openSUSE12.3のサポートが切れた
5.
ありがとうopenSUSE12.3 ? Xenとzfsの組み合わせで奇跡的なバラ ンスでド安定していた貴重なバージョン ? openSUSE13.1以降、xenカーネル下で zfsモジュールのビルドが通らないため、 zfsパッケージ(Build
Serviceの野良repo 含)がサポート外に ? 13.x系はそのためスルーしてた ? とうとうサポート切れ???今後どうし よう?
6.
碍痴惭に移行するかなあ???
7.
KVM移行実験 ? サブマシン(元開発マシン(建前)ゲーム端 末(実態))をKVM検証環境に ? Core-i7
3770 ? ASUS P8Z77-M ? RADEON HD7750/5550の2枚刺し ? KVMはiGPUパススルーできないけど、 まあRADEON2枚パススルーできれば いいや
8.
玉砕しました!
9.
KVMの弱点、GPUパススルー ? 最近のカーネルではVFIOの実装により、 以前よりはずっとKVMでのパススルー は楽になった ? dGPU1枚をパススルーするとかなら とっても簡単?安定 ?
LGA2011マザーとかのPCIレーンに余裕 があるマザーなら複数枚も安定 ? iGPU+dGPU複数+LGA115xでは地獄
10.
KVMの構造のおさらい ? ペリフェラル制御はドライバ依存 Linux Kernel ペリフェラル ドライバ
ドライバ ドライバ QEMU 仮想化支援機構(KVM) ゲスト ドライバ ドライバ
11.
ゲスト Xenの構造のおさらい ? ペリフェラル制御はハイパーバイザが仕切る Linux Kernel(DOM0) ペリフェラル ドライバ
ドライバ ドライバ QEMU-DM (Xen内蔵) Xen HyperVisor ドライバドライバ
12.
行儀の悪いドライバ(i915とか)が いると??? ? ドライバ実装次第なのでこのへん運任せ Linux Kernel ペリフェラル i915
ドライバ ドライバ QEMU 仮想化支援機構(KVM) ゲスト ドライバ ドライバ I/O空間あけてちょ おう!空けるぜ! (実は開放してない)
13.
PCIレーンが束ねられていると??? ? どう束ねられているかはマザー依存 Linux Kernel ペリフェラル ドライバ
ドライバ ドライバ QEMU 仮想化支援機構(KVM) ゲスト ドライバ ドライバ Aちょうだい Bも一緒でないと 渡せへんで ペリフェ ラルA ペリフェ ラルB PCIレーン PCIレーン ペリフェラル C
14.
このへん「強引に」どうにかする カーネルパッチも存在しますが、 「どうにかなる」かどうかは完全に マザー依存 (dGPUの枚数が増えるほど絶望 的に)
15.
ゲスト Xenならどうにか??? ? HyperVisorがペリフェラル調停を「わりと」よし なにやってくれる Linux Kernel(DOM0) ペリフェラル i915
ドライバ ドライバ QEMU-DM (Xen内蔵) Xen HyperVisor ドライバドライバ I/O空間あけてちょ おう!空けるぜ! (実は開放してない) わしの方で 空けておいたで
16.
KVMをdisってるわけじゃないですお? ? ハイパーバイザとデバイスモデル(QEMU) の両方の面倒を見るXenよりもQEMUの面 倒を見るだけで良いKVMは構造が単純 ? 単純な分開発も早い ?
赤帽さんが本気で頑張って投資もしてる ? PCIパススルーという「一点だけ」におい てはXenとの間に越えられない壁がある ? 結局デスクトップ環境なんかと同じで適材 適所で使い分けしましょうってことで
17.
うちの環境ではXen使うしかない なあ???
18.
zfsどうしよう? ? Xenカーネルでビルドエラーになる原因を真剣に追う ? ヘッダに一行、お行儀の悪い書き方のマクロ発見 ?
zfsチームに問い合わせ ? メンテナ「あ~それな、行儀悪いのわかってんやけど、 Solarisとのソース互換維持でやむなく使ってるねん」 ? z「(小考)…ん~、この書き方でどうよ?(パッチ送 る)」 ? メンテナ「あ、それならええな。Mergeしたるわ。た だな、次からは修正前の行コメントア ウトで残すのやめてな?」
19.
zfs問題解決 ? zfs最新版をgit cloneしてxenカーネル下で ビルド ?
無事ビルド完了 ? z「やった~xenカーネルでzfs使えるよう になったよ!」 ? ftakeさん(openSUSE-ja方面) 「tumbleweedではxenカーネル廃止(xen カーネル含め特殊カーネルを一本化)の方 向で進めてますよ。じき廃止になるんじゃ ないかなあ?」
20.
わりと無駄な努力? ? ま、まあ現行安定版Leap42.1ではxenカー ネル健在だし ? RHとかでもconfig次第でエラーになるって 問題出てたわけだし ?
全くの无駄じゃないよね???うん
21.
Btrfs移行も検討しました ? 最近のカーネル(3.10以降ぐらい)ではbtrfsもプ ロダクションレベルになってきている ? SLESやUnRAIDとかの商用Linuxでもbtrfsを普 通に使い始めている ?
まだ実装間もないRAID5/6はさすがに危ない が、RAID0/1/10で使う分には問題はほぼ起き ない ? zfsが苦手とする部分をカバーしてたりする ? ボリュームの縮退 ? SSD対応(zfs on Linuxはtrimが使えない) ○ (FreeBSDはtrim対応済) ? Snapperマジ便利
22.
でもやっぱ6TB+の現行zfs環境を btrfs化するのめんどいわw ? ディスクアレイとしての信頼性はやっぱ りまだzfsの方が僅差で上回る ? 任意のサイズのblockdeviceが切り出せ るzvolマジ便利 ?
(それなりの手順が要るけど)他OSに アレイがポーティングできるのは安心
23.
ただSSD環境はbtrfs使おうかな? ? Crucialの480GB SSD(嫁に内緒で)買うたっ た(1年前) ?
パーティションを切ってzfsの L2ARC+ZIL+1drive zfs領域として使用 ? SSDならdedupとか使っても実用レベルじゃ ね? ? 320GBのパーティションを重複排除ありのVM 領域として使用 ? 重複排除ありでも実用レベルのレスポンス ?1年運用して総書込み量が 60TBに
24.
zfsはあくまでも「エンタープライズ 志向のガチFS」なので個人ユーザ の財布とか気にした設計じゃあり ません
25.
SSDはbtrfsで運用 ? 480GB SSDはCドライブが逼迫してきた仕 事PCに移動 ?
仕事PCで使ってた128GB*2をbtrfsでraid-0 運用(パフォーマンス上げよりも総書込み 量分散が狙い) ? 耐障害性はzfsアレイに定期的にバックアッ プすることで担保 ? 特にレスポンスが欲しいVMだけSSD化 ? Raw imageで管理しつつreflinkで擬似 snapshot
26.
reflinkによる擬似snapshot ? cp –reflink
hoge.img fuga.img ? あくまで「参照情報のコピー」になるため 100GBのイメージをコピーしても管理情 報の数KBだけ消費、時間も一瞬 ? fuga.imgの一部を更新すると、「更新された データブロック」分だけディスクを消費 ? fuga.imgを元に戻したければもう一度cpす るだけ ? 断片化しまくるがSSDなら気にならない
27.
1TB HD*6 1TB HD*6 現在のディスク構成 1TB
HD*6 1TB HD*6 128GB SSD*2 128GB SSD*2 USB3 Stick 64GB 1TB HD*6 btrfszfs fat32 (/boot) (efi)
28.
Welcome openSUSE Leap
42.1 (& Xen 4.5)
29.
Xen4.1(旧環境)→4.5(新環境)で 色々変わった ? QEMU Upstream ?
virtioサポート ? Spiceサポート ? Memory周りの細々したとこ ? パフォーマンスの改善 ? パススルーの設定方法変更 ? 実はXen4.1→4.2の間でドラスティック な変化が
30.
QEMU Upstream ? Xenの完全仮想化を実現するための足回り(Device Model)は現在2種類 ?
qemu-xen-dm (upstream) ○ Xenのメジャーリリース時点での最新版QEMU準拠 (Xen4.5の場合QEMU2.3) ○ virtioやらSpiceやら多彩な機能 ○ パススルーに若干弱い ? Intel iGPUがパススルーできない ○ KVMと遜色ないパフォーマンス ○ とゆーかKVM=QEMUが出来ることはほぼ出来る ? qemu-xen-traditional(traditional) ○ Xen 4.1時点で機能フリーズしたQEMU ○ 各種機能追加は4.1時点でフリーズ ○ パススルーに強い ? Intel iGPUがパススルーできる
31.
QEMU 2.5←New ? 2015/12リリースの最新版 ?
Xenと併用した場合intel iGPUのパススルー サポート←upstreamでもiGPUパススルー ? Xenが統合するのはXen4.7になってから ○ おそらく2016年後半 ? 自前でビルドしてXenと併用は可能 ? ごめんなさい、まだ未テストです ○ たぶんXen4.6に上げないといけない ○ openSUSE Build Serviceに4.6があるけどまだ ちょいと未成熟
32.
パススルー関係の設定場所が変 わりました ? /etc/modprobe.conf.d/以下を弄る ? 50-blacklist.confでカーネル側ドライバを排除 ○
radeon i915 snd_hda_intel等々 ? 99-local.confに以下を追加 ○ options pciback permissive ? マザーによっては不要 ○ options pciback hide=(0000:01:00.0)(0000:01:00.1) ? パススルーしたいデバイスを列挙 ? openSUSE xen-kernel以外では”xen-pciback”に なります ○ SLESとの後方互換性
33.
というわけで現在のゲスト構成 ? VM1(2core+Intel HD4000+3GB
Mem) ? qemu-traditional ○ (traditionalの制限で3Gが限界) ? Windows7 64bit エンコード端末 ? QSV使うため ? VM2(2core+RADEON HD7750+4GB Mem) ? qemu-upstream ? Windows7 64bit 嫁環境 ? Windows7 64bit 子供環境 ? openSUSE Leap 42.1 ○ (LinuxでGPU使いたい時用) ? VM3(3core+RADEON HD 6870+8GB) ? qemu-upstream ? Windows7 64bit 開発環境 ? Windows7 64bit CG作成環境 ? Windows7 64bit パパのゲーム環境 ? openSUSE Leap 42.1 ○ VM2と同一ディスク(空いてる側のVMで起動)
34.
ポットのための一杯 zfsのための1core
35.
実機デモ ? ディスク8台積んだサーバー持ってくる と思った?ごめん無理! ? Intel
HDをパススルー設定したNUC持っ てきました ? HandbrakeによるQSVエンコ実演 ? なんかいろいろベンチとか
36.
デモ機構成 ? Intel NUC
Kit DC53427HYE ? Ivy Bridge core-i5 3247U ? Intel QS77 Chipset ? Intel HD Graphics HD4000 ? 16GB DDR3L ? 256GB SSD btrfs formatted ? openSUSE Leap 42.1+Xen4.5 ? Guest:Windows7 Professional 64bit
37.
质疑応答とか
38.
ありがとうございました!
Download