X



トップページLinux
1002コメント334KB
KVM(Kernel based Virtual Machine)を語れ 2
■ このスレッドは過去ログ倉庫に格納されています
0456login:Penguin
垢版 |
2013/02/02(土) 12:19:52.49ID:M7wDuqSH
>>455
あがらないだろ。
ioとかnfsのqueueが長くなるだけだから。
nfs しばらく使ってないのではずしてると思うが、概念的にはworkerが足りないときとは処理要求は多いのにcpuの負荷は低くなると思うが、そんなケースがないかと想像してる。
0457login:Penguin
垢版 |
2013/02/02(土) 12:28:00.61ID:MLdeUHoW
>456
ううん、NSFサーバがNFSクライアントを待たせると、
クライアント側ではCPUのウェイトのパーセンテージが上がって、
それでロードアベレージがあがるんですよ。

クライアントはデータの読み書きをサーバに依頼するけど、
サーバがモタモタしてると、クライアントは自分のHDDの処理が遅いような認識になって、
ロードアベレージがあがるんです。

ロードアベレージって実行待ちプロセスの平均値でしょ、だからそうなるの。
0458login:Penguin
垢版 |
2013/02/02(土) 12:44:33.71ID:wmtiBWeW
その「1台だけ高負荷なKVMゲスト」の
何の負荷が高いのかから調査して行かないと厳しそうでは。
0459446
垢版 |
2013/02/02(土) 13:21:45.53ID:OWeSb/8E
・その高負荷ゲスト(Linux)では、とあるWebグループウェアが稼働。DBも同居。ゲストは8CPU/32GB
・高負荷なので臨時にホストをそのゲスト1台で占有使用させてる。ホストは12コア36GB
・高負荷時、ゲスト上でiowait30〜50、ロードアベレージ7程度
・高負荷時、ホスト上でiowait20〜40、ロードアベレージ4〜6程度
・高負荷時でも、他のノードからNFS転送速度を計測すると普通に80MB/sとか出る(無負荷時で90MB/s程度)し、
 他ゲストのパフォーマンスにはさほどの低下がみられない
・各物理危機はL2機器で直結
・NFSサーバーはほぼ吊るし設定。CPUもIOもtopで見る限りまったく余裕

こんな状態です。
0460login:Penguin
垢版 |
2013/02/02(土) 14:13:22.25ID:MLdeUHoW
NFSのマウントオプションはどうなってる?
syncかasyncでかなり違う。
NFSのバージョンも気になるけど、v3以降ならパフォーマンス面の不安はほとんど無いはず。

NFSってかなりオプションあるけど、いくつか押さえておけば基本的に吊るしでおk。

NFSクライアントで
nfsstat -m

NFSサーバで
exportfs -v

だったと思う、ステータスが確認できるお。
0461login:Penguin
垢版 |
2013/02/02(土) 16:52:24.68ID:wmtiBWeW
高負荷な時の、そのゲストに使用してるNFS転送速度ってのは
調べられないのかな。
0462login:Penguin
垢版 |
2013/02/02(土) 17:18:03.98ID:GmTgwL/U
そのゲスト上で
dstat -fd

入ってなければyumかrpmで
許可要るだろうけど、あると便利ですよ
0463login:Penguin
垢版 |
2013/02/04(月) 00:02:16.54ID:vfNYlBcm
Xeon E3-1270v2 で CentOS 6.3 の KVM で FreeBSD 9.1 amd64 のインストール
をしようとすると、カネールのロードのところでフリーズしてしまうのだが、
何が原因だろう…?

別メーカーの Xeon E3-1270v2 でも FreeBSD はダメ
Xeon E5-2670 では FreeBSD OK
E3-1270v2 でも Linux 系は問題無くブートする。。
0464456
垢版 |
2013/02/04(月) 01:48:38.64ID:AYy/M0Gd
>>459
すまん。テキトウなこと書いてしまった。ただ、load averageはなんか起きてるってのがわかるくらいで、原因の特定にはならないのでほかの指標見た方がよいですよ。
0465login:Penguin
垢版 |
2013/02/05(火) 01:37:12.13ID:ok1ZznSG
>>463
ゲストに見せるCPUの設定変えてみてもダメなのかな。ゲストのxmlの<model>xxx</model>のとことか
0466login:Penguin
垢版 |
2013/02/05(火) 09:57:39.94ID:ZH9FB+ON
>>465
Xeon E5 はデフォルトの cpu64-rhel6 でも SandyBridge でもどっちでもいけるんだけど、
Xeon E3 はどっちもダメです。
0467login:Penguin
垢版 |
2013/02/05(火) 19:51:00.76ID:8w4Y5+pZ
>>466
GPUまわりかな。いずれにしてもFreeBSD側でカーネルデバッグをしてみるといいだろう。
0468login:Penguin
垢版 |
2013/02/05(火) 23:59:12.79ID:ZH9FB+ON
>>467
Xeon E3-1270v2 なので、GPU 無しです。
Host で top とか sar でみると、CPU を 100% くってるので、どこかでループしてそうな感じです。
0469login:Penguin
垢版 |
2013/02/06(水) 20:36:09.06ID:aB8u49PF
何が原因か分からんね。物理に直接インストールしてみたり、仮想デバイス変えてみたりして地道に切り分けて行くしかないのかな
0470login:Penguin
垢版 |
2013/02/06(水) 20:56:38.01ID:44A2GJXi
>>469
物理だと問題無いんですよね。あと、KVM 無しの QEMU でも問題無かったです。
Xeon E3-1200v2 の仮想化支援機能に何か問題があるんじゃないかなーと思ってます。。
ひとまず、E5 を使うことで切り抜けたのですが、
他の方々は E3 で問題無く、FreeBSD 9.1 amd64 disk1 の起動できます?
0471login:Penguin
垢版 |
2013/02/07(木) 18:39:36.28ID:2mak0S6u
>>470
BIOSで何らかのオプションが無効になってるとか?
vなしのE3-1245にSL6.3の環境ですが
怪しい感じも無くインストール、ログインまでいけましたよ
0473446
垢版 |
2013/02/08(金) 09:29:49.76ID:s+XsNCZ6
ちょっとなかなか高負荷にならず、間空いちゃってすいません。
>>460
rw,relatime,vers=3,rsize=8192,wsize=8192,namlen=255,hard,proto=tcp,timeo=56,retrans=2,sec=sys,
mountaddr=**,mountvers=3,mountport=58074,mountproto=udp,local_lock=none,addr=**
asyncは指定してません。デフォなのでおそらくsyncですね。

>>461
ddで100MBのファイルを5回書き込み、1MBのファイルを500回書き込みとやってみましたが
いずれもキャッシュに載ってしまって200MB/sとかです。
それ以上のサイズは、本稼働中なんでちょっと厳しいw

>>462
readが0〜8000kで平均1000k、writeが0〜5000kで平均1500kといった感じでした。
0474login:Penguin
垢版 |
2013/02/08(金) 09:58:47.24ID:sq66tPlr
>473
乙です。

NFSの引数はあまりわかってないですが、
今のところ、見せてもらった情報からは、
NFSがボトルネックのような内容見えてない気がします。
iowaitは気になりますが、コア8つでロードアベレージが
7ってことは、コア単位で言えば、待ちは1つ以下になるし。

使ってるグループウェアの仕様上のボトルネックみたいな
ものはないんでしょうか。同時接続数がいくつまで・・とか、
無駄にiowaitを生じさせるような動作をしてるとか・・・
0475login:Penguin
垢版 |
2013/02/08(金) 10:21:13.30ID:EJKL/a7r
>>473
NFSのオプションにいくつかイケてない内容があるです

それはクライアント側のマウントオプションだけど、

rsize=8192,wsize=8192 これもっと大きい数字にできる。
うちはrsize=1048576,wsize=1048576

mountproto=udp これ事故る元。
tcpに変えた方がいいです。

syncかasyncかはサーバ側で exportfs -v しないと解らないです。
そこに必ず表記が出ます。
0476474
垢版 |
2013/02/08(金) 10:26:33.85ID:sq66tPlr
NFSの引数について判らなかったために
随分適当なことを言ってしまったみたいですね、
すみません。

rsize, wsizeは昔は8192にするのは定石だったと思いますが、
今はもっとずっと大きいんですね・・・
0477login:Penguin
垢版 |
2013/02/08(金) 10:42:02.04ID:EJKL/a7r
NFSは枯れててあまり最新のネタって無いですからね、仕方ないと思います。
適当でも普通に動いちゃうし。

dstatの結果を見る限り、かなりディスクに負荷かかってるんじゃないかと思います。
ランダムアクセスで常時Read/Writeが1〜2MB/sって、そこそこリソース食ってると思う。

ストレージの無負荷のDiskMark値がないとなんとも言えんけど、
HDD2台のRAID1構成のNFSサーバに、KVMゲストからDiskMarkしたときは、
4kランダムで1〜4MB/sくらいでした。
RAID6遅いし、使ってるディスクの仕様が解らんけど、ストレージもある程度酷使されてると予想。
0478login:Penguin
垢版 |
2013/02/08(金) 10:46:20.85ID:onEADul2
>>475
proto=でなくmountproto=だからあまり問題ないんでは?
0479446
垢版 |
2013/02/08(金) 10:57:16.80ID:s+XsNCZ6
何度もありがとう、参考になります。

>>474
メーカーにさんざん調べさせた結果、もうどう叩いてもこちら側の問題ではなく
サーバー側ディスクIOパフォーマンスの問題である、というのが最終回答でした。
実際、仮想化物理ホストのローカルHDDに載せてしまえば、現スペックでも
こんな程度のユーザー数、アクセス数は余裕で裁ける程度なんですよね。

>>475
なるほど、rwsizeは拡大方向で、計測しながら変更してみます。
mountprotoは無指定なのでデフォ値ですね。これもtcpに変えたら
どれくらいパフォーマンスが落ちるかを計測しつつ検討してみます。
ちなみにfstabのマウントオプションは rsize=8192,wsize=8192,timeo=56,hard,nointr です。

で、nfsサーバー側でexportfs -v をしたところ、asyncでした。
<world>(rw,async,wdelay,insecure,no_root_squash,no_subtree_check)
実際nfsサーバー側で見てる限り、iowaitなんか全くないし
その他負荷もさっぱりなんですよね。
深夜の無負荷時にhdparmでも実行してみます。
0480login:Penguin
垢版 |
2013/02/08(金) 10:59:43.83ID:EJKL/a7r
これは確かにネタが少なくて調べるの大変なんですが、

NFS マウントオプション tcp

これでぐぐったら出てくるよ。(修行中とか言われてリンク貼れなかったorz)

この辺りに書いてあるです。
0481login:Penguin
垢版 |
2013/02/10(日) 01:50:32.82ID:LJwjzQu7
さくらとかの、VPSってKVMつかっているんでしょ
仮想マシンイメージファイルのダウンロード、バックアップって、許可されていないんだろうか
0482login:Penguin
垢版 |
2013/02/10(日) 22:37:49.70ID:UUWVgmws
自分でバックアップとったのをダウンロードして
手元のkvmで動かしたけど、許可必要だったのかー
0483login:Penguin
垢版 |
2013/02/10(日) 23:26:32.03ID:LJwjzQu7
>>482
仮想マシンイメージファイルのレベルで、ダウンロードできるんだ?
0484login:Penguin
垢版 |
2013/02/10(日) 23:44:05.39ID:V8FzsEi4
仮想マシンイメージのダウンロード、アップロード機能提供したら、
-ちょっとでも価格の安い事業者へユーザーが引っ越しちゃう
-繁忙期以外にも無駄に契約させておく事が出来なくなる
なので、余程自信のあるところ以外はやらないでしょ
一応、Amazonが(Xenだけど)提供してたはず。他は聞いたこと無い
0485login:Penguin
垢版 |
2013/02/11(月) 00:31:05.13ID:Cpvy0uGk
さくらのクラウドは対応してるよ。
0486login:Penguin
垢版 |
2013/02/11(月) 14:07:29.26ID:3/TB2HI+
>>485
じゃ、自宅のKVMで仮想マシンをつくったのを、
さくらVPSでそのままアップロードしてつかえるのかな?
0488login:Penguin
垢版 |
2013/02/11(月) 19:36:49.11ID:3/TB2HI+
○さくらのクラウド
×さくらのVPS

同じものだと思っていました。
ちがうってことですね?
0489login:Penguin
垢版 |
2013/02/11(月) 19:37:53.74ID:3/TB2HI+
クラウドの定義ってあるんですか
VPSのことがクラウドだと思っていた
0490login:Penguin
垢版 |
2013/02/11(月) 19:41:52.54ID:u2cb6J4c
ぐぐればすぐわかることをいちいち聞くキチガイは
死んだほうがいいと思うよ。
0492login:Penguin
垢版 |
2013/02/16(土) 00:39:37.80ID:dPtclbyw
KVM使ってて、たまにVirtual Machine Manager越しに

This usually means that QEMU or KVM is not installed on your machine, or the KVM kernel modules are not loaded.

って出て新規ゲストが作れなかったり、マイグレーション出来なくなることってない?
調べてもわかんねーんだが。
ログにもたいした内容出てないし。
0493login:Penguin
垢版 |
2013/02/22(金) 14:23:41.62ID:2+V5LRUA
ホストとゲストに同じディスクの同じパーティションをマウントしてます.
片方でそのパーティションを変更しても,もう片方ではその変更が
同期されないんですけど,同期させるにはなにかオプションとか
必要ですか?
0494login:Penguin
垢版 |
2013/02/22(金) 16:52:21.66ID:Zu99WWbz
何がどうなってんのか詳しく書かないと解らんです。

どうやってマウントしてるのか、ゲストのOSは何なのか、
何をマウントしてるのか。
0495login:Penguin
垢版 |
2013/02/22(金) 17:04:47.58ID:2+V5LRUA
>>494
どうも,詳しく書かせてもらいます.

OSはホスト,ゲスト共に Debian squeeze です.
「ホストの /dev/sdf というディスクをホスト,ゲスト両方で使いたい」というのが目的です.
/dev/sdf は3TBのHDDでパーティションは1つのみ,ファイルシステムはext4でフォーマットしてます.
ホストでは普通に
host# mount /dev/sdf1 /mnt
でマウントしていて,中身がきちんと見れます.

ゲストの方は,libvirt で /dev/sdf を disk device として接続しており,
ゲストでは /dev/vdd として認識されています.これで
guest# mount /dev/vdd1 /mnt
とやると普通にマウントができて,最初にマウントした時は両者とも
/mnt 内のファイルは一致していました.

しかし,片方で新しいファイルを作ったり削除しても,もう片方のほうでは
それが反映されません.というのが問題点です.

mount のオプションかなー,とおもって どちらのマウントも sync にして見ましたが,
結果変わらずでした.なにかご意見お願いします.
0496login:Penguin
垢版 |
2013/02/22(金) 17:15:57.85ID:2+V5LRUA
また,/dev/sdf のディスク以外もゲストに接続しているので,
そのディスクでもホスト,ゲスト両方でマウントして,
同様に内容を編集してみましたが,やはり内容の編集は
反映されませんでした.特定のディスクの問題という
わけではないようです.

今までは各ディスクはゲストのみで使うようにしていて,
ゲスト,ホスト両方で使う用途がなかったので気づきませんでした.
0497login:Penguin
垢版 |
2013/02/22(金) 17:20:25.80ID:2+V5LRUA
連レスすいません.
詳しいバージョンを書いておきます.
デフォルトの sueeze の kvm と libvirt が古かったので,
backports の新しいものをインストールしています.

カーネル: 2.6.32-5-amd64
kvm: QEMU emulator version 1.1.2 (qemu-kvm-1.1.2+dfsg-5~bpo60+1, Debian)
libvirt: 0.9.12
0498login:Penguin
垢版 |
2013/02/22(金) 18:27:41.60ID:Xu/vRH7T
共有想定してないファイルシステムを複数箇所からマウントすると壊れないか?
0499login:Penguin
垢版 |
2013/02/22(金) 19:10:09.21ID:4MroaQFK
クラスタファイルシステム使わないとダメかと。でもNFS使った方がお手軽かも
0500login:Penguin
垢版 |
2013/02/22(金) 19:37:40.04ID:2+V5LRUA
>>498-499
なるほど,同時マウントってやってはダメなんですね.
やりたいのは,ホストで録画したファイルがあるディスクを
ゲストの SAMBA サーバで共有したいんですよね.
ホストにはできれば,SAMBA 入れたくなくて.

とすると,
ホストで NFS 共有 -> ゲストで NFS マウント -> ゲストで SAMBA で公開
になるのかな.ややこしや.
0501login:Penguin
垢版 |
2013/02/22(金) 23:15:16.12ID:wscWw5WI
KVMでvirtualbox用のかそーディスクの.OVAを
インポートして使えたりできないんですかね?
0503login:Penguin
垢版 |
2013/02/22(金) 23:59:52.44ID:2+V5LRUA
>>502
え,だめだった?
NFS 共有できない Windows マシンとかもあるから SAMBA で
公開したいんだけど.あとユーザ認証したいし.
0504login:Penguin
垢版 |
2013/02/23(土) 00:01:52.48ID:H0h2xM9L
sambaで共有したいけど、ホストにsamba入れたくないならそれでおkなような
0505503
垢版 |
2013/02/23(土) 01:34:08.38ID:VIKqv7zQ
ちょっと考えなおして,
ゲストでディスクをマウント -> ゲストで SAMBA 公開 -> ホストで smbmount してそこに録画
のほうがいいかと思い始めた.

で,ちょっと聞きたいんだけど,
SAMBA 公開するゲストが起動したタイミングで,
自動的にホストに smbmount させることってできるかな?
ゲストからホストの操作って可能?
0506login:Penguin
垢版 |
2013/02/23(土) 02:03:49.17ID:K/wRctdB
>>505
そうそう

ゲストからホストを操作するのも色々やりようはある気がする。例えば、ssh使う方法。
1. ゲストでssh-keygenして空パスフレーズで鍵ペア作る
2. ホストのrootのauthorized_keysにゲストの公開鍵を追記
3. ゲスト起動時に下のようなスクリプトが走るようにする
# ssh -l root ホスト mount XXX

これで一応できるはず。もちろんsambaの認証が自動でされるようにホストの/etc/fstabなりに予め設定しておくのは前提ね。
0507login:Penguin
垢版 |
2013/02/23(土) 02:34:17.03ID:VIKqv7zQ
>>506
うむ,やっぱり ssh か.まあそれが楽か.

ホストの fstab に書いちゃうとホスト起動時にマウントしようとして,
ゲストの SAMBA サーバが起動していないからマウントに失敗すると思うんだが.
fstab でマウントはせずに認証だけすることってできるの?
0508login:Penguin
垢版 |
2013/02/23(土) 02:39:18.19ID:K/wRctdB
mountオプションにnoautoでいけるんじゃないかな
0509login:Penguin
垢版 |
2013/02/23(土) 02:51:04.94ID:VIKqv7zQ
>>508
おー,なるほどー.そんなオプションがあったのか.
ごめんなさい,mount のオプション多すぎてよく覚えとらん.
アドバイスありがとう.その方針でやってみます.
0510login:Penguin
垢版 |
2013/02/23(土) 14:06:52.17ID:ZRdOiKVb
ここにあんま書かれないけど、KVMもかなり新機能出てきてるっぽいね。
0511login:Penguin
垢版 |
2013/02/23(土) 15:38:53.21ID:VbcJVGPt
>>510
例えば?
それにしても、企業がqemu-KVMなんて使うとは思えない。
0512login:Penguin
垢版 |
2013/02/23(土) 15:50:29.21ID:YSd8r4L6
無知を自慢されても困りますぅ
0516511
垢版 |
2013/02/24(日) 13:04:25.61ID:TrfgiyV9
さくらVPSってのは、qemuっぽいみたいですね。失礼いたしました。
0517login:Penguin
垢版 |
2013/02/24(日) 13:17:29.57ID:VH5HcKPu
いやいや、思うのは勝手だからいいですよ
だたあんま偉そうにすんな
0518login:Penguin
垢版 |
2013/03/08(金) 23:23:58.14ID:AeeaW3/j
一台のサーバーにkvmでホストOSとしてdebianとWindowsServerを入れて、 両方Webサーバを動かそうとしてるんだけど
2つのホストOSそれぞれに違うドメインを割り当てたいんだけどそういう 事できる?
ホストでapache動かしてバーチャルドメイン使えば手っ取り 早いんだろうけど
サイトをまとめて運用したくないし、一つはIISじゃないと困った事になるの で・・・
0520login:Penguin
垢版 |
2013/03/09(土) 00:21:39.14ID:1EKqgfpG
きっとマルチブート環境
0521login:Penguin
垢版 |
2013/03/09(土) 00:49:32.66ID:0yK7mC13
kvmなんか使わなくても、iisでよくね?
なんで1台のwebサーバで2サイトやりたくないのか解らんけど、
ホストヘッダー設定したら目的は達成できるでしょ。
全然問題ないからやってみ。
0522login:Penguin
垢版 |
2013/03/09(土) 02:29:55.08ID:g5Zjov3F
2つのゲストOSの間違いだったしにたい。
素直にiisでやります。
0523login:Penguin
垢版 |
2013/03/11(月) 23:24:25.85ID:G6kbvRfs
qemu-kvmを-no-kvmオプションでVBOX上のCentOS6で動かしたいのですが可能ですか?
virshや、virt-managerからはkvm-intel or kvm-amdがないのでエラーとなっているようです。
長いオプションを指定して起動するしか方法がないでしょうか?
0524login:Penguin
垢版 |
2013/03/13(水) 20:28:30.25ID:ddqrRsai
vmのネストをやりたいんだと思うけど、
条件をぶった切って、
ホスト機→vmware player→fedora17以上→kvm
なら実現できるはず。
バーチャルボックスが仮想化支援を引き継げるなら、バーチャルボックスでもおk
Cent6でもネストは可能だけど、マンドクセので勧めません
上記はできるはずってだけで、自分もこれから実施予定
0525login:Penguin
垢版 |
2013/03/13(水) 20:38:54.33ID:SHSmxLbV
ごめん、ボケてました。

ホスト機→VMWwarePlayer→Cent6→KVM

これでOKだね。

VMWwarePlayerなら仮想化支援引き継げます。
0526login:Penguin
垢版 |
2013/03/14(木) 01:35:34.78ID:1pgF5NI7
>>525
VMPlayerでできました。ありがとうございます。
0527login:Penguin
垢版 |
2013/03/28(木) 11:24:35.73ID:0oUKlWo6
CentOS6.3 x86_64にyumでKVM入れたんだけど
qemu-nbdはどこにあるんでしょ?
リポジトリあれば教えてください
0528login:Penguin
垢版 |
2013/03/28(木) 21:51:20.93ID:LU0XAv6w
"qemu-nbd centos"はぐぐってみたの?
0529login:Penguin
垢版 |
2013/03/29(金) 12:03:55.21ID:xPDMNO1O
ググっても出てこないですねぇ
# yum list | grep qemu
gpxe-roms-qemu.noarch 0.9.7-6.9.el6 @anaconda-CentOS-201207061011.x86_64/6.3
qemu-guest-agent.x86_64 2:0.12.1.2-2.355.0.1.el6.centos.2
qemu-img.x86_64 2:0.12.1.2-2.355.0.1.el6.centos.2
qemu-kvm.x86_64 2:0.12.1.2-2.355.0.1.el6.centos.2
qemu-kvm-tools.x86_64 2:0.12.1.2-2.355.0.1.el6.centos.2
qemu-guest-agent-win32.x86_64 2:0.12.1.2-2.355.0.1.el6.centos.2
EPELにもないみたいです
0530login:Penguin
垢版 |
2013/03/29(金) 16:22:31.03ID:xPDMNO1O
qemu-nbdなさそうなのでソースからコンパイルしました
お騒がせしました
0532login:Penguin
垢版 |
2013/03/30(土) 13:05:23.09ID:ee0pZ3h1
>>529
パッケージの名前に「nbd」が入っていると思い込んでるから見つからないんじゃ
今5分くらい探したらRHEL6用のこーゆーのは見つかったよ

Content of RPM :
(中略)
/usr/bin/qemu-mips
/usr/bin/qemu-mipsel
/usr/bin/qemu-nbd
/usr/bin/qemu-ppc
/usr/bin/qemu-ppc64
0533login:Penguin
垢版 |
2013/04/06(土) 08:09:27.87ID:oUfXD2kP
ググって単語さえヒットすれば存在するという・・・
なんというかとてもメルヘンで幻想的な・・・
0534login:Penguin
垢版 |
2013/04/06(土) 22:34:54.25ID:5/9SBv43
つか
普通に RPM Search で検索したら
10秒で見つかるじゃねーかw
0535login:Penguin
垢版 |
2013/04/23(火) 02:01:30.43ID:KJdVms1h
すんません質問です
KVMで稼働中のゲストイメージファイル(raw)を停止させずにバックアップ取りたいんですが
普通にcpしても壊れますよね
LVMとかFS側でスナップショット撮ってコピーする手段が適当でしょうか?
もし他に方法があれば教えてください
0536login:Penguin
垢版 |
2013/04/23(火) 08:43:00.41ID:EGsKWz2v
VMレベルでIOをサスペンドして、スナップショット取って、それをコピーしつつサスペンドは解除。コピーが終わったらスナップショット統合して単一イメージ構成に戻せばいいよ。

理想的にはVM上のOSにもちゃんとフラッシュしてもらうか、書き込みをordered writeでしてるようにしとくべし。
0537login:Penguin
垢版 |
2013/04/23(火) 09:34:06.19ID:KJdVms1h
すみません

>>スナップショット取って、それをコピーしつつサスペンドは解除。コピーが終わったらスナップショット統合して単一イメージ構成に戻せばいい

がよくわからないんですが、つまりどういうことでしょうか?
0538login:Penguin
垢版 |
2013/04/23(火) 16:25:17.11ID:EGsKWz2v
流れとしては

1. VMが例えばイメージファイルfoo.img上で動いている
2. スナップショット分岐させ、foo-snap.img(backing store: foo.img) 上で稼動する状態にする
3. 書き込みはfoo-snap.imgにしか反映しないので、foo.imgは(ゲスト側の問題を別にして)安全にコピーできる
4. コピーが終わったら、foo.imgにfoo-snap.imgの内容を書き戻す
5. foo-snap.imgの内容をfoo.imgに書き戻す形で再統合し、VMもfoo.img上で動くように構成を戻す

ということ。

昔やったときは結構面倒だったけど、いまだとsnapshot_blkdevとblock_streamで1-5に近いことはできると思う。あと、もっと簡単かつ柔軟にする方法も今後出てくる予定だったはず。
0539login:Penguin
垢版 |
2013/04/23(火) 20:26:42.05ID:6kq/oZZ+
Rawってスナップショットとれるん?
Qcow2だけかと思ってた。

LVMでスナップショットとるのが良いような気がする。
0540login:Penguin
垢版 |
2013/04/23(火) 22:33:26.30ID:EGsKWz2v
そりゃゲストOSかホストOSの中でそういう操作ができるのなら、
アプリのスナップショット機能使う理由はあんまりない。
0541login:Penguin
垢版 |
2013/04/25(木) 00:54:12.31ID:ll+bCTSm
ありがとうございます
rawはqemuではスナップショット撮れないって認識あったんですが(実際試したことはないです)
スナップショットとれるFSなりLVMなり低い層でのバックアップをしたほうがよいってことですね
マイグレーションついでにデュプリケートもしてくれるような機能あったら大歓迎なんですけどね
0542login:Penguin
垢版 |
2013/04/28(日) 21:48:57.77ID:TIPSb/v1
長文失礼します。
当方KVMでiscsiを使って共有ストレージを組もうとしています。
多分一般的だと思っているのですが、例えばKVMホスト2台、ストレージ1台の構成で、
ストレージはiscsiターゲット、KVM2台はイニシエータとします。
OSは全てCentOS6.4 64bitで、ゲストのイメージはストレージに置きます。

1台のKVMから新規ゲストを作って、それをライブマイグレーションすると、
マイグレーションは完走するんですが、ゲストのディスクが見えなくなってしまい、
ゲストがIOエラーを吐きます。
iscsiは全てコマンドを使って設定し、最終的に各KVMホストでローカルディレクトリとして認識させています。

原因は他方のKVMホスト上のストレージプールにデータが認識されていないためかと思います。
(それなのに、なんでマイグレーションが完走するのか謎)
iscsiは多対一の構成を推奨していないようですが、KVMではどうやって導入したらよいでしょうか。

現在は共有ストレージでNFSを使っていますので、NFSのような挙動を望むのですが、
中々上手いこといかずに悩んでおります。
0543login:Penguin
垢版 |
2013/04/28(日) 23:43:13.33ID:g0SfUFFc
>>542
> iscsiは全てコマンドを使って設定し、最終的に各KVMホストでローカルディレクトリとして認識させています。

こわれるのあたりまえ。
ブロックデバイスそのままつかいな。
0544login:Penguin
垢版 |
2013/04/29(月) 06:21:39.09ID:huGBYEKF
エスパーありがとうございます。
その辺りの手順をきちんと書いてなくてすみませんでした。

ターゲットホスト上でscsiターゲットの設定

イニシエータからターゲットを参照

イニシエータからターゲットにログイン(fdisk -l で認識OK&パーティション切り)

イニシエータホスト上で、認識したブロックデバイスをフォーマット
例:mkfs -t ext4 /dev/sda1

イニシエータホスト上で、ファイルシステムにマウント(df -h で確認できるようになる)
例:mount /dev/sda1 /mnt

virt-managerを使ってローカルディレクトリとしてプールに追加

という手順で行っていました。
今度はブロックデバイスでそのままプールに追加という手順でやってみます。
また結果報告しますmm
0545login:Penguin
垢版 |
2013/04/29(月) 11:19:03.02ID:QbAX9dsD
ホスト2台から同じiSCSIボリュームをマウントして使うってことよね

iSCSIのボリュームを複数台から共有する場合は、ext4じゃなくて共有に
対応したGFS2みたいなファイルシステム使わないとダメなはず。
ttp://aikotobaha.blogspot.jp/2011/07/rhel61-resilient-storagegfs2.html

同じ事やってファイルシステムぶっ壊したのでiSCSIペンディングしてるw
0546login:Penguin
垢版 |
2013/04/29(月) 11:57:13.04ID:huGBYEKF
こんにちは、542です。

>> 543
> ブロックデバイスそのままつかいな。
これはつまり、ストレージ側でVMのイメージをddやqemu-imgなんかで予め作成し、
そのイメージファイルをscsiターゲットとして共有するという理解でOKでしょうか。

/etc/tgt/targets.confの内容を書くと、

<target iqn.2013-04.com.iscsi-tgt:tgt>
backing-store /mnt/test.img
backing-store /mnt/foo.img
backing-store /mnt/hoge.img
・・・
・・

write-cache off
</target>

というように、新しいVMを作るたびに書き連ねて行くと。
なんかかなり面倒な感じですが、誤解してますか?
0547login:Penguin
垢版 |
2013/04/29(月) 12:05:45.08ID:huGBYEKF
>> 545
アドバイスありがとうございます。

取り合えず上のやり方でイメージを作って、
それにインストールしたゲスト上で設定変更やマイグレーション、再起動、シャットダウンなんかは上手く動いたっぽいんですが、
新しいVMのイメージ追加なんかが上手くいかない状態です。
(これはiscsiの使い方判ってないだけだと思います)

VM起動したままtgtdのリスタートや、イニシエータでログアウトなんかをしてたら、VMのイメージが壊れたっぽいですが。

どこかに設定を持ってるのか、今までの情報を保持してるような挙動で、
VMのイメージファイルパスをtargets.confに書き足したら、元からあったのが表示されなくなってしまったり。
ここら辺はスレチですが。

なんか、かなり斜め上いってる予感。
0548login:Penguin
垢版 |
2013/04/29(月) 21:59:33.10ID:huGBYEKF
こんばんは、542です。
なんとか形になった(?)ので、ご報告いたします。

まずiSCSIターゲット(ストレージ)での作業
/mntにゲスト用イメージ作成
# dd if=/dev/zero of=test0.img bs=1M count=10000

/etc/tgt/targets.confに以下を追記
<target iqn.2013-04.com.iscsi-tgt:lun-0>
backing-store /mnt/test0.img
write-cache off
</target>

# /etc/init.d/tgtd start

次にイニシエータ(KVMホスト)での作業
# iscsiadm --mode discovery --type sendtargets --portal ターゲットのIP 127.0.0.1:3260,1 iqn.2013-04.com.iscsi-tgt:lun-0

virt-managerからiscsiストレージをプールに追加
ターゲットパス:/dev/disk/by-path
ホスト:ターゲットのIPアドレス
ソースパス:iqn.2013-04.com.iscsi-tgt:lun-0

これで追加が完了するはず。
0549login:Penguin
垢版 |
2013/04/29(月) 22:04:24.97ID:huGBYEKF
続いてゲストイメージの追加方法。

ターゲットで新しいイメージファイルを作る。
# dd if=/dev/zero of=test1.img bs=1M count=10000

/etc/tgt/targets.confに新しいターゲット分を追記
<target iqn.2013-04.com.iscsi-tgt:lun-0>
backing-store /mnt/test0.img
write-cache off
</target>
<target iqn.2013-04.com.iscsi-tgt:lun-1>
backing-store /mnt/test1.img
write-cache off
</target>

confのアップデート
# tgt-admin -update ALL

イニシエータでの作業
# iscsiadm --mode discovery --type sendtargets --portal ターゲットのIPアドレス 127.0.0.1:3260,1 iqn.2013-04.com.iscsi-tgt:lun-1

上と同じ要領で、virt-managerからiscsiをストレージプールに追加。
こんな結論に至ったんですが、もっと良い方法ないですか・・・。
0550login:Penguin
垢版 |
2013/04/30(火) 01:17:07.34ID:Ls3ntxnl
どうしてもiSCSIにこだわるならclvm使うかな
でもNFSのが楽だよ
0551login:Penguin
垢版 |
2013/04/30(火) 08:09:39.48ID:lMty1lR3
おはようございます。542です。

ゲストのディスクIOの帯域制限をしたくて、
cgroup→iscsiと行き着いたんです。
NFSだと、ホストから見るとネットワークIO扱いですよね。
0552login:Penguin
垢版 |
2013/04/30(火) 09:49:11.09ID:K8i5YuLi
>>549
ターゲットも LVM 使ったほうがいいよ。
0553login:Penguin
垢版 |
2013/04/30(火) 10:41:37.16ID:lMty1lR3
こんにちは、542です。

>>552
ありがとうございます。
お恥ずかしながらLVMをほぼ使ったことがなくて、
virt-managerでどう使えばよいのか全くイメージが湧かないのです。。。

LVMスナップショットなんかが便利そうなので、目下勉強中なのですが、
具体的にどういう手順になるんでしょうか?

自分が書いたような、ファイルを作ってそれをiSCSIターゲットにするのは模範解答じゃないと思うので、
LVMで倫理パーティションを切って、ファイルを作らずにその領域をそのままターゲットとして共有するという認識になりますか?

/etc/tgt/targets.confの書き方で言うと、
<target iqn.2013-04.com.iscsi-tgt:lun-0>
backing-store /mnt/test0.img    <-- ext4ファイルシステム上の1ファイル
write-cache off
</target>

<target iqn.2013-04.com.iscsi-tgt:lun-0>
backing-store /dev/vg_target00/lv_target00   <-- 論理ボリューム
write-cache off
</target>

みたいな書き方になると。
0555login:Penguin
垢版 |
2013/04/30(火) 11:41:49.19ID:lMty1lR3
>>554
大きなヒントをありがとうございます。
リトライして、また結果報告しますmm
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況