本發(fā)明涉及一種動(dòng)態(tài)擴(kuò)容策略,特別是一種基于f5服務(wù)器節(jié)點(diǎn)的動(dòng)態(tài)擴(kuò)容日常運(yùn)維策略。
背景技術(shù):
現(xiàn)階段通過(guò)f5部署的信息系統(tǒng)服務(wù)器節(jié)點(diǎn),節(jié)點(diǎn)的數(shù)量增減、遷移都是通過(guò)用戶(hù)反饋、系統(tǒng)告警并由系統(tǒng)運(yùn)維人員主觀判斷和操作。頻繁的主機(jī)遷移也會(huì)造成計(jì)算資源的冗余和浪費(fèi),目前只有通過(guò)人為的定期檢修、發(fā)現(xiàn)并回收。這種定期檢修和維護(hù)計(jì)劃方式比較被動(dòng),也不易發(fā)現(xiàn)問(wèn)題。服務(wù)器資源負(fù)載壓力過(guò)大或冗余浪費(fèi),會(huì)影響客戶(hù)正常生產(chǎn)工作,同時(shí)也可能造成人力物力的浪費(fèi),對(duì)系統(tǒng)本身用戶(hù)也會(huì)產(chǎn)生質(zhì)疑。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種基于f5服務(wù)器節(jié)點(diǎn)的動(dòng)態(tài)擴(kuò)容日常運(yùn)維策略,它能夠自動(dòng)進(jìn)行動(dòng)態(tài)擴(kuò)容減容。
為解決上述技術(shù)問(wèn)題,本發(fā)明所采用的技術(shù)方案是:
一種基于f5服務(wù)器節(jié)點(diǎn)的動(dòng)態(tài)擴(kuò)容日常運(yùn)維策略,其特征在于包含以下步驟:
步驟一:獲取數(shù)據(jù),獲取的數(shù)據(jù)包含服務(wù)節(jié)點(diǎn)的輸入量bitsin、服務(wù)節(jié)點(diǎn)的輸出量bitsout、訪問(wèn)包的大小packetin、輸出包的大小packetout、當(dāng)前連接數(shù)currentconnections、歷史最大連接數(shù)maximumconnections、歷史總共連接數(shù)totalconnections;
步驟二:調(diào)用評(píng)價(jià)體系8種指標(biāo),將8種指標(biāo)打分結(jié)果新增到數(shù)據(jù)庫(kù)中,由同級(jí)信息系統(tǒng)計(jì)算出總評(píng)分;當(dāng)總評(píng)分大于或等于80時(shí),開(kāi)啟動(dòng)態(tài)減容;當(dāng)總評(píng)分小于80時(shí),開(kāi)啟動(dòng)態(tài)擴(kuò)容;
步驟三:動(dòng)態(tài)減容開(kāi)啟,系統(tǒng)自動(dòng)刪除備用節(jié)點(diǎn);動(dòng)態(tài)擴(kuò)容開(kāi)啟,系統(tǒng)自動(dòng)增加備用節(jié)點(diǎn)。
進(jìn)一步地,所述步驟二中,8種指標(biāo)包含
指標(biāo)1:運(yùn)行方式模型系統(tǒng)接口服務(wù)完整性,是或否;
指標(biāo)2:運(yùn)行方式模型系統(tǒng)部署架構(gòu)完整性,是或否;
指標(biāo)3:運(yùn)行方式模型系統(tǒng)網(wǎng)絡(luò)終端配置檢查,是或否;
指標(biāo)4:運(yùn)行方式模型虛擬化集成檢查;
指標(biāo)5:運(yùn)行方式模型服務(wù)器完整性;
指標(biāo)6:運(yùn)行方式模型網(wǎng)絡(luò)設(shè)備完整性,是或否;
指標(biāo)7:運(yùn)行方式模型安全設(shè)備完整性;
指標(biāo)8:運(yùn)行方式模型存儲(chǔ)設(shè)備完整性。
進(jìn)一步地,所述8種指標(biāo)分為動(dòng)態(tài)、靜態(tài)指標(biāo)兩類(lèi),動(dòng)態(tài)指標(biāo)打分以各個(gè)數(shù)據(jù)為主,靜態(tài)指標(biāo)打分以運(yùn)行方式模型完整度為主。
進(jìn)一步地,所述步驟三中,自動(dòng)增加備用節(jié)點(diǎn)具體為,
獲取服務(wù)數(shù)據(jù),當(dāng)連續(xù)2次1分鐘內(nèi)用戶(hù)請(qǐng)求總數(shù)都達(dá)到指定數(shù)目100個(gè),則默認(rèn)系統(tǒng)過(guò)載,需自動(dòng)增加一個(gè)系統(tǒng)配置好的備用節(jié)點(diǎn)。
進(jìn)一步地,增加備用節(jié)點(diǎn)時(shí),首先判斷備用節(jié)點(diǎn)數(shù)量;
當(dāng)有2個(gè)或2個(gè)以上備用節(jié)點(diǎn)時(shí),對(duì)所有備用節(jié)點(diǎn)進(jìn)行優(yōu)先級(jí)判斷,優(yōu)先級(jí)判斷根據(jù)節(jié)點(diǎn)對(duì)應(yīng)虛擬機(jī)的內(nèi)存、硬盤(pán)、cpu參數(shù)進(jìn)行匹配,將優(yōu)先級(jí)最高的備用節(jié)點(diǎn)部署應(yīng)用服務(wù),增加到系統(tǒng)上,完成動(dòng)態(tài)擴(kuò)容;
當(dāng)只有一個(gè)備用節(jié)點(diǎn)時(shí),則直接對(duì)該節(jié)點(diǎn)部署應(yīng)用,增加到系統(tǒng)中。
進(jìn)一步地,所述步驟三中,自動(dòng)刪除備用節(jié)點(diǎn)具體為,
獲取服務(wù)數(shù)據(jù),當(dāng)連續(xù)5次1分鐘內(nèi)用戶(hù)請(qǐng)求總數(shù)都低于30個(gè)時(shí),則默認(rèn)系統(tǒng)閑置,自動(dòng)刪除一個(gè)系統(tǒng)配置好的備用節(jié)點(diǎn)。
進(jìn)一步地,刪除備用節(jié)點(diǎn)時(shí),首先判斷備用節(jié)點(diǎn)數(shù)量;
當(dāng)備用節(jié)點(diǎn)為0時(shí),則不再刪除節(jié)點(diǎn),退出動(dòng)態(tài)減容程序并等待下一次程序分析;
當(dāng)只剩一個(gè)備用節(jié)點(diǎn)時(shí),刪除該備用節(jié)點(diǎn);
當(dāng)備用節(jié)點(diǎn)為2個(gè)或2個(gè)以上時(shí),對(duì)所有備用節(jié)點(diǎn)進(jìn)行優(yōu)先級(jí)判斷,優(yōu)先級(jí)判斷根據(jù)節(jié)點(diǎn)對(duì)應(yīng)虛擬機(jī)的內(nèi)存、硬盤(pán)、cpu參數(shù)進(jìn)行匹配,將優(yōu)先級(jí)最高的備用節(jié)點(diǎn)刪除。
進(jìn)一步地,所述步驟三中動(dòng)態(tài)擴(kuò)容和動(dòng)態(tài)減容計(jì)算過(guò)程為,
定義6個(gè)參數(shù)newnum1,newnum2,newnum3,newnum4,newnum5,newnum6從左往右依次代表前5分鐘、前4分鐘、前3分鐘、前2分鐘、前1分鐘、當(dāng)前時(shí)間所獲取的6個(gè)totalconnection值,定義一個(gè)[a0,a1,a2,a3,a4]集合用來(lái)存放5分鐘內(nèi)每分鐘的歷史總連接數(shù);
a0=newnum2-newnum1、a1=newnum3-newnum2、a2=newnum4-newnum3、a3=newnum5-newnum4、a4=newnum6-newnum5從左往右依次表示連續(xù)每分鐘的歷史總連接數(shù);
最近連續(xù)兩次每分鐘獲取到的數(shù)據(jù)都大于100即a3和a4同時(shí)大于100,同時(shí)判斷當(dāng)前節(jié)點(diǎn)數(shù)量,如果小于3,增加備用節(jié)點(diǎn);
最近連接5次每分鐘的數(shù)據(jù)都小于30,即a0,a1,a2,a3,a4都小于30,同時(shí)判斷節(jié)點(diǎn)數(shù)量如果大于1時(shí),刪除備用節(jié)點(diǎn)。
本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點(diǎn)和效果:
1.根據(jù)客觀的系統(tǒng)的當(dāng)前狀態(tài),完成f5服務(wù)器節(jié)點(diǎn)資源的合理分配,提前規(guī)避掉風(fēng)險(xiǎn)。
2.解放人力資源,實(shí)現(xiàn)自動(dòng)化。
附圖說(shuō)明
圖1是本發(fā)明的基于f5服務(wù)器節(jié)點(diǎn)的動(dòng)態(tài)擴(kuò)容日常運(yùn)維策略的打分流程圖。
圖2是本發(fā)明的基于f5服務(wù)器節(jié)點(diǎn)的動(dòng)態(tài)擴(kuò)容日常運(yùn)維策略的動(dòng)態(tài)擴(kuò)容流程圖。
具體實(shí)施方式
下面結(jié)合附圖并通過(guò)實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明,以下實(shí)施例是對(duì)本發(fā)明的解釋而本發(fā)明并不局限于以下實(shí)施例。
如圖所示,本發(fā)明的一種基于f5服務(wù)器節(jié)點(diǎn)的動(dòng)態(tài)擴(kuò)容日常運(yùn)維策略,其特征在于包含以下步驟:
步驟一:獲取數(shù)據(jù),通過(guò)聯(lián)系廠商,與其建立網(wǎng)絡(luò)通信,產(chǎn)生數(shù)據(jù)交互。再由我們本地系統(tǒng)監(jiān)控捕捉數(shù)據(jù)。獲取的數(shù)據(jù)包含服務(wù)節(jié)點(diǎn)的輸入量bitsin、服務(wù)節(jié)點(diǎn)的輸出量bitsout、訪問(wèn)包的大小packetin、輸出包的大小packetout、當(dāng)前連接數(shù)currentconnections、歷史最大連接數(shù)maximumconnections、歷史總共連接數(shù)totalconnections。前4個(gè)參數(shù)記錄了當(dāng)前所有用戶(hù)訪問(wèn)f5時(shí),f5的輸入輸出大小。后3個(gè)參數(shù)記錄了用戶(hù)的訪問(wèn)次數(shù)情況。
目前影響f5性能的指標(biāo)是f5自身的吞吐量和處理請(qǐng)求的最大指標(biāo)數(shù)。現(xiàn)實(shí)生活中用戶(hù)的訪問(wèn)請(qǐng)求和返回給用戶(hù)的數(shù)據(jù)大小一般不會(huì)超過(guò)500k、500m,基本不用考慮出現(xiàn)單個(gè)用戶(hù)訪問(wèn)數(shù)據(jù)量過(guò)大的情況。壓縮包的大小也是按照請(qǐng)求和返回?cái)?shù)據(jù)的大小決定,其大小更是要小。由于currentconnection數(shù)據(jù)難以實(shí)時(shí)捕捉,且難以分析。所以一般通過(guò)totalconnection為參考f5動(dòng)態(tài)擴(kuò)容的指標(biāo)。
步驟二:調(diào)用評(píng)價(jià)體系8種指標(biāo),將8種指標(biāo)打分結(jié)果新增到數(shù)據(jù)庫(kù)中,由同級(jí)信息系統(tǒng)計(jì)算出總評(píng)分;當(dāng)總評(píng)分大于或等于80時(shí),開(kāi)啟動(dòng)態(tài)減容;當(dāng)總評(píng)分小于80時(shí),開(kāi)啟動(dòng)態(tài)擴(kuò)容。
8種指標(biāo)包含
指標(biāo)1:運(yùn)行方式模型系統(tǒng)接口服務(wù)完整性,是或否;
指標(biāo)2:運(yùn)行方式模型系統(tǒng)部署架構(gòu)完整性,是或否;
指標(biāo)3:運(yùn)行方式模型系統(tǒng)網(wǎng)絡(luò)終端配置檢查,是或否;
指標(biāo)4:運(yùn)行方式模型虛擬化集成檢查;
指標(biāo)5:運(yùn)行方式模型服務(wù)器完整性;
指標(biāo)6:運(yùn)行方式模型網(wǎng)絡(luò)設(shè)備完整性,是或否;
指標(biāo)7:運(yùn)行方式模型安全設(shè)備完整性;
指標(biāo)8:運(yùn)行方式模型存儲(chǔ)設(shè)備完整性。
8種指標(biāo)分為動(dòng)態(tài)、靜態(tài)指標(biāo)兩類(lèi),動(dòng)態(tài)指標(biāo)打分以各個(gè)數(shù)據(jù)為主,靜態(tài)指標(biāo)打分以運(yùn)行方式模型完整度為主。
我們針對(duì)測(cè)試系統(tǒng)進(jìn)行了模擬操作后發(fā)現(xiàn),正常的發(fā)送請(qǐng)求時(shí),通過(guò)獲取到的數(shù)據(jù)與網(wǎng)絡(luò)的速度分析可知,bitin與packetin對(duì)于系統(tǒng)的影響并不大,網(wǎng)絡(luò)的處理時(shí)間不超過(guò)半分鐘。只有當(dāng)currentconnection升高時(shí),測(cè)試系統(tǒng)的訪問(wèn)速度明顯下降很多,過(guò)一段時(shí)間后才緩緩變快,說(shuō)明f5系統(tǒng)的處理量有一定的大小。這就說(shuō)明currentconnection過(guò)高直接影響了f5服務(wù)系統(tǒng)的穩(wěn)定性。這就是造成系統(tǒng)繁忙,影響用戶(hù)的正常使用的原因。所以此時(shí)我們需要對(duì)系統(tǒng)進(jìn)行擴(kuò)容,增加系統(tǒng)處理量,提高系統(tǒng)的穩(wěn)定性。
步驟三:動(dòng)態(tài)減容開(kāi)啟,系統(tǒng)自動(dòng)刪除備用節(jié)點(diǎn);動(dòng)態(tài)擴(kuò)容開(kāi)啟,系統(tǒng)自動(dòng)增加備用節(jié)點(diǎn)。
自動(dòng)增加備用節(jié)點(diǎn)具體為,
獲取服務(wù)數(shù)據(jù),當(dāng)連續(xù)2次1分鐘內(nèi)用戶(hù)請(qǐng)求總數(shù)都達(dá)到指定數(shù)目100個(gè),則默認(rèn)系統(tǒng)過(guò)載,需自動(dòng)增加一個(gè)系統(tǒng)配置好的備用節(jié)點(diǎn)。
增加備用節(jié)點(diǎn)時(shí),首先判斷備用節(jié)點(diǎn)數(shù)量;
當(dāng)有2個(gè)或2個(gè)以上備用節(jié)點(diǎn)時(shí),對(duì)所有備用節(jié)點(diǎn)進(jìn)行優(yōu)先級(jí)判斷,優(yōu)先級(jí)判斷根據(jù)節(jié)點(diǎn)對(duì)應(yīng)虛擬機(jī)的內(nèi)存、硬盤(pán)、cpu參數(shù)進(jìn)行匹配,將優(yōu)先級(jí)最高的備用節(jié)點(diǎn)部署應(yīng)用服務(wù),增加到系統(tǒng)上,完成動(dòng)態(tài)擴(kuò)容;
當(dāng)只有一個(gè)備用節(jié)點(diǎn)時(shí),則直接對(duì)該節(jié)點(diǎn)部署應(yīng)用,增加到系統(tǒng)中。
自動(dòng)刪除備用節(jié)點(diǎn)具體為,
獲取服務(wù)數(shù)據(jù),當(dāng)連續(xù)5次1分鐘內(nèi)用戶(hù)請(qǐng)求總數(shù)都低于30個(gè)時(shí),則默認(rèn)系統(tǒng)閑置,自動(dòng)刪除一個(gè)系統(tǒng)配置好的備用節(jié)點(diǎn)。
刪除備用節(jié)點(diǎn)時(shí),首先判斷備用節(jié)點(diǎn)數(shù)量;
當(dāng)備用節(jié)點(diǎn)為0時(shí),則不再刪除節(jié)點(diǎn),退出動(dòng)態(tài)減容程序并等待下一次程序分析;
當(dāng)只剩一個(gè)備用節(jié)點(diǎn)時(shí),刪除該備用節(jié)點(diǎn);
當(dāng)備用節(jié)點(diǎn)為2個(gè)或2個(gè)以上時(shí),對(duì)所有備用節(jié)點(diǎn)進(jìn)行優(yōu)先級(jí)判斷,優(yōu)先級(jí)判斷根據(jù)節(jié)點(diǎn)對(duì)應(yīng)虛擬機(jī)的內(nèi)存、硬盤(pán)、cpu參數(shù)進(jìn)行匹配,將優(yōu)先級(jí)最高的備用節(jié)點(diǎn)刪除。
動(dòng)態(tài)擴(kuò)容和動(dòng)態(tài)減容計(jì)算過(guò)程為,
先獲取數(shù)據(jù),通過(guò)獲取當(dāng)前totalconnections,之后每分鐘獲取一次totalconnections,通過(guò)之后每分鐘獲取到的值減去前1分鐘獲取到的值,可以得到多個(gè)連續(xù)的每分鐘內(nèi)用戶(hù)的請(qǐng)求總數(shù)。
定義6個(gè)參數(shù)newnum1,newnum2,newnum3,newnum4,newnum5,newnum6從左往右依次代表前5分鐘、前4分鐘、前3分鐘、前2分鐘、前1分鐘、當(dāng)前時(shí)間所獲取的6個(gè)totalconnection值,定義一個(gè)[a0,a1,a2,a3,a4]集合用來(lái)存放5分鐘內(nèi)每分鐘的歷史總連接數(shù);
a0=newnum2-newnum1、a1=newnum3-newnum2、a2=newnum4-newnum3、a3=newnum5-newnum4、a4=newnum6-newnum5從左往右依次表示連續(xù)每分鐘的歷史總連接數(shù);每分鐘的數(shù)據(jù)實(shí)時(shí)更新,由左邊的數(shù)據(jù)代替右邊相鄰的數(shù)據(jù),最右邊的都是當(dāng)前1分鐘的最新數(shù)據(jù)。
獲取到數(shù)據(jù)后,開(kāi)始分析數(shù)據(jù),最近連續(xù)兩次每分鐘獲取到的數(shù)據(jù)都大于100即a3和a4同時(shí)大于100,同時(shí)判斷當(dāng)前節(jié)點(diǎn)數(shù)量,如果小于3,增加備用節(jié)點(diǎn);
最近連接5次每分鐘的數(shù)據(jù)都小于30,即a0,a1,a2,a3,a4都小于30,同時(shí)判斷節(jié)點(diǎn)數(shù)量如果大于1時(shí),刪除備用節(jié)點(diǎn)。
此時(shí),newnum1,newnum2,newnum3,newnum4,newnum5,newnum6的算法可概括為newnum的算法。(newnum=a*4264967294l+b)||[newnum=(a+1)*4264967294l+b]。
其中,a指高位,b指低位。我們獲取到的網(wǎng)絡(luò)數(shù)據(jù)類(lèi)型都是由高低位組合而成的,其中普遍意義上的高低位是32位,64位。我們通過(guò)實(shí)際驗(yàn)證,最后得出newnum由32位換算法獲取。一般意義上的32位來(lái)?yè)Q算,其32位的低位最大數(shù)據(jù)為4264967294l,超過(guò)該數(shù)據(jù)則高位自動(dòng)加1,其余的為低位。其低位又分為兩種,分別為正負(fù)數(shù),正數(shù)是不用轉(zhuǎn)義的,而負(fù)數(shù)是通過(guò)最大數(shù)據(jù)=4264967294l+該負(fù)數(shù),就可以得到最后的低位結(jié)果。
當(dāng)?shù)臀淮笥?時(shí)newnum=a*4264967294l+b,當(dāng)?shù)臀恍∮?時(shí)newnum=(a+1)*4264967294l+b。
下面通過(guò)具體實(shí)施例對(duì)本申請(qǐng)進(jìn)一步進(jìn)行說(shuō)明。
以f5系統(tǒng)為例,先給其附加一個(gè)壓力系統(tǒng)程序,先測(cè)增容效果。
在附加了壓力系統(tǒng)程序后,讓其檢測(cè)出系統(tǒng)繁忙。進(jìn)入動(dòng)態(tài)擴(kuò)容程序,過(guò)了2分鐘后,獲取到此前連續(xù)2個(gè)每分鐘的數(shù)值為32,156,不滿(mǎn)足增加節(jié)點(diǎn)的條件。接著獲取下一分鐘的數(shù)據(jù)為133,則滿(mǎn)足連續(xù)兩個(gè)每分鐘的數(shù)據(jù)大于100的條件,同時(shí)判斷出當(dāng)前節(jié)點(diǎn)數(shù)量1,觸發(fā)增加節(jié)點(diǎn)程序,當(dāng)前節(jié)點(diǎn)數(shù)量變?yōu)?。如果獲取到的節(jié)點(diǎn)數(shù)量為3,則不再增加節(jié)點(diǎn)。
以f5系統(tǒng)為例,取消壓力系統(tǒng)程序,再測(cè)減容效果。
過(guò)會(huì)兒,取消其壓力系統(tǒng)程序,獲取到當(dāng)前連續(xù)5次每分鐘的數(shù)值為128,12,11,14,10,不滿(mǎn)足減容條件。接著獲取下一分鐘的數(shù)據(jù)為33同時(shí)獲取當(dāng)前節(jié)點(diǎn)數(shù)量2,觸發(fā)刪除節(jié)點(diǎn)數(shù)據(jù),當(dāng)前節(jié)點(diǎn)數(shù)量為1。當(dāng)節(jié)點(diǎn)數(shù)量為1時(shí)是不會(huì)觸發(fā)節(jié)點(diǎn)自動(dòng)減少的程序的。
本說(shuō)明書(shū)中所描述的以上內(nèi)容僅僅是對(duì)本發(fā)明所作的舉例說(shuō)明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對(duì)所描述的具體實(shí)施例做各種修改或補(bǔ)充或采用類(lèi)似的方式替代,只要不偏離本發(fā)明說(shuō)明書(shū)的內(nèi)容或者超越本權(quán)利要求書(shū)所定義的范圍,均應(yīng)屬于本發(fā)明的保護(hù)范圍。