KVM虛擬化技術

一、什么是云計算

云計算是一種按量計算的模式,云計算的底層是通過虛擬化技術來實現(xiàn)的。

二、云計算服務類型

IAAS 基礎設施(云主機)
PAAS 平臺(php、java 容器)
SAAS 軟件(cdn、rds、企業(yè)郵箱)

三、為什么用云計算

小公司:前期投入小,擴展靈活,風險小
大公司:可以出租閑置資源(超賣)

四、KVM虛擬化技術

1.什么是虛擬化

通過模擬計算機硬件,來實現(xiàn)在同一臺計算機上同時運行多個操作系統(tǒng)。

2.虛擬化軟件

qemu      兼容性好,性能差
xen       性能高,兼容性差
kvm       性能和兼容性都較好
vmware workstations    圖形界面
virtual box      圖形界面

3.安裝KVM虛擬化管理工具

yum install libvirt virt-install qemu-kvm -y

#啟動 libvritd 服務
systemctl status libvirtd

4.安裝一臺KVM虛擬機

#安裝kvm虛擬機
[root@kvm01 ~]# virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name cc --memory 1024 --vcpus 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7-x86_64-Minimal-1810.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole

#在電腦上安裝 VNC 軟件,連接kvm虛擬機
10.0.0.11:5900

#最后進行安裝操作系統(tǒng)

5.常用的一些命令

語法格式:
virsh [參數(shù)] [虛擬機名稱]

1.虛擬機啟動相關

參數(shù):
start      啟動 
shutdown    停止
destroy     拔掉電源
list        查看已運行的虛擬機狀態(tài)
list --all   查看所有主機狀態(tài) 

2.配置文件相關

virsh dumpxml cc >/opt/cc_bak.xml    備份虛擬機
virsh undefine cc        刪除虛擬機(只刪除系統(tǒng)配置文件)
virsh define /opt/cc_bak.xml      導入配置文件
virsh edit cc           修改配置文件(可檢測語法)
virsh domrename cc cc_1    重命名

3.掛起、恢復、時間同步

virsh suspend cc    暫停(掛起)虛擬機
virsh resume cc    恢復虛擬機至運行狀態(tài)

#恢復完成之后,需要進行時間同步,開啟chrongd服務
systemctl start chrongd 

4.開機自啟

virsh vncdisplay  cc    查看監(jiān)聽端口
virsh autostart cc    虛擬機開機自啟(會創(chuàng)建一個軟鏈接)
virsh autostart --disable cc    取消開機自啟(刪除軟鏈接)

6.console 控制臺登錄

#在kvm虛擬機中修改內核參數(shù)
grubby --update-kernel=ALL --args="console=ttyS0,115200n8"
reboot

#宿主機進行測試
virsh console cc

7.虛擬機虛擬化磁盤管理和快照管理

1.磁盤管理

#查看磁盤詳細信息
[root@kvm01 opt]# qemu-img info centos2.qcow2

#添加磁盤(默認raw)
1.磁盤格式 raw  
[root@kvm01 opt]# qemu-img create one.raw 2G

2.磁盤格式 qcow2  
[root@kvm01 opt]# qemu-img create -f qcow2 two.qcow2 2G

#磁盤格式轉換(將 raw ----> qcow2)
[root@kvm01 opt]#  qemu-img convert -f raw -O qcow2 web01.raw web01.qcow2

2.快照管理

1.創(chuàng)建快照
virsh snapshot-create 虛擬機名稱 
virsh snapshot-create 虛擬機名稱 快照名稱

2.刪除快照
virsh snapshot-delete 虛擬機名稱 快照名稱

3.快照恢復
virsh snapshot-revert 虛擬機名稱 快照名稱
eg: virsh snapshot-revert cc cc_snt

4.查看快照信息
virsh snapshot-list cc

# raw不支持做快照,qcow2支持快照,并且快照就保存在qcow2的磁盤文件中。

8.虛擬機的克?。ㄌ摂M機需處于關機狀態(tài))

1.完整克隆

#自動完整克隆
[root@kvm01 opt]# virt-clone --auto-clone -o cc -n web01

--auto-clone  從原始客戶機配置中自動生成克隆名稱和存儲路徑。
-o    原始虛擬機
-n    新的虛擬機名稱

2.鏈接克隆

1.創(chuàng)建一個連接磁盤
[root@kvm01 opt]# qemu-img create -f qcow2 -b centos2.qcow2 web02.qcow2

-f   指定磁盤文件格式類型
-b  執(zhí)行鏈接磁盤文件路徑

2.導出宿主機的配置文件
[root@kvm01 opt]# virsh dumpxml cc > /etc/libvirt/qemu/web02.xml

3.對配置文件 web02.xml 進行修改
--修改虛擬機名稱為web02
--刪除 uuid 和 mac 地址

4.導入配置文件,啟動虛擬機
[root@kvm01 opt]# cd /etc/libvirt/qemu/
[root@kvm01 qemu]# virsh define web02.xml
[root@kvm01 qemu]# virsh start web02

或使用以下一條命令完成 啟動新的虛擬機:
# 導入虛擬機并進行啟動測試:
[root@kvm01 ~]# virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web03 --memory 1024 --vcpus 1 --disk /opt/web02.qcow2 
 --boot  hd --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole

# web03 == 新啟動虛擬機名稱
# web02 == 原來導入的kvm
# --boot hd 指定磁盤啟動

查看新啟動的kvm
[root@kvm01 ~]# virsh list --all 

# 另外需注意,kvm切勿掛起操作。如掛起,可能會造成無法聯(lián)網情況 。
修改如下參數(shù)解決:
sysctl net.ipv4.ip_forward=1

9.KVM虛擬機橋接網絡

首先要保證虛擬機處于關機狀態(tài),并且關閉 NetworkManger

1.修改網卡配置并重啟
[root@kvm01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=10.0.0.11
NETMASK=255.255.255.0
GATEWAY=10.0.0.2
DNS1=180.76.76.76
DNS2=223.5.5.5

2.創(chuàng)建橋接網卡
[root@kvm01 ~]# virsh iface-bridge eth0 br0

3.修改虛擬機配置文件
root@kvm01 ~]# virsh edit web04 
 <interface type='bridge'>
      <mac address='52:54:00:73:ab:7e'/>
      <source bridge='br0'/>
...

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容