kvm虛擬機管理(創建、連接)


創建虛機、遠程管理kvm虛機、virsh命令行下管理虛機、、kvm通過virsh console 連入虛擬機
 

一、創建虛機

1)打開虛擬化管理器
 
2)選擇ISO安裝
 
3)選擇iso鏡像
 
4)設置內存、cpu
 
5)設置磁盤鏡像大小
 
6)設置啟動項,cdrom和硬盤
 
7)設置cdrom的源
 
8)開始安裝
 

二、遠程管理kvm虛機

 
1)添加宿主機
 
2、添加ip
 
3)缺少安裝包的先安裝
yum -y install openssh-askpass
 
4)輸入密碼
 
5)連接成功
 
 
有些情況下,有一個要配置的地方。 因為 KVM(准確說是 Libvirt)默
認不接受遠程管理,需要按下面的內容配置被管理宿主機中的兩個文件:
vim /etc/default/libvirt-bin
start_libvirtd="yes"
libvirtd_opts="-d -l
 
vim /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
unix_sock_group ="libvirtd"
unix_sock_ro_perms ="0777"
unix_sock_rw_perms ="0770"
auth_unix_ro ="none"
auth_unix_rw ="none"
auth_tcp ="none"
 
然后重啟 Libvirtd 服務就可以遠程管理了
systemctl restart libvirt-bin
 
 

三、virsh命令行下管理虛擬機

幫助菜單
virsh help list
      
 
virsh list 列出當前宿主機上處於運行狀態的虛擬機
virsh list --all 列出當前宿主機上所有的虛擬機
virsh start vm  開啟某一台虛擬機(虛擬機名)
virsh shutdown vm 正常關閉某一台虛擬機
virsh destroy vm 強制 關閉某一台虛擬機
virsh autostart vm 開機自啟動虛擬機vm
virsh edit vm 編輯某個虛擬機的配置文件
virsh pool-list 列出存儲池
 
創建一個大小為 9G 的,格式為 qcow2 的磁盤鏡像
qemu-img create -f qcow2 -o size=9G /var/lib/libvirt/images/test.qcow2
查看磁盤信息:
qemu-img info /var/lib/libvirt/images/test.qcow2
大小為9G實際占用為196K (精簡置備)
 
命令行下創建&&管理虛擬機
virt-install:命令行下創建虛擬機的命令,不過在它后面需要 跟上很多的參數
      --name:虛擬機的名字
      --disk Location:磁盤映像的位置
      --graphics:怎樣連接vm,通常是SPICE
      --vcpu:虛擬cpu的數量
      --ram:以兆字節計算的已分配內存大小
      --location:指定安裝源路徑
      --network:指定虛擬網絡,通常是virbr0 或者自己設定的br0
 
virt-install --name=test --disk path=/var/lib/libvirt/images/test.qcow2 --ram=1024 --vcpus=1 --graphics spice --location=/var/lib/libvirt/images/CentOS-7.3-x86_64-DVD-1611.iso --network bridge=br0
此安裝操作之后,虛擬系統管理器中就會生成一台虛擬機,並處於開機狀態
 
virsh help  打印幫助
virsh attach-device  產品能夠一個XML文件附加裝置
virsh attach-disk  附加磁盤設備
virsh attach-interface 獲得網絡界面
virsh destroy 刪除一個域
virsh detach-device 從一個XML文件分離設備
virsh detach-disk 分離磁盤設備
virsh detach-interface 分離網絡界面
virsh define 從一個XML文件定義(但不開始)一個域
virsh undefine 刪除一個虛機域
 
克隆一個虛機
virt-clone -o test -n test2 -f /var/lib/libvirt/images/test2.qcow2
 
 

四、kvm通過virsh console 連入虛擬機

 
新安裝一台虛擬機后,是無法通過virsh console 命令連入虛擬機中的,這時我
們需要開啟虛擬機的console功能。
1、centos7以下,及其他情況
(1)添加ttyS0的許可,允許root登陸
[root@localhost ~]# echo "ttyS0" >> /etc/securetty
(2)編輯/etc/grub.conf中加入console=ttyS0
(3)編輯/etc/inittab,在最后一行加入內容:
S0:12345:respawn:/sbin/agetty ttyS0 115200
(4)重啟服務器
reboot
(5)宿主機上測試
virsh console vm-name
(6)退出console連接的虛擬機li
按 ctrl+] 組合鍵退出virsh console
 
2、對於centos7
(1)在虛機里運行
 grubby --update-kernel=ALL --args="console=ttyS0"
(2)重啟虛機
 reboot
 
 

五、kvm虛擬化透傳

1、查看一層客戶端是否支持 VT
#grep vmx /proc/cpuinfo
查詢未果,證明一層 KVM 的虛擬機,並未將宿主機處理器的 VT 功能成功透傳
所以,沒有對 VT功能的支持,我們不能實現在該層虛擬機中嵌套KVM 虛擬機。
 
2、在物理服務器上為嵌套虛擬機做准備 --- CPU 虛擬化透傳
(1)# vim /etc/modprobe.d/kvm-nested.conf
# 在文件中添加下面語句
options kvm_intel nested=1
# 在宿主機啟用 kvm_intel 模塊的嵌套虛擬化功能,並且使透傳永久有效
 
(2)重新加載 kvm 模塊
# modprobe -r kvm_intel         -r參數:remove掉kvm_intel模塊
# modprobe kvm_inte      加載kvm_intel模塊
 
(3)驗證是否加載成功
#cat /sys/module/kvm_intel/parameters/nested
Y ---Y 表示 cpu 虛擬化透傳功能
 
3、編輯需要做虛擬化透傳的虛擬機的配置文件
#virsh edit centos7 ( Virtual Machine Name )
<cpu mode='host-passthrough'>
host-passthrough 直接將物理 CPU 暴露給虛擬機使用,在虛擬機上完全可以看到的就是物理 CPU的型號
 
4、進入虛擬機中查看cpu是否透傳成功
 
在一層虛擬機中查看cpu是否支持虛擬化
 
 
 
 
 
 
 
 
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM