KVM(Kernel based Virtual Machine)を語れ 2
■ このスレッドは過去ログ倉庫に格納されています
>>96
もってないから適当だけど
# rmmod kvm-intel
# modprobe kvm-intel unrestricted_guest=0
でどう?
>>98
ダメみたい。
modprobe kvm-intel unrestricted_guest=0で
カーネルログに
kvm: VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL does not work properly. Using workaround
と出る。 KVM が kepler に対応するのはいつ頃だろう・・・ ところで皆、Win2008R2のゲストにUSBHDDって接続できてる?
自分の環境だと、ゲストが認識はすれど、エラー10 利用できない状態ですで使えないんですよね(´・ω・`)
どっかでドライバ探してこないとだめ? 複数の物理ホスト+virt-managerの環境で、両方のホストから同じゲストを起動できちゃうのって
何か抑止方法ないですか?ググってもなかなか対策が見当たらず。
どうなるか試しにやってみたら、見事にゲストのファイルシステムがおかしくなった。 >>110
運用変えるかscriptにロック書くしか無いんじゃ?
>>112
やってみたら確かにロックできた!
代わりにライブマイグレーションできなくなったw
migration may lead to data corruption if disks use cache !=noneとか出る。
日本語の情報、全然ないね。英語でもあんまり解決策とかなさげ 複数のネットワーク作るのはどうやるのがいいの?
仮想マシンマネージャーで普通にNATのネットワーク2つ作ったら何もしなくても相互に通信できちゃうんだな
どこが仕事してどう通信してるのかよくわからないんだが >>114
5分程度ぐぐっただけなので合ってるかどうかは知らんが、
エラーだけ見るとこのパッチに見える
https://www.redhat.com/archives/libvir-list/2012-June/msg00239.html
http://libvirt.org/news.html
0.9.13に入ってるかもしれない。
> Add support for shared sanlock leases (Daniel P. Berrange), >>115
分離したネットワークを2つつくればいいよ >>115
自分はVLAN切ってゲストを分断する方法しか思いつかなかったよ。
思い通りの設定は仮想マシンマネージャーでは無理でした。
仮想でルーター立ててそれでアンタグするか、物理ルーターでアンタグするかの2択が一番簡単かも。
参考
ttp://itpro.nikkeibp.co.jp/article/COLUMN/20110317/358422/?ST=virtual&mkjb&P=1
もっといい方法あったら教えてエロい人。 KVM専用のディストリビューションってないの?
名前も悪いしこれじゃ普及しないだろ >>116
ありがとございます。
確かに、これっぽいですね。
Scientific6.2なのでまだ来てないですが、来たら試してみて
また報告します。 RHEV使ってる人いる?
FedoraでoVirtを入れてみたんだが、かなり不安定な印象。大丈夫? >>123
いるよ〜
oVirt v3.0と、v3.1bも使っているけど、安定性を求めるなら、v3.0 stableを使った方が良いかと。
v3.1bは、新機能追加がメインなので、いろいろ安定化させるのは苦労しますよ。 >>124
あざっす。
試したのは3.1bでした。
3.0の方やってみまっすmm >>125
一応、注意点として、f16向けのパッケージしかないので、engine用のマシンを構築するときは、fedora16で作りましょう。
Nodeは、iso配布のモノを使うのが良いかと。 >>126
感謝。
大抵の場合、皆さんFedoraでやってるみたいですけど、諸事情によりCentOS限定なんですよね。
試してないけど、EPEL使ってCentに入れれないかなぁと画策中です。
まともに動かなそうだけど・・・。 >>127
下記のサイトで、RHELクローン向けのoVirtが提供されていますよ。
http://www.dreyou.org/ovirt/
このパッケージを使用した事は無いですが、参考までに。
後、初めてRHEV/oVirtを触るなら、redhatの90日の評価版を使って、慣れるのもありかなと思います。
qemu+sshでvirtdにアクセスしていると、いつのまにか
ホスト側に大量のsshdとncが発生してつながらなくなるのですが
回避方法ないですか?
killall ncとかだと一時的に回復するけど、いたちごっこでした。 >>128
本当に親切にありがとう。
自分もこのリポジトリは見つけたんだけど、危ない香りがしたから試さなかったんですw
でも折角なので、インストールしてみて近いうちにレポート入れるよ。
ありがとう〜(`・ω・´) >>52
うちでは、VirtualBOX上で
UbuntuではKVM動作○
Fedoraでは?
だった。
lsmod | grep kvm で何も出てこない。
VMwarePlayerでCentOS:KVM>CentOSってやってるんだけど、
ネットワーク設定がよくわかりません。
VMwarePlayer(ブリッジ)>CentOS(br0,eth0)では外部と通信できます。
しかし、
VMwarePlayer(ブリッジ)>CentOS(br0,eth0)KVM>CentOSだと
ゲストのCentOSのeth0が起動しません。
ググッたところ、tapの設定が必要らしいのですが、qemuのコマンドでtap追加してる
サイトばかりで、virt-managerでguestOSをインストール、起動してからの設定が載っているサイトが
みつからずに困っています。
どなたかご存知ないですか? virt-managerなら何も難しいことはなく、br0を
ブリッジ対象として選べると思うんだが。 >>133
ありがとうございます。
virt-managerでeth0(br0)を選択したのですが、
eth0が起動しないのです。
普通なら、これだけで使えるようになるのでしょうか?
どうもKVMのネットワークが良く分かっていなくて・・・
いいサイトもしくは、本などございませんでしょうか。 >>132
KVMゲストのNICが上がらんのと、KVMゲストが外部と通信できないのは別の問題なので、
KVMゲストの/var/log/messeges とかでエラーを見てみるんだ(`・ω・´)
文章から読み取るに、VMwareもKVMも関係ない希ガス。
というか、VMwareのゲスト上でKVMが動くほうがびっくりした。 ごめんスペル間違えてた
/var/log/messages
です >>135,136
回答ありがとうございます。
やはりブリッジ設定した後は本来なら、普通に使えるんですね。
てっきり、ゲストOS側で何か紐付けする設定が必要なのかと
思っていました。
networkmanagerとシスログをチェックしてみます。
VMwarePlayer4.0.4ならintel-VTをゲストOSに橋渡しできるオプションが
あるのでKVM動かせました。 試しにゲストOSを新規に作り直してみたら、
うまく通信できるようになりました。
みなさんありがとうございました。 またまた困ったので質問です。
KVM上でルータ役のCentOS6.3(eth0(br0)192.168.0.0/24とeth0:0 192.168.1.0/24
とゲストOSCentos6.3(eth0(br0)192.168.1.0/24
という構成にしたのですが、ルータ役を介してインターネットに出られません。
ホストのbr0 1個に異なるネットワークの設定って出来ないものなんでしょうか?
ifconfig -a をゲストOSで実行するとなぜかGWがかなり遅れて表示されます。 >>140
ゲストのIPアドレスがネットワークアドレス >>141
いえ、書いているネットワークに属するホスト用アドレスにしていると
いう意味です。 >>140
組もうとしてるネットワークの全体像が判らないので、必ずしも間違っているとは言えませんが、
どういう構成で組みたいのかな。
仮想マシンのルーター役CentOSを、そのKVMホスト内で複数のサブネットを束ねるルーターとして使うなら、
br0だけじゃ駄目です。(というより、自分はそういう組み方しない。)
基本的にゲストOSのネットワーク設定は何も弄りません。
ルーター役CentOSは、必要なサブネットの数だけ仮想NICを用意するけど、IPエイリアスもVLANの設定もなし。
NICの設定を弄るのはあくまでホストOSのそれになります。
virt-managerでネットワーク設定が弄れるけど、あまり希望の構成通りにならないので、
ifcfg-eth*とかifcfg-br*を直接触ったほうがいいです。(マネージャーはきちんと認識するので大丈夫)
で、ルーターOSのグローバル側にbr0を付けて、LAN側にVLAN設定したNICを割り当ててやれば、
後はゲストで任意のIPを設定してやれば、サブネットとVLANIDが同じになっていれば、勝手に通信するし、
異なるVLANのゲスト同士は通信できない。
ルーターOSも希望のIPをそれぞれのNICにつければ、特にルーティングの設定なしで通信できます。(ゲートウェイは適切に)
解決しなかったら、自分が作ったファイルの内容貼りますので言ってちょー。 >>143
BBルータ LAN側 192.168.0.1/24 (ルーティングテーブルに192.168.1.0は192.168.0.101追記)
ホストOS br0(192.168.0.100/24),eth0(br0にブリッジ)GW192.168.0.1
ゲストOS(router) eth0(br0)192.168.0.101/24 eth0:0 192.168.1.100/24(GW192.168.0.1)
ゲストOS2 eth0(br0)192.168.1.102/24
という風にしています。
構成は BBルータ----192.168.0.0/24---ゲストOS(ルータ)---192.168.1.0/24
という風にしたいと思っています。
>>143さんのアドバイスをもとにちょっと頑張ってみます。
BBルータ LAN側 192.168.0.1/24 (ルーティングテーブルに192.168.1.0は192.168.0.101追記)
ホストOS br0(192.168.0.100/24),eth0(br0にブリッジ)GW192.168.0.1
→eth0:0 br0:0を作成(IP付けない)
ゲストOS(router) eth0(br0)192.168.0.101/24 eth0:0 192.168.1.100/24(GW192.168.0.1)
→ゲストOS(router) eth0(br0)192.168.0.101/24 eth1(br0:0) 192.168.1.100/24(GW192.168.0.1)
ゲストOS2 eth0(br0)192.168.1.102/24
→ゲストOS2 eth0(br0:0)192.168.1.102/24(GW 192.168.1.100)
こんな感じですかね。 こっちでやってる
iptables/routing
you can also connect your guest vm to a tap in your host. then setting iptables
rules in your host to become a router + firewall for your vm.
Routing would be done simply by creating the default route on the client to the
IP of the host (and allowing IP forwarding) and setting a route to the tap? device
of the client on the host.
以下略
http://www.linux-kvm.org/page/Networking >>145,146
ありがとうございます!
早速試してみます。 kvmのネットワーク設定でつまづいています。
ifcth-eth0(192.168.1.1)
ifcth-eth0:11(192.168.1.11)
ifcth-eth0:12(192.168.1.12)
ifcth-eth0:13(192.168.1.13)
ifcth-eth0:14(192.168.1.14)
ifcth-eth0:15(192.168.1.15)
現在上記イメージでホストにIPを振っています。
(iptablesやブリッジの設定は特になし)
virt-managerでゲストOSを作って、NICの設定で「ホストデバイス eth0:11:macvtap」を指定して
ゲスト側ではDHCPでIPを自動取得にしたのですが外部につながりません・・・。
やりたい事はゲストOS毎にIPを振って外部のPCからSSHでアクセスしたりhttpにアクセスしたりしたいのですが、
どこが原因なんでしょうか。
※構築したいイメージ図
【ルータ】(192.168.1.254)
|
【ホスト】(192.168.1.1)
|-------------|-------------|-------------|-------------|
【ゲスト1】 【ゲスト2】 【ゲスト3】 【ゲスト4】 【ゲスト5】
(192.168.1.11〜192.168.1.15)
よろしくお願いします。 >>150
ホストで設定するNICは
ifcfg-eth0 (ブリッジ設定 IP無し)
ifcfg-br0 (eth0の内容を引き継いで192.168.1.1)
んで、ゲストには全部br0をつければOK。
ゲストのIPはホストが決めるもんじゃないです。 >>151
ゲストのIPはゲスト側で設定すれば良かったんですね。
ありがとうございます。
再度挑戦してみます。 ゲスト側の設定で詰まってしまったのでまた質問させていただきます。
現在グローバルIPが33個あります。
※グローバルIPの振り分けは下記とします
ホスト用IP:xxx.xxx.3.17
ゲスト用IP:xxx.xxx.194.14〜xxx.xxx.194.45
>>151さんのご指摘であったブリッジ接続については下記のように設定してあります。
【ifcfg-eth0】
DEVICE=eth0
ONBOOT=yes
HWADDR=XX:XX:XX:XX:XX:XX
BRIDGE=br0
【ifcfg-br0】
DEVICE=br0
ONBOOT=yes
TYPE=Bridge
IPADDR=xxx.xxx.3.17
NETMASK=255.255.255.0
GATEWAY=xxx.xxx.3.1
上記で設定したbr0をゲスト側のNICの設定(ホストデバイス vnet0 (Brigde 'br0'))して、
ゲスト側のifcfg-eth0は下記のようにしましたが外部につながりません(8.8.8.8やゲートウェイなどにpingが通らない)。
【ifcfg-eth0】
DEVICE="eth0"
BOOTPROTO="static"
IPADDR=xxx.xxx.194.14
GATEWAY=xxx.xxx.3.1
ONBOOT=yes
どこの設定まわりを見直せば良いのでしょうか。
よろしくお願いします。 >153
「よろしくお願いします」って、丸投げするなよ。
仮想化以前に、基本的にネットワークセグメントがおかしいと思うが。
1台のIPがxxx.xxx.3.17/24で、同一セグメントに、
別のIPがxxx.xxx.194.14 って。実環境で構築したっておかしい。
>155
全くもって同意。
>>155,>>156
丸投げするもりなどはなく、なにかしらヒントだけでもらえればと思ったもので。
>>156
> 1台のIPがxxx.xxx.3.17/24で、同一セグメントに、
> 別のIPがxxx.xxx.194.14 って。実環境で構築したっておかしい。
そうなんですけどね。こういうIPを割り振られてしまったものでして。
もう少し調べてみます。
ありがとうございました。 >>150は質問の仕方が「自分専用のサポート窓口」みたいになってるってことに気付かないんだろうな
哀れ 誰だって最初は判らないんだから、もちょい優しくしてやれよw
俺は暇人だからおk。
>>158
前出の通り、割り当てられてるグローバルIPとゲートウェイの関係がおかしいよ。
これはKVMの話じゃなくて、普通のネットワークの話ね。
仮にゲストにNIC1つでOKで、ローカルIPが必要無いってなら、KVMのネットワーク設定はそれで合ってる。
(物理スイッチとかの配線までは知らんけど、間違ってそうな気がせんでもない。)
IPに関しては最低限必要な基本情報が3つあって、
・IPアドレス
・サブネットマスク
・ゲートウェイ
が必要なんですわ。 だから下のゲストの設定で問題なのは、
>ゲスト側のifcfg-eth0は下記のようにしましたが外部につながりません(8.8.8.8やゲートウェイなどにpingが通らない)。
>【ifcfg-eth0】
> DEVICE="eth0"
> BOOTPROTO="static"
> IPADDR=xxx.xxx.194.14
> GATEWAY=xxx.xxx.3.1
> ONBOOT=yes
・NETMASKが書いてない。
・GATEWAYが常識的にはありえない。
(ちゃんと金払って借りてるグローバルIPが前提の話ね。大規模ならあるかもしれんけど。)
の2点。 GATEWAYはxxx.xxx.194.1とかのはずだよ。
>そうなんですけどね。こういうIPを割り振られてしまったものでして。
この設定を指示した人間は、それくらい判るだろうとおもって頼んでるはずw
ガンガレ ごめん読みが甘かった。
>>156の言うとおり、そもそもIPの振られ方がおかしい可能性がありますね。
ホストのNIC設定が1つで、2つのサブネットに繋ぐことはあまりしないかも。
ネットワークの全容が分からんからなんとも言えんけど、一度仕様を確認した方がいいと思います。 つかこのレベルにグローバルIPの運営をまかせて良いのか?
取りあえずボコボコにして追い返すのが世界平和の為じゃない?
今IP4はかなり割り当て厳しくなってるんだから即刻返却すべし! 業務なら知識のないうちは付焼より金払って勉強したほうがいい
毎回このスレに相談に来る気か 残念ながら、ろくな本無いねぇ。
大体古い。
自分はネット漁った。 日本語でのKVMの本は、今のところ「KVM徹底入門」 一冊しか無い。
かなり初心者向けだけど。
大抵の人がlibvirt使って管理をしてるだろうし、
Qemuとlibvirtのサイトでドキュメントを見るのが一番いいような気がする。
Qemuのサイトを一通り読んだ記憶がうっすらある。
1回作ったら、あとはたいていコピペだし、もうほぼ記憶無い。 virt-managerみたいなやつをmacで使いたいんだけどなんかない?
sshでX飛ばしてvirt-manager起動させてみたけどkeymapがおかしくなったりする >>169
今VNC使ってるけどXはなるべくサーバに入れたくないんだよね。
なんか代案があればと思ったんだけどやっぱないか。 keymapがおかしくなるのは仮想マシン?それとも
virt-manager自身?
仮想マシンのkeymapがおかしくなるのは、keymapを
定義してないからではないでしょうか。
自分もMacからSSH越しでvirt-managerを使っているけど
keymapで困ったことはないです。 「mac xサーバ virt-manager」とかでググるといろんなサイトで.Xmodmapいじれって書いてあるけど 画面共有の方法を教えてください。
下記環境で使っていた時は、サーバの仮想PCの画面と
クライアント側UltraVNCで同時に同じ画面を表示されることができてました。
サーバ:centos6.2でKVM
クライアント:Win7 + UltraVNC
このサーバにCentOS6.3をクリーンインストールしてKVM環境を構築すると、
サーバで仮想マシンの画面を開いている時はクライアントVNCが接続できず、
サーバの仮想マシンの画面を閉じている時のみクライアントVNCが接続できる様な具合になってしまいました。
これを以前の環境(centos6.2)と同じように、2つのPC間で同時に同じ画面を表示させたいのです。 複数ホスト運用時、
/etc/libvirt/qemu 以下のXMLファイルってどうしてる?
できれば同期的に最新状態にしておきたいんだけど、
cronで定期的にrsyncで回すとかで問題ないもんかな…? リアルマシンの台数を削減するためKVM(ホストはCentOS6を予定)上に集約させようと思うのですが、
現在運用している環境を再構築するのは面倒なので今のリアルDiskイメージから仮想イメージが作れれば比較的簡単に移行出来るのではないかと考えています、
その様な方法は可能なのでしょうか?
可能であればリアルディスクイメージを仮想ディスクへ変換するツールなどあるのでしょうか?
なお動かしているシステムは特別なハードに依存していないのでKVMの仮想ハードでも問題なく動くと考えていますがどうでしょうか? >>176
CentOS6.3のvirt-p2vパッケージの中にISOイメージ入ってる >>176
ごめん。ドキュメントのURL貼り忘れた。
ttps://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/V2V_Guide/chap-V2V_Guide-P2V_Migration_Converting_Physical_Machines_to_Virtual_Machines.html HDDを適当なLinuxマシンに接続して、後は dd コマンドで丸ごとイメージ持ってくればいいだけ違うの? ご存知の方がいれば教えて下さい。
KVMのVNCサーバってホストOSにXが無いと動かないでしょうか?
ホストOS(Gentoo)にゲストOS(Gentoo)を作成し、
クライアントPC(Windows)からゲストOSへ、
UltraVNCでアクセスしようしています。
ネットワーク設定はブリッジ接続で行っており、
レイヤ3レベルの疎通性は取れているのですが、
tcpdumpしてみるとポインタの位置情報のやり取りを、
ゲストOSのVNCからバチっと切っているようでして、
ひょっとしたらホストOS側にXが必要なんではないかと。
ホストOSがGentooという事でスレ違いでしたらすみません。 >>180
listenがループバックになってんじゃないの? >>181さん
レスありがとうございます。
deamonizeで動かしている状態で、netstat -l -tしてみました所、
tcp 0 0 *:5900 *:* LISTEN
となっていました。
なのでlistenループバックは多分大丈夫です。
理解が間違ってたらすみません。
libvirt つかってるけど、qemu.conf にこんな設定がある。
なんかの参考になれば...
# VNC is configured to listen on 127.0.0.1 by default.
# To make it listen on all public interfaces, uncomment
# this next option.
#
# NB, strong recommendation to enable TLS + x509 certificate
# verification when allowing public access
#
# vnc_listen = "0.0.0.0"
>>183さん
レスありがとうございます。
ひょっとしたら省略可能とは聞くものの、
-vnc :0で端折ってるのがいけないのかな。。。
今までqemu-kvmコマンド直打ちで試していたのですが、
一度virtshでの設定と運用を試してみたいと思います。 kvmでゲストOSを起動する際にドメインIDを固定にさせたいんですけどそういう方法ってありますか?
調べてみたけど
<domain type='kvm' id='3'>
これだとvirsh editで編集しても元に戻っちゃうから書き方が間違っていると思うんですが・・・ >185
virsh domid で id 取得するんじゃダメなの? >>186
管理NoとドメインIDを統一したいんです。(わざわざ管理Noが書かれた別ファイルを開きたくない)
libvirtd起動時にドメインIDがランダムに割り振られちゃうので指定できればと思ったんです。
xmlで設定できれば良いんですがラッパープログラム書かないと難しそうですね。 >>187
listで出てくる数字とuuidを統一したいとか?
根本から考え違いしてないか? そこはいい加減決めよう!
Q1. デバイスパススルー使いますか?
Q2. ディスクI/Oは多い方ですか?
Q3. Linuxは好きですか?
Yesが多ければKVM、Noが多ければESXiくらいの感じで。 >>188
listで出てくる数字(ドメインiD)とサーバの管理番号(Excelに記載しているサーバの管理No)を一緒にしたいってことです。
uuidとかはまったく関係がなく単純にドメインIDを指定した番号に固定出来ればいいだけです。
KVMってWindowsがゲストの場合にモタつく感じがするんですが
ESXiだとサクサクになるんでしょうか? >>191
単にドメイン名をその管理番号?にすればいいのに。
ドメインIDは「起動中の」ゲストを特定するIDでlibvirtが付与するもんだから、
Excelというか構成管理側で管理する値じゃない。
http://libvirt.org/drvqemu.html#xmlconfig
http://libvirt.org/formatdomain.html#elements
>>193
ドメイン名はゲストのhostnameで使うんですよね・・・。
virsh dumpxmlで出た値(id='xx')はやっぱり固定に出来ないようですね。
おとなしくwrapper書く事にします。
ありがとうございました。
>>192
使った事ないけど知り合い曰くkvmよりもはましらしい。
(windowsメインならおとなしくHyper-V)
linuxメインならこれ使ってみるとか。
ttp://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers
>>194
KVMよりマシなら試してみる価値ありそうです、
Hyper-Vも検討してみます。 >>192
両方使ってるけど、
ESXiの方が若干軽い感じがする。>Windowsゲスト
つーか、ESXiはハードウェアの好き嫌いがかなりあるからなぁ。
手持ちのマシンで何も考えずにお手軽に仮想環境が作りたいなら
KVMの方がいいかもしれん。 ■ このスレッドは過去ログ倉庫に格納されています