一種因特網協(xié)議存儲在線升級方法和裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及通信技術領域,特別涉及一種因特網協(xié)議存儲在線升級方法和裝置。
【背景技術】
[0002]在現(xiàn)有的分布式或集中式IP存儲中,存儲節(jié)點上的存儲服務程序需要升級時,存儲節(jié)點需先下線,升級完成后再上線來實現(xiàn)存儲程序的升級。
[0003]以分布式存儲方式下存儲程序升級過程為例:多個存儲結點組成一個存儲集群,存儲程序升級通過逐一結點升級,當對其中一個存儲節(jié)點上的存儲程序升級時,該存儲節(jié)點退出存儲集群,對存儲節(jié)點的讀寫訪問,變成對該存儲節(jié)點的副本數據進行訪問,副本數據可以運行在當前存儲集群中的存儲節(jié)點上。退出存儲集群的存儲節(jié)點對存儲程序升級完成后,再加入所述存儲集群,并進行數據同步,再對存儲集群中的下一個存儲節(jié)點上的存儲程序進行升級,直到存儲集群中的所有存儲節(jié)點上的存儲程序均升級完成。
[0004]上述升級方案需要存儲節(jié)點作下線、上線處理,若進行在線升級需受副本的限制,存儲節(jié)點上線后需要對數據進行同步,系統(tǒng)運行可靠性低。
【發(fā)明內容】
[0005]有鑒于此,本申請?zhí)峁┮环N因特網協(xié)議存儲在線升級方法和裝置,以解決在線升級時,系統(tǒng)運行可靠性低的問題。
[0006]為解決上述技術問題,本申請的技術方案是這樣實現(xiàn)的:
[0007]一種因特網協(xié)議存儲在線升級方法,該方法包括:
[0008]存儲節(jié)點啟動第一存儲服務程序,在接收到存儲客戶端發(fā)送的訪問請求時,使用第一存儲服務程序處理;
[0009]當需要對第一存儲服務程序升級時,啟動第二存儲服務程序,并關閉第一存儲服務程序;在接收到存儲客戶端發(fā)送的訪問請求時,使用第二存儲服務程序處理;所述第一存儲服務程序與第二存儲服務程序相同;在使用第一存儲服務程序和第二存儲服務程序處理訪問請求時訪問同一存儲介質;
[0010]該存儲節(jié)點對第一存儲服務程序進行升級,并在升級完成后,啟動升級后的第一存儲服務程序,用于在接收到存儲客戶端發(fā)送的訪問請求時,使用升級后的第一存儲服務程序處理。
[0011]一種因特網協(xié)議存儲在線升級裝置,該裝置包括:收發(fā)單元、第一存儲服務單元和第二存儲服務單元;
[0012]所述收發(fā)單元,用于接收存儲客戶端發(fā)送的訪問請求;
[0013]所述第一存儲服務單元,用于啟動第一存儲服務程序,當所述收發(fā)單元接收到的存儲客戶端發(fā)送的訪問請求,使用第一存儲服務程序處理;當所述第二存儲服務單元啟動第二存儲服務程序之后,關閉第一存儲服務程序;所述第一存儲服務程序與第二存儲服務程序相同;對第一存儲服務程序進行升級,并在升級完成后,啟動升級后的第一存儲服務程序,當所述收發(fā)單元接收到存儲客戶端發(fā)送的訪問請求時,使用升級后的第一存儲服務程序處理;
[0014]所述第二存儲服務單元,用于當所述第一存儲服務單元需要對第一存儲服務程序升級時,啟動第二存儲服務程序;當所述收發(fā)單元接收到的存儲客戶端發(fā)送的訪問請求時,使用第二存儲服務程序處理,其中,在使用第一存儲服務程序和第二存儲服務程序處理訪問請求時訪問同一存儲介質。
[0015]由上面的技術方案可知,本申請中在存儲節(jié)點上備份一個存儲服務程序,在處理存儲客戶端發(fā)送的訪問請求的存儲服務程序需要升級時,使用備份的存儲服務程序處理訪問請求;待升級結束后再切換到升級后的服務程序處理訪問請求。本申請?zhí)峁┑纳壏桨钢С衷诰€升級,且不受必須使用副本的限制,避免了升級過程中大量數據同步的問題,從而能夠提尚系統(tǒng)運彳丁的可靠性。
【附圖說明】
[0016]圖1為本申請實施例一中因特網協(xié)議存儲在線升級方法流程示意圖;
[0017]圖2為本申請實施例二中因特網協(xié)議存儲在線升級方法流程示意圖;
[0018]圖3為本申請實施例中在線升級前存儲訪問過程示意圖;
[0019]圖4為本申請實施例中在線升級過程中存儲訪問過程示意圖;
[0020]圖5為本申請實施例中在線升級后存儲訪問過程示意圖;
[0021]圖6為本申請實施例中應用于上述技術的裝置結構示意圖。
【具體實施方式】
[0022]為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,下面結合附圖并舉實施例,對本發(fā)明的技術方案進行詳細說明。
[0023]本申請實施例中提供一種因特網協(xié)議存儲在線升級方法,該方法可以應用于集中式存儲節(jié)點上,也可以應用于分布式存儲節(jié)點中的任一分布式存儲節(jié)點上。在存儲節(jié)點上備份一個存儲服務程序,在處理存儲客戶端發(fā)送的訪問請求的存儲服務程序需要升級時,使用備份的存儲服務程序處理訪問請求;待升級結束后再切換到升級后的服務程序處理訪問請求。本申請?zhí)峁┑纳壏桨钢С衷诰€升級,且不受必須使用副本的限制,避免了升級過程中大量數據同步的問題,從而能夠提高系統(tǒng)運行的可靠性。
[0024]本申請具體實施例中,存儲節(jié)點運行兩個存儲服務程序,分別為第一存儲服務程序和第二存儲服務程序,第二存儲服務程序與第一存儲服務程序相同,可以看作第一存儲服務程序的備份。
[0025]該存儲節(jié)點為所述第一存儲服務程序和第二存儲服務程序所配置的服務地址不同。存儲節(jié)點將為第一服務程序所配置的服務地址提供給存儲客戶端,使存儲客戶端端使用該服務地址訪問存儲節(jié)點。
[0026]實施例一
[0027]參見圖1,圖1為本申請實施例一中因特網協(xié)議存儲在線升級方法流程示意圖。具體步驟為:
[0028]步驟101,存儲節(jié)點啟動第一存儲服務程序,在接收到存儲客戶端發(fā)送的訪問請求時,使用第一存儲服務程序處理。
[0029]步驟102,當需要對第一存儲服務程序升級時,該存儲節(jié)點啟動第二存儲服務程序,并關閉第一存儲服務程序;在接收到存儲客戶端發(fā)送的訪問請求時,使用第二存儲服務程序處理。
[0030]步驟103,該存儲節(jié)點對第一存儲服務程序進行升級,并在升級完成后,啟動升級后的第一存儲服務程序,在接收到存儲客戶端發(fā)送的訪問請求時,使用升級后的第一存儲服務程序處理。
[0031]本實施例中存儲節(jié)點在使用第一存儲服務程序和第二存儲服務程序處理訪問請求時訪問同一存儲介質,因此,在服務程序升級前后,不需要進行數據同步。
[0032]實施例二
[0033]參見圖2,圖2為本申請實施例二中因特網協(xié)議存儲在線升級方法流程示意圖。具體步驟為:
[0034]步驟201,存儲節(jié)點啟動第一存儲服務程序,在接收到存儲客戶端發(fā)送的訪問請求時,使用第一存儲服務程序處理。
[0035]由于存儲節(jié)點為存儲客戶端提供的服務地址為,為第一存儲服務程序所配置的服務地址,因此,在正常情況下,如在存儲服務程序不需要升級時,使用第一存儲服務程序處理存儲客戶端發(fā)送的訪問請求。
[0036]參見圖3,圖3為本申請實施例中在線升級前存儲訪問過程示意圖。圖3中存儲節(jié)點為第一存儲服務程序配置的服務地址為192.168.1.1,為第二存儲服務程序配置的服務地址為192.168.2.1,并將服務地址192.168.1.1提供給存儲客戶端,用于進行存儲訪問。
[0037]存儲節(jié)點在線升級之前,存儲節(jié)點啟動第一存儲服務程序;當存儲節(jié)點接收到存儲客戶端發(fā)送的訪問請求時,由于訪問請求的目的地址為192.168.1.1,直接使用啟動的第一存儲服務程序對該訪問請求進行處理,處理過程為根據訪問請求內容對存儲介質進行訪問,并將訪問結果響應給存儲客戶端。
[0038]在存儲節(jié)點升級之前,即正常工作時,不使用第二存儲服務程序。
[0039]步驟202,當需要對第一存儲服務程序升級時,該存儲節(jié)點啟動第二存儲服務程序。
[0040]步驟203,該存儲節(jié)點開啟網絡地址轉換(Network Address Translat1n,NAT)功能,并關閉第一存儲服務程序,在接收到存儲客戶端發(fā)送的訪問請求時,使用第二存儲服務程序處理接收到的存儲客戶端發(fā)送的訪問請求。
[0041]該存儲節(jié)點在接收到存儲客戶端發(fā)送的訪問請求時,若NAT功能開啟,則將該訪問請求的目的地址轉換為,為第二存儲服務程序所配置的服務地址;此時,可以使用啟動的第二存儲服務程序處理接收到的訪問請求。
[0042]由本申請的實施流程可見,啟動第二存儲服務程序后,啟動NAT功能,當使用NAT功能將訪問請求的目的地址轉換為,為第二存儲服務程序所配置的服務地址,這樣,就可以使用第二存儲服務程序處理轉換目的地址后的訪問請求。
[0043]該存儲節(jié)點使用第二存儲服務程序處理接收到的訪問請求時,向所述存儲客戶端發(fā)送訪問響應時,將該訪問響應的源地址替換為,為第一存儲服務程序所配置的服務地址,并發(fā)送給所述存儲客戶端,即使存儲客戶端接收到訪問響應時,獲知進行響應的服務地址為存儲節(jié)點提供給本存儲客戶端的服務地址。
[0044]本申請實施例中的訪問請求和訪問響應為IP報文。
[0045]參見圖4,圖4為本申請實施例中在線升級過程中存儲訪問過程示意圖。存儲節(jié)點當需要對第一存儲服務程序升級時,啟動第二存儲服務程序,開啟NAT功能,并關閉第一存儲服務程序。對第一存儲服務程序進行升級。
[0046]當存儲節(jié)點接收到存儲客戶端發(fā)送的訪問請求時,使用啟動的NAT功能將訪問請求的目的IP地址192.168.1.1轉換為為第二存儲服務程序配置的服務地址192.168.2.1,使用第二存儲服務程序處理接收到的訪問請求;在使用第二存儲服務程序處理訪問請求時,也訪問與使用第一存儲服務程序訪問的存儲介質相同的存儲介質,在訪問存儲介質結束,將訪問結果響應給存儲客戶端之前,再進行NAT轉換,將向存儲客戶端發(fā)送的攜帶訪問結果的訪問響應的源IP地址192.168.2.1轉換為192.168.1.1之后,發(fā)送給存儲客戶端,使存儲客戶端以為是使用服務地址192.168.1.1的第一存儲服務程序進行的訪問處理。
[0047]步驟204,該存儲節(jié)點對第一存儲服務程序進行升級,并在升級完成后,啟動升級后的第一存儲服務程序,在接收到存儲客戶端發(fā)送的訪問請求時,使