1. 程式人生 > >linux運維、架構之路-KVM虛擬化技術

linux運維、架構之路-KVM虛擬化技術

sna 運維 3.1 png 配置 tools 關閉 wall ati

一、雲計算概述

雲計算:是一種資源使用和交付模式

虛擬化:一種具體的技術,用來將物理機虛擬成為多個相互獨立的虛擬機。雲計算不等於虛擬化,雲計算是使用了虛擬化的技術做支撐

二、KVM配置使用

1、系統環境

[root@kvm ~]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 
[root@kvm ~]# uname -r
3.10.0-327.el7.x86_64
[root@kvm ~]# getenforce 
Disabled
[root@kvm ~]# systemctl status firewalld.service
● firewalld.service 
- firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead)

2、導入鏡像

mkdir -p /application/tools
cd /application/tools
dd if=/dev/sr0 of=/application/tools/CentOS7_2.iso
du -sh /application/tools/CentOS7_2.iso
4.1G    /application/tools/CentOS7_2.iso

3、安裝管理KVM軟件

yum -y install qemu-kvm qemu-kvm-tools virt-manager libvirt virt-install

4、啟動libvirtd

libvirt是一套開源的虛擬化管理工具

生成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文件)
根據配置文件定義虛擬機:virsh define file-name.xml
掛起,終止:virsh suspend name
恢復掛起狀態:virsh resume name
systemctl start libvirtd.service

4、創建虛擬機

①創建虛擬磁盤

mkdir -p /application/kvm_data
cd /application/kvm_data
qemu-img create -f qcow2 /application/kvm_data/moban.qcow2 20G
#查看虛擬磁盤詳細信息
[root@kvm kvm_data]# qemu-img info moban.qcow2
image: moban.qcow2
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 196K
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: false

②創建虛擬機

virt-install --virt-type=kvm --name=c72-moban --vcpus=1 -r 1024 -c /application/tools/CentOS7_2.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel7 --disk path=/application/kvm_data/moban.qcow2,size=20,format=qcow2

看到如下信息,使用vnc連接即可安裝系統

技術分享

技術分享

③克隆虛擬機

1、磁盤文件
cd /application/kvm_data/
cp moban.qcow2 clone.qcow2
2、配置文件
virsh dumpxml c72-moban > test.xml
virsh dumpxml c72-moban > test1.xml

克隆虛擬主機的配置文件需要修改以下內容

主機名、uuid、配置文件名稱、mac地址
[root@moban qemu]# diff test.xml test1.xml 
2,3c2,3
<   <name>c72-clone</name>
<   <uuid>e3f40d09-9333-4b15-93c6-63g56e8aa428</uuid>
---
>   <name>c72-moban</name>
>   <uuid>e3f40d09-9333-4b15-93c6-62d56e8aa428</uuid>
34c34
<       <source file=/application/kvm_data/clone.qcow2/>
---
>       <source file=/application/kvm_data/moban.qcow2/>
67c67
<       <mac address=52:54:00:dd:a9:21/>
---
>       <mac address=52:54:00:dd:a9:f7/>

啟動新克隆的虛擬主機

virsh define test.xml
virsh start c72-clone

④創建快照

virsh snapshot-create-as c72-clone kuaizhao#創建快照
virsh snapshot-list c72-clone#查看創建的快照
virsh snapshot-info c72-clone kuaizhao1 #還原快照
virsh snapshot-delete c72-clone kuaizhao1#刪除快照

⑤虛擬機橋接

#方法一:virsh iface-bridge eth0 br0,虛擬機必須關閉才可以執行上面命令
#方法二:修改配置文件
virsh edit c72-clone,新創建主機采用橋接網卡將--network network=default換成--network bridge=br0。對已經創建的主機,修改成橋接方式。修改配置文件
#方法三:給虛擬機再次添加一塊新的網卡,虛擬機需要運行狀態
virsh attach-interface c72-moban --type bridge --source br0

手動配置網橋

brctl addif br0 eth0 && ip addr del dev eth0 10.0.0.201/24 && ifconfig br0 10.0.0.201/24 up && route add default gw 10.0.0.254

linux運維、架構之路-KVM虛擬化技術