KVM虛擬化技術(六)磁碟管理

來源:互聯網
上載者:User

標籤:

KVM支援的虛擬磁碟類型

raw

  這並非是一種真正的磁碟格式,而是代表虛擬機器所使用的原始鏡像;它並不儲存中繼資料,因此可以作為保證虛擬機器相容性的候選方案,然而也正因為

它不儲存中繼資料,因此不能支援某些進階特性,比如快照和壓縮等。

  格式簡單,容易轉換為其他格式;需要檔案系統的支援才能支援sparse file

cow copy-on-write格式,曇花一現

qcow  QEMU早期的copy-on-write格式,過渡性方案

qcow2

  按需進行分配磁碟空間,不管檔案系統是否支援

  支援快照、壓縮、加密

 

當虛擬機器出現問題,如何拷貝出裡面的資料?沒有開機的情況下,如何掛在硬碟檔案?

首先我們找到虛擬機器的磁碟檔案存放位置,儲存池位於哪裡,此處以/var/lib/libvit/image/ 為例

 1 # cd /var/lib/libvirt/images/ 2 [[email protected] images]# qemu-img info rhel6.6.qcow2 3 image: rhel6.6.qcow2 4 file format: qcow2 5 virtual size: 9.0G (9663676416 bytes) 6 disk size: 1.7G 7 cluster_size: 65536 8 Format specific information: 9     compat: 1.110     lazy refcounts: true

格式的轉換:
    qemu-img    convert    -f    qcow2    -O raw    rhel7.qcow2    rhel7.img
    qemu-img    convert    -f    源格式    -O 目標格式    源磁碟    目標磁碟

 

raw格式磁碟掛載:
    kpartx    -av    rhel7.img        ------執行後會把rhel7.img映射為幾個檔案
    在/dev/mapper/下 為loop0p1(boot)   loop0p2   rhel-root(/)    rhel-swap(swap)
    將其分別掛載就可以拷貝其中的資料
    kpartx    -d    rhel7.img          -----刪除換回映射

qcow2格式磁碟掛載
    必須要在核心裡添加nbd模組
    思路:qcow2先轉換為raw格式,以raw格式去操作

 

1.查看現有磁碟鏡像格式與轉換
(1) 查看磁碟格式
    # qemu-ing  info  kvmname.img
    raw格式需要轉換成qcow2
(2)關閉虛擬機器並轉換磁碟
    #virsh  shutdown  kvmname
(3)轉換磁碟格式
    # qemu-img  convert  -f  raw  -O qcow2  kvmname1.img  kvmname2.qcow2
    -f   源鏡像格式
    -O 目標鏡像格式
    查看轉換格式後,已經轉換成了qcow2,這裡是拷貝一份,並將格式轉化成qcow2
    # qemu-img  info kvmname2.qcow2

 

qemu-img  create  -f  qcow2  /data/test1.qcow2  10G
1.給虛擬機器線上添加磁碟
(1)查看現有磁碟
    # virsh domblklist  kvmname
(2)建立一塊qcow2虛擬磁碟
    # qemu-img  create  -f  qcow2  test_add.qcow2  5G
(3)添加虛擬磁碟
    # virsh  attach-disk  kvmname  /path/test_add.qcow2  vdb
此時添加的在重啟之後會消失,需要將新添加的磁碟配置儲存到設定檔中
    # virsh dumpxml  kvmname 
    <disk type=‘file‘ device=‘disk‘>
        
<driver name=‘qemu‘ type=‘qcow2‘ cache=‘none‘/>
        
<source file=‘/data/test02_add01.qcow2‘/>
        
<target dev=‘vdb‘ bus=‘virtio‘/>
        
<alias name=‘virtio-disk1‘/>
        
<address type=‘pci‘ domain=‘0x0000‘ bus=‘0x00‘ slot=‘0x06‘ function=‘0x0‘/>
        
</disk>
    # virsh edit  kvmname


修改虛擬機器的設定檔(/etc/libvirt/qemu/)可以根據已複製發磁碟定義新的虛擬機器

 

KVM虛擬化技術(六)磁碟管理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.