內存:至少2GB
處理器:數量2、打勾虛擬化 Inte|VT-x/EPT 或 AMD-V/RVI(V) 與 虛擬化 CPU 性能計數器(U)
硬盤:兩個、一個20G、一個60G
鏡像也可以CentOS-7-x86_64-DVD-1511.iso
IP | 主機名 |
---|---|
192.168.200.10 |
[root@kvm ~]# free
total used free shared buff/cache available
Mem: 1868688 125360 1582372 8752 160956 1584208
Swap: 097148 0 2097148
[root@kvm ~]# grep -Ei 'vmx|svm' /proc/cpuinfo //vmx為英特爾的cpu;svm為AMD的cpu。 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 pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch arat tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xsaves 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 pdpe1gb rdtscp lm constant_tsc arch_perfmon nopl xtopology tsc_reliable nonstop_tsc eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch arat tpr_shadow vnmi ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xsaves
掛載新磁盤
使用lsblk命令,查看虛擬機的磁盤的情況
[root@kvm ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk ├─sda1 8:1 0 500M 0 part /boot └─sda2 8:2 0 19.5G 0 part ├─centos-root 253:0 0 17.5G 0 lvm / └─centos-swap 253:1 0 2G 0 lvm [SWAP] sdb 8:16 0 60G 0 disk sr0 11:0 1 4G 0 rom
格式化sdb磁盤,格式化成ext4格式
[root@kvm ~]# mkfs.ext4 /dev/sdb ............. #blkid+磁盤:查看磁盤信息 [root@kvm ~]# blkid /dev/sdb /dev/sdb: UUID="dab6d659-e334-41ed-a15a-96ce05b48c1a" TYPE="ext4"
格式化完成后,我們掛載磁盤,先創建掛載目錄/kvm_data,然后進行掛載
[root@kvm ~]# mkdir /kvm_data
[root@kvm ~]# mount /dev/sdb /kvm_data/
這種方式掛載,重啟虛擬機后,需要再次重新掛載,我們為了方便開機后可以自動掛載,編寫/etc/fstab文件,添加文件最末一行
[root@kvm ~]# vi /etc/fstab
#添加到最后一行
/dev/sdb /kvm_data ext4 defaults 0 0
[root@kvm ~]# rm -rf /etc/yum.repos.d/* [root@kvm ~]# vi /etc/yum.repos.d/local.repo [centos] name=centos baseurl=file:///opt/centos gpgcheck=0 enabled=1 [root@kvm ~]# mkdir /opt/centos [root@kvm ~]# mount /dev/sr0 /opt/centos
#關閉防火牆並開啟不自啟
[root@kvm ~]# systemctl stop firewalld && systemctl disable firewalld
#關閉防火牆基於包過濾的有一些特性
[root@kvm ~] iptables -F
[root@kvm ~] iptables -X
[root@kvm ~] iptables -Z
[root@kvm ~]iptables-save
#關閉se(簡單的關閉se,重啟后還會自動打開)
[root@kvm ~] setenforce 0
#修改se配置文件(永久性的關閉se)
[root@kvm ~] vim /etc/selinux/config
#進入文件之后修改
SELINUX=disabled
#查看se狀態
[root@localhost ~]# getenforce
Disabled
安裝kvm
上述操作完成后,我們使用Yum進行安裝KVM
[root@kvm ~]# yum install -y virt-* libvirt bridge-utils qemu-img qemu-kvm
…………
Complete!
配置網卡
增加橋接網卡ifcfg-br0
[root@kvm ~]# cd /etc/sysconfig/network-scripts/
[root@kvm network-scripts]# cp ifcfg-eno16777736 ifcfg-br0
[root@kvm network-scripts]# vi ifcfg-br0
TYPE=Bridge
BOOTPROTO=none
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.200.10
NETMASK=255.255.255.0
GATEWAY=192.168.200.2
DNS1=114.114.114.114
DNS2=8.8.8.8
修改NAT網卡ifcfg-eno16777736
[root@kvm network-scripts]# cat ifcfg-eno16777736
TYPE=Ethernet
BOOTPROTO=none
NAME=eno16777736
DEVICE=eno16777736
ONBOOT=yes
BRIDGE=br0
修改完成網卡內容后,重新啟動網卡服務並查看網卡信息
[root@kvm network-scripts]# service network restart
#查看是否成功(成功后 br0 擁有 IP 而 eno16777736 沒有IP了)
[root@kvm network-scripts]# ip add
首先檢查KVM模塊是否加載
[root@kvm network-scripts]# lsmod|grep kvm
kvm_intel 162153 0
kvm 525259 1 kvm_intel
啟動libvirtd並檢查是否成功啟動
[root@kvm network-scripts]# systemctl start libvirtd
[root@kvm network-scripts]# ps -ef |grep libvirt
root 17270 1 1 04:36 ? 00:00:00 /usr/sbin/libvirtd
nobody 17383 1 0 04:36 ? 00:00:00 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/libexec/libvirt_leaseshelper
root 17384 17383 0 04:36 ? 00:00:00 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/usr/libexec/libvirt_leaseshelper
root 17416 2264 0 04:36 pts/0 00:00:00 grep --color=auto libvirt
啟動成功后,使用brctl命令可以看到兩個網卡
[root@kvm ~]# cd
[root@kvm ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c298d1f90 no eno16777736
virbr0 8000.525400c7e229 yes virbr0-nic
命令行安裝CentOS 7
CentOS 7鏡像下載地址:
http://mirrors.163.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-2003.iso
首先,通過SCRT上傳CentOS 7鏡像到/tmp目錄下,如果沒有鏡像的可以自行下載。上傳后,使用ll命令查看/tmp目錄下是否存在CentOS 7鏡像文件
[root@kvm ~]# ll /tmp/
total 4228096
-rw-r--r-- 1 root root 4329570304 Apr 15 2016 CentOS-7-x86_64-DVD-1511.iso
鏡像存在,接下來使用virt-install進行CentOS 7的安裝
[root@kvm ~]# virt-install --name=test --memory=512,maxmemory=1024 --vcpus=1,maxvcpus=2 --os-type=linux --os-variant=rhel7 --location=/tmp/CentOS-7-x86_64-DVD-1511.iso --disk path=/kvm_data/test.img,size=10 --bridge=br0 --graphics=none --console=pty,target_type=serial --extra-args="console=tty0 console=ttyS0"
命令解釋:
--name:指定虛擬機的名稱。
--memory:指定分配給虛擬機的內存資源大小。
maxmemory:指定可調節的最大內存資源大小,因為KVM支持熱調整虛擬機的資源。
--vcpus:指定分配給虛擬機的CPU核心數量。
maxvcpus:指定可調節的最大CPU核心數量。
--os-type:指定虛擬機安裝的操作系統類型。
--os-variant:指定系統的發行版本。
--location:指定ISO鏡像文件所在的路徑,支持使用網絡資源路徑,也就是說可以使用URL。
--disk path:指定虛擬硬盤所存放的路徑及名稱,size則是指定該硬盤的可用大小,單位是G。
--bridge:指定使用哪一個橋接網卡,也就是說使用橋接的網絡模式。
--graphics:指定是否開啟圖形。
--console:定義終端的屬性,target_type 則是定義終端的類型。
--extra-args:定義終端額外的參數
打完上面那條命令后,等一會,就可以看見下面這段命令,這是系統基礎設置,帶[!]基本都是需要配置的,接下來我們開始配置“Timezone settings”,輸入“2”,按Enter鍵
Please make your choice from above ['q' to quit | 'b' to begin installation | 'r' to refresh]: 2
“Timezone settings”時區設置選擇 5) Asia亞洲,再選擇城市 62) Shanghai上海
Use numbers or type names directly [b to region list, q to quit]: 5 ....... Use numbers or type names directly [b to region list, q to quit]: 62
輸入完畢后,可以發現2的[!]變成了[x],證明配置完畢。
Please make your choice from above ['q' to quit | 'b' to begin installation |'r' to refresh]: 4 ...... Please make your choice from above ['q' to quit | 'c' to continue | 'r' to refresh]: c
接下來我們配置“Installation Destination”,選擇“5”,其余的依次選擇“c”,按Enter鍵
Please make your choice from above ['q' to quit | 'b' to begin installation | 'r' to refresh]: 5 ...... Please make your choice from above ['q' to quit | 'c' to continue | 'r' to refresh]: c ...... Please make your choice from above ['q' to quit | 'c' to continue | 'r' to refresh]: c ...... Please make your choice from above ['q' to quit | 'c' to continue | 'r' to refresh]: c
接下來配置“Root password”,選擇8,按Enter鍵
Please make your choice from above ['q' to quit | 'b' to begin installation | 'r' to refresh]: 8
依次輸入兩次密碼,密碼相同,我設置的為123456
Password: 123456
//密碼為密文,不顯示。
Password (confirm): 123456 ...... //這句話的意思:你的密碼太過簡單,是否使用它,輸入yes即可。
Please respond 'yes' or 'no': yes
配置完成,選擇“b”,按Enter鍵后,開始安裝
Please make your choice from above ['q' to quit | 'b' to begin installation | 'r' to refresh]: b ...... Use of this product is subject to the license agreement found at /usr/share/centos-release/EULA Installation complete. Press return to quit //按回車
CentOS Linux 7 (Core) Kernel 3.10.0-327.el7.x86_64 on an x86_64 localhost login: root Password: 123456 [root@localhost ~]# //按“Ctrl+]”鍵,退出終端,回到宿主機。
[root@kvm ~]#
CentOS 7安裝完成