亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于文件的虛擬機與宿主機通信方法與流程

文檔序號:12278971閱讀:248來源:國知局

本發(fā)明涉及云計算與網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別是一種基于文件的虛擬機與宿主機通信方法。



背景技術(shù):

隨著云計算行業(yè)日益發(fā)展,云平臺上虛擬機越來越多,技術(shù)不斷更新,對于已有的虛擬機更新是一個大困難,會帶來以下問題:

一是虛擬機客戶環(huán)境都是保密,運維人員手動更新文件到虛擬機幾乎不可能,給系統(tǒng)升級帶來困難。

二是人為操作會容易出現(xiàn)錯誤,讓客戶業(yè)務(wù)數(shù)據(jù)造成一定風(fēng)險性。

三是虛擬機數(shù)量大,給運維升級帶來很大的工作量。

四是虛擬機數(shù)量大,內(nèi)部文件一致性難以保證。

為了提升云平臺的可用性和穩(wěn)定性,增強虛擬機功能的穩(wěn)定性,需要一種基于文件的虛擬機與宿主機通信的方法,從而可以大批量更新虛擬機內(nèi)部環(huán)境文件。



技術(shù)實現(xiàn)要素:

本發(fā)明解決的技術(shù)問題在于提供一種基于文件的虛擬機與宿主機通信方法;解決云平臺可以更新虛擬機內(nèi)部文件,更好地保持虛擬機功能的完整性和數(shù)據(jù)一致性,讓客戶已有的虛擬機不需要遷移業(yè)務(wù)的情況下更新虛擬機內(nèi)部環(huán)境,增大用戶體驗。

本發(fā)明解決上述技術(shù)問題的技術(shù)方案是:

包括如下步驟:

步驟1:創(chuàng)建一臺qemu通信通道的虛擬機,通過libvirt配置channel綁定路徑;

步驟2:安裝qemu串口代理服務(wù)到虛擬機,并且啟動;

步驟3:讀取文件內(nèi)容,然后對內(nèi)容進行Base64加密;

步驟4:通過串口代理打開虛擬機內(nèi)指定路徑文件;

步驟5:將內(nèi)容傳輸?shù)教摂M機里面,并且通過Base64解密密文;

步驟5:寫入虛擬機內(nèi)指定路徑文件;

步驟6:關(guān)閉文件流;

步驟7:文件上傳完成。

所述qemu通信通道是宿主機與虛擬機以串口形式打開的一個通信通道;

所述libvirt是一種實現(xiàn)Linux虛擬化功能的Linux對外接口;

所述qemu串口代理服務(wù)是指一個運行在虛擬機內(nèi)部的普通應(yīng)用程序,服務(wù)名稱默認為qemu-guest-agent;

所述Base64是指用于傳輸8Bit字節(jié)代碼的編碼方式,防止傳輸過程中亂碼情況。

虛擬機與宿主機通過串口通道方式,基于文件形式來實現(xiàn)虛擬機與宿主機進行通信。

內(nèi)容加密是為了能傳輸特殊字符或者文字,通過base64編碼之后,轉(zhuǎn)換為傳輸安全的密文到虛擬機,再進行解密來完成文件內(nèi)容寫入。

關(guān)閉文件流為了防止遺漏的文件線程導(dǎo)致下次文件無法修改,確保文件數(shù)據(jù)一致性和安全性。

本發(fā)明通過串口代理方式基于文件的方式進行宿主機與虛擬機之間通信,可以隨時將宿主機的文件加密傳輸?shù)教摂M機上,實現(xiàn)大量虛擬機內(nèi)部環(huán)境腳本更新,本發(fā)明給運維人員的升級提供很大的便利性。云平臺上的虛擬機也越來越多,如果需要更新所有虛擬機上的某一個腳本,這個問題也難以避免,本發(fā)明解決了云平臺可以更新虛擬機內(nèi)部文件,更好地保持虛擬機功能的完整性和數(shù)據(jù)一致性,讓客戶已有的虛擬機不需要遷移業(yè)務(wù)的情況下更新虛擬機內(nèi)部環(huán)境,增大了用戶體驗,適應(yīng)當前飛速發(fā)展的云計算需求。

附圖說明

下面結(jié)合附圖對本發(fā)明進一步說明:

圖1為本發(fā)明方法流程圖。

具體實施方式

見圖1所示,是本發(fā)明的基本流程;主要包括以下步驟:

步驟1:創(chuàng)建一臺qemu通信通道的虛擬機,通過libvirt配置channel綁定路徑;

步驟2:安裝qemu串口代理服務(wù)到虛擬機,并且啟動;

步驟3:讀取文件內(nèi)容,然后對內(nèi)容進行Base64加密;

步驟4:通過串口代理打開虛擬機內(nèi)指定路徑文件;

步驟5:將內(nèi)容傳輸?shù)教摂M機里面,并且通過Base64解密密文;

步驟5:寫入虛擬機內(nèi)指定路徑文件;

步驟6:關(guān)閉文件流;

步驟7:文件上傳完成。

加密解密代碼:

讀文件命令:

virsh qemu-agent-command i-xxxxx′{″execute″:″guest-file-open″,

″arguments″:{″path″:″/tmp/testqga″,″mode″:″r″}}′

{″return″:1000}

virsh qemu-agent-command i-xxxxx′{″execute″:″guest-file-read″,″arguments″:{″handle″:1000}}′

{″return″:{″count″:5,″buf-b64″:″MjIyMgo=″,″eof″:true}}

virsh qemu-agent-command i-xxxxx′{″execute″:″guest-file-close″,″arguments″:{″handle″:1000}}′

{″return″:{}}

寫文件命令:

virsh qemu-agent-command i-xxxxx′{″execute″:″guest-file-open″,

″arguments″:{″path″:″/tmp/testqga″,″mode″:″w+″}}′

{″return″:1002}

virsh qemu-agent-command i-xxxxx′{″execute″:″guest-file-write″,

″arguments″:{″handle″:1002,″buf-b64″:″YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXo=″}}′

{″return″:{″count″:26,″eof″:false}}

virsh qemu-agent-command i-xxxxx′{″execute″:″guest-file-close″,

″arguments″:{″handle″:1001}}′

{″return″:{}}

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1