虛擬化安裝指南:從硬件兼容到虛擬機(jī)部署)
1. 為什么還要折騰ESXi從一臺閑置機(jī)器說起手里攢了幾臺淘汰下來的迷你主機(jī)配置不算差i5加16G內(nèi)存扔了可惜裝個桌面系統(tǒng)又覺得浪費(fèi)。這種場景下ESXi就成了一個繞不開的選擇。它是一套裸機(jī)虛擬化平臺直接裝在物理硬件上把一臺機(jī)器切成好幾臺互不干擾的虛擬機(jī)跑軟路由、跑NAS、跑測試環(huán)境都行。說白了就是讓一臺電腦當(dāng)好幾臺用。這篇文章面向的是手里有閑置x86機(jī)器、想入門虛擬化的朋友。不管你之前有沒有接觸過虛擬機(jī)只要你會用U盤裝系統(tǒng)跟著走就能把ESXi跑起來。我會把整個安裝過程拆開講清楚包括前期要準(zhǔn)備什么、安裝時每一步在干什么、裝完之后怎么配網(wǎng)絡(luò)和存儲以及那些文檔里不會寫但實際一定會踩的坑。需要先說明一點(diǎn)ESXi的版本迭代比較快不同大版本在界面上有差異但核心邏輯是一致的。我下面講的操作以目前常見的版本為參考具體細(xì)節(jié)你按自己拿到的鏡像版本靈活對照。另外安裝前請確認(rèn)你的硬件在兼容列表里尤其是網(wǎng)卡這是新手翻車最多的地方后面會專門講。2. 安裝前的整體思路與準(zhǔn)備工作2.1 先想清楚為什么要用裸機(jī)虛擬化而不是桌面虛擬機(jī)很多人第一反應(yīng)是在Windows里裝個VMware Workstation何必大費(fèi)周章裝ESXi。這兩者的區(qū)別在于資源調(diào)度方式。桌面虛擬機(jī)是跑在操作系統(tǒng)之上的你的Windows本身要占掉一部分CPU、內(nèi)存和磁盤IO虛擬機(jī)再從這個池子里分。而ESXi是裸機(jī)層它自己非常輕幾乎把所有硬件資源都讓給了虛擬機(jī)而且對內(nèi)存的分配、網(wǎng)卡的直通、磁盤的控制更底層、更穩(wěn)定。如果你只是偶爾開個Linux玩玩桌面虛擬機(jī)夠了。但如果你想讓虛擬機(jī)長期開機(jī)、跑服務(wù)、做實驗環(huán)境或者想玩硬件直通那ESXi這種裸機(jī)方案才是正路。它的代價是這臺機(jī)器基本就專職做虛擬化主機(jī)了你沒法再拿它當(dāng)日常桌面用。2.2 硬件兼容性網(wǎng)卡是頭號攔路虎ESXi對硬件挑剔尤其是網(wǎng)卡。它內(nèi)置的驅(qū)動只覆蓋一部分常見的企業(yè)級網(wǎng)卡芯片很多消費(fèi)級主板上的網(wǎng)卡它根本不認(rèn)。結(jié)果就是安裝過程一路順利裝完重啟后管理網(wǎng)絡(luò)起不來網(wǎng)頁控制臺打不開你對著屏幕干瞪眼。判斷方法很簡單去查你主板或網(wǎng)卡的芯片型號對照ESXi的兼容性列表。常見的坑是Realtek的消費(fèi)級網(wǎng)卡很多版本默認(rèn)不帶驅(qū)動。如果你正好是這類網(wǎng)卡有幾個出路一是換一塊Intel的獨(dú)立網(wǎng)卡比如常見的千兆型號兼容性極好二是在安裝鏡像里注入網(wǎng)卡驅(qū)動這個稍微麻煩需要改鏡像三是先裝上看如果管理網(wǎng)絡(luò)能起來就沒事。提示安裝前務(wù)必確認(rèn)網(wǎng)卡型號。這一步花十分鐘能省掉后面兩小時的折騰。除了網(wǎng)卡CPU需要支持虛擬化指令集這個近十年的處理器基本都支持。內(nèi)存建議至少8G因為ESXi自身要占一部分剩下的才給虛擬機(jī)。存儲方面一塊SSD做系統(tǒng)盤和數(shù)據(jù)盤就夠起步有條件的可以系統(tǒng)盤和數(shù)據(jù)盤分開。2.3 鏡像與啟動盤制作你需要兩樣?xùn)|西ESXi的安裝鏡像以及一個至少8G的U盤。鏡像從官方渠道獲取注意選對版本。啟動盤制作工具用常見的鏡像寫入工具即可把鏡像寫入U盤過程和其他系統(tǒng)啟動盤一樣。這里有個細(xì)節(jié)ESXi的鏡像寫入U盤后U盤會被格式化成特定分區(qū)格式Windows可能提示你要格式化千萬別點(diǎn)。寫完之后直接拿去插到目標(biāo)機(jī)器上啟動就行。2.4 目標(biāo)機(jī)器的BIOS設(shè)置開機(jī)進(jìn)BIOS需要確認(rèn)幾件事。第一啟動模式。ESXi支持傳統(tǒng)模式和UEFI模式兩者都行但建議統(tǒng)一用UEFI配合GPT分區(qū)更現(xiàn)代。第二開啟CPU虛擬化相關(guān)選項不同主板叫法不同一般在CPU配置里。第三調(diào)整啟動順序讓U盤優(yōu)先。第四如果有獨(dú)立網(wǎng)卡確認(rèn)它在BIOS里是啟用的。這些設(shè)置因主板而異我沒法給一套通用路徑但核心就是讓機(jī)器能從U盤啟動并且把虛擬化能力打開。3. 安裝過程逐步拆解3.1 啟動安裝程序與加載階段插上U盤開機(jī)看到啟動菜單后選擇從U盤啟動。安裝程序開始加載屏幕會滾動一堆驅(qū)動加載信息。這個階段如果卡住或者報錯大概率是硬件兼容問題重點(diǎn)懷疑網(wǎng)卡和存儲控制器。加載完成后進(jìn)入圖形化的安裝界面背景是灰色的選項很少。第一步是歡迎頁直接回車?yán)^續(xù)。接著是選擇安裝目標(biāo)磁盤這里會列出機(jī)器上所有的存儲設(shè)備。千萬看仔細(xì)選錯了會把你的數(shù)據(jù)盤整個抹掉。如果你機(jī)器上有多塊盤建議安裝前只留系統(tǒng)盤其他盤先拔掉裝完再插回去這是最穩(wěn)妥的做法。3.2 鍵盤布局與磁盤選擇鍵盤布局選默認(rèn)的US即可除非你有特殊需求。然后是磁盤選擇界面用方向鍵選中你要裝ESXi的那塊盤。選中后按回車會彈出確認(rèn)框告訴你這塊盤上的所有數(shù)據(jù)將被清除。確認(rèn)無誤后繼續(xù)。這里補(bǔ)充一個經(jīng)驗如果你打算用U盤或SD卡作為ESXi的系統(tǒng)盤也是可以的但要注意U盤的讀寫壽命。ESXi運(yùn)行時會頻繁寫日志普通U盤扛不住多久。如果非要用U盤啟動建議把日志重定向到別的存儲上或者用質(zhì)量好一點(diǎn)的工業(yè)級U盤。我個人的建議還是用SSD省心。3.3 設(shè)置root密碼接下來設(shè)置root賬戶的密碼。這個密碼是管理ESXi的最高權(quán)限憑證要求有一定復(fù)雜度通常需要大小寫字母、數(shù)字和符號的組合長度也有要求。設(shè)一個你自己記得住但別人猜不到的。設(shè)完確認(rèn)繼續(xù)。3.4 確認(rèn)安裝與等待重啟最后是一個匯總確認(rèn)頁列出你前面選的磁盤、鍵盤布局等信息。確認(rèn)無誤后按F11開始安裝。安裝過程很快幾分鐘就寫完了。完成后提示你移除安裝介質(zhì)并重啟。拔掉U盤重啟機(jī)器。重啟后如果一切正常你會看到ESXi的歡迎界面上面顯示這臺主機(jī)的管理IP地址。默認(rèn)情況下如果網(wǎng)絡(luò)里有DHCP服務(wù)器它會自動獲取一個IP。如果沒獲取到界面會顯示一個169.254開頭的地址說明網(wǎng)絡(luò)沒通需要手動配置。4. 裝完之后的網(wǎng)絡(luò)與存儲配置4.1 管理網(wǎng)絡(luò)的手動配置如果自動獲取IP失敗或者你想指定一個固定IP需要在ESXi的控制臺界面手動配置。按F2進(jìn)入配置菜單輸入root密碼。找到網(wǎng)絡(luò)配置選項里面可以設(shè)置管理網(wǎng)絡(luò)的IP、子網(wǎng)掩碼、網(wǎng)關(guān)和DNS。設(shè)一個和你局域網(wǎng)同網(wǎng)段的固定IP方便以后管理。配好之后用另一臺電腦的瀏覽器訪問這個IP就能打開ESXi的網(wǎng)頁管理界面。如果打不開先ping一下這個IP通不通。不通的話檢查網(wǎng)線、交換機(jī)端口、以及ESXi里網(wǎng)卡的狀態(tài)。4.2 網(wǎng)頁管理界面初探網(wǎng)頁界面是日常管理的主入口。登錄后你能看到主機(jī)概覽包括CPU、內(nèi)存、存儲的使用情況。左側(cè)導(dǎo)航里有虛擬機(jī)、存儲、網(wǎng)絡(luò)等模塊。第一次進(jìn)來建議先做幾件事確認(rèn)存儲識別正常確認(rèn)網(wǎng)絡(luò)適配器狀態(tài)是已連接確認(rèn)時間設(shè)置正確。時間設(shè)置容易被忽略但很重要。如果時間不對虛擬機(jī)的日志時間會亂排查問題時會很痛苦。在管理界面里找到時間配置可以手動設(shè)也可以配NTP服務(wù)器自動同步。4.3 存儲的識別與使用ESXi把存儲分成兩類一類是它自己安裝所在的盤另一類是用于存放虛擬機(jī)的數(shù)據(jù)存儲。如果你只有一塊盤安裝時它會被分成幾個分區(qū)一部分給系統(tǒng)剩下的可以做成數(shù)據(jù)存儲。如果你有多塊盤可以在存儲模塊里把其他盤添加為新的數(shù)據(jù)存儲。添加數(shù)據(jù)存儲的過程很簡單選中一塊空閑的磁盤按提示新建即可。注意這個過程同樣會清除磁盤上的數(shù)據(jù)。新建完成后你就能在創(chuàng)建虛擬機(jī)時選擇把虛擬磁盤放在這個存儲上了。4.4 網(wǎng)絡(luò)虛擬交換機(jī)的概念ESXi的網(wǎng)絡(luò)模型里有一個核心概念叫虛擬交換機(jī)。物理網(wǎng)卡上聯(lián)到虛擬交換機(jī)虛擬機(jī)也連接到這個虛擬交換機(jī)它們就處在同一個二層網(wǎng)絡(luò)里。默認(rèn)安裝后會創(chuàng)建一個標(biāo)準(zhǔn)交換機(jī)帶一個上行鏈路你的物理網(wǎng)卡和一個端口組虛擬機(jī)連接用。如果你機(jī)器上有多個物理網(wǎng)卡可以創(chuàng)建多個虛擬交換機(jī)把不同虛擬機(jī)放到不同網(wǎng)絡(luò)里實現(xiàn)隔離。也可以把多個物理網(wǎng)卡綁定到同一個交換機(jī)上做冗余或負(fù)載均衡。這些進(jìn)階配置等基礎(chǔ)跑通之后再折騰一開始用默認(rèn)的就行。5. 創(chuàng)建第一臺虛擬機(jī)與常見問題排查5.1 從零創(chuàng)建一臺虛擬機(jī)在網(wǎng)頁界面里點(diǎn)創(chuàng)建虛擬機(jī)向?qū)龑?dǎo)你一步步設(shè)置。先給虛擬機(jī)起個名字選客戶機(jī)操作系統(tǒng)類型和版本。然后是存儲位置選你前面建好的數(shù)據(jù)存儲。接著配置硬件CPU核心數(shù)、內(nèi)存大小、硬盤容量、網(wǎng)絡(luò)適配器。這里有幾個經(jīng)驗值。CPU核心數(shù)不要超過物理核心數(shù)否則會爭搶。內(nèi)存方面ESXi自身會預(yù)留一部分你分配給虛擬機(jī)的總和不要超過物理內(nèi)存減去預(yù)留量。硬盤建議用精簡置備用多少占多少不會一上來就吃掉你設(shè)定的全部空間。網(wǎng)絡(luò)適配器選默認(rèn)的VMXNET3性能比E1000好。配好后啟動虛擬機(jī)掛載安裝鏡像就和在物理機(jī)上裝系統(tǒng)一樣了。5.2 常見問題速查表問題現(xiàn)象可能原因排查方向安裝后管理界面無IP網(wǎng)卡不被識別或DHCP失敗檢查網(wǎng)卡型號兼容性手動配IP網(wǎng)頁界面打不開管理網(wǎng)絡(luò)不通或防火墻ping測試檢查網(wǎng)線和服務(wù)狀態(tài)虛擬機(jī)無法啟動資源不足或配置錯誤檢查CPU內(nèi)存分配看虛擬機(jī)日志存儲識別不到磁盤控制器不兼容查兼容列表考慮加裝陣列卡虛擬機(jī)網(wǎng)絡(luò)不通虛擬交換機(jī)配置錯誤檢查端口組和上行鏈路綁定5.3 幾個容易踩的坑第一個坑是網(wǎng)卡。前面反復(fù)強(qiáng)調(diào)這里再提一次因為實在太常見。裝完發(fā)現(xiàn)管理網(wǎng)絡(luò)起不來九成是網(wǎng)卡問題。第二個坑是內(nèi)存分配。有人把物理內(nèi)存全分給虛擬機(jī)結(jié)果ESXi自己沒內(nèi)存用了管理界面卡死。留至少2G給ESXi自身。第三個坑是磁盤選錯。安裝時沒看清把存數(shù)據(jù)的盤給格了。養(yǎng)成習(xí)慣裝之前只留系統(tǒng)盤。第四個坑是時間不同步。虛擬機(jī)時間漂移導(dǎo)致證書過期、日志混亂。裝完就配NTP。第五個坑是直接關(guān)電源。虛擬機(jī)關(guān)機(jī)要走正常流程直接斷電可能導(dǎo)致文件系統(tǒng)損壞。ESXi主機(jī)本身關(guān)機(jī)也要走維護(hù)模式別直接拔電。5.4 日常維護(hù)的幾個習(xí)慣養(yǎng)成定期看日志的習(xí)慣ESXi的日志里會記錄硬件告警、存儲異常等信息。管理界面里有事件和告警的入口花幾分鐘掃一眼能提前發(fā)現(xiàn)隱患。虛擬機(jī)快照是個好東西但別濫用??煺詹皇莻浞菟皇怯涗浤硞€時間點(diǎn)的磁盤狀態(tài)長期保留會拖慢性能、占用大量空間。做完實驗就刪掉。如果機(jī)器要長時間停機(jī)先把虛擬機(jī)都正常關(guān)機(jī)再把ESXi主機(jī)進(jìn)入維護(hù)模式最后關(guān)機(jī)。下次開機(jī)反過來操作。6. 進(jìn)階方向與個人體會基礎(chǔ)跑通之后可以玩的東西很多。比如硬件直通把顯卡或硬盤控制器直接給某臺虛擬機(jī)用性能接近物理機(jī)。比如嵌套虛擬化在ESXi的虛擬機(jī)里再跑虛擬化。比如vMotion把運(yùn)行中的虛擬機(jī)從一臺主機(jī)遷移到另一臺這需要共享存儲和多個主機(jī)。我個人在實際操作中的體會是ESXi這東西入門門檻不高但細(xì)節(jié)很多。第一次裝大概率會遇到網(wǎng)卡或者存儲的問題別慌基本都是兼容性引起的查清楚硬件型號就能解決。裝好之后別急著堆虛擬機(jī)先把網(wǎng)絡(luò)和時間這些基礎(chǔ)配好后面會省很多事。另外文檔要看但別全信不同硬件組合下的表現(xiàn)差異很大自己動手試出來的經(jīng)驗才最可靠。最后分享一個小技巧如果你只有一臺機(jī)器又想同時玩多個ESXi主機(jī)做實驗可以在ESXi里嵌套安裝ESXi。雖然性能有損耗但用來學(xué)習(xí)概念和操作流程完全夠用。等玩熟了再上真機(jī)心里就有底了。