1. 程式人生 > >LINUX系統服務與管理(Services)---------第一天

LINUX系統服務與管理(Services)---------第一天

虛擬化概述 cow寫時復制 快速生成虛擬機

虛擬化概述

? Virtualization 資源管理

– x個物理資源 --> y個邏輯資源

– 實現程度:完全、部分、硬件輔助(CPU)



手動新建一臺虛擬機: ?

? ? ? ? ? ? ? ? 虛擬機名字:example

? ? ? ? ? ? ? ? 網絡類型選擇:private1





? 使用 virt-manager 客戶端工具



在真機上操作:


? 查看KVM節點(服務器)信息

? – virsh nodeinfo

? 列出虛擬機

? – virsh list [--all]

? 查看指定虛擬機的信息

? – virsh dominfo 虛擬機名稱

? 將指定的虛擬機設為開機自動運行

? – virsh autostart [--disable] 虛擬機名稱


? 運行|重啟|關閉指定的虛擬機

? – virsh start|reboot|shutdown 虛擬機名稱

? 強制關閉指定的虛擬機

? – virsh destroy 虛擬機名稱


#######################################################

在虛擬機example中搭建本地Yum


1.掛載光盤

[root@A ~]# mount /dev/cdrom /dvd


2.客戶端文件

[root@A ~]# cat /etc/yum.repos.d/dvd.repo?

[dvd]

name=dvd

baseurl=file:///dvd

enabled=1

gpgcheck=0


#####################################################


? 使用RHEL7軟件倉庫的預設分組


– yum groups list [hidden] [組名]...

– yum groups info [組名]...

– yum groups install [組名]...

– yum groups remove [組名]...



[root@A ~]# yum groups install?

?Virtualization\ Client ? ?

?Virtualization\ Hypervisor ?

?Virtualization\ Platform ??

?Virtualization\ Tools?


########################################################

? 桌面圖標


/usr/share/applications/



? ?右擊-----圖標--------->復制到---------->home------->桌面



######################################################


啟動libvirtd服務端

? ?? libvirtd 為管理虛擬機提供服務接口



######################################################


?在Linux中KVM虛擬機,組成: ??


?– xml配置文件(虛擬機描述文件):定義虛擬機的名稱、UUID、CPU、內

存、虛擬磁盤、網卡等各種參數設置

? ? ? /etc/libvirt/qemu/*.xml


?– 磁盤鏡像文件:保存虛擬機的操作系統及文檔數據,

鏡像路徑取決於xml配置文件中的定義

? ? ? /var/lib/libvirt/images/


[root@room9pc14 桌面]# ls /etc/libvirt/qemu/

[root@room9pc14 桌面]# ls /var/lib/libvirt/images/


[root@room9pc14 桌面]# du -sh /var/lib/libvirt/images/

?

? 細節: ?模版虛擬機example,註意刪除 Channel 設備


#######################################################

通過example虛擬機,生成新的虛擬機


1.關閉example虛擬機

[root@room9pc14 桌面]# virsh destroy example

2.通過example虛擬機,磁盤文件復制一份

[root@room9pc14 桌面]# cd /var/lib/libvirt/images/

[root@room9pc14 images]# qemu-img info example.qcow2?

[root@room9pc14 images]# cp example.qcow2 test01.qcow2?

3.通過example虛擬機,復制虛擬機描述文件

[root@room9pc14 images]# cd /etc/libvirt/qemu/

[root@room9pc14 qemu]# ls

[root@room9pc14 qemu]# cp example.xml test01.xml

[root@room9pc14 qemu]# vim test01.xml ?

? ?虛擬機名稱、UUID、虛擬機磁盤文件、網卡MAC


[root@room9pc14 qemu]# uuidgen


4. 導入新虛擬機信息

# virsh define /etc/libvirt/qemu/test01.xml ? ? #導入虛擬機信息

# virsh list --all


##########################################################

導出xml配置文件

? – 查看:virsh dumpxml 虛擬機名

? – 備份:virsh dumpxml 虛擬機名 > 虛擬機名.xml



對虛擬機的配置進行調整

? ?– 編輯: virsh ? edit ? 虛擬機名


#########################################################


? COW寫時復制,快速重建虛擬機


1.虛擬機的磁盤文件,快速生成


? Copy On Write,寫時復制

? – 直接映射原始盤的數據內容

? – 當原始盤的舊數據有修改時,在修改之前自動將舊數據存

入前端盤

? – 對前端盤的修改不回寫到原始盤


2.qemu-img 通過 -b 選項復用指定原始盤


– qemu-img create -f qcow2 -b ? 原始盤 ? ? ?前端盤




1.關閉虛擬機

[root@room9pc14 /]# virsh destroy example


2.生成前端盤

# qemu-img create -f qcow2 -b /var/lib/libvirt/images/example.qcow2 ? /var/lib/libvirt/images/test02.qcow2


3.生成新的虛擬機描述文件

[root@room9pc14 /]# cd /etc/libvirt/qemu/?

[root@room9pc14 qemu]# cp example.xml test02.xml

[root@room9pc14 qemu]# vim test02.xml?


? ?虛擬機名稱、UUID、虛擬機磁盤文件、網卡MAC


[root@room9pc14 qemu]# uuidgen


4. 導入新虛擬機信息

# virsh define /etc/libvirt/qemu/test02.xml ? ? #導入虛擬機信息

# virsh list --all


###########################################################


? 離線訪問虛擬機

? 使用 guestmount 工具

– 支持離線掛載 raw、qcow2 格式虛擬機磁盤

– 可以在虛擬機關機的情況下,直接修改磁盤中的文檔

– 方便對虛擬機定制、修復、腳本維護


# guestmount -a /var/lib/libvirt/images/example.qcow2 -i /mnt/



###################################################


1)生產環境可以標記 /.unconfigured ,方便新虛擬機

的配置(相當於出廠設置,提示用戶初始化)



#######################################################

搭建新的教學環境


1.在真機生成兩臺虛擬機

[root@room9pc14 桌面]# clone-vm7?

Enter VM number: 8

[root@room9pc14 桌面]# clone-vm7?

Enter VM number: 9


2.修改虛擬機名稱,一個A ?另一個B


? 虛擬機A:

? ? 主機名:svr7.tedu.cn

? IP地址:192.168.4.7/24


? 虛擬機B:

? ? 主機名:pc207.tedu.cn

? IP地址:192.168.4.207/24


3.Yum倉庫的搭建

? ?


? ? ?真機 ?Yum服務端,Web共享光盤所有內容

[root@room9pc14 桌面]# mkdir ?/var/www/html/rhel7

[root@room9pc14 桌面]# ls ?/var/www/html/rhel7

[root@room9pc14 桌面]# mount ?/ISO/rhel-server-7.2-x86_64-dvd.iso ? ?/var/www/html/rhel7


[root@room9pc14 桌面]# ls ?/var/www/html/rhel7

[root@room9pc14 桌面]# firefox ? 127.0.0.1/rhel7

[root@room9pc14 桌面]# vim /etc/fstab?


/ISO/rhel-server-7.2-x86_64-dvd.iso ? /var/www/html/rhel7 ?iso9660 ?defaults ?0 ?0


[root@room9pc14 桌面]# umount /var/www/html/rhel7/

[root@room9pc14 桌面]# ls /var/www/html/rhel7/

[root@room9pc14 桌面]# mount -a

[root@room9pc14 桌面]# ls /var/www/html/rhel7/




? ? ?客戶端:虛擬機A與虛擬機B


?虛擬機A

?[root@svr7 ~]# vim /etc/yum.repos.d/dvd.repo

?[dvd]

?name=dvd

?baseurl=http://192.168.4.254/rhel7

?enabled=1

?gpgcheck=0


?[root@svr7 ~]# yum repolist





? 用與遠程拷貝數據,網絡的不同主機之間


? scp ?本地的路徑 ? ?用戶名@對方的IP地址:對方的路徑


? scp ?/etc/yum.repos.d/dvd.repo [email protected]:/etc/yum.repos.d



##########################################################





























?虛擬機A



?虛擬機B







































LINUX系統服務與管理(Services)---------第一天