88487703 2019-06-27
传统数据中心面临的问题:
云计算
云计算的分类
云计算的分层:
QEMU创建虚拟机
[root@linux-node1 ~]# grep -E "(vmx|svm)" /proc/cpuinfo #检查cpu是否支持vmx或者svm flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx hypervisor lahf_lm tpr_shadow vnmi ept vpid tsc_adjust arat
[root@linux-node1 ~]# yum -y install qemu-kvm qemu-kvm-tools libvirt(管理虚拟机的工具) [root@linux-node1 ~]# yum -y install virt-install(安装虚拟机用的)
[root@linux-node1 ~]# systemctl enable libvirtd [root@linux-node1 ~]# systemctl start libvirtd [root@linux-node1 ~]# ifconfig virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255 ether 52:54:00:79:0d:48 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
虚拟机安装的需求
[root@linux-node1 ~]# qemu-img create -f raw /opt/CentOS-7-x86_64.raw 10G # -f:指定格式,创建一个10G的CentOS-7-x86_64.raw的虚拟机磁盘 [root@linux-node1 ~]# virt-install --virt-type kvm --name CentOS7-x86_64 --ram 1024 --cdrom=/opt/CentOS-7-x86_64-Minimal-1708.iso --disk path=/opt/CentOS-7-x86_64.raw --network=default --graphics vnc,listen=0.0.0.0 --noautoconsole #创建虚拟机
[](http://www.tightvnc.com/downl...
连接ip是虚拟机的ipnet.ifnames(不是kvm的),然后按下tab按键,输入net.ifnames=0 biosdevname=0
(这样便于网卡管理)
正常开始安装
[root@linux-node1 ~]# virsh list --all Id Name State ---------------------------------------------------- 1 CentOS7-x86_64 running
[root@linux-node1 ~]# virsh start CentOS7-x86_64 [root@linux-node1 ~]# virsh shutdown CentOS7-x86_64
需要确认KVM虚拟机的网卡是否开启
ps -ef | grep kvm
管理虚拟化进程,如果这个进程挂了的话,不影响KVM虚拟机的进程,只是影响管理。
[root@linux-node1 ~]# cd /etc/libvirt/qemu #管理地址 [root@linux-node1 qemu]# ls CentOS7-x86_64.xml networks [root@linux-node1 qemu]# vim CentOS7-x86_64.xml # 不能直接vim修改, [root@linux-node1 qemu]# virsh edit CentOS7-x86_64 #管理KVM,但是openstack就不能这么搞了
宿主机和虚拟机都要是(centos7以上的系统):支持热添加CPU和内存
[root@linux-node1 qemu]# virsh edit CentOS7-x86_64 <vcpu placement='static'>1</vcpu> # 改成: <vcpu placement='auto' current="1">4</vcpu> #代表当前是1,最大是4(前提需要保证宿主机的cpu个数和虚拟机一致) [root@linux-node1 qemu]# virsh setvcpus CentOS7-x86_64 2 --live #这样就可以了
[root@linux-node1 ~]# virsh --help | grep monitor qemu-monitor-command QEMU Monitor Command qemu-monitor-event QEMU Monitor Events [root@linux-node1 ~]# virsh qemu-monitor-command CentOS7-x86_64 --hmp --cmd info balloon #查看虚拟机内存 balloon: actual=1024 [root@linux-node1 ~]# virsh qemu-monitor-command CentOS7-x86_64 --hmp --cmd balloon 512 #热修改内存 [root@linux-node1 ~]# virsh qemu-monitor-command CentOS7-x86_64 --hmp --cmd info balloon balloon: actual=512
[root@linux-node1 ~]# brctl show bridge name bridge id STP enabled interfaces virbr0 8000.525400790d48 yes virbr0-nic vnet0 [root@linux-node1 ~]# brctl addbr br0 #创建桥接网卡 [root@linux-node1 ~]# brctl addif br0 ens32 #桥接到宿主机(会断网,建议用脚本) # 此时断网了,就要手动上到宿主机执行 [root@linux-node1 ~]# ip addr del dev ens32 192.168.56.11/24 # 删除宿主机IP配置 [root@linux-node1 ~]# ifconfig br0 192.168.56.11/24 up # 桥接网络设置为出口 [root@linux-node1 ~]# route add default gw 192.168.56.2 # 添加网关 ping qq.com
[root@linux-node1 ~]# virsh edit CentOS7-x86_64 <interface type='network'> <mac address='52:54:00:71:c9:f9'/> <source network='default'/> 改为: <interface type='bridge'> <mac address='52:54:00:71:c9:f9'/> <source bridge='br0'/>