
邏輯卷打點
最近很多Linux的刊行版都包括邏輯卷打點(LVM)這一技能,因為它屬于磁盤和分區打點,答允打點員執行大量的任務。一些分段特性——擴展或跨多個磁盤分段數據——在虛擬化的世界里大概不太普遍,用戶凡是是將數據存儲在同一存儲區域網絡或數據存儲區。除了這些,LVM還提供其他有趣的成果。通過啟用LVM,打點員可以擴展網絡文件系統,在事情中擴展差異的分區和文件系統,同時保持文件系統在線和可會見。按照嚴格的合規要求,LVM答允我們在沒有挪用vSphere所帶成果的環境下執行基于卷的快照用于備份和規復。
我的發起是,假如在事情負載你有嚴格的可用性計策并操作在線調解成果,就要將LVM與虛擬機分區。假如你不需要大量的正常運行時間或不規劃安裝Linux在單獨的分區運行,LVM的巨大性將遠遠大于長處,最終禁用LVM。
分區選項
默認安裝的Linux凡是提示用戶僅僅利用一個分區的所有文件。在某些環境下這樣做沒錯,但當你試著調解和改進虛擬機安詳性和機能時,每個文件有單獨的分區如/tmp、/var、/home、/usr,這樣做更有意義——出格是假如你想要每個分區有差異的安裝選項。通過操作/etc/fstab文件,可以在相應的行指定合用于差異分區的安裝選項,如下所示:
UUID=0aef28b9-3d11-4ab4-a0d4-d53d7b4d3aa4 /tmp ext4 defaults,noexec 1 2
譬喻Web處事器,一個最常見的用例為Linux虛擬機,我們很快就會發明一些“默認”安裝選項最終粉碎安詳以及績效打算。
Noatime/atime/relatime:這些安裝選項抉擇如那里理懲罰包括在分區文件上的時間戳。在舊的Linux刊行版中,默認是“一次”,這意味著每讀寫一次,操縱系統會為文件元數據寫一個時間戳——是的,僅僅讀挪用次數。一直利用對外提供文件的Web處事器,你可以想象這個進程的開銷。通過指定存放Web處事器數據分區上的“noatime”,你可以不更新會見時間,減輕處事器的開銷。新刊行版默認選項是“relatime”,它的成果很強大, 假如修改時間更新,只更新會見時間。
Noexec/exec: 在給定的分區禁用或啟用二進制文件執行。對付Web處事器的例子而言,用“noexec”安裝/tmp分區的意義重大。事實上,很多硬化指南發起利用這個選項來提高安詳性。
用戶變動會見時間參數時必需審慎。一些應用措施,好比郵件相關的成果,需要一個完整的“一次”安裝選項。在Web處事器的例子中,只要安詳指導目的答允它會見,可以用“noatime”安裝Web處事器數據。就noexec而言,明智地利用這個選項,許多自動安裝措施和安裝包就解壓到/tmp并從那兒開始執行。它很容易打開和封鎖,但我至少可覺得/tmp添加noexec。
VMXNET3和PVSCSI
很長一段時間,各人都推薦在虛擬機中操作VMXNET3網絡適配器和超虛擬化磁盤適配器。在基于Windows系統的虛擬機,我們可以僅僅指定這些尚有操作VMware東西自動安裝的驅動。操作這個硬件,Linux帶來了一些挑戰。首先,新版的Linux刊行版凡是有本身的VMXNET3適配器和驅動措施,縱然安裝了VMware東西,也將它們作為默認驅動措施。
舊的Linux刊行版大概包括一個過期的VMXNET3驅動版本,大概不會為你提供包括在VMware東西版本的完整特性集。VMware的KB2020567概述如安在VMXNET驅動啟用某些特性。假如你想在VMware東西安裝VMXNET3驅動,可以在VMware東西安裝時指定以下選項:
./vmware-install.pl –clobber-kernel-modules=vmxnet3
低本錢的CPU想要得到一些特另外吞吐量,超虛擬化SCSI適配器是一個不錯的方法。做出這個選擇之前必然要查抄所支持的操縱系統列表,以確保超虛擬化SCSI適配器支持內核或漫衍。
假如大概的話,我發起打點員利用VMXNET3和PVSCSI。假如利用一個舊的內核,就安裝VMware東西VMXNET3版本。假如你利用一個更新的內核,在漫衍中利用當地Linux驅動措施。
內存打點
Linux操縱系統不絕將存儲頁面從物理內存頁移動到當地互換分區,這是由設計抉擇的。事實上,韓國主機 韓國游戲代理,VMware操作內存打點成果在做同樣的事。可是Linux內存打點的行為有點差異,縱然物理內存——今朝虛擬內存可用,也會移動內存頁面。為了淘汰Linux 虛擬機內部互換勾當,我們可以調解一個“swapiness”值。更高的值暗示更多的舉動,而較低的值暗示內存不會移動。要調解這個值,只需在/etc/sysctl.conf 添加“Vm.swappiness=##”,重啟后將“##”替換為你想要的值。
我喜歡將這個值替換成一個低于默認值60的數字。同時利用操縱系統和vSphere打點你的內存互換是沒有意義的。并且,這取決于應用措施,但我凡是配置這個值為15至20。
I/O調治器
ESXi在打點內存方面浸染很大,當它屬于I/O調治器并寫入磁盤時,它又泛起另一種狀態。另外,Linux操縱系統內部反復一些這方面的成果。2.6的內核,大大都刊行版已經操作Completely Fair Queuing作為默認的I/O調治器。其他可用的是NOOP,Anticipatory和Deadline。VMware只表明白如何改變這個值尚有你為什么想要變動,調治兩次I/O是沒有意義的。簡而言之,通過附加呆板轉換到grub內核條目,利用Linux內核的默認I/O調治器可以舉辦切換。
不需要先布置操縱系統再布置到打點措施。我發起利用NOOP I/O調治器,因為它沒有優化磁盤I/O,并答允vSphere全權打點。
刪除未利用的硬件并禁用不須要的處事
在已往的一年里,你有幾多次在虛擬機中利用虛擬軟盤和內部的電腦揚聲器呢?假如你不規劃利用這些設備,就把將它們拉入黑名單。刪除軟盤的呼吁如下:
echo “blacklist floppy” | tee /etc/modprobe.d/blacklist-floppy.conf
rmmod floppy
update-initramfs -u
也沒有須要糾結未利用的硬件。假如你還在利用,不妨禁用任何虛擬節制臺。這可以在/etc/inittab中通過如下操縱實現:
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
#3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6
我發起你卸掉軟盤。請記著,你還必需刪除虛擬機的硬件設置,并在虛擬機的BIOS禁用它。關于其他處事,你可以將它們列入黑名單,包羅監督磁盤陣列設置(mptctl), pcspker, snd_pcm, snd_page_alloc, snd_timer, snd, snd_soundcore, coretemp, parport and parport_pc.
將這些處事拉入黑名單之前,你要確保沒有利用它們。同時,我總會開啟幾個大概用到的虛擬節制臺,但開啟六個就有點多了。
這是一些運行Linux虛擬機的留意事項。思量到機能收益,每小我私家應視環境而定。做出一些細微的調解,你大概會看到更多機能方面的晉升和一些退化的機能。像往常一樣,變動之前,要在嘗試室情況中舉辦測試。技能是不絕變革的,所以通過提前測試可以到達最佳結果。假如你有任何其他能力或發起,可以在評論中提出。