本發(fā)明涉及系統(tǒng)日志監(jiān)控領(lǐng)域,特別是涉及一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法及裝置。
背景技術(shù):
在虛擬化系統(tǒng)中,時有發(fā)生一些虛擬機(jī)被入侵者侵入,一旦侵入系統(tǒng)后,便會在系統(tǒng)竊取關(guān)鍵數(shù)據(jù)、安裝木馬等危險行為,同時為了掩蓋其蹤跡,入侵者會在離開系統(tǒng)前對系統(tǒng)日志進(jìn)行修改或者損壞,因此對于系統(tǒng)日志的實(shí)時備份存儲并監(jiān)控是至關(guān)重要的。
為了實(shí)現(xiàn)以上目的,現(xiàn)有技術(shù)中,通常的做法是通過數(shù)據(jù)網(wǎng)絡(luò)將系統(tǒng)日志備份,并將備份存儲到遠(yuǎn)程服務(wù)器上,然后在遠(yuǎn)程服務(wù)器上進(jìn)行監(jiān)控。由于上述過程是通過數(shù)據(jù)網(wǎng)絡(luò)實(shí)現(xiàn)的,而數(shù)據(jù)網(wǎng)絡(luò)對于網(wǎng)絡(luò)帶寬的要求較高,如果系統(tǒng)日志過多時,則無疑占用大量的網(wǎng)絡(luò)帶寬,導(dǎo)致數(shù)據(jù)網(wǎng)絡(luò)的傳輸速度下降且存在延遲,同時,數(shù)據(jù)網(wǎng)絡(luò)的安全性不夠高,容易被入侵者侵入。
由此可見,在實(shí)現(xiàn)對系統(tǒng)日志的監(jiān)控過程中,如何降低對數(shù)據(jù)網(wǎng)絡(luò)的占用率,并提高系統(tǒng)日志的安全性是本領(lǐng)域技術(shù)人員亟待解決的問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法及裝置,用于在實(shí)現(xiàn)對系統(tǒng)日志的監(jiān)控過程中,降低對數(shù)據(jù)網(wǎng)絡(luò)的占用率,并提高系統(tǒng)日志的安全性。
為解決上述技術(shù)問題,本發(fā)明提供一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法,包括:
用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道,以及所述控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)建立信息傳輸通道;
所述用戶端虛擬機(jī)讀取應(yīng)用程序產(chǎn)生的系統(tǒng)日志,并將所述系統(tǒng)日志寫入共享內(nèi)存中;
所述控制端虛擬機(jī)從所述共享內(nèi)存中讀取所述系統(tǒng)日志,并將所述系統(tǒng)日志保存在與所述用戶端虛擬機(jī)相對應(yīng)的控制端日志文件中;
所述監(jiān)控端虛擬機(jī)從所述控制端虛擬機(jī)上獲取所述系統(tǒng)日志,并依據(jù)預(yù)先設(shè)置的告警規(guī)則判斷所述系統(tǒng)日志是否出現(xiàn)異常,如果是,則輸出告警提示信息;
其中,所述用戶端虛擬機(jī)為多個,分別面向當(dāng)前系統(tǒng)中各用戶端,所述控制端虛擬機(jī)面向各所述用戶端虛擬機(jī)。
優(yōu)選地,所述用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道具體包括:
所述用戶端虛擬機(jī)將所述共享內(nèi)存的地址、用戶端端口id、虛擬機(jī)id發(fā)送到所述控制端虛擬機(jī);
所述控制端虛擬機(jī)根據(jù)所述共享內(nèi)存的地址映射至對應(yīng)的空間,將空閑的控制端端口與所述用戶端端口id對應(yīng)的用戶端端口綁定,并根據(jù)所述虛擬機(jī)id在相應(yīng)目錄下為所述用戶端虛擬機(jī)創(chuàng)建所述控制端日志文件,向所述用戶端虛擬機(jī)發(fā)送初始化就緒通知。
優(yōu)選地,所述控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)建立信息傳輸通道具體包括:
所述監(jiān)控端虛擬機(jī)在初始化時配置與所述監(jiān)控端虛擬機(jī)的連接信息,并預(yù)先設(shè)置所述告警規(guī)則。
優(yōu)選地,所述讀取應(yīng)用程序產(chǎn)生的系統(tǒng)日志具體包括:
在接收到所述初始化就緒通知后,實(shí)時監(jiān)控syslog文件,并從所述syslog文件中讀取所述系統(tǒng)日志。
優(yōu)選地,所述從所述共享內(nèi)存中讀取所述系統(tǒng)日志具體包括:
實(shí)時接收所述用戶端虛擬機(jī)發(fā)送的同步消息,當(dāng)接收到所述同步消息時,從所述共享內(nèi)存中讀取所述系統(tǒng)日志。
優(yōu)選地,還包括:
所述控制端虛擬機(jī)在讀取完所述系統(tǒng)日志后,向所述用戶端虛擬機(jī)發(fā)送讀取完畢信息;
所述用戶端虛擬機(jī)在接收到所述讀取完畢信息后,繼續(xù)監(jiān)控新的系統(tǒng)日志。
優(yōu)選地,所述用戶端虛擬機(jī)具體通過xenbus將所述共享內(nèi)存的地址、所述用戶端端口id、所述虛擬機(jī)id發(fā)送到所述控制端虛擬機(jī)的xenstore。
優(yōu)選地,從所述控制端虛擬機(jī)上獲取所述系統(tǒng)日志具體包括:
實(shí)時監(jiān)控所述控制端虛擬機(jī)的vmu文件;
當(dāng)若所述vmu文件有新的日志寫入,則從所述控制端虛擬機(jī)上獲取所述系統(tǒng)日志。
為解決上述技術(shù)問題,本發(fā)明還提供一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控裝置,包括:用戶端虛擬機(jī)、控制端虛擬機(jī)和監(jiān)控端虛擬機(jī);
所述用戶端虛擬機(jī),用于讀取應(yīng)用程序產(chǎn)生的系統(tǒng)日志,并將所述系統(tǒng)日志寫入共享內(nèi)存中;
所述控制端虛擬機(jī),用于從所述共享內(nèi)存中讀取所述系統(tǒng)日志,并將所述系統(tǒng)日志保存在與所述用戶端虛擬機(jī)相對應(yīng)的控制端日志文件中;
所述監(jiān)控端虛擬機(jī),用于從所述控制端虛擬機(jī)上獲取所述系統(tǒng)日志,并依據(jù)預(yù)先設(shè)置的告警規(guī)則判斷所述系統(tǒng)日志是否出現(xiàn)異常,如果是,則輸出告警提示信息;
其中,所述用戶端虛擬機(jī)為多個,分別面向當(dāng)前系統(tǒng)中各用戶端,所述控制端虛擬機(jī)面向各所述用戶端虛擬機(jī),所述用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道,所述控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)建立信息傳輸通道。
本發(fā)明所提供的面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法,在應(yīng)用程序產(chǎn)生系統(tǒng)日志后,用戶端虛擬機(jī)就將該系統(tǒng)日志寫入共享內(nèi)存,從而使得系統(tǒng)日志在管理網(wǎng)絡(luò)上傳輸,并且控制端虛擬機(jī)也是從共享內(nèi)存中讀取該系統(tǒng)日志,因此提高了系統(tǒng)日志的安全性。最后通過監(jiān)控端虛擬機(jī)結(jié)合預(yù)先設(shè)置的告警規(guī)則將得到的系統(tǒng)日志進(jìn)行分析從而判斷出系統(tǒng)日志是否出現(xiàn)異常,并將結(jié)果呈現(xiàn)給監(jiān)控人員,實(shí)現(xiàn)對系統(tǒng)日志的全程監(jiān)控。綜上所述,本方法中,系統(tǒng)日志傳輸在管理網(wǎng)絡(luò),因此不需要占用數(shù)據(jù)網(wǎng)絡(luò),節(jié)約了數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)帶寬,且管理網(wǎng)絡(luò)的安全性更高,因此能夠更有效的防止惡意侵入,提高了系統(tǒng)的安全性和可靠性。此外,本發(fā)明還提供一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控裝置,效果如上所述。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例,下面將對實(shí)施例中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例提供的一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法的流程圖;
圖2為本發(fā)明實(shí)施例提供的一種用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道的流程圖;
圖3為本發(fā)明實(shí)施例提供的一種用戶端虛擬機(jī)、控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)的工作原理圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下,所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)范圍。
本發(fā)明的核心是提供一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法及裝置,用于在實(shí)現(xiàn)對系統(tǒng)日志的監(jiān)控過程中,降低對數(shù)據(jù)網(wǎng)絡(luò)的占用率,并提高系統(tǒng)日志的安全性。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實(shí)施方式對本發(fā)明作進(jìn)一步的詳細(xì)說明。
圖1為本發(fā)明實(shí)施例提供的一種面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法的流程圖。如圖1所示,該方法包括:
s10:用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道,以及控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)建立信息傳輸通道。
s11:用戶端虛擬機(jī)讀取應(yīng)用程序產(chǎn)生的系統(tǒng)日志,并將系統(tǒng)日志寫入共享內(nèi)存中。
s12:控制端虛擬機(jī)從共享內(nèi)存中讀取系統(tǒng)日志,并將系統(tǒng)日志保存在與用戶端虛擬機(jī)相對應(yīng)的控制端日志文件中。
s13:監(jiān)控端虛擬機(jī)從控制端虛擬機(jī)上獲取系統(tǒng)日志,并依據(jù)預(yù)先設(shè)置的告警規(guī)則判斷系統(tǒng)日志是否出現(xiàn)異常,如果是,則進(jìn)入s14。
s14:輸出告警提示信息。
其中,用戶端虛擬機(jī)為多個,分別面向當(dāng)前系統(tǒng)中各用戶端,控制端虛擬機(jī)面向各用戶端虛擬機(jī)。
在具體實(shí)施中,集群系統(tǒng)中的網(wǎng)絡(luò)按照功能分為數(shù)據(jù)網(wǎng)絡(luò)和管理網(wǎng)絡(luò)兩個大部分,數(shù)據(jù)網(wǎng)絡(luò)對于網(wǎng)絡(luò)帶寬要求較高,并且安全性相對于管理網(wǎng)絡(luò)較低,而管理網(wǎng)絡(luò)具有防火墻,安全性會更高。因此,本發(fā)明中將系統(tǒng)日志通過管理網(wǎng)絡(luò)進(jìn)行傳輸,這樣既能夠避免占用數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)帶寬,又可以提高安全性。
需要說明的是,上述方法均是在虛擬機(jī)上實(shí)現(xiàn)的,用戶端虛擬機(jī)通常有多個,與用戶一一對應(yīng),通常情況下,也可以用domu來表示,u為大于或等于1的正整數(shù)??刂贫颂摂M機(jī)為一個,可以用dom0來表示,與各用戶端虛擬機(jī)通信,分別獲取各用戶端虛擬機(jī)得到的系統(tǒng)日志。監(jiān)控端虛擬機(jī)與控制端虛擬機(jī)直接通信,通過監(jiān)控端虛擬機(jī)獲取各用戶端對應(yīng)的系統(tǒng)日志,從而實(shí)現(xiàn)對每個用戶端的監(jiān)控。另外,用戶端虛擬機(jī)和控制端虛擬機(jī)的工作過程是不可見的,因此監(jiān)控人員是無法實(shí)現(xiàn)監(jiān)控的,而監(jiān)控端虛擬機(jī)是直接呈現(xiàn)給監(jiān)控人員的。
步驟s10是建立各虛擬機(jī)之間的信息傳輸通道,在建立好信息傳輸通道之后,各虛擬機(jī)之間就可以實(shí)現(xiàn)信息的傳輸。首先,用戶端虛擬機(jī)讀取自身系統(tǒng)中的應(yīng)用程序產(chǎn)生的系統(tǒng)日志,然后將系統(tǒng)日志寫入共享內(nèi)存。可以理解的是,由于將系統(tǒng)日志寫入共享內(nèi)存,也就實(shí)現(xiàn)了系統(tǒng)日志在管理網(wǎng)路的傳輸??刂贫颂摂M機(jī)再從共享內(nèi)存中讀取上述系統(tǒng)日志,然后保存在對應(yīng)的控制端日志文件中??梢岳斫獾氖?,由于用戶端虛擬機(jī)是多個,控制端虛擬機(jī)為1個,因此,為了便于區(qū)分,控制端虛擬機(jī)會為每個用戶端虛擬機(jī)建立一個控制端日志文件,根據(jù)當(dāng)前共享內(nèi)存的地址判斷出對應(yīng)哪個控制端日志文件。
例如當(dāng)前集群中有10個用戶端虛擬機(jī),分別是dom1-dom10,當(dāng)dom1獲取到系統(tǒng)日志時,將系統(tǒng)日志保存在共享內(nèi)存中(由于共享內(nèi)存是公共的,因此,需要事先將共享內(nèi)存的地址進(jìn)行劃分,這樣能夠保證每個用戶端虛擬機(jī)對應(yīng)一段地址)。dom0從共享內(nèi)存中讀取該系統(tǒng)日志,根據(jù)在共享內(nèi)存中的地址判斷出是dom1對應(yīng)的系統(tǒng)日志,則將該系統(tǒng)日志存儲至dom1對應(yīng)的控制端日志文件。同理,如果從共享內(nèi)存中讀取的是dom2的系統(tǒng)日志文件,則將該系統(tǒng)日志文件保存在dom2對應(yīng)的控制端日志文件中。由上可知,dom0中的控制端日志文件的個數(shù)與domu的個數(shù)是相同的。
當(dāng)控制端虛擬機(jī)上獲取到系統(tǒng)日志后,監(jiān)控端虛擬機(jī)再從控制端虛擬機(jī)上獲取,然后依據(jù)預(yù)先設(shè)置的告警規(guī)則判斷當(dāng)前獲取到的系統(tǒng)日志是否出現(xiàn)異常,如果是,則輸出告警提示信息。
作為優(yōu)選地實(shí)施方式,監(jiān)控端虛擬機(jī)從控制端虛擬機(jī)上獲取系統(tǒng)日志具體包括:實(shí)時監(jiān)控控制端虛擬機(jī)的vmu文件;
當(dāng)若vmu文件有新的日志寫入,則從控制端虛擬機(jī)上獲取系統(tǒng)日志。
本實(shí)施例提供的面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法,在應(yīng)用程序產(chǎn)生系統(tǒng)日志后,用戶端虛擬機(jī)就將該系統(tǒng)日志寫入共享內(nèi)存,從而使得系統(tǒng)日志在管理網(wǎng)絡(luò)上傳輸,并且控制端虛擬機(jī)也是從共享內(nèi)存中讀取該系統(tǒng)日志,因此提高了系統(tǒng)日志的安全性。最后通過監(jiān)控端虛擬機(jī)結(jié)合預(yù)先設(shè)置的告警規(guī)則將得到的系統(tǒng)日志進(jìn)行分析從而判斷出系統(tǒng)日志是否出現(xiàn)異常,并將結(jié)果呈現(xiàn)給監(jiān)控人員,實(shí)現(xiàn)對系統(tǒng)日志的全程監(jiān)控。綜上所述,本方法中,系統(tǒng)日志傳輸在管理網(wǎng)絡(luò),因此不需要占用數(shù)據(jù)網(wǎng)絡(luò),節(jié)約了數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)帶寬,且管理網(wǎng)絡(luò)的安全性更高,因此能夠更有效的防止惡意侵入,提高了系統(tǒng)的安全性和可靠性。
圖2為本發(fā)明實(shí)施例提供的一種用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道的流程圖。如圖2所示,作為優(yōu)選地實(shí)施方式,用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道具體包括:
s20:用戶端虛擬機(jī)將共享內(nèi)存的地址、用戶端端口id、虛擬機(jī)id發(fā)送到控制端虛擬機(jī);
s21:控制端虛擬機(jī)根據(jù)共享內(nèi)存的地址映射至對應(yīng)的空間,將空閑的控制端端口與用戶端端口id對應(yīng)的用戶端端口綁定,并根據(jù)虛擬機(jī)id在相應(yīng)目錄下為用戶端虛擬機(jī)創(chuàng)建控制端日志文件,向用戶端虛擬機(jī)發(fā)送初始化就緒通知。
需要說明的是,步驟s21中的控制端端口必須是空閑的,且不同的控制端端口對應(yīng)不同的用戶端端口,必須是一一對應(yīng),否則容易出現(xiàn)同一個端口的數(shù)據(jù)傳輸量過大造成擁堵,并且容易將同一個用戶端的系統(tǒng)日志存儲在不同的控制端日志文件,也有可能將不同的用戶端的日志存儲在同一個控制端日志文件,從而發(fā)生混亂。
作為優(yōu)選地實(shí)施方式,用戶端虛擬機(jī)具體通過xenbus將共享內(nèi)存的地址、用戶端端口id、虛擬機(jī)id發(fā)送到控制端虛擬機(jī)的xenstore。
本實(shí)施例中,控制端虛擬機(jī)可以通過端口來判斷當(dāng)前系統(tǒng)日志對應(yīng)哪個用戶端,應(yīng)該存儲在哪個控制端日志文件。
在上述實(shí)施例的基礎(chǔ)上,控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)建立信息傳輸通道具體包括:
監(jiān)控端虛擬機(jī)在初始化時配置與監(jiān)控端虛擬機(jī)的連接信息,并預(yù)先設(shè)置告警規(guī)則。
可以理解的是,告警規(guī)則如何設(shè)置,可以根據(jù)集群的實(shí)際參數(shù)確定,另外,可以為全部系統(tǒng)日志設(shè)定同樣的告警規(guī)則,也可以根據(jù)不同類型的用戶端虛擬機(jī)設(shè)定不同的告警規(guī)則,本發(fā)明不再贅述。
在上述實(shí)施例的基礎(chǔ)上,讀取應(yīng)用程序產(chǎn)生的系統(tǒng)日志具體包括:
在接收到初始化就緒通知后,實(shí)時監(jiān)控syslog文件,并從syslog文件中讀取系統(tǒng)日志。
當(dāng)用戶端虛擬機(jī)接收到初始化就緒通知后,就表明與控制端虛擬機(jī)建立好了信息傳輸通道,可以進(jìn)行信息的傳輸。那么用戶端虛擬機(jī)調(diào)用syslogd進(jìn)程,從而監(jiān)控syslog文件,并從syslog文件中讀取系統(tǒng)日志。
在上述實(shí)施例的基礎(chǔ)上,從共享內(nèi)存中讀取系統(tǒng)日志具體包括:
實(shí)時接收用戶端虛擬機(jī)發(fā)送的同步消息,當(dāng)接收到同步消息時,從共享內(nèi)存中讀取系統(tǒng)日志。
由于用戶端虛擬機(jī)為多個,控制端虛擬機(jī)只有一個,因此控制端虛擬機(jī)的工作量較大,為了減小控制端虛擬機(jī)的工作量,本實(shí)施例中,控制端虛擬機(jī)從共享內(nèi)存讀取系統(tǒng)日志是由用戶端虛擬機(jī)發(fā)送同步信息而觸發(fā),如果控制端虛擬機(jī)沒有接收到同步信息,則也不需檢測共享內(nèi)存中是否有新的系統(tǒng)日志。
作為優(yōu)選的實(shí)施方式,還包括:
控制端虛擬機(jī)在讀取完系統(tǒng)日志后,向用戶端虛擬機(jī)發(fā)送讀取完畢信息。
用戶端虛擬機(jī)在接收到讀取完畢信息后,繼續(xù)監(jiān)控新的系統(tǒng)日志。
在上一實(shí)施例中,控制端虛擬機(jī)在接收到同步信息從共享內(nèi)存中讀取系統(tǒng)日志,不同系統(tǒng)日志讀取的時間是不同的,為了確認(rèn)控制端虛擬機(jī)是否成功讀取到系統(tǒng)日志,本實(shí)施例中,當(dāng)控制端虛擬機(jī)讀取完系統(tǒng)日志后,會向用戶端虛擬機(jī)發(fā)送讀取完畢信息,之后,用戶端虛擬機(jī)再繼續(xù)監(jiān)控新的系統(tǒng)日志。
可以理解的是,如果控制端虛擬機(jī)出現(xiàn)故障,無法讀取系統(tǒng)日志,或者無法發(fā)送讀取完畢信息,則用戶端虛擬機(jī)就會一直處于等待狀態(tài),即使有新的系統(tǒng)日志,也無法及時讀取。為了避免這個情況,在其他實(shí)施例中,也可以為用戶端虛擬機(jī)設(shè)置一個預(yù)設(shè)值,如果等待時間超過預(yù)設(shè)值,則用戶端虛擬機(jī)直接讀取新的系統(tǒng)日志。
上文中對面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法對應(yīng)的實(shí)施例進(jìn)行了詳細(xì)的描述,本發(fā)明還提供一種與該方法對應(yīng)的面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控裝置。由于裝置部分的實(shí)施例與方法部分的實(shí)施例相互對應(yīng),因此裝置部分的實(shí)施例請參見方法部分的實(shí)施例的描述,這里暫不贅述。
面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控裝置,包括:用戶端虛擬機(jī)、控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)。
用戶端虛擬機(jī),用于讀取應(yīng)用程序產(chǎn)生的系統(tǒng)日志,并將系統(tǒng)日志寫入共享內(nèi)存中;
控制端虛擬機(jī),用于從共享內(nèi)存中讀取系統(tǒng)日志,并將系統(tǒng)日志保存在與用戶端虛擬機(jī)相對應(yīng)的控制端日志文件中;
監(jiān)控端虛擬機(jī),用于從控制端虛擬機(jī)上獲取系統(tǒng)日志,并依據(jù)預(yù)先設(shè)置的告警規(guī)則判斷系統(tǒng)日志是否出現(xiàn)異常,如果是,則輸出告警提示信息;
其中,用戶端虛擬機(jī)為多個,分別面向當(dāng)前系統(tǒng)中各用戶端,控制端虛擬機(jī)面向各用戶端虛擬機(jī),用戶端虛擬機(jī)和控制端虛擬機(jī)建立信息傳輸通道,控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)建立信息傳輸通道。
本實(shí)施例提供的面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控裝置,在應(yīng)用程序產(chǎn)生系統(tǒng)日志后,用戶端虛擬機(jī)就將該系統(tǒng)日志寫入共享內(nèi)存,從而使得系統(tǒng)日志在管理網(wǎng)絡(luò)上傳輸,并且控制端虛擬機(jī)也是從共享內(nèi)存中讀取該系統(tǒng)日志,因此提高了系統(tǒng)日志的安全性。最后通過監(jiān)控端虛擬機(jī)結(jié)合預(yù)先設(shè)置的告警規(guī)則將得到的系統(tǒng)日志進(jìn)行分析從而判斷出系統(tǒng)日志是否出現(xiàn)異常,并將結(jié)果呈現(xiàn)給監(jiān)控人員,實(shí)現(xiàn)對系統(tǒng)日志的全程監(jiān)控。綜上所述,本裝置中,系統(tǒng)日志傳輸在管理網(wǎng)絡(luò),因此不需要占用數(shù)據(jù)網(wǎng)絡(luò),節(jié)約了數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)帶寬,且管理網(wǎng)絡(luò)的安全性更高,因此能夠更有效的防止惡意侵入,提高了系統(tǒng)的安全性和可靠性。
圖3為本發(fā)明實(shí)施例提供的一種用戶端虛擬機(jī)、控制端虛擬機(jī)和監(jiān)控端虛擬機(jī)的工作原理圖。如圖3所示,domu包含有l(wèi)ogmoniter和syslogd進(jìn)程,syslogd進(jìn)程將應(yīng)用程序產(chǎn)生的系統(tǒng)日志存儲在syslog文件中,logmoniter用來監(jiān)控是否有系統(tǒng)日志產(chǎn)生,并負(fù)責(zé)將系統(tǒng)日志保存在共享內(nèi)存和發(fā)送同步消息。dom0中包含有l(wèi)ogmoniter和vmu文件,logmoniter用來接收同步消息以及從共享內(nèi)存中讀取系統(tǒng)日志,然后將系統(tǒng)日志存儲在控制端日志文件中。此時,vmu文件就會產(chǎn)生日志,監(jiān)控端虛擬機(jī)檢測到vmu文件產(chǎn)生新的日志,則從控制端日志文件讀取系統(tǒng)日志,進(jìn)行解析和判斷。監(jiān)控端虛擬機(jī)具體包括監(jiān)控模塊、分析告警模塊以及個性化策略設(shè)置模塊。
以上對本發(fā)明所提供的面向xen虛擬化環(huán)境的系統(tǒng)日志監(jiān)控方法及裝置進(jìn)行了詳細(xì)介紹。說明書中各個實(shí)施例采用遞進(jìn)的方式描述,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個實(shí)施例之間相同相似部分互相參見即可。對于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。
還需要說明的是,在本說明書中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實(shí)體或者操作與另一個實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。