flagflag  
1: 2013-05-18 (Sat) 13:15:51 iseki source Cur: 2022-02-18 (Fri) 15:49:43 iseki source
Line 1: Line 1:
** KVM [#v2d4e0f8] ** KVM [#v2d4e0f8]
 +- http://www10.atwiki.jp/noel1008/pages/44​.html#id_b2b002a6
 +#br
 +** Rokcy Linux 8.5 (2022/2/17) [#d17bae5d]
 +
 +*** br0 の作成 [#c0fde3c4]
 + # nmcli con add type bridge con-name br0 ifname br0
 + # nmcli con mod bridge.stp no
 + # nmcli con mod br0 bridge.stp no
 + # nmcli con mod br0 ipv4.method manual ipv4.address "202.26.150.50/24" ipv4.gateway "202.26.150.254" ipv4.dns "202.26.144.11"
 + # nmcli con mod br0 autoconnect yes
 + # nmcli con add type bridge-slave ifname ens10f0 master br0
 + # nmcli con down ens10f0
 + # vi /etc/sysconfig/network-scripts/ifcfg-ens​10f0
 +     NBOOT=no
 +
 +*** Install [#p7c59867]
 + # export VM_NAME=rocky-8.5
 + # virt-install \
 + --name ${VM_NAME} \
 + --hvm \
 + --arch x86_64 \
 + --os-type linux \
 + --os-variant centos7.0 \
 + --vcpus 2 \
 + --ram 2048 \
 + --disk path=/opt/vm/images/${VM_NAME}.img,forma​t=qcow2,size=50 \
 + --network bridge=br0 \
 + --graphics vnc,keymap=ja \
 + --noautoconsole \
 + --location /opt/iso/Rocky-8.5-x86_64-boot.iso
 +#br
 +
 +** OLD [#u00f7f08]
 +*** Create [#lff9c573]
 + # qemu-img create -f qcow2 /data/websystem-0.img 30G
 + # qemu-kvm -hda /data/websystem-0.img -m 1024 -boot d -cdrom /root/CentOS-6.4-x86_64-bin-DVD1.iso -k ja -vnc :0
 +
 +- -vnc :0 がリモートコントロール接続用ポート番号を示す. オフセットは 5900 (-vnc :1 なら 5901)
 +#br
 +
 +*** リモートコントロール用クライアント [#e0f0304e]
 +- Ultra Vnc: http://www.uvnc.com/
 +- Real Vnc: http://www.realvnc.com/products/vnc/ (Windows7で起動せず 2015/2/6)
 +#br
 +
*** ネットワーク [#ec3d818f] *** ネットワーク [#ec3d818f]
-GuestOS(eth0) => HostOS(tap0 → br0 → eth0) => external+- Guest OS(eth0) => Host OS(tap# → br0 → eth0) => external 
 +- Host OS の tap インターフェイスは Guest OS 毎に必要 
 +#br 
 +**** tap インターフェイスの起動と停止スクリプト (ホスト側) [#a889f964] 
 +- /etc/qemu-ifup 
 + #!/bin/sh 
 + /sbin/ifconfig $1 0.0.0.0 promisc up 
 + /usr/sbin/brctl addif br0 $1 
 +- /etc/qemu-ifdown 
 + /usr/sbin/brctl delif br0 $1 
 + /sbin/ifconfig $1 down 
 +- $1 には tap# が入る 
 +#br 
 + 
 +**** Macアドレスが変化しても,ネットワークインターフェイスを見失わない方法 (ゲスト側) [#bb7bbfac] 
 +- 最近のディストリビューションは NICのMacアドレスが変化すると,別のインターフェイスを作って対応させる.その結果,インターフェイスを見失う 
 +- 対策 
 +-- /etc/udev/rules.d/70-persistent-net.rule​s を削除して,/dev/null にシンボリックリンクを張る.(起動時にワーニングがでる) 
 +-- /etc/sysconfig/network-scripts/ifcfg-eth​# の HWADDR を削除する. 
 +#br 
 + 
 +*** 起動 [#f1023067] 
 +**** 起動例 [#mb397d99] 
 + # /usr/libexec/qemu-kvm -hda /data/centos-base-1.img -m 1024 -k ja -vnc none -net nic,macaddr=52:54:00:12:34:00 -net tap,ifname=tap0,script=/etc/qemu-ifup 
 +- macaddr は Guest OS のMACアドレスになる.%%設定し直すと /etc/udev/rules.d/70-persistent-net.rule​​s で eth の名前が変わるので,合わせる必要がある.また /etc/sysconfig/network-scripts/ifcfg-eth​# の HWADDR は削除した方が面倒くさくない.%% (上記参照) 
 + 
 +- qemu-kvm オプション: http://opensuse-man-ja.berlios.de/opensu​se-html/cha.qemu.running.html#cha.qemu.r​unning.gen_opts 
 +#br 
 +**** 起動用スクリプト (kvm-start) [#v9cf6a20] 
 +- kvm-start xxxx.img 512 
 + #!/bin/sh 
 + # 
 +  
 + function get_interface_num() 
 + { 
 +   TAPLST=`/sbin/ifconfig | grep '^tap[0-9]' | awk -F" " '{print $1}'` 
 +   NUM=0 
 +   while [ $NUM -lt 100 ]; do 
 +       FLG=1 
 +       for TAP in $TAPLST ; do 
 +           if [ "tap$NUM" = "$TAP" ]; then 
 +               FLG=0 
 +               break 
 +           fi 
 +       done 
 +       if [ $FLG = 1 ]; then 
 +           echo $NUM 
 +           return 0 
 +       fi 
 +       NUM=`expr $NUM + 1` 
 +   done 
 +   return 0 
 + } 
 +  
 +  
 + if [ ! -f "$1" ]; then 
 +   echo "Not found image file $1 !!" 
 +   exit 1 
 + fi 
 +  
 + IFNUM=`get_interface_num` 
 + if [ "$IFNUM" = "" ]; then 
 +   echo "Can not get Interface Number!!" 
 +   exit 1 
 + fi 
 +  
 + HWADDR=`/usr/local/bin/macgen.py` 
 + if [ "$HWADDR" = "" ]; then 
 +   MACNUM=`printf "%02d" $IFNUM` 
 +   HWADDR="00:16:3e:00:00:$MACNUM" 
 + fi 
 +  
 + MEM=$2 
 + if [ "$MEM" = "" ]; then 
 +   MEM=1024 
 + fi 
 +  
 + echo "macaddr  = $HWADDR" 
 + echo "interface = tap$IFNUM" 
 + echo "vnc num  = $IFNUM" 
 + echo "memory    = ${MEM}M" 
 + echo "start qemu-kvm" 
 +  
 + /usr/libexec/qemu-kvm -hda $1 -m $MEM -k ja -vnc :${IFNUM} -net nic,macaddr=$HWADDR -net tap,ifname=tap${IFNUM},script=/etc/qemu-​ifup 
 +**** MACアドレスの自動生成 by [[RedHat カスタマーポータル>https://access.redhat.com/site/document​ation/ja-JP/Red_Hat_Enterprise_Linux/5/h​tml/Virtualization/sect-Virtualization-T​ips_and_tricks-Generating_a_new_unique_M​AC_address.html]] [#wa7bbc0e] 
 +- /usr/local/bin/macgen.py 
 + #!/usr/bin/python 
 + # macgen.py script to generate a MAC address for virtualized guests on Xen 
 + # 
 + import random 
 + # 
 + def randomMAC(): 
 +   mac = [ 0x00, 0x16, 0x3e, 
 +       random.randint(0x00, 0x7f), 
 +       random.randint(0x00, 0xff), 
 +       random.randint(0x00, 0xff) ] 
 +   return ':'.join(map(lambda x: "%02x" % x, mac)) 
 + # 
 + print randomMAC() 
 +#br 
 +*** Error [#tf8b1bfc] 
 +**** cpu0 unhandled rdmsr [#vd317aa5] 
 +- デバッグメッセージなので無視しても良いらしい.
#br #br
 +
 +***P2V by macsatou :-D [#s5b7d465]
 +物理マシンから仮想マシンへまるっと移行.#br
 +自宅サーバで実施した.
 +
 +****手順1 [#d6412ca2]
 +適当なBootCD等で対象マシンを起動.#br
 +DDコマンドを使って全体を抽出.
 +以下例) 対象ディスクが/dev/sdaの場合
 + # dd if=/dev/sda of=/tmp/output.img bs=10M
 + (CNTL+Tで進捗状況を見れる)
 +
 +****手順2 [#ra4f848b]
 +抽出したファイルをKVMの入った仮想化基盤へ何らかの方法で転送済とする.
 + # qemu-img convert -f raw -O qcow2 output.img kvm_ver_output.qcow2
 +変換後のファイルは無駄に大きい可能性もあるため、最適化.
 + # qemu-img convert -O qcow2 kvm_ver_output.qcow2 kvm_ver_output.qcow2.new


Front page   New List of Pages Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom)

Site Search

Login

Username:

Password:


Lost Password?
Register now!!

Sub Menu

mini Calendar

Last MonthMay 2024Next Month
Su Mo Tu We Th Fr Sa
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Today

Who's Online

38 user(s) are online (2 user(s) are browsing xpwiki)

Members: 0
Guests: 38

more...

Access Counter

Today : 6197619761976197
Yesterday : 1361113611136111361113611
Total : 2364460423644604236446042364460423644604236446042364460423644604
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com