系統 centos7 grep -E '(vmx|svm)' /proc/cpuinfo 檢查是否能夠虛擬化 yum install -y qemu-kvm libvirt ### qemu-kvm 用戶態的管理工具 ### libvirt 用來管理虛擬機的 yum install -y virt-install ### 安裝虛擬機用的 systemctl enable libvirtd 啓動libvirtd管理虛擬機, systemctl start libvirtd ####ifconfig 若是沒有 yum install -y net-tools查看網卡啓動了一個virbr0虛擬網卡 qemu-img create -f raw /opt/Centos-7-x86_64.raw 10G 建立一個虛擬機磁盤 virt-install --virt-type kvm --name CentOS-7-x86_64 --ram 1024 --cdrom=/tmp/CentOS-7-x86_64-DVD-1511.iso --disk path=/opt/Centos-7-x86_64.raw --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole ###建立一個名字爲CentOS-7-x86_64的虛擬機 內存1024 光盤鏡像在/tmp 磁盤路徑在/opt/ 建立一個網卡 用vnc客戶端打開192.168.1.100 而後tab鍵輸入 net.ifnames=0 biosdevname=0 用來把網卡迴歸到eth0 em1用的 virsh list --all 查看虛擬機 virsh start CentOS-7-x86_64 ###開啓虛擬機 virsh destroy diyitai ###第一條強制關閉虛擬機diyitai virsh undefine diyitai ###刪除虛擬機 vim /etc/libvirt/qemu/diertai.xml 是配置文件 CPU熱添加 <vcpu placement='static'>1</vcpu> <vcpu placement='auto' current=""1>4</vcpu> ##根據須要 cpu熱添加 最多4個 virsh setvcpus CentOS-7-x86_64 2 --live 內存熱添加 virsh qemu-monitor-command diyitai --hmp --cmd info balloon virsh qemu-monitor-command diyitai --hmp --cmd balloon 512 brctl show #!/bin/bash ####在生產環境要寫腳本不然起不來 brctl addbr br0 ##建立橋接網卡 brctl addif br0 eno16777736 把網卡橋接到網卡eno16777736上 ip addr del dev eno16777736 192.168.1.100/24 刪除網卡的IP地址 ifconfig br0 192.168.1.100/24 up ### 把ip配置給br0上 routeadd default gw 192.168.1.1 ###手動添加個網關 2.virsh edit diyitai ###虛擬機名 改網卡 <interface type='bridge'> <source bridge='br0'/> 3. virsh shutdown diyitai ###關閉虛擬機 virsh start diyitai 4.連虛擬機配置網絡並增長路由重啓 KVM優化 上下文切換 宿主機 ring 0 系統級 ring 3 用戶級 緩存: taskset -cp 1 25718 內存: 空間優化 尋址 EPT技術: 虛擬機:虛擬內存 虛擬機:物理內存 宿主機:虛擬內存 宿主機:物理內存 大頁內存 [root@linux-node1 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled KSM內存合併 [ksmd] I/O優化: 2.6 內核: Noop CFQ AS Deadline 默認:CFQ 3.10內核: Noop CFQ Deadline 默認:Deadline [root@linux-node1 ~]# dmesg | grep -i scheduler [ 1.945474] io scheduler noop registered [ 1.945476] io scheduler deadline registered (default) [ 1.945495] io scheduler cfq registered [root@linux-node1 ~]# cat /sys/block/sda/queue/scheduler noop [deadline] cfq
centos6安裝KVMnode
KVM安裝配配置及經過vnc安裝Linux虛擬機 1、安裝配置KVM 1.一、查看是否支持虛擬化 grep -Po "vmx" /proc/cpuinfo 1.二、安裝依賴包 # yum install kvm libvirt libvirt-python python-virtinst bridge-utils tunctl 1.三、檢查 KVM 模塊是否成功安裝 # lsmod |grep kvm 1.四、修改虛擬化配置文件: # vim /etc/libvirt/libvirtd.conf listen_tcp = 0 mdns_adv = 0 1.五、查看tun模塊是否已經被加載 # lsmod | grep tun 1.六、網絡配置,使用橋接模式 # cp /etc/sysconfig/network-scripts/ifcfg-em1 /etc/sysconfig/network-scripts/ifcfg-br0 # cat /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 HWADDR=B8:2A:72:CE:DA:75 TYPE=Bridge UUID=325e2119-f293-4555-b984-ae8ae886b4de ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static IPADDR=192.168.1.181 NETMASK=255.255.255.128 GATEWAY=192.168.1.129 # cat /etc/sysconfig/network-scripts/ifcfg-em1 DEVICE=em1 HWADDR=B8:2A:72:CE:DA:75 TYPE=Ethernet UUID=325e2119-f293-4555-b984-ae8ae886b4de ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static BRIDGE=br0 # /etc/init.d/network restart 1.七、修改系統參數 # vim /etc/sysctl.conf net.ipv4.ip_forward = 1 sysctl -p 1.八、從新啓動libvirt服務 # /etc/init.d/libvirtd restart # virsh -c qemu:///system list 2、虛擬機安裝 2.一、創建虛擬機 在宿主主機(192.168.1.181)運行下面命令 安裝Linux virt-install --name test-5910-server --os-variant=rhel6 \ --hvm --ram 2048 --vcpus 1 \ --disk path=/data/virtualdisk/test-5910-server.img,size=50 \ --accelerate --cdrom /data/packages/CentOS-6.5-x86_64-bin-DVD1.iso \ --network bridge=br0 --vnc --vncport=5910 --vnclisten=0.0.0.0 \ --noautoconsole --force --autostart 安裝windows virt-install --name windows2003-ssh-server \ --hvm --ram 1024 \ --vcpus 1 \ --disk path=/data/virtualdisk/windows2003-ssh-server.img,size=50 \ --accelerate \ --cdrom /data/packages/WindowsServer2003SP2EnterpriseEdition.iso \ --network bridge=br0 \ --vnc \ --vncport=5913 \ --vnclisten=0.0.0.0 \ --noautoconsole \ --force \ --autostart --name 客戶端虛擬機名稱 --ram 內存大小(單位M) --vcpus 客戶端的vcpu個數 size 磁盤大小(單位G) 2.二、安裝虛擬機 下載tigerVNC 2.三、啓動虛擬機 # virsh start test-5910-server 2.四、經過vnc鏈接上主機配置IP地址 service iptables stop 配置DNS: vi /etc/resolv.conf nameserver 124.192.140.235 nameserver 124.192.140.236 nameserver 114.114.114.114