次講解在x86 linux環境下使用qemu進行arm版銀河麒麟的部署,適用于運維人員進行相關項目的趟雷操作
講到虛擬機,得益于windows環境下的盛行,很多人第一時間想到的是VMware。亦或者考慮到部署的方便,考慮到的是docker,這里講一下三者的區別,以下是我個人理解,所以不會講到什么術語,簡單理解下就行
VMWare和docker,還是基于宿主機那套硬件配置來進行虛擬機/容器的運行,如果你是x86的機器,用這個是不能創建出一個arm的虛擬機的,而qemu則是,直接模擬出硬件,你要裝arm虛擬機,我就模擬一個arm的cpu給你。這就是最大的區別
ps:docker后面查資料時,看到有另外一套方案,也是可以搞arm的,等我整理完,再發出來
arm資料中文網站:
華為云論壇(可供查詢部署資料):https://bbs.huaweicloud.com/
麒麟安全補丁公告(麒麟系統打補丁優先查詢):https://www.kylinos.cn/support/cve.html
本次安裝是以個人電腦來安裝的,參考的教程:https://blog.csdn.net/weixin_44265105/article/details/117704631
bash部署環境:
操作系統:deepin20 x86
內存:32g
CPU:Inter i7
麒麟系統鏡像:Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso(銀河麒麟高級服務器v10)
apt-get install qemu qemu-system
wget http://releases.linaro.org/components/kernel/uefi-linaro/16.02/release/qemu64/QEMU_EFI.fd
qemu-img create -f qcow2 /home/qdadmin/VirtualBox_VMs/kylinV10/disk1.qcow2 60G
測試時,發現只有60G以上才能成功安裝,也許跟自動分配的初始分區大小有關,其他看到的人可以測試下修改初始分區(/boot)大小是否影響因素
bashqemu-system-aarch64 -m 8192 -cpu cortex-a72 -smp 8,sockets=4,cores=2 -M virt -bios QEMU_EFI.fd -device VGA -device nec-usb-xhci -device usb-mouse -device usb-kbd -drive if=none,file=VirtualBox_VMs/kyv10/disk1.qcow2,id=hd0 -device virtio-blk-device,drive=hd0 -drive if=none,file=/home/qdadmin/Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -net nic -net user,hostfwd=tcp::2222-:22
# qemu-system-aarch64為安裝qemu-system才有的,默認安裝qemu只有x86的
# -cpu cortex-a72 cpu需要查看qemu可支持的cpu型號,不是隨便寫的。通過qemu-system-aarch64 -cpu help命令可查看支持的arm cpu
這個報錯,在將硬盤文件擴展為60G后消失
bashqemu-system-aarch64 -m 8192 -cpu cortex-a72 -smp 8,sockets=4,cores=2 -M virt -bios /home/qdadmin/QEMU_EFI.fd -device VGA -device nec-usb-xhci -device usb-mouse -device usb-kbd -drive if=none,file=disk1.qcow2,id=hd0 -device virtio-blk-device,drive=hd0 -net nic -net user,hostfwd=tcp::2222-:22
# 可改成腳本啟動
apt-get install virt-manager
eve官網圖片
我們學習一門技術一定要有對應的環境,正所謂知行合一,實踐出真知。我認為學習IT技術不像其他行業一定要投身具體工作之中才能學習到,其實很多IT技術我們只要有一臺電腦就可以搭建出環境來就都可以學習了。學習網絡技術也一樣,我們不可能去具體采購路由器和交換機這些網絡設備來學習。哪怕你去企業工作也一樣企業也不大會有空閑設備讓你搭建環境去學習。
EVE-NG(全稱Emulated Virtual Environment - NextGeneration)是國外大神們開發的,融合了dynamips,IOL,KVM。它是深度定制的Ubuntu操作系統,可以直接把它安裝在x86架構的物理主機上。它也有ova版本,可以導入到VMware等虛擬機軟件中運行。這款模擬器可以模擬出眾多廠商網絡設備,比如Cisco、Juniper、華為、H3C、飛塔、山石、F5等,也可以運行一切虛擬機。理論上,只要能將虛擬機的虛擬磁盤格式轉換為qcow2都可以在EVE-NG上運行。所以,EVE-NG可以算得上是全能的仿真虛擬環境。EVE官網:http://www.eve-ng.net/。
下面我簡單介紹一下EVE環境的搭建及使用。更多的學習資料在文末分享哈~
EVE-NG安裝
1. 使用虛擬機通過:文件打開→選擇EVE文件→選擇存儲EVE VM的位置→導入。
2. 導入成功后,可以看到這里出現了一個VM的界面,這里需要注意的是,需要對虛擬機進行設置,如果你需要發揮比較好的功能的話,建議內存在6G,處理器4,硬盤30G。并勾選CPU虛擬化,類似于在BIOS開啟CPU虛擬化。
3. 設置完成后,開啟該EVE VM,開機界面如下。
4. 進入EVE VM后,可以看到獲取的IP地址,并且輸入默認賬戶(底層Ubuntu系統登錄賬戶):Username: root Password: eve。
5. 正確獲取IP地址后,即可進入EVE登錄界面,根據EVE-NG提示的IP地址,在瀏覽器中輸入對應的IP地址,建議用Firefox瀏覽器打開。選擇用Native consol,這樣可以安裝putty,SecureCRT,vnc等軟件進行管理。默認賬戶(Web登錄賬戶)Username:admin Password:eve。
6.簡單的操作。
在System菜單下,可以查看系統狀態。
在Management菜單下,管理登錄用戶。
添加新用戶。
7.小實驗舉例。
返回Main菜單,Add folder,創建新的實驗案例。
打開test文件夾,Add new lab,再創建test實驗案例。
左側菜單點擊Add an object添加虛擬設備。
一個cisco3725就加進去了,同理添加第二臺,命名為CISCO3725-2。
現在把兩個CISCO3725中間連接一根網線,把鼠標移動到其中一個設備上,點擊插頭并按住,拖動到另外一臺設備。
點Save。
右鍵點擊設備,點Start開機。
再左鍵點擊一下設備,就用secretCRT登錄console界面了。
火狐瀏覽器在選項常規telnet選項選擇SecureCRT Application處理。
添加QEMU鏡像的方法
1、使用WinSCP工具連接到eve-ng。
2、將后綴名為.qcow2的鏡像連同它所在的目錄一起復制到/opt/unetlab/addons/qemu目錄下。
3、每次上傳完qemu后都要用SecureCRT連接EVE執行命令修復一下權限:
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
可以說eve仿真環境是每個網工必備的學習實驗環境。比如我們要在真實生產網調試之前可以先搭建出仿真環境來測試一下,這樣心里就有個底。尤其是大割接網絡的時候情況復雜,變更時間又短,提前做好規劃及測試工作是相當重要的。在比如有些網工是要去為甲方客戶服務的,你可以提前先在自己電腦上搭建好環境,調試好把相關設備配置保存下來。那么等到去現場調試的時候那就是設備開啟復制粘貼分分鐘搞定的事情了。那這樣客戶看上去認為你們是相當專業了,這樣生意不就又來了,升職加薪不就是順其自然的事情了,哈哈!
最后分享一些eve的安裝包及相關資料,需要的同學加關注私信發關鍵字:eve,即可獲取哈~