本發(fā)明涉及容器擴展,具體提供一種自適應容器擴展方法、系統(tǒng)、設備及介質(zhì)。
背景技術(shù):
1、容器技術(shù)已經(jīng)成為現(xiàn)代應用開發(fā)、部署和管理的重要工具,特別是在云環(huán)境中。與傳統(tǒng)的虛擬機相比,容器提供了更輕量級、更高效的解決方案,能夠?qū)崿F(xiàn)更精細的資源管理和更快的啟動時間。容器化應用程序可以在任何支持容器運行時的環(huán)境中一致地運行,從而大大提高了應用程序的可移植性和部署靈活性。然而,隨著應用規(guī)模的擴大和復雜性的增加,對容器系統(tǒng)的有效管理和智能擴展提出了更高的要求。
2、在多容器部署和動態(tài)變化的工作負載環(huán)境中,彈性擴展成為了關(guān)鍵能力?,F(xiàn)有的擴展方法主要是基于規(guī)則的擴展和基于閾值的自動擴展。這些方法在某些場景下表現(xiàn)良好,但由于依賴于歷史數(shù)據(jù)和預定義規(guī)則,難以處理不可預測的工作負載峰值,并且反應速度和精確度較低,難以確保實時數(shù)據(jù)處理,可靠性較低;簡單單一的擴展策略難以適應多樣化的應用需求,可能導致資源的過度配置或利用不足;另外,容器擴展不僅涉及cpu和內(nèi)存,還需要考慮網(wǎng)絡帶寬、存儲i/o等多個維度的資源限制,現(xiàn)有方法在處理多維度資源平衡時往往力不從心。
技術(shù)實現(xiàn)思路
1、為了解決現(xiàn)有技術(shù)中容器擴展可靠性較低、不適應多樣化的應用需求、資源利用率較低以及難以處理多維度資源約束的問題,本發(fā)明提供了一種自適應容器擴展方法、系統(tǒng)、設備及介質(zhì),能夠綜合考慮多種因素,適應多樣化的應用需求,實現(xiàn)智能化和自動化,提高了容器化應用的性能、可靠性和資源利用率。
2、本發(fā)明的具體方案如下。
3、第一方面,本發(fā)明提供了一種自適應容器擴展方法,包括:
4、s1、數(shù)據(jù)采集和預處理:持續(xù)從多個源頭對容器和應用相關(guān)的數(shù)據(jù)進行數(shù)據(jù)采集和數(shù)據(jù)預處理;
5、s2、多模態(tài)數(shù)據(jù)融合:對采集到的數(shù)據(jù)進行數(shù)據(jù)融合,得到多模態(tài)數(shù)據(jù)融合結(jié)果;
6、s3、資源使用預測:基于所述多模態(tài)數(shù)據(jù)融合結(jié)果,采用分層時序注意力網(wǎng)絡模型預測未來資源使用情況,生成預測結(jié)果;
7、s4、深度強化學習決策:基于所述預測結(jié)果選擇最優(yōu)的擴展動作;
8、s5、執(zhí)行和反饋:將所述擴展動作應用到實際環(huán)境中,并收集反饋計算獎勵。
9、本發(fā)明實現(xiàn)了對多模態(tài)數(shù)據(jù)的全面采集、有效預處理和深度融合,充分利用了不同來源數(shù)據(jù)的互補性,提高了對復雜場景的理解和預測能力;采用分層時序注意力網(wǎng)絡模型預測未來資源使用情況,提供了更準確和全面的資源使用預測,從而動態(tài)調(diào)整資源分配策略,在復雜和動態(tài)的環(huán)境中實現(xiàn)更優(yōu)的資源分配決策。本發(fā)明能夠綜合考慮多種因素,適應多樣化的應用需求,實現(xiàn)智能化和自動化,提高了容器化應用的性能、可靠性和資源利用率。
10、進一步地,步驟s1中所述的容器和應用相關(guān)的數(shù)據(jù)包括容器級指標和應用級指標以及主機級指標和容器性能參數(shù),所述數(shù)據(jù)采集采用分布式數(shù)據(jù)采集架構(gòu),所述數(shù)據(jù)預處理包括對采集到的時間序列數(shù)據(jù)實時進行清洗和標準化以及異常值處理。
11、系統(tǒng)使用輕量級的數(shù)據(jù)采集代理部署在每個容器和主機上,通過消息隊列實時傳輸數(shù)據(jù)到中央處理單元,實時對這些原始數(shù)據(jù)進行清洗和標準化,處理其中的缺失值和異常值,并進行必要的時間序列對齊。
12、進一步地,步驟s2中所述的對采集到的數(shù)據(jù)進行數(shù)據(jù)融合包括:對每個數(shù)據(jù)模態(tài)應用特征提取函數(shù)進行特征提取,然后采用注意力機制計算注意力權(quán)重,并將不同模態(tài)的特征進行加權(quán)融合,再構(gòu)建基于容器以及應用組件關(guān)系的圖結(jié)構(gòu),應用圖卷積網(wǎng)絡處理得到最終的多模態(tài)數(shù)據(jù)融合結(jié)果。
13、對每個數(shù)據(jù)模態(tài)應用特征提取函數(shù)進行特征提取時,對時間序列數(shù)據(jù)使用長短期記憶網(wǎng)絡進行特征提取,對結(jié)構(gòu)化數(shù)據(jù)使用多層感知機進行特征提取。所述注意力機制為不同模態(tài)分配重要性權(quán)重,采用激活函數(shù)引入非線性,增強模型的表達能力。所述圖結(jié)構(gòu)中,節(jié)點表示容器或應用組件,邊表示它們之間的依賴關(guān)系,節(jié)點特征包括容器的資源使用情況和應用的性能指標,邊的權(quán)重表示組件間的通信頻率。將融合后的特征作為圖節(jié)點的初始特征,應用圖卷積網(wǎng)絡進行信息傳播和更新,得到最終的多模態(tài)數(shù)據(jù)融合結(jié)果,使用兩層圖卷積網(wǎng)絡,捕捉節(jié)點間的高階交互關(guān)系,最終得到的多模態(tài)數(shù)據(jù)融合結(jié)果包含節(jié)點自身特征和鄰居節(jié)點信息。
14、通過步驟s1和s2,實現(xiàn)了對多模態(tài)數(shù)據(jù)的全面采集、有效預處理和深度融合。多模態(tài)數(shù)據(jù)融合結(jié)果包含了各個模態(tài)的重要信息,并考慮了容器以及應用組件之間的拓撲關(guān)系,為后續(xù)的資源使用預測和智能擴展決策提供了高質(zhì)量、高維度的輸入數(shù)據(jù)。這種融合方法充分利用了不同來源數(shù)據(jù)的互補性,提高了對復雜場景的理解和預測能力。
15、?進一步地,步驟s3中所述的分層時序注意力網(wǎng)絡模型包括?lstm?層和多頭注意力層以及輸出層,同時預測多個關(guān)鍵資源指標;所述lstm?層捕捉時間序列的長期依賴關(guān)系,所述多頭注意力層處理不同時間尺度的信息,所述輸出層生成最終的預測結(jié)果。
16、進一步地,步驟s3中所述的分層時序注意力網(wǎng)絡模型的訓練和預測過程如下:
17、s31:將所述多模態(tài)數(shù)據(jù)融合結(jié)果按時間順序切分成訓練序列;
18、s32:隨機初始化所述分層時序注意力網(wǎng)絡模型的所有可學習參數(shù);
19、s33:對于每個時間步,依次通過lstm層和多頭注意力層以及輸出層,得到預測結(jié)果;
20、s34:計算預測結(jié)果與真實值之間的均方誤差作為損失函數(shù);
21、s35:使用反向傳播算法計算梯度,并使用優(yōu)化器更新所述分層時序注意力網(wǎng)絡模型參數(shù);
22、s36:重復步驟s35,直到所述分層時序注意力網(wǎng)絡模型收斂或達到預設的訓練輪數(shù)。
23、分層時序注意力網(wǎng)絡模型會持續(xù)接收最新的多模態(tài)數(shù)據(jù)融合結(jié)果,并生成未來一段時間的資源使用預測。所述預測結(jié)果綜合考慮了容器級、應用級和主機級的多模態(tài)數(shù)據(jù),以及容器和應用組件間的拓撲關(guān)系,從而提供了更準確和全面的資源使用預測。系統(tǒng)根據(jù)所述預測結(jié)果動態(tài)調(diào)整資源分配策略,以應對即將到來的負載變化,從而在復雜和動態(tài)的環(huán)境中實現(xiàn)更優(yōu)的資源分配決策。
24、進一步地,步驟s4中所述的基于所述預測結(jié)果選擇最優(yōu)的擴展動作采用深度q網(wǎng)絡,包括:初始化深度q網(wǎng)絡參數(shù)和經(jīng)驗回放緩沖區(qū),然后獲取當前輸入狀態(tài),使用ε-貪心策略選擇并執(zhí)行輸出動作,觀察新的狀態(tài)和獎勵并將經(jīng)驗存儲到經(jīng)驗回放緩沖區(qū),再從經(jīng)驗回放緩沖區(qū)中隨機采樣一批經(jīng)驗,計算目標q值并更新深度q網(wǎng)絡參數(shù)和目標網(wǎng)絡參數(shù);所述深度q網(wǎng)絡的輸入狀態(tài)包含所述多模態(tài)數(shù)據(jù)融合結(jié)果和預測結(jié)果,所述輸出動作表示對容器資源的具體調(diào)整。
25、通過步驟s4,深度q網(wǎng)絡能夠逐步學習到在不同狀態(tài)下選擇最優(yōu)擴展動作的策略,從而實現(xiàn)智能化的資源分配和容器擴展。在實際部署過程中系統(tǒng)會持續(xù)監(jiān)控環(huán)境變化,并根據(jù)新的觀察結(jié)果不斷優(yōu)化決策策略,以適應動態(tài)變化的工作負載和資源需求。這種自適應學習機制確保了系統(tǒng)在面對復雜多變的環(huán)境時,能夠始終保持高效的資源管理能力。
26、進一步地,步驟s5中所述的收集反饋計算獎勵包括:根據(jù)所述反饋計算sla滿意度和資源利用率以及成本,代入獎勵函數(shù)得到所述擴展動作的獎勵。
27、步驟s5的具體包括:首先根據(jù)當前輸入狀態(tài)和深度q網(wǎng)絡模型選擇一個動作,將選定的動作應用到目標容器,并等待一定時間穩(wěn)定后,收集執(zhí)行動作后的各項指標,包括響應時間、錯誤率、各類資源的使用量等,根據(jù)收集到的指標計算sla滿意度、資源利用率和成本,將這些計算結(jié)果代入獎勵函數(shù),得到本次動作的獎勵值,將狀態(tài)、動作、獎勵和新狀態(tài)存入經(jīng)驗回放緩沖區(qū),定期從經(jīng)驗回放緩沖區(qū)中采樣,更新深度q網(wǎng)絡模型的參數(shù)。
28、所述獎勵函數(shù)綜合考慮了系統(tǒng)性能、資源利用效率和運營成本,旨在保證服務質(zhì)量的同時,最大化資源利用率并最小化成本。系統(tǒng)通過不斷執(zhí)行動作、收集反饋并更新深度q網(wǎng)絡模型,逐步學習到在不同狀態(tài)下的最優(yōu)資源分配策略,從而能夠更準確地預測資源需求,并做出更優(yōu)的擴展決策,從而實現(xiàn)容器資源的智能化管理。
29、第二方面,本發(fā)明還提供了一種自適應容器擴展系統(tǒng),包括:
30、多模態(tài)數(shù)據(jù)采集與預處理模塊,持續(xù)從多個源頭對容器和應用相關(guān)的數(shù)據(jù)進行數(shù)據(jù)采集和數(shù)據(jù)預處理;
31、多模態(tài)數(shù)據(jù)融合模塊,對采集到的數(shù)據(jù)進行數(shù)據(jù)融合,得到多模態(tài)數(shù)據(jù)融合結(jié)果;
32、資源使用預測模塊,基于所述多模態(tài)數(shù)據(jù)融合結(jié)果,采用分層時序注意力網(wǎng)絡模型預測未來資源使用情況,生成預測結(jié)果;
33、深度強化學習決策模塊,基于所述預測結(jié)果選擇最優(yōu)的擴展動作;
34、執(zhí)行和反饋模塊,將所述擴展動作應用到實際環(huán)境中,并收集反饋計算獎勵;
35、所述系統(tǒng)執(zhí)行所述一種自適應容器擴展方法。所述系統(tǒng)還包括多個容器、應用以及主機。
36、第三方面,本發(fā)明還提供了一種電子設備,包括:
37、一個或多個處理器;
38、存儲器;
39、以及一個或多個程序,所述一個或多個程序被存儲在所述存儲器中,并且被配置為由所述一個或多個處理器執(zhí)行,所述程序被處理器執(zhí)行時實現(xiàn)所述一種自適應容器擴展方法。
40、第四方面,本發(fā)明還提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)所述一種自適應容器擴展方法。
41、因此,本發(fā)明有如下有益效果:
42、本發(fā)明實現(xiàn)了對多模態(tài)數(shù)據(jù)的全面采集、有效預處理和深度融合,充分利用了不同來源數(shù)據(jù)的互補性,提高了對復雜場景的理解和預測能力;采用分層時序注意力網(wǎng)絡模型預測未來資源使用情況,提供了更準確和全面的資源使用預測,從而動態(tài)調(diào)整資源分配策略,在復雜和動態(tài)的環(huán)境中實現(xiàn)更優(yōu)的資源分配決策;系統(tǒng)通過不斷執(zhí)行動作、收集反饋并更新深度q網(wǎng)絡模型,能夠更準確地預測資源需求,并做出更優(yōu)的擴展決策,以適應動態(tài)變化的工作負載和資源需求,從而實現(xiàn)容器資源的智能化管理。本發(fā)明能夠綜合考慮多種因素,適應多樣化的應用需求,實現(xiàn)智能化和自動化,提高了容器化應用的性能、可靠性和資源利用率。