CentOS6.5 安裝KVM虛擬機 / Centos6.5 server installs the virtual machine with KVM

CentOS6.5 安裝KVM虛擬機

vnc安裝

因為安裝系統(tǒng)還是需要圖形界面去進行相關操作的,所以我們先配置一個vncserver方便我們的后續(xù)操作。

  1. 檢查VNC服務狀態(tài)

rpm -qa | grep vnc

  1. 安裝

yum install vnc *vnc-server*

  1. 編輯配置文件

vim /etc/sysconfig/vncservers
VNCSERVERS=”1:root”
VNCSERVERARGS[1]=”-geometry 800x600”

  1. 設置VNCServer遠程連接密碼

vncpasswd

  1. 啟動vncserver服務

/etc/init.d/vncserver start
service vncserver restart

執(zhí)行完畢會在root宿主目錄下生成.vnc開頭的隱藏目錄,該目錄下面的文件就是root用戶的VNC桌面配置文件。

  1. 打開xstartup配置桌面

vim /root/.vnc/xstartup

將最后一行改為
gnome &

使用GNOME桌面

  1. 開啟防火墻VNCServer端口

vi /etc/sysconfig/iptables
/etc/init.d/iptables restart

添加
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT

PS: 置VNC服務開機啟動用下面的命令:
chkconfig vncserver on

安裝KVM

  1. 查看cpuinfo信息
    cat /etc/redhat-release
    grep -E "svm|vmx" /proc/cpuinfo
    egrep '(vmx|svm)' /proc/cpuinfo

如果輸出的結果包含VMX,它是Intel處理器虛擬機技術標志:如果包含SVM,它是AMD處理器虛擬機技術的標志,如果你什么都沒有得到,那應你的系統(tǒng)并沒有支持虛擬化的處理,不能使用KVM,另處linux發(fā)行版本必須在64bit環(huán)境中才能使用KVM。

  1. 關閉SElinux
    vi /etc/sysconfig/selinux
    SELINUX=disabled

  2. 安裝kvm
    yum install qemu-kvm qemu-kvm-tools virt-manager libvirt -y
    yum -y install kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v

kvm:linux內核的一個模塊,模塊不需要安裝,只需要加載
qemu:虛擬化軟件,可以虛擬不同的CPU,支持異構(x86的架構可以虛擬化出不是x86架構的)
qemu-kvm:用戶態(tài)管理kvm,網(wǎng)卡,聲卡,PCI設備等都是qemu來管理的

  1. 查看狀態(tài)
    lsmod | grep kvm

查看內核中kvm的狀態(tài)

  1. 啟動libvirt
    service libvirtd start
    /etc/init.d/libvirtd restart

配置網(wǎng)絡橋接

  1. 禁用網(wǎng)絡管理器
    chkconfig |grep NetworkManager
    chkconfig NetworkManager off
    service NetworkManager stop

和橋接有沖突,要關閉service

  1. 創(chuàng)建橋接設備及關聯(lián)網(wǎng)卡到橋接設備上
    virsh iface-bridge eth0 br0
    修改eth0為物理網(wǎng)口,br0為橋接網(wǎng)口配置文件
    cat ifcfg-br0

DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPV6INIT=no
ONBOOT=yes
IPADDR=192.168.1.66
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DELAY=0

cat ifcfg-eth0

DEVICE=eth0
TYPE=Ethernet
BRIDGE=br0
BOOTPROTO=none
IPV6INIT=no
ONBOOT=yes

這里配置成橋接方式,實際上本機的數(shù)據(jù)包發(fā)送是通過br0發(fā)送的,br0的TYPE是Bridge,其它的信息跟配置一個物理網(wǎng)卡一樣,本機的eth0通過橋接到br0(通過BRIDGE指定)進行通信,它根本不需要配置IP信息,實際上數(shù)據(jù)發(fā)送還是通過本機的物理網(wǎng)卡。

  1. 重啟網(wǎng)絡
    service network restart

  2. 查看橋接網(wǎng)絡
    brctl show

bridge name bridge id STP enabled interfaces
br0 8000.0021cc6b6f2c no eth0
virbr0 8000.525400ac7ebe yes virbr0-nic

接口eth0通過br0進行橋接。virbr0-nic通過virbr0進行橋接,這個是默認的設置,當使用NAT時使用。

  1. 修改 qemu.conf 配置
    vi /etc/libvirt/qemu.conf

vnc_listen = "0.0.0.0"
user = "root"
group = "root"
dynamic_ownership = 0

  1. 重啟libvirtd服務
    service libvirtd restart

  2. 新建用于存放虛擬機相關文件的目錄
    mkdir /kvm/vm
    一定要開放文件夾權限

創(chuàng)建虛擬機

virt-install --name centos --ram 1024 --vcpus=1 --disk path=/opt/vm/centos6.5-1.img,size=15 --network bridge=br0 --os-variant=rhel6 --cdrom /kvm/CentOS6.5_64.iso --vnclisten=10.xx.140.43 --vncport=5901 --vnc

virt-install --name=centos64 --ram 1024 --vcpus=1 --disk path=/var/lib/libvirt/images/centos64.img,size=10 --accelerate --cdrom /mnt/CentOS64.iso --graphics vnc,pass

virt-install --name CentOS-7.1-x86_64 --virt-type kvm --ram 1024 --cdrom=/opt/CentOS-7.1-x86 --cdrom=/opt/CentOS-7.1-x86_64.iso --disk path=/opt/CentOS-7.1-x86_64.raw --nehics vnc,listen=0.0.0.0 --notwork network=default --graphics vnc,listen=0.0.0.0 --noautoconsole

-n(Name):指定虛擬機的名稱
--memory(--raw):指定內存大小
--cpu:指定cpu的核數(shù)(默認為1)
--cdrom:指定鏡像
--disk:指定磁盤路徑(即上文創(chuàng)建的虛擬磁盤)
--virt-type:指定虛擬機類型(kvm,qemu,xen)
--network:指定網(wǎng)絡類型

qemu-img info centos.img
可以使用vnc查看管理所創(chuàng)建虛擬機
第一個默認是ip:5901,第二個是5902

如果創(chuàng)建的虛擬機是靜態(tài)ip,且配置好后可以可以嘗試以下步驟來自檢:
chmod +w /etc/sysconfig/network-scripts/ifcfg-eth0
ifconfig eth0 10.xx.123.22/16 up
ping 10.xx.255.254
ping 10.xx.140.43
此時百度應該是ping不通的這里設置一下
vi /etc/resolv.conf
添加
nameserver 114.114.114.114
`route add default gw 10.xx.255.254'
這時候應該就OK了!

問題及解決方法

  1. libvirt dead but subsys locked

按照大部分解決方案都沒有起作用后,嘗試重新安裝libvirt后可以正常工作。
所以建議先關閉selinux,然后再安裝libvirt服務。

  1. KVM中宿主機通過console連接客戶機出現(xiàn)
    virsh console centos : Connected to domain vm01 Escape character is ^]
    利用vnc或宿主機的桌面進入客戶機vm01中添加參數(shù)

2.1添加ttyS0的安全許可,允許root登錄:
echo "ttyS0" >> /etc/securetty

2.2 在/etc/grub.conf文件中為內核添加參數(shù):

console=ttyS0

注意:
console=ttyS0一定要放在kernel這行中(大約在第16行),不能單獨一行,即console=ttyS0是kernel的一個參數(shù),不是單獨的,如下(往右拉進度條,在最后):
kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet console=ttyS0

2.3 在/etc/inittab中添加agetty:

S0:12345:respawn:/sbin/agetty ttyS0 115200

2.4 重啟客戶機:
reboot

2.5對于centos 7

在虛機里運行
grubby --update-kernel=ALL --args="console=ttyS0"
reboot
即可

kvm基本使用操作:

生成kvm虛擬機:virt-install
查看在運行的虛擬機:virsh list
查看所有虛擬機:virsh list --all
查看kvm虛擬機配置文件:virsh dumpxml name
啟動kvm虛擬機:virsh start name
正常關機:virsh shutdown name
非正常關機(相當于物理機直接拔掉電源):virsh destroy name
刪除:virsh undefine name(徹底刪除,找不回來了,如果想找回來,需要備份/etc/libvirt/qemu的 xml文件)
根據(jù)配置文件定義虛擬機:virsh define file-name.xml
掛起,終止:virsh suspend name
恢復掛起狀態(tài):virsh resumed name

編輯kvm的xml文件,更改虛擬機配置

  1. 配置虛擬機的cpu
    1.1 方法一:

更改cpu的最大值,當然熱添加的個數(shù)不能超過最大值
virsh edit CentOS-7.1-x86_64 <vcpu placement='auto' current="1">4</vcpu>

當前為1,自動擴容,最大為4

重啟虛擬機
virsh shutdown CentOS-7.1-x86_64
virsh start CentOS-7.1-x86_64
cpu的熱添加(cpu只支持熱添加,不支持熱減少)
virsh setvcpus CentOS-7.1-x86_64 2 --live
kvm版本較高,并不需要echo "1"到/sys/devices/system/cpu/cpu1/online 進行激活,自動可以激活。
cat /sys/devices/system/cpu/cpu1/online
1

1.2 方法二:

安裝的時候指定virt-install --vcpus 5 --vcpus 5,maxcpus=10,cpuset=1-4,6,8 --vcpus sockets=2,cores=4,thread=2

2.更改內存`o

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,345評論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,494評論 3 416
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,283評論 0 374
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,953評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,714評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,186評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,255評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,410評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,940評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,776評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,976評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,518評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,210評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,642評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,878評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,654評論 3 391
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,958評論 2 373