kvm 虚拟化安装

1. 配置

1)yum -y install virt-install

systemctl start firewalld.service 关闭防火墙

2):网桥方式配置步骤

a、编辑修改网络设备脚本文件,增加网桥设备br0

vi /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE="br0"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO=static
IPADDR=10.0.112.39
NETMASK=255.255.255.0
GATEWAY=10.0.112.1
DEFROUTE=yes

b、编辑修改网络设备脚本文件,修改网卡设备eth0

DEVICE="eth0"
NM_CONTROLLED="no"
ONBOOT="yes"
TYPE=Ethernet
BOOTPROTO=none
BRIDGE="br0"
NAME="System eth0"

2. 命令

virsh list             #显示本地活动虚拟机

virsh list –all    #显示本地所有的虚拟机(活动的+不活动的)

virsh define ubuntu.xml    #添加虚拟机  通过配置文件定义一个虚拟机(这个虚拟机还不是活动的)

virsh undefine ubuntu     # 删除虚拟机

virsh destroy ubuntu    # 强制关闭虚拟机

virsh  reset  ubuntu    #重启

virsh start ubuntu    #启动名字为ubuntu的非活动虚拟机

virsh edit ubuntu    #修改以及加载

virt-install -d --name=kvm_tw--ram 1024 --vcpus=1 -f /home/img/kvm_mode.img --cdrom=/home/iso/CentOS-6.7-x86_64-LiveCD.iso --graphics vnc,listen=0.0.0.0,port=7788  ///无xml时使用virt-install,建议优选virsh define ubuntu.xml

克隆镜像

virt-clone -o vm1 -n vm2 -f /usr/local/kvm/vm2/disk.os /usr/local/kvm/vm2/disk.data -d --prompt

KVM虚拟机迁移:

迁移命令:virsh migrate –live<id or name> qemu+ssh://<dstip>/system tcp://<dstip>:49152

迁移完之后,本地机器可能仍是定义状态,要执行virsh undefine <name>清除

3. virsh使用qemu+tcp访问远程libvirtd

因为ssh的不能访问 所以使用tcp进行对远程libvirtd进行连接访问,例如

virsh -c qemu+tcp://example.com/system

修改文件vim /etc/sysconfig/libvirtd,用来启用tcp的端口

1

2

3

LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf

 

LIBVIRTD_ARGS="--listen"

修改文件vim /etc/libvirt/libvirtd.conf

1

2

3

4

5

6

7

8

9

listen_tls = 0

 

listen_tcp = 1

 

tcp_port = "16509"

 

listen_addr = "0.0.0.0"

 

auth_tcp = "none"

运行 libvirtd

1

service libvirtd restart

如果没起效果(我的就没有生效 :( ),那么使用命令行:

1

libvirtd --daemon --listen --config /etc/libvirt/libvirtd.conf

查看运行进程

1

2

[root@ddd run]# ps aux | grep libvirtd

root 16563 1.5 0.1 925880 7056 ? Sl 16:01 0:28 libvirtd -d -l --config /etc/libvirt/libvirtd.conf

查看端口

1

2

[root@ddd run]# netstat -apn | grep tcp

tcp        0      0 0.0.0.0:16509           0.0.0.0:*               LISTEN      13971/libvirtd     

source host连接dest host远程libvirtd查看信息

1

2

3

4

5

6

virsh -c qemu+tcp://211.87.***.97/system

 

Welcome to virsh, the virtualization interactive terminal.

 

Type: 'help' for help with commands

'quit' to quit

成功使用tcp去访问libvirtd。

 

4. XML

<domain type='kvm'>

  <name>test2</name>

  <memory unit='KiB'>1048576</memory>

  <currentMemory unit='KiB'>1048576</currentMemory>

  <vcpu placement='static'>1</vcpu>

  <os>

    <type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type>

    <boot dev='hd'/>

  </os>

  <features>

    <acpi/>

    <apic/>

  </features>

  <clock offset='localtime'/>

  <on_poweroff>destroy</on_poweroff>

  <on_reboot>restart</on_reboot>

  <on_crash>restart</on_crash>

  <pm>

    <suspend-to-mem enabled='no'/>

    <suspend-to-disk enabled='no'/>

  </pm>

  <devices>

    <emulator>/usr/libexec/qemu-kvm</emulator>

    <disk type='file' device='disk'>

       <source file='/home/img/kvm_mode.img'/>

      <target dev='hda' bus='ide'/>      

    </disk>

    <disk type='file' device='cdrom'>

      <driver name='qemu' type='raw'/>

      <source file='/home/iso/CentOS-6.7-x86_64-LiveCD.iso'/>

      <target dev='hdb' bus='ide'/>

      <readonly/>    

    </disk>

 

    <interface type='bridge'>

      <source bridge='br0'/>

    </interface>

    

    <input type='mouse' bus='ps2'/>

    <input type='keyboard' bus='ps2'/>

    <graphics type='vnc' port='7788' autoport='no' listen='0.0.0.0' keymap='en-us'>    

    </graphics>  

 

  </devices>

</domain>

 

 

猜你喜欢

转载自blog.csdn.net/yhc166188/article/details/80713523