Tag Archive: KVM

八月 31st, 2017

# 该脚本使用guestmount工具,可以将虚拟机的磁盘系统挂载到真实机文件系统中

# Centos7.2中安装libguestfs-tools-c可以获得guestmount工具

# 虚拟机可以启动或者不启动都不影响该脚本的使用

# 将虚拟机磁盘文件挂载到文件系统后,就可以直接读取磁盘文件中的网卡配置文件中的数据该脚本使用guestmount工具,可以将虚拟机的磁盘系统挂载到真实机文件系统中

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
32
33
34
35
#!/bin/bash
#该脚本使用guestmount工具,可以将虚拟机的磁盘系统挂载到真实机文件系统中
#Centos7.2中安装libguestfs-tools-c可以获得guestmount工具
#虚拟机可以启动或者不启动都不影响该脚本的使用
#将虚拟机磁盘文件挂载到文件系统后,就可以直接读取磁盘文件中的网卡配置文件中的数据
clear
mountpoint="/media/virtimage"
[ ! -d $mountpoint]&& mkdir $mountpoint
read -p "输入虚拟机名称:" name
echo "请稍后..."
#如果有设备挂载到该挂载点,则先umount卸载
if mount grep -q"$mountpoint" ;then
       umount $mountpoint
fi
#只读的方式,将虚拟机的磁盘文件挂载到特定的目录下,这里是/media/virtimage目录
guestmount -r -d $name -i$mountpoint
echo
echo"--------------------------------------------"
echo -e "\033[32m$name虚拟机中网卡列表如下:\033[0m"
dev=$(ls /media/virtimage/etc/sysconfig/network-scripts/ifcfg-*|awk -F"[/-]" '{print $9}')
echo $dev
echo"--------------------------------------------"
 
echo
echo
echo"+++++++++++++++++++++++++++++++++++++++++++"
echo -e "\033[32m网卡IP地址信息如下:\033[0m"
for in $dev
do
       echo -n "$i:"
       grep -q "IPADDR"/media/virtimage/etc/sysconfig/network-scripts/ifcfg-$i || echo "未配置IP地址"
       awk -F= '/IPADDR/{print $2}'/media/virtimage/etc/sysconfig/network-scripts/ifcfg-$i
done
echo "+++++++++++++++++++++++++++++++++++++++++++"
TAGS: ,
五月 27th, 2017
yum install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install -y
1
2
3
[root@localhost ~]# grep -E '(vmx|svm)' /proc/cpuinfo 
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm arat epb pln pts dtherm tpr_shadow vnmi ept vpid fsgsbase smep
#如果没有内容则不支持
1
2
[root@localhost ~]# qemu-img create -f raw /opt/Centos-7.3-x86_64.raw 10G
Formatting '/opt/Centos-7.3-x86_64.raw'fmt=raw size=10737418240
1
2
systemctl enable libvirtd.service
service libvirtd start
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[root@localhost ~]# service libvirtd status
Redirecting to /bin/systemctl status  libvirtd.service
● libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
   Active: active (running) since 五 2017-05-26 14:41:33 CST; 7min ago
     Docs: man:libvirtd(8)
           http://libvirt.org
 Main PID: 912 (libvirtd)
   CGroup: /system.slice/libvirtd.service
           ├─ 912 /usr/sbin/libvirtd
           ├─2441 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr...
           └─2449 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr...
5月 26 14:41:24 localhost.localdomain systemd[1]: Starting Virtualization daemon...
5月 26 14:41:33 localhost.localdomain systemd[1]: Started Virtualization daemon.
5月 26 14:41:38 localhost.localdomain dnsmasq[2441]: started, version 2.66 cachesize 150
5月 26 14:41:38 localhost.localdomain dnsmasq[2441]: compile time options: IPv6 GNU-getopt DBus no-i18n IDN DH...auth
5月 26 14:41:38 localhost.localdomain dnsmasq-dhcp[2441]: DHCP, IP range 192.168.122.2 -- 192.168.122.254, leas... 1h
5月 26 14:41:38 localhost.localdomain dnsmasq[2441]: reading /etc/resolv.conf
5月 26 14:41:38 localhost.localdomain dnsmasq[2441]: using nameserver 192.168.106.2#53
5月 26 14:41:38 localhost.localdomain dnsmasq[2441]: read /etc/hosts - 2 addresses
5月 26 14:41:38 localhost.localdomain dnsmasq[2441]: read /var/lib/libvirt/dnsmasq/default.addnhosts - 0 addresses
5月 26 14:41:38 localhost.localdomain dnsmasq-dhcp[2441]: read /var/lib/libvirt/dnsmasq/default.hostsfile
Hint: Some lines were ellipsized, use -l to show in full.
1
2
3
4
[root@localhost ~]# dd if=/dev/cdrom of=/opt/CentOs-7.3.iso
记录了8554496+0 的读入
记录了8554496+0 的写出
4379901952字节(4.4 GB)已复制,137.034 秒,32.0 MB/秒
1
2
3
4
5
6
7
[root@localhost ~]# virt-install --name CentOS-7.3-x86_64 --virt-type kvm --ram 1024 --cdrom=/opt/CentOs-7.3.iso --disk path=/opt/Centos-7.3-x86_64.raw --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
开始安装......
创建域......                                                                                |    0 B  00:00:01     
域安装仍在进行。您可以重新连接
到控制台以便完成安装进程。
[root@localhost ~]#

VNC连接:

wKioL1kn1_ejEcrDAACjz7KmkVw405.png

image

CentOS-7安装的时候让网卡名称默认变成eth0的方法:

按TAB键,后面加入:

net.ifnames=0 biosdevname=0

wKiom1kn3eXCycxhAAESBP0MgkM249.png

1
2
3
4
5
[root@localhost qemu]# virsh list --all                   
 Id    名称                         状态
----------------------------------------------------
 -     CentOS-7.3-x86_64              关闭
 -     CentOS-7.3-x86_64_1            关闭
1
2
[root@localhost qemu]# virsh start CentOS-7.3-x86_64_1
域 CentOS-7.3-x86_64_1 已开始
1
2
3
4
5
6
7
8
9
10
11
改CPU:
[root@localhost qemu]# pwd
/etc/libvirt/qemu
[root@localhost qemu]# virsh edit CentOS-7.3-x86_64_1 
<vcpu placement='auto' current="1">4</vcpu>
重启:
[root@localhost qemu]# virsh shutdown CentOS-7.3-x86_64_1
[root@localhost qemu]# virsh start CentOS-7.3-x86_64_1
[root@localhost qemu]# virsh setvcpus CentOS-7.3-x86_64_1 2 --live  #热添加或热减少
1
2
3
4
5
6
7
8
9
改内存:
virsh edit CentOS-7.3-x86_64_1 
<memory unit='KiB'>4048576</memory>
重启:
[root@localhost qemu]# virsh shutdown CentOS-7.3-x86_64_1
[root@localhost qemu]# virsh start CentOS-7.3-x86_64_1
virsh qemu-monitor-command  CentOS-7.3-x86_64_1 --hmp --cmd balloon 500  #热添加或热减少
TAGS: ,