專利名稱:計(jì)算機(jī)系統(tǒng)及其存儲(chǔ)控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計(jì)算機(jī)系統(tǒng),尤其是涉及一種對(duì)主機(jī)裝置動(dòng)態(tài)地分配存儲(chǔ)容量的計(jì)算機(jī)系統(tǒng)及其存儲(chǔ)控制方法。
背景技術(shù):
以往,存在針對(duì)主機(jī)裝置提供大規(guī)模的數(shù)據(jù)儲(chǔ)存服務(wù)的計(jì)算機(jī)系統(tǒng)。該系統(tǒng)作為具備主機(jī)裝置、主機(jī)裝置所連接的儲(chǔ)存裝置、以及儲(chǔ)存裝置的管理裝置的系統(tǒng)而被眾所周知。儲(chǔ)存裝置通過RAID (Redundant Array of Independent/Inexpensive Disks :獨(dú)立磁盤冗余陣列)方式管理多個(gè)硬盤。并且,將大量硬盤所具有的物理存儲(chǔ)區(qū)域進(jìn)行邏輯化,將邏輯化后的存儲(chǔ)區(qū)域作為邏輯卷提供給主機(jī)裝置。主機(jī)裝置訪問邏輯卷來請(qǐng)求進(jìn)行 數(shù)據(jù)的讀取/寫入。這種邏輯化技術(shù)之一有被稱為自動(dòng)精簡配置(Thin provisioning)的技術(shù)。儲(chǔ)存裝置不具有物理存儲(chǔ)區(qū)域,對(duì)主機(jī)裝置設(shè)定將存儲(chǔ)容量虛擬化得到的邏輯卷。該邏輯卷被稱為虛擬卷,與主機(jī)裝置訪問虛擬卷進(jìn)行寫入相一致地,儲(chǔ)存裝置對(duì)虛擬卷依次分配存儲(chǔ)區(qū)域。因而,該技術(shù)與從最初開始就對(duì)邏輯卷分配大容量的存儲(chǔ)區(qū)域的方式相比,在能夠有效地利用儲(chǔ)存資源方面是有效的。該技術(shù)被記載在美國專利6857059號(hào)公報(bào)、日本特開2003-015915號(hào)公報(bào)、日本特開2006-338341號(hào)公報(bào)、以及日本特開2008-234158號(hào)公報(bào)中。當(dāng)存在從主機(jī)裝置向虛擬卷的寫入訪問時(shí),用于對(duì)虛擬卷提供存儲(chǔ)區(qū)域的單元能夠從具有實(shí)際的存儲(chǔ)區(qū)域的容量池向虛擬卷的地址分配存儲(chǔ)容量,來保存寫入數(shù)據(jù)。在此,“容量池”(也簡稱為“池”)例如是將具有實(shí)際容量的多個(gè)邏輯組匯總為用于向虛擬卷寫入的的組而進(jìn)行定義和設(shè)定的,屬于池的多個(gè)邏輯卷分別被稱為存儲(chǔ)池卷。另外,US2005/055603公開了如下技術(shù)判斷針對(duì)已保存的數(shù)據(jù)的訪問頻率是高還是低,如果訪問頻率高,則根據(jù)存儲(chǔ)池卷的介質(zhì)的物理特性信息(介質(zhì)的種類、磁盤的旋轉(zhuǎn)數(shù)等),在池內(nèi)使數(shù)據(jù)轉(zhuǎn)移到由適合于高速處理的介質(zhì)構(gòu)成的存儲(chǔ)池卷。專利文獻(xiàn)I :美國專利6857059號(hào)公報(bào)專利文獻(xiàn)2 :日本特開2003-015915號(hào)公報(bào)專利文獻(xiàn)3 :日本特開2006-338341號(hào)公報(bào)專利文獻(xiàn)4 :日本特開2008-234158號(hào)公報(bào)專利文獻(xiàn)5 :美國公開US2005/055603號(hào)公報(bào)
發(fā)明內(nèi)容
在已述的現(xiàn)有技術(shù)中,當(dāng)產(chǎn)生池的空閑容量用盡的情況、或者在多個(gè)池之間空閑容量失衡的情況等時(shí),系統(tǒng)的管理者、或者系統(tǒng)的用戶在每次產(chǎn)生上述情況時(shí)都必須進(jìn)行單獨(dú)地定義存儲(chǔ)池卷并將其追加到池中等計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)的設(shè)定控制處理。其結(jié)果,以往的計(jì)算機(jī)系統(tǒng)存在無法迅速地應(yīng)對(duì)池的容量變化的問題。因此,本發(fā)明的目的在于提供一種計(jì)算機(jī)系統(tǒng)及其控制方法,其在從存儲(chǔ)池卷對(duì)上位系統(tǒng)的訪問對(duì)象動(dòng)態(tài)地分配存儲(chǔ)容量的計(jì)算機(jī)系統(tǒng)中,能夠迅速地應(yīng)對(duì)具有上述存儲(chǔ)池卷的池的狀態(tài)變動(dòng)。并且,本發(fā)明的另一目的在于提供一種能夠不依賴于管理者、用戶的操作而自動(dòng)地對(duì)池分配存儲(chǔ)池卷的計(jì)算機(jī)系統(tǒng)及其控制方法。并且,本發(fā)明的另一目的在于提供一種能夠按照儲(chǔ)存器的層級(jí)來管理、應(yīng)用池的結(jié)構(gòu)以及對(duì)池的邏輯存儲(chǔ)區(qū)域的分配的計(jì)算機(jī)系統(tǒng)及其控制方法。為了到達(dá)該目的,本發(fā)明所涉及的計(jì)算機(jī)系統(tǒng)的特征在于,其具有控制裝置,該控制裝置對(duì)主計(jì)算機(jī)訪問的訪問對(duì)象進(jìn)行設(shè)定,當(dāng)從主計(jì)算機(jī)產(chǎn)生針對(duì)訪問對(duì)象的寫入時(shí),每次都執(zhí)行從位于分配給上述訪問對(duì)象的池中的邏輯卷向上述訪問對(duì)象的寫入?yún)^(qū)域分配 存儲(chǔ)容量的處理,上述控制裝置預(yù)先定義其它的邏輯卷,將其作為針對(duì)上述池的預(yù)備邏輯卷匯總成管理組,根據(jù)上述池的狀態(tài)的變動(dòng),從上述管理組向上述池追加上述其它的邏輯卷。如以上所說明的那樣,根據(jù)本發(fā)明,能夠提供一種計(jì)算機(jī)系統(tǒng),其在從存儲(chǔ)池卷對(duì)上位系統(tǒng)的訪問對(duì)象動(dòng)態(tài)地分配存儲(chǔ)容量的計(jì)算機(jī)系統(tǒng)中,能夠迅速地應(yīng)對(duì)具有上述存儲(chǔ)池卷的池的狀態(tài)變動(dòng)。
圖I是表示本發(fā)明的計(jì)算機(jī)系統(tǒng)的第一例的硬件框圖。圖2是表示計(jì)算機(jī)系統(tǒng)的第二方式的硬件框圖。圖3是表示圖2所示的儲(chǔ)存裝置由具備多個(gè)簇的裝置構(gòu)成的例子的硬件框圖。圖4是表示儲(chǔ)存裝置所進(jìn)行的存儲(chǔ)區(qū)域的動(dòng)態(tài)分配的動(dòng)作的功能框圖。圖5A是包含虛擬卷與存儲(chǔ)池卷的對(duì)應(yīng)關(guān)系的儲(chǔ)存裝置的框圖。圖5B是說明儲(chǔ)存裝置將存儲(chǔ)池卷主要分為按照作為存儲(chǔ)池卷的供給源的儲(chǔ)存設(shè)備的特性的層級(jí)進(jìn)行管理的框圖。圖6是表示容量虛擬化與系統(tǒng)容量池44之間的存儲(chǔ)池卷的移動(dòng)的框圖。圖7是說明將容量虛擬化池與系統(tǒng)容量池進(jìn)行了分層的形態(tài)下的存儲(chǔ)池卷的移動(dòng)的框圖。圖8A是表示對(duì)容量虛擬化池設(shè)定了閾值I (上限值)和閾值2(下限值)的框圖。圖SB是用于說明容量虛擬化池被分層、儲(chǔ)存裝置針對(duì)各層級(jí)進(jìn)行基于閾值的控制處理的框圖。圖9A是用于說明從系統(tǒng)容量池向容量虛擬化池追加存儲(chǔ)池卷、容量虛擬化池的有效實(shí)際容量的大小增加的狀態(tài)的框圖。圖9B是表示存儲(chǔ)池卷從容量虛擬化池被回收至系統(tǒng)容量池、容量虛擬化池的有效實(shí)際容量42減少的狀態(tài)的框圖。圖10是儲(chǔ)存裝置的存儲(chǔ)器的框圖。圖11是VDEV管理表。
圖12是LDEV管理表。圖13A是介質(zhì)的管理信息的表。圖13B是層級(jí)的管理信息的表。圖14是用于說明地址管理表的框圖。圖15是容量虛擬化池的管理表。圖16是RAID組信息的一例的表。圖17是用于管理被分層的容量虛擬化池、或者被分層的系統(tǒng)容量池的層級(jí)的管理信息35271的一例的表35271。
圖18是系統(tǒng)容量池的管理信息的表。圖19是用于說明VVOL-DIR以及PSCB的框圖。圖20是對(duì)圖19中已說明的系統(tǒng)容量池設(shè)定了層級(jí)的情況下的框圖。圖21是表示命令處理程序?qū)μ摂M卷執(zhí)行了寫入處理時(shí)的容量虛擬化池的容量變更控制處理的詳情的流程圖。圖22是由儲(chǔ)存裝置定期執(zhí)行的、容量虛擬化池的自動(dòng)容量擴(kuò)展處理的流程圖。圖23是容量虛擬化池的自動(dòng)容量擴(kuò)展處理的另一流程圖。圖24是容量虛擬化池的容量自動(dòng)縮小處理的流程圖。圖25是容量虛擬化池的自動(dòng)擴(kuò)展處理的另一例所涉及的流程圖。圖26是針對(duì)系統(tǒng)容量池自動(dòng)追加/自動(dòng)削除存儲(chǔ)池卷的流程圖。圖27是完成多個(gè)容量虛擬化池間的自動(dòng)容量變更處理的流程圖。圖28是圖27的變形例所涉及的流程圖。圖29A是表示從高位開始依次將SSD、SAS、SATA的各層級(jí)設(shè)定給容量虛擬化池的框圖。圖29B是圖29A的變形例所涉及的流程圖。圖30是表示自動(dòng)精簡配置的系統(tǒng)結(jié)構(gòu)與輸入單元的關(guān)系的框圖。圖31是表示虛擬卷的創(chuàng)建過程的流程圖。圖32是虛擬卷的創(chuàng)建處理的第二例所涉及的流程圖。圖33是虛擬卷的生成處理的第三例所涉及的流程圖。圖34A是容量虛擬化池的新創(chuàng)建處理的一部分所涉及的流程圖。圖34B是容量虛擬化池的新創(chuàng)建處理的另一部分所涉及的流程圖。圖34C是容量虛擬化池的新創(chuàng)建處理的另一部分所涉及的流程圖。圖34D是容量虛擬化池的新創(chuàng)建處理的另一部分所涉及的流程圖。圖35是說明從主計(jì)算機(jī)針對(duì)虛擬卷的讀取處理的流程圖。圖36是說明從主計(jì)算機(jī)針對(duì)虛擬卷的寫入處理的流程圖。圖37是用于說明容量虛擬化池的層級(jí)管理/控制功能、自動(dòng)容量擴(kuò)展功能的計(jì)算機(jī)系統(tǒng)的框圖。圖38是說明從系統(tǒng)容量池向容量虛擬化池追加存儲(chǔ)池卷的處理的流程圖。
具體實(shí)施例方式接著,說明本發(fā)明的實(shí)施方式。圖I是表示本發(fā)明所涉及的計(jì)算機(jī)系統(tǒng)的第一例的硬件框圖。計(jì)算機(jī)系統(tǒng)具備主計(jì)算機(jī)10、管理裝置20、以及它們所連接的儲(chǔ)存裝置30。儲(chǔ)存裝置30也被稱為儲(chǔ)存系統(tǒng)、或者儲(chǔ)存子系統(tǒng)。主計(jì)算機(jī)10訪問儲(chǔ)存裝置30的邏輯存儲(chǔ)資源。管理裝置20管理儲(chǔ)存裝置30的存儲(chǔ)區(qū)域的結(jié)構(gòu)。儲(chǔ)存裝置30在物理設(shè)備34中設(shè)定的存儲(chǔ)區(qū)域保存數(shù)據(jù)。主計(jì)算機(jī)10具備輸入單元(裝置)110、輸出單元(裝置)120、CPU130、存儲(chǔ)器140、磁盤適配器150、網(wǎng)絡(luò)適配器160、以及磁盤驅(qū)動(dòng)器170。輸入單元110是從操作主計(jì)算機(jī)10的管理者等接受輸入的單元。輸入單元110例如由鍵盤構(gòu)成。輸出單元120是顯示主計(jì)算機(jī)10的狀態(tài)、設(shè)定項(xiàng)目的單元。輸出單元120例如由顯示裝置構(gòu)成。CPU130(控制器)將保存在磁盤驅(qū)動(dòng)器170中的程序讀入到存儲(chǔ)器140中,執(zhí)行由該程序規(guī)定的處理。存儲(chǔ)器140例如由RAM等構(gòu)成,保存程序、數(shù)據(jù)等。
磁盤適配器150經(jīng)由儲(chǔ)存區(qū)域網(wǎng)絡(luò)50與儲(chǔ)存裝置30相連接,向儲(chǔ)存裝置30發(fā)送數(shù)據(jù)、從儲(chǔ)存裝置30接收數(shù)據(jù)。儲(chǔ)存區(qū)域網(wǎng)絡(luò)50按照適合于數(shù)據(jù)傳輸?shù)膮f(xié)議(例如FibreChannel)實(shí)現(xiàn)數(shù)據(jù)傳輸。網(wǎng)絡(luò)適配器160經(jīng)由管理網(wǎng)絡(luò)40與管理裝置20或儲(chǔ)存裝置30之間發(fā)送、接收數(shù)據(jù)。管理網(wǎng)絡(luò)40例如由Ethernet (注冊(cè)商標(biāo))構(gòu)成。磁盤驅(qū)動(dòng)器170例如由硬盤裝置構(gòu)成,保存數(shù)據(jù)、程序。管理裝置20具備輸入單元210、輸出單元220、CPU230、存儲(chǔ)器240、網(wǎng)絡(luò)適配器250、以及磁盤驅(qū)動(dòng)器260。輸入裝置210是接受對(duì)管理裝置20進(jìn)行操作的管理者等的輸入的單元,例如由鍵盤構(gòu)成。出力裝置220是顯示管理裝置20的狀態(tài)、設(shè)定項(xiàng)目的單元,例如由顯示裝置構(gòu)成。CPU230將保存在磁盤驅(qū)動(dòng)器260中的管理程序讀入到存儲(chǔ)器240中,根據(jù)該程序,執(zhí)行針對(duì)儲(chǔ)存裝置30的管理處理。存儲(chǔ)器240例如由RAM等構(gòu)成,保存程序、數(shù)據(jù)等。網(wǎng)絡(luò)適配器250經(jīng)由管理網(wǎng)絡(luò)40與主計(jì)算機(jī)10或儲(chǔ)存裝置30之間發(fā)送、接收數(shù)據(jù)。磁盤驅(qū)動(dòng)器260例如由硬盤裝置構(gòu)成,保存數(shù)據(jù)、程序。儲(chǔ)存裝置30具備控制器31、閃速存儲(chǔ)器32、共享存儲(chǔ)器33、物理設(shè)備(PDEV) 34、電源開關(guān)35、以及電源36。控制器31控制向形成在TOEV34中的存儲(chǔ)區(qū)域保存數(shù)據(jù)。閃速存儲(chǔ)器32暫時(shí)保存針對(duì)TOEV34讀寫的數(shù)據(jù)。共享存儲(chǔ)器33保存控制器31、PDEV34的結(jié)構(gòu)信息。PDEV34由多個(gè)磁盤裝置構(gòu)成。電源36向儲(chǔ)存裝置30的各部分提供電力。電源開關(guān)35是對(duì)來自電源36的電力供給進(jìn)行接通/斷開的開關(guān)。磁盤裝置(存儲(chǔ)設(shè)備)例如由硬盤驅(qū)動(dòng)器構(gòu)成,主要保存用戶數(shù)據(jù)。作為存儲(chǔ)設(shè)備,可以是閃速存儲(chǔ)器等由半導(dǎo)體存儲(chǔ)器構(gòu)成的驅(qū)動(dòng)器。控制器31至少具備處理器360,在該實(shí)施方式中,還具備主機(jī)適配器310、網(wǎng)絡(luò)適配器320、非易失性存儲(chǔ)器330、電源控制部340、存儲(chǔ)器350、儲(chǔ)存適配器370、以及共享存儲(chǔ)器適配器380。主機(jī)適配器310經(jīng)由儲(chǔ)存區(qū)域網(wǎng)絡(luò)50與主計(jì)算機(jī)10之間發(fā)送、接收數(shù)據(jù)。網(wǎng)絡(luò)適配器320經(jīng)由管理網(wǎng)絡(luò)40與主計(jì)算機(jī)10或管理裝置20之間發(fā)送、接收數(shù)據(jù)。
非易失性存儲(chǔ)器330由硬盤、閃速存儲(chǔ)器構(gòu)成,保存在控制器31中進(jìn)行動(dòng)作的程序、結(jié)構(gòu)信息等。電源控制部340控制從電源36提供的電力。存儲(chǔ)器350例如由RAM等構(gòu)成,保存程序、數(shù)據(jù)等。處理器360將保存在非易失性存儲(chǔ)器330中的程序讀入到存儲(chǔ)器350中,執(zhí)行由該程序規(guī)定的處理。儲(chǔ)存適配器370與TOEV34以及閃速存儲(chǔ)器32之間發(fā)送、接收數(shù)據(jù)。共享存儲(chǔ)器適配器380與共享存儲(chǔ)器33之間發(fā)送、接收數(shù)據(jù)。圖2是表示計(jì)算機(jī)系統(tǒng)的第二方式的硬件框圖。本實(shí)施方式的計(jì)算機(jī)系統(tǒng)具備一個(gè)以上的主計(jì)算機(jī)10、管理服務(wù)器20、第一儲(chǔ)存裝置30A、以及第二儲(chǔ)存裝置30B。第一儲(chǔ)存裝置30A經(jīng)由第一網(wǎng)絡(luò)121與主計(jì)算機(jī)10相連接。第二儲(chǔ)存裝置30B經(jīng)由第二網(wǎng)絡(luò)123與第一儲(chǔ)存裝置30A相連接。 一個(gè)以上的主計(jì)算機(jī)10、管理服務(wù)器20、第一儲(chǔ)存裝置30A、以及第二儲(chǔ)存裝置30B經(jīng)由第三網(wǎng)絡(luò)108相互連接。第一網(wǎng)絡(luò)121、第二網(wǎng)絡(luò)123、以及第三網(wǎng)絡(luò)108可以是任意種類的網(wǎng)絡(luò)。例如第一網(wǎng)絡(luò)121和第二網(wǎng)絡(luò)123是SAN。第三網(wǎng)絡(luò)108是LAN。第一儲(chǔ)存裝置30A具備控制器和存儲(chǔ)設(shè)備群34??刂破骼缇邆涠鄠€(gè)前端接口127、多個(gè)后端接口 137、第一內(nèi)部網(wǎng)絡(luò)156、一個(gè)以上的閃速存儲(chǔ)器32、一個(gè)以上的控制存儲(chǔ)器350、以及一個(gè)以上的控制處理器360。前端接口 127用于接口電路,該接口電路與經(jīng)由網(wǎng)絡(luò)121連接在儲(chǔ)存裝置30A上的主計(jì)算機(jī)10或第二儲(chǔ)存裝置30B進(jìn)行通信。因而,儲(chǔ)存裝置30A至少具備兩個(gè)前端接口127,它們中的一個(gè)與第一網(wǎng)絡(luò)121相連接,另一個(gè)與第二網(wǎng)絡(luò)123相連接。前端接口 127例如具備與第一網(wǎng)絡(luò)121或第二網(wǎng)絡(luò)123相連接的端口 129、存儲(chǔ)器131、以及本地路由器(以下簡記為“LR”)133。LR133上連接端口 129以及存儲(chǔ)器131。LR133進(jìn)行分配以在任意的控制處理器360中對(duì)通過端口 129接收到的數(shù)據(jù)進(jìn)行處理。具體來說,例如控制處理器360對(duì)LR133進(jìn)行設(shè)定以使該控制處理器360執(zhí)行指定某地址的I/O命令。按照該設(shè)定,LR133對(duì)I/O命令及數(shù)據(jù)進(jìn)行分配。后端接口 137也設(shè)置有多個(gè)。后端接口 137是用于與TOEV34進(jìn)行通信的接口電路。后端接口 137例如具備與TOEV34相連接的磁盤接口 141、存儲(chǔ)器135、以及LR13LLR139上連接磁盤接口 141以及存儲(chǔ)器135。第一內(nèi)部網(wǎng)絡(luò)156例如由開關(guān)(例如縱橫開關(guān))或者總線構(gòu)成。第一內(nèi)部網(wǎng)絡(luò)156連接有多個(gè)前端接口 127、多個(gè)后端接口 137、一個(gè)以上的閃速存儲(chǔ)器32、一個(gè)以上的控制存儲(chǔ)器350、以及一個(gè)以上的控制處理器143。這些要素間的通信通過第一內(nèi)部網(wǎng)絡(luò)156進(jìn)行。作為控制器的結(jié)構(gòu)要素的前端接口 127、后端接口 137、閃速存儲(chǔ)器32、控制存儲(chǔ)器350、以及控制處理器360與第二內(nèi)部網(wǎng)絡(luò)(例如LAN) 155相連接,該第二內(nèi)部網(wǎng)絡(luò)155與維護(hù)管理端末153相連接。維護(hù)管理端末153還與第三網(wǎng)絡(luò)108相連接,是對(duì)儲(chǔ)存系統(tǒng)125進(jìn)行維護(hù)或管理的計(jì)算機(jī)。儲(chǔ)存裝置30A的維護(hù)員例如能夠通過操作維護(hù)管理端末153 (或者能夠與該維護(hù)管理端末153進(jìn)行通信的管理裝置20),來定義被存儲(chǔ)在控制存儲(chǔ)器350中的各種信息。第二儲(chǔ)存裝置30B具備控制器165以及TOEV163??刂破?65例如具備網(wǎng)絡(luò)適配器162、主機(jī)適配器164、閃速存儲(chǔ)器172、控制存儲(chǔ)器171、處理器167、以及儲(chǔ)存適配器169。網(wǎng)絡(luò)適配器162與第三網(wǎng)絡(luò)108相連接,是與管理服務(wù)器111進(jìn)行通信的接口。主機(jī)適配器164與第二網(wǎng)絡(luò)123相連接,是與第一儲(chǔ)存裝置30A進(jìn)行通信的接口。主機(jī)適配器164例如也可以與第一儲(chǔ)存裝置30A的前端接口 127相同??刂拼鎯?chǔ)器171是存儲(chǔ)各種計(jì)算機(jī)程序以及信息的存儲(chǔ)器。閃速存儲(chǔ)器172是暫時(shí)存儲(chǔ)按照來自第一儲(chǔ)存裝置125的I/O命令進(jìn)行讀取或?qū)懭氲臄?shù)據(jù)的存儲(chǔ)器。處理器167執(zhí)行存儲(chǔ)在控制存儲(chǔ)器171中的各種計(jì)算機(jī)程序。處理器167至少按照來自第一儲(chǔ)存裝置30A的I/O命令,控制針對(duì)閃速存儲(chǔ)器172以及TOEV163的數(shù)據(jù)的寫入以及讀取。 PDEV163是物理存儲(chǔ)設(shè)備,例如可以與第一儲(chǔ)存裝置30A的TOEV34相同?;蛘?,PDEV也可以是磁帶存儲(chǔ)介質(zhì)。本實(shí)施方式的第一儲(chǔ)存裝置30A具備所謂的外部連接功能。第二儲(chǔ)存裝置30B通過該功能與第一儲(chǔ)存裝置30A進(jìn)行外部連接。在此,針對(duì)外部連接進(jìn)行說明。如已經(jīng)說明的那樣,第一儲(chǔ)存裝置30A向主計(jì)算機(jī)10提供一個(gè)或多個(gè)邏輯卷。各邏輯卷被主計(jì)算機(jī)10識(shí)別為一個(gè)存儲(chǔ)設(shè)備。例如也可以將第一儲(chǔ)存裝置30A所提供的邏輯卷與第一儲(chǔ)存裝置30A內(nèi)的TOEV34進(jìn)行對(duì)應(yīng)。在這種情況下,第一儲(chǔ)存裝置30A當(dāng)接收到向邏輯卷的寫入命令時(shí),將數(shù)據(jù)保存到與該邏輯卷對(duì)應(yīng)的TOEV34中。這樣的邏輯卷在下面的說明中也被記載為常規(guī)卷?;蛘?,第一儲(chǔ)存裝置30A所提供的邏輯卷也可以與第二儲(chǔ)存裝置30B內(nèi)的TOEV163相對(duì)應(yīng)。在這種情況下,第一儲(chǔ)存裝置30A當(dāng)接收到向邏輯卷的寫入命令時(shí),生成用于對(duì)與該邏輯卷相對(duì)應(yīng)的PDEV163寫入數(shù)據(jù)的寫入命令,將所生成的寫入命令發(fā)送到第二儲(chǔ)存裝置 30B。第二儲(chǔ)存裝置30B按照從第一儲(chǔ)存裝置30A接收到的寫入命令,將數(shù)據(jù)保存到PDEV163 中。這樣,將針對(duì)第一儲(chǔ)存裝置30A所提供的邏輯卷保存的數(shù)據(jù)實(shí)際上保存到與第一儲(chǔ)存裝置30A的外部相連接的第二儲(chǔ)存裝置30B中的功能被稱為外部連接功能。第一儲(chǔ)存裝置30A具備多個(gè)建立儲(chǔ)存控制處理的簇1251。各簇具有內(nèi)部網(wǎng)絡(luò)156,多個(gè)簇的內(nèi)部網(wǎng)絡(luò)156經(jīng)由簇間的網(wǎng)絡(luò)1561進(jìn)行連接。因而,一個(gè)簇的控制處理器360訪問其它簇的情形例如能夠?qū)ζ渌氐拈W速存儲(chǔ)器32的數(shù)據(jù)進(jìn)行讀取、寫入。多個(gè)簇間的網(wǎng)絡(luò)1561由總線、開關(guān)構(gòu)成。圖3是用于說明圖2所示的儲(chǔ)存裝置的具備多個(gè)簇的結(jié)構(gòu)的硬件框圖。第一簇1251a控制針對(duì)第一虛擬卷(V0L#0)的訪問處理,第二簇1251b控制針對(duì)第二虛擬卷(V0L#1)的訪問處理。圖3所示的池30000可以跨越多個(gè)簇間而形成。但是,根據(jù)網(wǎng)絡(luò)1561的設(shè)備結(jié)構(gòu)的不同,有時(shí)當(dāng)經(jīng)由該網(wǎng)絡(luò)1561時(shí)傳輸速度下降,性能降低。因此,為了避免該情形,系統(tǒng)在對(duì)虛擬卷(V0L#0)分配存儲(chǔ)池卷時(shí),選擇不經(jīng)由網(wǎng)絡(luò)1561的存儲(chǔ)池卷。因此,儲(chǔ)存裝置30以模塊為單位對(duì)池進(jìn)行管理。存儲(chǔ)池卷組#0(30002)、#1 (30004)、#2 (30006)就是其管理的例子。
儲(chǔ)存裝置30在對(duì)設(shè)定給簇1251a的虛擬卷#0分配頁面時(shí),選擇池組#0(30002)的存儲(chǔ)池卷(S30000)。儲(chǔ)存裝置30以多個(gè)Tier中的每個(gè)Tier為單位管理池組的容量。如后述那樣,系統(tǒng)容量池的管理也相同。在假設(shè)池組#0(30002)的容量用盡、或?qū)⒁帽M的情況下,儲(chǔ)存裝置30將容量寬裕的池組#1(30004)的存儲(chǔ)池卷追加到池組#0(30002)中。在此,如空閑容量相對(duì)于池的整體容量的比例小于預(yù)先決定的值時(shí)那樣,空閑容量的比例較多的情形即為寬裕。也能夠如池組#2 (30006)那樣跨越池模塊進(jìn)行設(shè)定。圖4是表示儲(chǔ)存裝置30所進(jìn)行的存儲(chǔ)區(qū)域的動(dòng)態(tài)分配的動(dòng)作的功能框圖。以RAID結(jié)構(gòu)的方式由TOEV34構(gòu)成了 RAID組。由該RAID組構(gòu)成了 VDEV400 (SlOl)。
VDEV400被劃分為作為存儲(chǔ)區(qū)域的多個(gè)邏輯設(shè)備(LDEV) 500。將由TOEV34構(gòu)成的VDEV稱為“第一類VDEV”。將該第一類VDEV中包含的LDEV稱為“第一類LDEV”。主計(jì)算機(jī)IOA訪問儲(chǔ)存裝置30的主機(jī)訪問用邏輯單元。將從主計(jì)算機(jī)10出發(fā)的訪問兼容性稱為“目標(biāo)設(shè)備”。與從主計(jì)算機(jī)IOA向包含第一類LDEV500的卷定義路徑同時(shí)地設(shè)定目標(biāo)設(shè)備700 (S102)。儲(chǔ)存裝置30也能夠與TOEV34同樣地對(duì)從外部連接的外部物理設(shè)備600進(jìn)行處理。即,以RAID結(jié)構(gòu)的方式由多個(gè)外部物理設(shè)備(EDEV)600構(gòu)成多個(gè)第一類VDEV400a(S103)。第一類VDEV400a被分割為一個(gè)以上的作為存儲(chǔ)區(qū)域的第一類LDEV500a。針對(duì)該第一類LDEV500a設(shè)定朝向主計(jì)算機(jī)10的路徑,從而設(shè)定目標(biāo)設(shè)備700 (S104)。另外,儲(chǔ)存裝置30設(shè)定第二類VDEV401。第二類VDEV不同于由TOEV34構(gòu)成的第一類VDEV400,是具有地址區(qū)域但不具有與TOEV34對(duì)應(yīng)的區(qū)域的虛擬設(shè)備。能夠設(shè)定與第二類VDEV401對(duì)應(yīng)的閃速存儲(chǔ)器的區(qū)域。該第二類VDEV401具有一個(gè)以上的LDEV。將該LDEV稱為第二類LDEV501。針對(duì)該第二類LDEV501設(shè)定朝向主計(jì)算機(jī)IOB的路徑,并設(shè)定目標(biāo)設(shè)備701 (SllO)。該目標(biāo)設(shè)備701是主計(jì)算機(jī)10的訪問對(duì)象。目標(biāo)設(shè)備701被分配給第二類LDEV501。目標(biāo)設(shè)備和/或第二類LDEV相當(dāng)于自動(dòng)精簡配置中的、容量被虛擬化得到的虛擬卷。第二類VDEV401和第二類LDEV501都沒有從I3DEV分配物理存儲(chǔ)區(qū)域、即它們的存儲(chǔ)容量被虛擬化,因此與第一類VDEV400、第一類LDEV500不同。為了將該虛擬區(qū)域形成為能夠由主計(jì)算機(jī)IOB使用,需要將具備實(shí)際的存儲(chǔ)區(qū)域的池60與該第二類LDEV501進(jìn)行關(guān)聯(lián)。稍后利用圖5A記述該關(guān)聯(lián)。池60是用一個(gè)或多個(gè)屬性將第一類LDEV500的一個(gè)或多個(gè)匯總而成的組。第一類LDEV500被分配給池60 (SI 12)。第一類LDEV500對(duì)應(yīng)存儲(chǔ)池卷。將設(shè)定給池的第一類LDEV500使用地址分配給第二類LDEV501(S 111)。因而,目標(biāo)設(shè)備700的存儲(chǔ)區(qū)域?yàn)榈谝活怢DEV500,目標(biāo)設(shè)備701的存儲(chǔ)區(qū)域?yàn)榈诙怢DEV501。當(dāng)儲(chǔ)存裝置30通過目標(biāo)設(shè)備701接收到向第二類LDEV501的訪問時(shí),將與第二類LDEV501對(duì)應(yīng)的第一類LDEV500設(shè)為訪問目的地。來自主計(jì)算機(jī)10AU0B的寫入數(shù)據(jù)被保存到第一類LDEV500中。第一類VDEV400與第二類VDEV401之間基于地址進(jìn)行對(duì)應(yīng)。因而,來自主機(jī)的寫入數(shù)據(jù)被保存到PDEV34中。
圖5A是包含虛擬卷411-416與存儲(chǔ)池卷421的對(duì)應(yīng)關(guān)系的儲(chǔ)存裝置30的框圖。附圖標(biāo)記42A和附圖標(biāo)記42B分別是已經(jīng)記述過的池。各池存在多個(gè)存儲(chǔ)池卷421。附圖標(biāo)記42IA是存儲(chǔ)池卷的頁面。頁面是由用于處理來自主機(jī)的讀取/寫入訪問的規(guī)定容量構(gòu)成的存儲(chǔ)區(qū)域的單位。寫入數(shù)據(jù)被保存到一個(gè)或多個(gè)頁面中?;蛘?,也存在如下情況針對(duì)寫入訪問進(jìn)行一次頁面分配,將多次的寫入訪問所涉及的寫入數(shù)據(jù)保存到相同的頁面內(nèi),如果無法將接下來的寫入數(shù)據(jù)保存到一個(gè)頁面中,則對(duì)與該寫入數(shù)據(jù)有關(guān)的寫入訪問分配新的頁面。附圖標(biāo)記411A是虛擬卷411的虛擬頁面。虛擬頁面不同于存儲(chǔ)池卷421的頁面,是不帶有實(shí)際的存儲(chǔ)區(qū)域的虛擬的存儲(chǔ)容量的單位。來自主機(jī)的讀取/寫入以虛擬卷的虛擬頁面為單位進(jìn)行處理。當(dāng)針對(duì)虛擬卷執(zhí)行來自主機(jī)的寫入時(shí),與寫入訪問相應(yīng)地、或者在每次進(jìn)行寫入訪問時(shí)都對(duì)虛擬卷的虛擬頁面分配存儲(chǔ)池卷的實(shí)際頁面。附圖標(biāo)記4112是用于表示虛擬卷的虛擬頁面與存儲(chǔ)池卷的虛擬頁面的對(duì)應(yīng)關(guān)系 的線。儲(chǔ)存裝置30對(duì)虛擬卷與池和存儲(chǔ)池卷之間設(shè)定對(duì)應(yīng)關(guān)系,從處于對(duì)應(yīng)關(guān)系的池的存儲(chǔ)池卷向虛擬卷分配頁面。本發(fā)明所涉及的儲(chǔ)存裝置30的特征在于將針對(duì)虛擬卷的容量提供用池(圖4 :60)分層。即,容量提供用池具有多個(gè)層級(jí),例如圖5A示出了兩個(gè)層級(jí)。將虛擬卷411側(cè)(前端側(cè))的層級(jí)的池稱為“容量虛擬化池”,將TOEV側(cè)(后端側(cè))的層級(jí)的池稱為“系統(tǒng)容量池”。附圖標(biāo)記42A和42B分別是容量虛擬化池,附圖標(biāo)記44是系統(tǒng)容量池。容量虛擬化池42A、42B顧名思義是池的容量被虛擬化得到的。這是因?yàn)閮?chǔ)存裝置30能夠?qū)⒊氐娜萘扛鶕?jù)池的狀態(tài)進(jìn)行增減而不使主計(jì)算機(jī)10側(cè)察覺到。此外,在已經(jīng)記述過的現(xiàn)有技術(shù)中,當(dāng)池容量用盡時(shí),儲(chǔ)存裝置向用戶、管理者進(jìn)行執(zhí)行自動(dòng)精簡配置的警告顯示,要求進(jìn)行向池追加存儲(chǔ)池卷的作業(yè)。與此相對(duì)地,本發(fā)明所涉及的儲(chǔ)存裝置根據(jù)容量虛擬化池的狀態(tài)自動(dòng)地從系統(tǒng)容量池44向容量虛擬化池42追加存儲(chǔ)池卷4411,并從系統(tǒng)容量池44的管理中刪除所追加的存儲(chǔ)池卷。對(duì)系統(tǒng)容量池的存儲(chǔ)池卷441進(jìn)行管理以使其不屬于任一個(gè)容量虛擬化池,當(dāng)該存儲(chǔ)池卷441被追加到特定的容量虛擬化池中時(shí),變更為屬于特定的容量虛擬化池的特性。儲(chǔ)存裝置30預(yù)先定義存儲(chǔ)池卷,將其事先設(shè)定給系統(tǒng)容量池44。系統(tǒng)容量池44至少具有一個(gè)存儲(chǔ)池卷4411。當(dāng)容量虛擬化池42的實(shí)際容量不足時(shí),不需要用戶、管理者的操作,而是儲(chǔ)存裝置30從系統(tǒng)容量池44向容量虛擬化池42追加存儲(chǔ)池卷4411。另一方面,當(dāng)容量虛擬化池42的實(shí)際容量過剩時(shí),儲(chǔ)存裝置30從容量虛擬化池42刪除存儲(chǔ)池卷421,并將刪除的存儲(chǔ)池卷回收至系統(tǒng)容量池44。在圖5A、5B中,在圖中明確示出了能夠在容量虛擬化池42A、42B與系統(tǒng)容量池44之間追加、刪除存儲(chǔ)池卷的情形,因此用虛線記載了一部分存儲(chǔ)池卷421、4411。利用表來管理存儲(chǔ)池卷屬于容量虛擬化池42和系統(tǒng)容量池44中的哪一個(gè)。此外,用戶使用管理器程序進(jìn)行動(dòng)作的計(jì)算機(jī)(主計(jì)算機(jī)10)、管理服務(wù)器20、維護(hù)管理終端153中的至少一個(gè),向儲(chǔ)存裝置30請(qǐng)求系統(tǒng)容量池44、容量虛擬化池42的創(chuàng)建。如圖5B所示,儲(chǔ)存裝置30將存儲(chǔ)池卷主要分成基于作為存儲(chǔ)池卷的供給源的儲(chǔ)存設(shè)備的特性的層級(jí)來進(jìn)行管理。該層級(jí)的區(qū)分例如由Tierl、Tier2、Tier3構(gòu)成,容量虛擬化池42A、42B、系統(tǒng)容量池44也被分為每個(gè)層級(jí)的組。屬于層級(jí)Tierl的介質(zhì)被分類為在線儲(chǔ)存器,例如是具有高速響應(yīng)性、高可靠性的SSD、SAS、光纖信道HDD。屬于層級(jí)T ier2的介質(zhì)被分類為近線儲(chǔ)存器,例如是SATA硬盤、ATA硬盤。屬于層級(jí)Tierf的儲(chǔ)存設(shè)備被分類為離線儲(chǔ)存器,例如是廉價(jià)、大容量的磁帶設(shè)備。這些都是一個(gè)例子,如后述那樣也能夠?qū)?chǔ)存設(shè)備基于與已經(jīng)記述的分類不同的分類來分類成層級(jí)。儲(chǔ)存裝置30在從系統(tǒng)容量池44向容量虛擬化池42追加存儲(chǔ)池卷的情況下,在同一層級(jí)的組之間執(zhí)行存儲(chǔ)池卷的追加處理。在從容量虛擬化池42刪除存儲(chǔ)池卷并回收至系統(tǒng)容量池44的情況也相同。此外,如后述那樣,儲(chǔ)存裝置30在多個(gè)容量虛擬化池之間不經(jīng)由系統(tǒng)容量池也可以執(zhí)行存儲(chǔ)池卷的存取。另外,儲(chǔ)存裝置30能夠?qū)⒋鎯?chǔ)池卷從系統(tǒng)容量池44的上位層級(jí)移動(dòng)到容量虛擬化池42的下位層級(jí)。儲(chǔ)存裝置30為了統(tǒng)一管理針對(duì)多個(gè)容量虛擬化池42的存儲(chǔ)池卷的供給,而單一地設(shè)定系統(tǒng)容量池44。此外,可以在儲(chǔ)存裝置30中存在多個(gè)系統(tǒng)容量池44。儲(chǔ)存裝置為了靈活地對(duì)多個(gè)虛擬卷動(dòng)態(tài)地分配存儲(chǔ)區(qū)域,而設(shè)定多個(gè)池42且將池42的存儲(chǔ)容量虛擬化,由此能夠與系統(tǒng)容量池44之間進(jìn)行存儲(chǔ)池卷的存取,在不限制從主計(jì)算機(jī)10向虛擬卷的訪問的同時(shí),迅速地應(yīng)對(duì)容量虛擬化池42的實(shí)際的空閑容量的變動(dòng)。儲(chǔ)存裝置30的各功能中的第一功能是將容量虛擬化池42的存儲(chǔ)池卷的頁面分配給虛擬卷的功能。其第二功能是從系統(tǒng)容量池44向容量虛擬化池42追加存儲(chǔ)池卷、或者將存儲(chǔ)池卷從容量虛擬化池42回收至系統(tǒng)容量池44的功能。第二功能根據(jù)容量虛擬化池的實(shí)際容量中的未使用容量,進(jìn)行存儲(chǔ)池卷的追加、回收。第一功能與容量虛擬化池的未使用容量是怎樣的程度無關(guān)地始終繼續(xù)向虛擬卷分配存儲(chǔ)池卷的頁面。此外,第一功能和第二功能這樣的表述是為了方便。這些功能通過后述的管理/控制程序?qū)崿F(xiàn)。如圖5B那樣,在儲(chǔ)存裝置將容量虛擬化池42A、42B分層進(jìn)行管理的方式中,在系統(tǒng)容量池44中也需要按層級(jí)管理存儲(chǔ)池卷。在容量虛擬化池沒有被分層的方式中,系統(tǒng)容量池的分層不是必須的。容量虛擬化池的層級(jí)可以是在自動(dòng)精簡配置開始之前、也可以在其開始之后設(shè)定的。除了使特定層級(jí)的存儲(chǔ)池卷對(duì)應(yīng)虛擬卷以外,也可以使多個(gè)層級(jí)的存儲(chǔ)池卷對(duì)應(yīng)虛擬卷。儲(chǔ)存裝置能夠以頁面為單位對(duì)虛擬卷411等分配期望層級(jí)的存儲(chǔ)區(qū)域。例如,儲(chǔ)存裝置監(jiān)視針對(duì)虛擬卷的IO頻率,判斷出在該頻率高的卷中存儲(chǔ)有在線數(shù)據(jù)或重要數(shù)據(jù),為了加快向該頁面的讀取訪問,而從屬于高速高性能的介質(zhì)的層級(jí)的存儲(chǔ)池卷分配頁面。在虛擬卷與存儲(chǔ)池卷的映射表中包含層級(jí)的信息。
儲(chǔ)存裝置30在對(duì)虛擬卷分配頁面時(shí),將從最上位的層級(jí)的存儲(chǔ)池卷分配頁面。另一方面,也可以根據(jù)針對(duì)該存儲(chǔ)池卷的IO負(fù)荷、存儲(chǔ)池卷的剩余容量如何而從下位層級(jí)的存儲(chǔ)池卷分配頁面。儲(chǔ)存裝置在規(guī)定的期間監(jiān)視針對(duì)分配給虛擬卷的頁面的IO負(fù)荷,當(dāng)判斷為IO負(fù)荷偏向特定的存儲(chǔ)池卷時(shí),向容量虛擬化池的同一層級(jí)內(nèi)的其它存儲(chǔ)池卷的頁面、或者不同層級(jí)內(nèi)的其它存儲(chǔ)池卷的頁面遷移頁面數(shù)據(jù)。在系統(tǒng)容量池44中設(shè)定的邏輯存儲(chǔ)區(qū)域是未使用的存儲(chǔ)區(qū)域。例如設(shè)定了路徑的卷、保存有用戶數(shù)據(jù)的卷、作為復(fù)制對(duì)象的卷并不適合作為要被儲(chǔ)存在系統(tǒng)容量池中的存儲(chǔ)池卷。圖6是表示容量虛擬化池42A、42B與系統(tǒng)容量池44之間的存儲(chǔ)池卷的移動(dòng)的框圖。附圖標(biāo)記1723表示根據(jù)管理者的操作從第一類VDEV500、500a向系統(tǒng)容量池44追加存儲(chǔ)池卷的情形。
附圖標(biāo)記1713表示從系統(tǒng)容量池44向容量虛擬化池42A追加存儲(chǔ)池卷4411的情形。附圖標(biāo)記1711表示將存儲(chǔ)池卷421從容量虛擬化池42A回收至系統(tǒng)容量池的情形。附圖標(biāo)記1721表示通過用戶或管理者的操作向容量虛擬化池42A追加存儲(chǔ)池卷的情形、但不是從系統(tǒng)容量池44向容量虛擬化池42A追加存儲(chǔ)池卷。附圖標(biāo)記1719表示將存儲(chǔ)池卷從容量虛擬化池42A移動(dòng)到容量虛擬化池42B的情形。附圖標(biāo)記1719a表示其逆向移動(dòng)。該移動(dòng)也能夠不經(jīng)由系統(tǒng)容量池44。存儲(chǔ)池卷的這種移動(dòng)在管理表中通過變更存儲(chǔ)池卷與池的對(duì)應(yīng)關(guān)系來進(jìn)行管理。根據(jù)圖7說明將容量虛擬化池42A與系統(tǒng)容量池44分別通過多個(gè)Tier進(jìn)行了分層的形態(tài)下的存儲(chǔ)池卷的移動(dòng)。容量虛擬化池42A中存在Tierl至Tier3的層級(jí)的組。容量虛擬化池42B也相同。附圖標(biāo)記1804表示從系統(tǒng)容量池44的Tier3的層級(jí)向容量虛擬化池42A的Tier3的層級(jí)追加存儲(chǔ)池卷的情形。附圖標(biāo)記1802是其相反的動(dòng)作。附圖標(biāo)記1803表示從系統(tǒng)容量池44的Tierl層級(jí)向容量虛擬化池42B追加存儲(chǔ)池卷的情形。附圖標(biāo)記1801是其相反的動(dòng)作。存儲(chǔ)池卷向容量虛擬化池42A的追加(圖6的1721 :并非從系統(tǒng)容量池44,而是通過用戶或管理者的操作進(jìn)行的)可以根據(jù)存儲(chǔ)池卷所具有的層級(jí),針對(duì)容量虛擬化池42A的特定層級(jí)進(jìn)行。存儲(chǔ)池卷向系統(tǒng)容量池的追加也與圖6的1723相同。作為針對(duì)容量虛擬化池的已經(jīng)記述過的存儲(chǔ)池卷的擴(kuò)展、縮小處理的執(zhí)行契機(jī)如下。首先,容量虛擬化池的容量監(jiān)視功能獲取容量虛擬化池的性能信息并進(jìn)行分析,在容量虛擬化池發(fā)生了性能下降的契機(jī)下,指示存儲(chǔ)池卷的自動(dòng)擴(kuò)展縮小功能來從系統(tǒng)容量池向容量虛擬化池追加存儲(chǔ)池卷。另一方面,存儲(chǔ)池卷的自動(dòng)擴(kuò)展縮小功能在容量虛擬化池的性能充裕的契機(jī)下,將存儲(chǔ)池卷從容量虛擬化池回收至系統(tǒng)容量池。作為其它的契機(jī),存在儲(chǔ)存裝置接收到來自主計(jì)算機(jī)的寫入時(shí)在多種介質(zhì)之間進(jìn)行數(shù)據(jù)的遷移的契機(jī)、發(fā)生了在時(shí)間表中決定的定時(shí)的契機(jī)、或者創(chuàng)建虛擬卷的契機(jī)、通過復(fù)制系統(tǒng)的處理消耗頁面的契機(jī)、或者儲(chǔ)存裝置接收到來自使用主計(jì)算機(jī)、管理服務(wù)器、或維護(hù)終端的用戶、管理者的指示的契機(jī)。
另一方面,作為系統(tǒng)容量池的擴(kuò)展/縮小的契機(jī),存在發(fā)生了在時(shí)間表中決定的定時(shí)的契機(jī)、執(zhí)行了容量虛擬化池的O擴(kuò)展/縮小的契機(jī)。作為容量虛擬化池的性能,存在容量虛擬化池的已使用實(shí)際容量的程度、容量虛擬化池的空閑容量的程度、或者針對(duì)容量虛擬化池的IO頻率、IO負(fù)荷。作為用于判斷容量虛擬化池的有效實(shí)際容量是否適當(dāng)?shù)囊粋€(gè)方式,存在使用一個(gè)或多個(gè)閾值的方式。有效實(shí)際容量是指未分配給虛擬卷的存儲(chǔ)容量、即空閑的實(shí)際容量。閾值能夠在創(chuàng)建容量虛擬化池時(shí)或在其之后由用戶或維護(hù)員使用管理服務(wù)器20、儲(chǔ)存裝置的管理設(shè)備153進(jìn)行設(shè)定或更新。通過儲(chǔ)存裝置30的結(jié)構(gòu)控制程序,在容量虛擬化池管理信息表中對(duì)閾值進(jìn)行設(shè)定或更新注冊(cè)。
作為閾值,例如有如下三個(gè)閾值。第一個(gè)閾值是與容量虛擬化池的有效實(shí)際容量有關(guān)的閾值。也可以在容量虛擬化池的有效實(shí)際容量少于基準(zhǔn)的時(shí)刻,使管理裝置20、維護(hù)管理端末153向用戶、維護(hù)員發(fā)出容量沒有余量的意思的警告而使用該閾值。第二個(gè)閾值是稱為“超容量閾值”的閾值。儲(chǔ)存裝置將容量虛擬化池的實(shí)際總?cè)萘颗c將容量虛擬化池用作數(shù)據(jù)的保存目的地的多個(gè)虛擬卷的已使用總?cè)萘窟M(jìn)行比較,在后者超過前者的規(guī)定比例的情況下,判斷為在使用上有可能發(fā)生容量虛擬化池的用盡。關(guān)于容量虛擬化池的總實(shí)際容量(包含已使用實(shí)際容量的總實(shí)際容量)決定的閾值就是“超容量閾值”。形成為容量虛擬化池的實(shí)際容量X超容量閾值>使用容量虛擬化池的所有虛擬卷的總使用容量。例如在超容量閾值是90%的情況下,如果設(shè)容量虛擬化池的總實(shí)際容量是1TB,在使用該池的所有虛擬卷的總使用容量是1TBX90%以下時(shí),儲(chǔ)存裝置不實(shí)施容量虛擬化池容量的擴(kuò)展,當(dāng)超過1TBX90%時(shí),實(shí)施容量虛擬化池的容量擴(kuò)展處理。用戶能夠針對(duì)超容量閾值設(shè)定容量虛擬化池的自動(dòng)容量擴(kuò)展處理的優(yōu)先級(jí),當(dāng)優(yōu)先級(jí)被設(shè)定為“高”時(shí),儲(chǔ)存裝置即使不滿足超容量閾值,也不停止自動(dòng)精簡配置,在進(jìn)行容量虛擬化池的自動(dòng)擴(kuò)展的同時(shí)繼續(xù)進(jìn)行自動(dòng)精簡配置。第三個(gè)閾值是與容量虛擬化池的已使用的實(shí)際容量的下限有關(guān)的閾值。在容量虛擬化池的利用率較低的情況下,容量虛擬化池超過需要地占有了存儲(chǔ)容量。這種狀況導(dǎo)致存儲(chǔ)資源的浪費(fèi),因此對(duì)容量虛擬化池定義下限的閾值,當(dāng)容量虛擬化池的利用率、已利用總?cè)萘康鹊陀谙孪拗禃r(shí),儲(chǔ)存裝置從容量虛擬化池回收存儲(chǔ)池卷、容量。儲(chǔ)存裝置通過將回收的存儲(chǔ)池卷、容量與系統(tǒng)容量池進(jìn)行關(guān)聯(lián),來準(zhǔn)備下一步將回收的存儲(chǔ)池卷分配給容量虛擬化池。儲(chǔ)存裝置根據(jù)閾值執(zhí)行針對(duì)容量虛擬化池自動(dòng)追加、自動(dòng)回收存儲(chǔ)池卷的控制。圖8A表示對(duì)容量虛擬化池42設(shè)定了閾值I (上限值)和閾值2(下限值)的情形。當(dāng)容量虛擬化池42的已使用實(shí)際容量4200B為上限閾值以上時(shí),儲(chǔ)存裝置判斷為容量虛擬化池的有效實(shí)際容量4200C不足,另一方面,當(dāng)容量虛擬化池的已使用實(shí)際容量為下限值以下時(shí),判斷為容量虛擬化池42的有效實(shí)際容量寬?;蜻^剩。作為閾值I的例子,是容量虛擬化池的已使用實(shí)際容量為容量虛擬化池的整體容量的90 %,作為閾值2的例子,其是整體容量的80 %。如圖SB所示,在容量虛擬化池42被分層的情況下,儲(chǔ)存裝置針對(duì)各層級(jí)進(jìn)行基于閾值的處理。在該圖中,在SSD的層級(jí)和SATA的層級(jí)中,已使用的實(shí)際容量小于閾值2,因此在這些層級(jí)中,有效實(shí)際容量寬裕,SAS的有效實(shí)際容量處于閾值I與閾值2之間,因此形成適當(dāng)?shù)牡燃?jí)。存儲(chǔ)池卷的追加、刪除按每個(gè)層級(jí)執(zhí)行。閾值在各層級(jí)中也可以不同。在容量虛擬化池的使用率低于下限的閾值的情況下,儲(chǔ)存裝置或者管理裝置確認(rèn)有無用戶進(jìn)行的QoSLANE (Quality of Service :服務(wù)質(zhì)量)的設(shè)定,如果有該設(shè)定,貝U為了滿足其條件而將存儲(chǔ)池卷返回到系統(tǒng)容量池。如果沒有QoSLANE的設(shè)定并對(duì)系統(tǒng)容量池進(jìn)行了層級(jí)管理,則儲(chǔ)存裝置以使存儲(chǔ)池卷位于與所屬層級(jí)相同的層級(jí)的方式將存儲(chǔ)池卷從容量虛擬化池回收至系統(tǒng)容量池。在沒有對(duì)系統(tǒng)容量池進(jìn)行層級(jí)管理的情況下,儲(chǔ)存裝置將存儲(chǔ)池卷回收至系統(tǒng)容量池的任意層級(jí)。此外,在將存儲(chǔ)池卷從容量虛擬化池返回到系統(tǒng)容量池時(shí),存儲(chǔ)池卷的已分配頁 面數(shù)據(jù)移動(dòng)到容量虛擬化池中剩余的其它存儲(chǔ)池卷,解除數(shù)據(jù)移動(dòng)源的頁面與虛擬卷的映射,對(duì)數(shù)據(jù)移動(dòng)目的地的頁面設(shè)定與虛擬卷的地址的映射。當(dāng)從系統(tǒng)容量池44向容量虛擬化池42追加存儲(chǔ)池卷時(shí),如圖9A所示那樣容量虛擬化池的有效實(shí)際容量4200C的大小增加。此時(shí),如圖9A那樣儲(chǔ)存裝置也可以改變閾值I與閾值2的值、兩者之間的幅度。另一方面,相反地,在將存儲(chǔ)池卷從容量虛擬化池42回收至系統(tǒng)容量池的情況下,如圖9B那樣,有效實(shí)際容量4200C的大小減小。此時(shí),儲(chǔ)存裝置也可以改變閾值I與閾值2的值、兩者之間的幅度。管理服務(wù)器20或維護(hù)終端153能夠?qū)⑾鄬?duì)于容量虛擬化池42的容量的規(guī)定比例作為默認(rèn)閾值通過GUI呈現(xiàn)給用戶、管理者。用戶等可以采用該默認(rèn)值、或者也可以在GUI中輸入其它的閾值。在以多個(gè)層級(jí)管理容量虛擬化池42的情況下,該處理也可以在每個(gè)層級(jí)中實(shí)施。在用戶在各層級(jí)輸入的閾值與對(duì)容量虛擬化池統(tǒng)一設(shè)定的閾值不一致的情況下,GUI向用
戶等顯示警告。接著,以池的這種結(jié)構(gòu)為前提,詳細(xì)說明計(jì)算機(jī)系統(tǒng)。圖10是儲(chǔ)存裝置的存儲(chǔ)器350的框圖。在存儲(chǔ)器350中保存有由處理器360讀入并執(zhí)行的各種程序、與邏輯卷的設(shè)定有關(guān)的結(jié)構(gòu)信息351及與池的設(shè)定有關(guān)的池信息352。以后,在簡記為池的情況下,設(shè)為池包含容量虛擬化池和系統(tǒng)容量池這兩個(gè)。命令控制程序3501對(duì)來自主計(jì)算機(jī)10或管理裝置20的命令進(jìn)行詮釋,執(zhí)行由該命令規(guī)定的處理。結(jié)構(gòu)控制程序3503實(shí)現(xiàn)儲(chǔ)存裝置30的結(jié)構(gòu)設(shè)定、更新等處理。磁盤I/O程序3505控制向TOEV34的訪問。池控制程序3507執(zhí)行與池的設(shè)定有關(guān)的各種處理。結(jié)構(gòu)信息351是進(jìn)行VDEV、LDEV、層級(jí)、RAID組等的儲(chǔ)存裝置的環(huán)境設(shè)定所需的信息。結(jié)構(gòu)信息351具備地址管理表3511、LDEV管理信息3512、VDEV管理信息3514、Tier管理信息3513、以及RAID組管理信息3515。地址管理表3511保存有目標(biāo)設(shè)備、LDEV, VDEV及物理設(shè)備的地址的映射信息
35111、目標(biāo)設(shè)備-LDEV映射信息35111、LDEV-VDEV映射信息35112、以及VDEV-PDEV映射信息35113。稍后詳細(xì)記述地址管理表3511。LDEV管理信息3512包含與LDEV有關(guān)的管理信息。VDEV管理信息3514具有與VDEV有關(guān)的管理信息。Tier管理信息3513包含在容量虛擬化池、系統(tǒng)容量池中定義的層
級(jí)的管理信息。并且,RAID組信息3515具有由多個(gè)TOEV34構(gòu)成的RAID組的RAID等級(jí)等RAID的
管理信息。池信息352保存與池有關(guān)的設(shè)·定。池信息352包含容量虛擬化池管理信息3521、存儲(chǔ)池卷管理信息3522、VV0L (虛擬卷)-DIR3523、PSCB3524、容量虛擬化池Tier管理信息3527、以及系統(tǒng)容量池管理信息3525。容量虛擬化池管理信息3521是與容量虛擬化池的設(shè)定有關(guān)的管理信息。存儲(chǔ)池卷管理信息3522是與容量虛擬化池42和系統(tǒng)容量池44的存儲(chǔ)池卷有關(guān)的管理信息。VV0L-DIR3523是與針對(duì)容量虛擬化池的LDEV (存儲(chǔ)池卷)的虛擬卷的分配有關(guān)的信息。PSCB3524信息是容量虛擬化池的LDEV的地址的信息。層級(jí)管理信息3257是在容量虛擬化池中設(shè)定的層級(jí)的管理信息??梢詫?duì)每個(gè)池設(shè)定該信息。系統(tǒng)容量池管理信息3525是在系統(tǒng)容量池中設(shè)定的層級(jí)的管理信息。并且,存儲(chǔ)器350具有自動(dòng)容量擴(kuò)展/縮小程序3509,該自動(dòng)容量擴(kuò)展/縮小程序3509根據(jù)第一類VDEV400、400a或者第一類LDEV500、500a向系統(tǒng)容量池的追加、容量虛擬化池的性能要件,對(duì)系統(tǒng)容量池與容量虛擬化池之間的存儲(chǔ)池卷的追加及其回收、多個(gè)容量虛擬化池間的存儲(chǔ)池卷的移動(dòng)進(jìn)行管理。此外,已經(jīng)記述過的閾值是該性能要件的一例。除此之外,作為性能要件,還有IO頻率。并且,每個(gè)層級(jí)的存儲(chǔ)池卷管理程序3508在系統(tǒng)容量池和容量虛擬化池被分層的情況下,按每個(gè)層級(jí)管理存儲(chǔ)池卷數(shù)、其它的特性。在沒有對(duì)池進(jìn)行分層的情況下,管理系統(tǒng)容量池整體的存儲(chǔ)池卷數(shù)、每個(gè)容量虛擬化池整體的存儲(chǔ)池卷的數(shù)量、特性。根據(jù)來自主機(jī)裝置的訪問從容量虛擬化池的存儲(chǔ)池卷向虛擬卷動(dòng)態(tài)地分配頁面的處理通過命令控制程序3501實(shí)現(xiàn)。此外,儲(chǔ)存裝置30在多個(gè)存儲(chǔ)池卷500之間將針對(duì)虛擬卷的頁面分配均勻化。該均勻化處理記載在PCT/JP2009/058533號(hào)中。本申請(qǐng)人將PCT/JP2009/058533號(hào)的所有記載事項(xiàng)添加到了本說明書中。圖11是VDEV管理信息3514的表。VDEV管理信息由VDEV固有信息35141構(gòu)成。VDEV固有信息35141包括VDEV編號(hào)(VDEV#) 35142、仿真類型35143、總大小35144、剩余大小35145、設(shè)備屬性35146、設(shè)備狀態(tài)35147、設(shè)定LDEV數(shù)35148、LDEV編號(hào)35149、開頭 VDEV-SL0T#35150 以及結(jié)束 VDEV_SL0T#35151。VDEV#35142是VDEV的標(biāo)識(shí)符。仿真類型35143是VDEV的仿真類型的標(biāo)識(shí)符??偞笮?5144是對(duì)VDEV設(shè)定的總大小。剩余大小35145是VDEV的未使用區(qū)域的大小。設(shè)備屬性35146是對(duì)VDEV定義的屬性的標(biāo)識(shí)符。在該VDEV是第一類VDEV的情況下保存表示第一類VDEV的標(biāo)識(shí)符,在該VDEV是第二類VDEV并被設(shè)定為虛擬卷的情況下,保存表示第二類VDEV的標(biāo)識(shí)符。設(shè)備狀態(tài)35147是表示VDEV的狀態(tài)的標(biāo)識(shí)符。VDEV的狀態(tài)有正常、關(guān)閉、故障關(guān)閉等。關(guān)閉表示規(guī)矩關(guān)閉等由于發(fā)生故障以外的原因而被關(guān)閉的情形。故障關(guān)閉表示設(shè)備的某一方面發(fā)生了故障而因此被關(guān)閉的情形。設(shè)定LDEV數(shù)35148是在VDEV中設(shè)定的LDEV的總數(shù)。LDEV編號(hào)35149保存VDEV中所設(shè)定的LDEV的編號(hào)。開頭LDEV-SL0T#35150是所設(shè)定的LDEV的物理上的開頭的插槽編號(hào)的標(biāo)識(shí)符。結(jié)束LDEV_SL0T#35151是所設(shè)定的LDEV的物理上的最終的插槽編號(hào)。該LDEV編號(hào)35149、開頭LDEV-SL0T#35150以及結(jié)束LDEV_SL0T#35151按每個(gè)LDEV編號(hào)設(shè)定了與LDEV數(shù)相同的數(shù)量。圖12是LDEV (卷)的管理信息的表。LDEV管理信息包括LDEV固有信息35121。LDEV固有信息35121包括LDEV編號(hào)(LDEV#) 35122、仿真類型35123、大小35124、開頭插槽編號(hào)35125、結(jié)束插槽編號(hào)35126、路徑定義信息35127、設(shè)備屬性35128、設(shè)備狀態(tài)35129、 程序使用狀況351300以及P00L-ID351301。LDEV#35122 是 LDEV 的標(biāo)識(shí)符。仿真類型35123是LDEV的仿真類型的標(biāo)識(shí)符。大小35124是對(duì)LDEV設(shè)定的總大小。在LDEV是虛擬卷的情況下,大小為虛擬化得到的大小。開頭插槽編號(hào)35125是所設(shè)定的LDEV的開頭的插槽編號(hào)的標(biāo)識(shí)符。結(jié)束插槽編號(hào)35126是所設(shè)定的LDEV的最終的插槽編號(hào)。路徑定義信息35127是在主計(jì)算機(jī)10中定義的路徑的標(biāo)識(shí)符。設(shè)備屬性35128是LDEV的屬性的標(biāo)識(shí)符。在LDEV是第一類LDEV的情況下,保存表示第一類LDEV的標(biāo)識(shí)符,在LDEV是第二類LDEV的情況下,保存表示第二類LDEV的標(biāo)識(shí)符。另外,在將LDEV設(shè)定給池的情況下,保存表示池屬性的標(biāo)識(shí)符。設(shè)備狀態(tài)35129是表示該LDEV所屬的VDEV的狀態(tài)的標(biāo)識(shí)符。VDEV的狀態(tài)有正常、關(guān)閉、故障關(guān)閉等。關(guān)閉表示規(guī)矩關(guān)閉等由于發(fā)生故障以外的原因而被關(guān)閉的情形。故障關(guān)閉表示設(shè)備的某一方面發(fā)生了故障而因此被關(guān)閉的情形。程序使用狀況351300在LDEV正在被某個(gè)程序處理的情況下,保存該程序的標(biāo)識(shí)符。P00L-ID351301在LDEV被設(shè)定給池的情況下保存其標(biāo)識(shí)符。在層級(jí)編號(hào)351302中保存作為邏輯卷的供給源的TOEV所對(duì)應(yīng)的層級(jí)的管理編號(hào)。在與分層同時(shí)進(jìn)行管理時(shí),儲(chǔ)存裝置參照該管理編號(hào)。在虛擬卷的表中設(shè)定了層級(jí)管理編號(hào)351302的情況下,從該層級(jí)的存儲(chǔ)池卷向虛擬卷分配頁面。VDEV管理表(圖11)、LDEV管理表(圖12)根據(jù)結(jié)構(gòu)控制程序3503,通過來自用戶或者管理者的操作進(jìn)行設(shè)定或更新。以后的管理表也相同。層級(jí)編號(hào)對(duì)應(yīng)存儲(chǔ)設(shè)備(介質(zhì))。圖13A是介質(zhì)的管理信息的表,圖13B是層級(jí)的
管理信息的表。這些管理信息作為層級(jí)管理信息3513的具體管理信息被保存在存儲(chǔ)器350中。介質(zhì)管理信息表在儲(chǔ)存裝置中擴(kuò)充介質(zhì)時(shí)由結(jié)構(gòu)控制程序3503創(chuàng)建。介質(zhì)類型35132是介質(zhì)的種類。例如,如果是磁盤,則是SSD、FC (Fiber Channel)、SAS (Serial Attached SCSI)、SATA (Serial ATA)等。儲(chǔ)存裝置為了將介質(zhì)的種類按每個(gè)層級(jí)編號(hào)35133進(jìn)行分類、管理,而將構(gòu)成該層級(jí)的信息注冊(cè)到介質(zhì)管理信息表中。
響應(yīng)時(shí)間35134表示來自介質(zhì)的針對(duì)數(shù)據(jù)的讀取、寫入指示的響應(yīng)時(shí)間。該時(shí)間越短的介質(zhì),處理性能一般越高。Sequential Data Rate35135是介質(zhì)的數(shù)據(jù)傳輸能力。是介質(zhì)每單位時(shí)間能夠傳輸?shù)臄?shù)據(jù)量,一般來說,該值越大,是數(shù)據(jù)的傳輸能力越高的介質(zhì)。RAID等級(jí)35136是構(gòu)成層級(jí)的RAID的等級(jí)、例如RAID1、RAID5、RAID6等。圖13A
是層級(jí)管理信息的一例,并不排除其它的信息。在層級(jí)管理信息表(圖13B)中示出了層級(jí)編號(hào)35133與介質(zhì)的類型的對(duì)應(yīng)。圖13B是用于使介質(zhì)與層級(jí)編號(hào)對(duì)應(yīng)的分類的一例。該介質(zhì)的分類是基于介質(zhì)的性能的分類。即,根據(jù)影響儲(chǔ)存器性能的要素、即響應(yīng)時(shí)間35134、Sequential DataRate35135、RAID等級(jí),將介質(zhì)與層級(jí)編號(hào)進(jìn)行對(duì)應(yīng)。圖13B表示將介質(zhì)分類為六種層級(jí)的例子。 儲(chǔ)存裝置也能夠在以后擴(kuò)展層級(jí)。例如追加了新介質(zhì)的情況。層級(jí)的分類也可以由管理者、用戶執(zhí)行、或者通過儲(chǔ)存系統(tǒng)唯一地決定。此外,作為介質(zhì)分類的其它方式,還存在除了性能還增加了位成本的觀點(diǎn)的方法。儲(chǔ)存裝直在對(duì)各星虛擬化池、系統(tǒng)各星池、以及虛擬卷設(shè)定層級(jí)時(shí),參照?qǐng)D13A、圖13B所示的表。層級(jí)的分類可以是相對(duì)的。例如將存在于計(jì)算機(jī)系統(tǒng)中的最好的設(shè)備設(shè)定為層級(jí)0,將其它的設(shè)備分類為下位的層級(jí)。圖14詳細(xì)說明在圖10中說明了概要的地址管理表3511。地址管理表3511保存目標(biāo)設(shè)備、LDEV, VDEV,以及物理設(shè)備的地址的映射信息。地址管理表3511具有目標(biāo)設(shè)備-LDEV映射信息35111、LDEV-VDEV映射信息
35112、以及 VDEV-PDEV 映射信息 35113。 目標(biāo)設(shè)備-LDEV映射信息35111具有目標(biāo)設(shè)備的地址與LDEV的地址的對(duì)應(yīng)信息。LDEV-VDEV映射信息35112具有LDEV的地址與VDEV的地址的信息。VDEV-PDEV映射信息35113具有VDEV的地址、其RAID組編號(hào)(或者奇偶校驗(yàn)組)以及I3DEV的地址的信息。儲(chǔ)存裝置通過參照該地址管理表,能夠獲知目標(biāo)設(shè)備700、701的地址對(duì)應(yīng)哪個(gè)LDEV的哪個(gè)地址。還能夠獲知LDEV的地址對(duì)應(yīng)哪個(gè)VDEV的哪個(gè)地址。還能夠獲知VDEV的地址屬于哪個(gè)RAID組、對(duì)應(yīng)哪個(gè)I3DEV的哪個(gè)地址。圖15是容量虛擬化池的管理信息的表。池管理信息3521具有池固有信息35211。池固有信息35211具有P00L-ID35212、屬性/用途35213、仿真類型35214、容量35215、空閑容量35216、閾值35217、狀態(tài)35218、存儲(chǔ)池卷數(shù)35219、存儲(chǔ)池卷設(shè)備編號(hào)列表35220、正在使用池的設(shè)備數(shù)35221以及正在使用池的設(shè)備編號(hào)35222。P00L-ID35212 是池的標(biāo)識(shí)符。屬性/用途35213是表示容量虛擬化池的屬性以及用途的標(biāo)識(shí)符。屬性是后述的PSCB3524的連接方式。用途例如是自動(dòng)精簡配置、快照、遠(yuǎn)程復(fù)制等池使用方式的用途。仿真類型35214是池的仿真類型的標(biāo)識(shí)符。容量35215是容量虛擬化池的實(shí)際容量。
此外,也可以在圖15的管理表中針對(duì)主計(jì)算機(jī)注冊(cè)被虛擬化的容量(虛擬容量)??臻e容量35216是容量虛擬化池的未使用的實(shí)際容量。也可以將容量虛擬化池的總實(shí)際容量、已使用實(shí)際容量、或者它們中的一個(gè)或多個(gè)的組合注冊(cè)在表中。閾值35217是用于執(zhí)行針對(duì)容量虛擬化池追加存儲(chǔ)池卷、從容量虛擬化池回收存儲(chǔ)池卷的特性值。狀態(tài)35218是池的當(dāng)前狀態(tài)。例如是定義中、擴(kuò)展中、有效等。存儲(chǔ)池卷數(shù)35219是被設(shè)定為池的LDEV的總數(shù)。存儲(chǔ)池卷設(shè)備編號(hào)列表35220是被設(shè)定為池的LDEV編號(hào)的一覽。正在使用池的設(shè)備數(shù)35221是屬于容量虛擬化池的存儲(chǔ)池卷的數(shù)量。正在使用池 的設(shè)備編號(hào)35222是屬于容量虛擬化池的存儲(chǔ)池卷的ID的一覽。池所具有的層級(jí)的列表35223是對(duì)容量虛擬化池設(shè)定的層級(jí)信息的列表的一覽。稍后記述層級(jí)信息的列表35271。層級(jí)信息的列表35271是容量虛擬化池內(nèi)層級(jí)管理信息3527的一例。圖16是RAID組信息3515的一例的表35151。該信息用于管理構(gòu)成RAID組編號(hào)35152的HDD類型信息。介質(zhì)類型35153是表示SSD、SAS等介質(zhì)的種類的信息。旋轉(zhuǎn)數(shù)35154表示介質(zhì)的旋轉(zhuǎn)數(shù)。RAID等級(jí)35155是在構(gòu)成RAID組的情況下的、例如RAID1、RAID5等的信息。圖17是用于被分層的容量虛擬化池或者被分層的系統(tǒng)容量池的層級(jí)管理的管理信息35271的一例的表35271。該表的特征是在容量虛擬化池的管理信息(圖15)、或者后述的系統(tǒng)容量池的管理信息(圖18)中追加了層級(jí)的信息(Tier# :35273)的點(diǎn)。信息表35271包括池ID35272、層級(jí)編號(hào)35273、仿真類型35274、容量35275、空閑容量35276、閾值35277、狀態(tài)35278、存儲(chǔ)池卷數(shù)35279、存儲(chǔ)池卷設(shè)備編號(hào)列表35280、正在使用池的設(shè)備數(shù)35281和正在使用池的設(shè)備編號(hào)35282、以及屬于層級(jí)的存儲(chǔ)池卷的列表35283。關(guān)于這些各信息說明與容量虛擬化池的管理信息表(圖15)、或者系統(tǒng)容量池的管理信息表(圖18)不同的部分。層級(jí)編號(hào)35273是在池中設(shè)定的層級(jí)的識(shí)別信息(參考圖13AU3B)。在池內(nèi)設(shè)定了多個(gè)層級(jí)的情況下,對(duì)每個(gè)層級(jí)設(shè)定圖17的表。容量35275是各層級(jí)(Tier# :35273)的總實(shí)際容量??臻e容量35276是該層級(jí)的未使用區(qū)域的大小。閾值35277能夠?qū)γ總€(gè)層級(jí)設(shè)定。狀態(tài)35278是層級(jí)的當(dāng)前狀態(tài),例如是定義中、擴(kuò)展中、有效等。存儲(chǔ)池卷數(shù)35219、存儲(chǔ)池卷設(shè)備編號(hào)列表35220、正在使用池的設(shè)備數(shù)35221、正在使用池的設(shè)備編號(hào)35222分別是已經(jīng)記述過的內(nèi)容,可以對(duì)每個(gè)層級(jí)設(shè)定。屬于層級(jí)的存儲(chǔ)池卷列表35283中包含屬于各層級(jí)的存儲(chǔ)池卷的列表35221 (圖12)。此外,如圖3那樣在容量虛擬池跨越多個(gè)簇之間的情況下,在管理表(圖15、圖17)中附加區(qū)分簇的信息,按每個(gè)簇管理表內(nèi)的信息。
圖18是系統(tǒng)容量池的管理信息3525的表35251。系統(tǒng)容量池管理信息表35251包括池ID35252、屬性/用途35253、仿真類型35254、容量35255、空閑容量35256、閾值35257、狀態(tài)35258、存儲(chǔ)池卷數(shù)35259、所使用的池ID列表35260、層級(jí)列表35261。池ID35252是系統(tǒng)容量池的標(biāo)識(shí)符。屬性/用途35253是表示池的屬性和用途的標(biāo)識(shí)符,具體來說表示池是系統(tǒng)容量池。仿真類型35254是系統(tǒng)容量池的仿真類型的標(biāo)識(shí)符。容量35255是系統(tǒng)容量池的總?cè)萘???側(cè)萘渴侵赶到y(tǒng)容量池所設(shè)定的所有存儲(chǔ)池卷的合計(jì)容量??臻e容量35256是系統(tǒng)容量池的未使用區(qū)域的大小。
閾值35257是針對(duì)系統(tǒng)容量池的限制值,與已經(jīng)記述過的閾值大致相同。例如當(dāng)系統(tǒng)容量池的已使用容量超過閾值時(shí),需要在儲(chǔ)存裝置中增設(shè)存儲(chǔ)設(shè)備。狀態(tài)35258是系統(tǒng)容量池的當(dāng)前狀態(tài)。例如是定義中、擴(kuò)展中、有效等。存儲(chǔ)池卷數(shù)35259是被設(shè)定為系統(tǒng)容量池的LDEV(未使用存儲(chǔ)池卷)的總數(shù)。所使用的池ID列表35260是與系統(tǒng)容量池相對(duì)應(yīng)的容量虛擬化池的ID的一覽。通常注冊(cè)儲(chǔ)存裝置內(nèi)的多個(gè)容量虛擬化池的全部。層級(jí)列表35261是在系統(tǒng)容量池中設(shè)定的層級(jí)的表35271的一覽。此外,在已經(jīng)記述過的表中沒有設(shè)定層級(jí)的情況下,在層級(jí)信息中注冊(cè)空(NULL)。圖15至圖18的各表通過結(jié)構(gòu)控制程序3503進(jìn)行設(shè)定、更新。在池正在運(yùn)行的過程中也能夠進(jìn)行層級(jí)的定義。此外,儲(chǔ)存裝置除了將系統(tǒng)容量池應(yīng)用于自動(dòng)精簡配置以外,還可以應(yīng)用于儲(chǔ)存控制中的其它復(fù)制系統(tǒng)功能、即快照、遠(yuǎn)程復(fù)制,用于確保這些復(fù)制系統(tǒng)功能所需的復(fù)制目的地卷。圖19是用于說明VV0L-DIR3523以及PSCB3524的框圖。VV0L-DIR3523是用于構(gòu)成虛擬卷的虛擬區(qū)域的第二類LDEV的結(jié)構(gòu)信息。PSCB (Pool SLOT Control fcock) 3524是在容量虛擬化池42中設(shè)定的第一類LDEV的結(jié)構(gòu)的信息。如已經(jīng)記述過的那樣,儲(chǔ)存裝置30由TOEV34以RAID結(jié)構(gòu)的方式構(gòu)成第一類VDEV400。將該第一類VDEV400分割成作為存儲(chǔ)區(qū)域的第一類LDEV500。第一類LDEV被設(shè)定給容量虛擬化池42。被設(shè)定給該容量虛擬化池42的第一類LDEV是存儲(chǔ)池卷900。另外,儲(chǔ)存裝置設(shè)定虛擬卷(VV0L)701,進(jìn)一步構(gòu)成第二類VDEV401。將該第二類VDEV分割成作為虛擬卷的虛擬的存儲(chǔ)區(qū)域的第二類LDEV(VV0L800)。儲(chǔ)存裝置將作為虛擬卷701的第二類LDEV501分配給作為存儲(chǔ)池卷的第一類LDEV500。由此,主計(jì)算機(jī)10所訪問的虛擬卷的存儲(chǔ)區(qū)域?qū)?yīng)由作為物理設(shè)備的TOEV34構(gòu)成的第一類LDEV。虛擬卷的結(jié)構(gòu)被保存在VV0L-DIR3523中。VV0L-DIR3523由LDEV編號(hào)(LDEV#) 35231 以及入口 35232 構(gòu)成。LDEV 編號(hào)(LDEV#) 35231 是第二類 LDEV 的標(biāo)識(shí)符。
入口 35232是第二類LDEV的結(jié)構(gòu)信息。該入口 35232由第二類LDEV地址35233、PSCB指標(biāo)35234、以及層級(jí)編號(hào)35235構(gòu)成。在第二類LDEV被分配給存儲(chǔ)池卷900的第一類LDEV的情況下,在PSCB指標(biāo)35234中保存該第一類LDEV的區(qū)域的指標(biāo)。此外,在初始狀態(tài)下第二類LDEV沒有被分配給第一類LDEV,因此在PSCB指標(biāo)35234中保存“空(NULL) ”。PSCB3524是在容量虛擬化池42中設(shè)定的第一類LDEV的信息。該P(yáng)SCB3524按在容量虛擬化池42中設(shè)定的第一類LDEV的每個(gè)插槽進(jìn)行設(shè)定。PSCB3524 由 LDEV 編號(hào)(LDEV#) 35241、存儲(chǔ)池卷地址 35242、PSCB 前方指標(biāo) 35243以及PSCB后方指標(biāo)35244構(gòu)成。LDEV編號(hào)(LDEV#) 35241是存儲(chǔ)池卷中的第一類LDEV的標(biāo)識(shí)符。存儲(chǔ)池卷地址35242是存儲(chǔ)池卷900中的第一類LDEV的地址。 PSCB前方指標(biāo)35243和PSCB后方指標(biāo)35244是存儲(chǔ)池卷900內(nèi)的第一類LDEV的前后插槽的標(biāo)識(shí)符。另外,存儲(chǔ)池卷900的區(qū)域中的未使用的區(qū)域的開頭用空閑PSCB隊(duì)列35240表示??臻ePSCB隊(duì)列35240包含指向表示下一個(gè)插槽的PSCB3524的指標(biāo)。儲(chǔ)存裝置30參照空閑PSCB隊(duì)列35240所示的指標(biāo),獲得下一個(gè)PSCB3524。并且,參照下一個(gè)PSCB3524的PSCB后方指標(biāo)35245,逐步地追蹤PSCB3524。然后,獲得與該未使用區(qū)域的最終的插槽對(duì)應(yīng)的PSCB3524。該最后的PSCB3524的PSCB后方指標(biāo)35244是空閑PSCB 隊(duì)列 35240。儲(chǔ)存裝置根據(jù)追蹤空閑PSCB隊(duì)列35240并通過PSCB3524的指標(biāo)連接得到的集合,能夠獲知系統(tǒng)容量池的存儲(chǔ)池卷900的未使用區(qū)域。儲(chǔ)存裝置設(shè)定與在容量虛擬化池42中設(shè)定的第一類LDEV對(duì)應(yīng)的PSCB3524。具體來說,設(shè)定與在容量虛擬化池42中設(shè)定的第一類LDEV的各插槽對(duì)應(yīng)的PSCB3524,并且設(shè)定空閑PSCB隊(duì)列35240。在初始狀態(tài)下,容量虛擬化池42全部未使用,因此通過空閑PSCB隊(duì)列35240連接的集合對(duì)應(yīng)在容量虛擬化池中設(shè)定的第一類LDEV的所有區(qū)域。并且,儲(chǔ)存裝置30在使用該容量虛擬化池的區(qū)域的情況下,通過將所需的插槽數(shù)量的PSCB3524分配給作為第二類LDEV的VV0L-DIR3523,能夠使用該區(qū)域。一個(gè)插槽或者多個(gè)插槽的集合相當(dāng)于頁面。頁面基于一個(gè)或多個(gè)PSCB確定。主機(jī)裝置向虛擬卷800的訪問、從存儲(chǔ)池卷針對(duì)虛擬卷800的訪問區(qū)域進(jìn)行的存儲(chǔ)區(qū)域的分配以頁面為單位執(zhí)行。具體來說,儲(chǔ)存裝置參照空閑PSCB隊(duì)列35240。然后,獲取分配給第二類LDEV的與所需的區(qū)域相應(yīng)(頁面)的PSCB3524。將獲取到的該P(yáng)SCB3524分別分配給VV0L-DIR3523的入口。即,在VV0L-DIR3523的各入口的PSCB指標(biāo)35234中保存表示相對(duì)應(yīng)的PSCB3524的指標(biāo)。此外,已分配的PSCB3524被解除空閑PSCB隊(duì)列35240的連接。由此,第二類LDEV的各頁面(插槽)被分配給用VV0L-DIR3523的各入口的PSCB指標(biāo)35234表示的PSCB3424。PSCB3524對(duì)應(yīng)第一類LDEV的插槽,因此結(jié)果為第二類LDEV被分配給第一類LDEV,作為主計(jì)算機(jī)10的訪問對(duì)象的虛擬卷能夠作為物理設(shè)備使用。在圖19中,由于沒有對(duì)容量虛擬化池進(jìn)行分層管理,因此層級(jí)編號(hào)35235為空白。
命令控制程序3501根據(jù)從主計(jì)算機(jī)10接收到寫入請(qǐng)求的虛擬卷的地址在VVOL-DIR表中進(jìn)行追蹤,檢查PSCB是否被分配給了 VV0L-DIR3523的入口。在分配了 PSCB的情況下,命令控制程序3501將寫入數(shù)據(jù)覆蓋在已經(jīng)存在的PSCB上。在未分配PSCB的情況下,選擇與空閑隊(duì)列相連接的PSCB,將其分配給VV0L-DIR3523 的入口 35232。作為以頁面為單位的信息,還存在基于頁面狀態(tài)的驗(yàn)證獲得的信息。例如是基于定期地監(jiān)視向頁面的訪問頻率的結(jié)果獲得的信息。另外,在被保存在存儲(chǔ)池卷中的數(shù)據(jù)中也可以包含通過對(duì)容量虛擬化池的每個(gè)頁面附加信息能夠檢索數(shù)據(jù)被分配給了哪個(gè)虛擬卷的哪個(gè)地址的信息。
·
儲(chǔ)存裝置30不需要以頁面為單位管理系統(tǒng)容量池44。在進(jìn)行從系統(tǒng)容量池44向容量虛擬化池42追加存儲(chǔ)池卷的處理時(shí),采用基于PSCB的管理方式。此外,儲(chǔ)存裝置30也可以將從系統(tǒng)容量池向容量虛擬化池追加的存儲(chǔ)池卷與空閑隊(duì)列相連接來進(jìn)行管理。圖20表示對(duì)容量虛擬化池42設(shè)定了層級(jí)時(shí)的框圖。儲(chǔ)存裝置30按每個(gè)層級(jí)管理空閑PSCB。作為層級(jí),例示了 TierO和Tierl。虛擬化容量池也按相同的層級(jí)進(jìn)行管理。從多個(gè)層級(jí)(Tier、Tierl)以頁面為單位向一個(gè)第二類LDEV35231分配了區(qū)域。儲(chǔ)存裝置30將以頁面為單位的信息作為以PSCB為單位的信息進(jìn)行管理。層級(jí)編號(hào)35235是PSCB所屬的層級(jí)的編號(hào)。命令控制程序3501在沒有對(duì)VV0L-DIR3523的入口分配PSCB的情況下,選擇與分配給目標(biāo)層級(jí)的編號(hào)的空閑隊(duì)列相連接的PSCB,將其分配給VV0L-DIR3523的入口 35232。關(guān)于向虛擬卷分配來自哪個(gè)Tier的頁面,例如有從期望響應(yīng)快的高性能的Tier首先分配頁面的方法。主計(jì)算機(jī)或儲(chǔ)存裝置也可以按每個(gè)虛擬卷設(shè)定在初期分配的Tier編號(hào)。也可以針對(duì)容量虛擬化池進(jìn)行設(shè)定以從高性能的Tier或者低性能的Tier向虛擬卷分配頁面。儲(chǔ)存裝置也可以監(jiān)視來自主計(jì)算機(jī)的IO負(fù)荷向適當(dāng)?shù)腡ier重新配置數(shù)據(jù)。在存在多個(gè)容量虛擬化池的情況下,可以所有的容量虛擬化池都被分層,也可以一部分容量虛擬化池被分層、剩余的不被分層。此外,沒有被分層的池通常由單一 Tier的存儲(chǔ)池卷構(gòu)成。作為從系統(tǒng)容量池被追加存儲(chǔ)池卷的對(duì)象,針對(duì)自動(dòng)精簡配置用的池“容量虛擬化池”進(jìn)行了說明,但是取而代之,也可以如之前簡略說明的那樣存在具有快照卷的快照池、具有遠(yuǎn)程復(fù)制的日志卷(journal volume)的日志池(journal pool)??煺粘氐拈撝抵写嬖诳煺账鶝]有使用的快照卷的總數(shù)、或者未使用的總?cè)萘俊T诳煺罩?,?dāng)備份量變多時(shí),容量變得不足,因此儲(chǔ)存裝置從系統(tǒng)容量池向快照池追加快照卷。另一方面,在備份容量較少的情況下,由于快照池的容量過大,因此儲(chǔ)存裝置執(zhí)行將快照卷從快照池(對(duì)應(yīng)容量虛擬化池)返回到系統(tǒng)容量池的處理。日志池的閾值中存在遠(yuǎn)程復(fù)制的帶寬。在遠(yuǎn)程復(fù)制中的復(fù)制源卷與復(fù)制目的地卷之間的傳輸帶寬變窄的情況下,儲(chǔ)存裝置從系統(tǒng)容量池向日志池追加日志卷來確保帶寬。另外,儲(chǔ)存裝置在帶寬變寬、遠(yuǎn)程復(fù)制的能力寬裕的情況下,為了使帶寬變窄來降低成本,而將日志卷從日志池(對(duì)應(yīng)容量虛擬化池)返回到系統(tǒng)容量池。儲(chǔ)存裝置當(dāng)將第一類LDEV設(shè)定給系統(tǒng)容量池44時(shí),在LDEV管理表(圖12)的池ID351301中注冊(cè)系統(tǒng)容量池的ID。儲(chǔ)存裝置當(dāng)從系統(tǒng)容量池44向容量虛擬化池42追加存儲(chǔ)池卷時(shí),在LDEV管理表(圖12)的池ID351301中注冊(cè)目標(biāo)的容量虛擬化池的ID。儲(chǔ)存裝置基于容量虛擬化池中的容量的消耗動(dòng)向決定要向容量虛擬化池追加的容量、或者基于過去從系統(tǒng)容量池向容量虛擬化池追加存儲(chǔ)池卷的傾向來決定。向容量虛擬化池追加的存儲(chǔ)池卷的數(shù)量通過將假想追加容量除以存儲(chǔ)池卷的基準(zhǔn)容量計(jì)算出。 接著,說明容量虛擬化池的容量擴(kuò)展動(dòng)作。該動(dòng)作通過自動(dòng)容量擴(kuò)展縮小程序3509執(zhí)行。該程序在對(duì)虛擬卷分配頁面的過程、儲(chǔ)存裝置內(nèi)的復(fù)制功能、例如鏡像、差分快照中與向副卷的寫入處理對(duì)應(yīng)的頁面分配處理的過程、以及周期性的系統(tǒng)監(jiān)視處理的過程中被調(diào)用。根據(jù)圖21所示的流程說明在命令處理程序3501針對(duì)虛擬卷執(zhí)行寫入處理時(shí)由自動(dòng)容量擴(kuò)展縮小程序進(jìn)行的、容量虛擬化池的容量擴(kuò)展處理的詳情。該流程為了變更容量虛擬化池的容量而使用兩個(gè)閾值。第一閾值是上限值,當(dāng)同一池的使用容量超過該閾值時(shí),自動(dòng)容量擴(kuò)展/縮小程序3509對(duì)容量虛擬化池42的容量進(jìn)行擴(kuò)展。第二閾值是參照值,當(dāng)使用量超過該閾值時(shí),程序開始使用容量的監(jiān)視記錄以監(jiān)視容量虛擬化池。此外,第一閾值和第二閾值是相對(duì)于容量虛擬化池的整體容量的相對(duì)比,使用容量也是相對(duì)于池的整體容量的相對(duì)比。在S24001中,自動(dòng)容量擴(kuò)展/縮小程序3509將容量虛擬化池的使用容量與第一閾值進(jìn)行比較。當(dāng)該比較的結(jié)果判斷為前者為后者以上時(shí),判斷為容量虛擬化池的有效實(shí)際容量不足,決定從系統(tǒng)容量池44向容量虛擬化池42追加的容量(S24009)。接著,在S24003中將所有容量虛擬化池的使用容量的合計(jì)與第一閾值進(jìn)行比較。該步驟中的第一閾值可以是與S24001的第一閾值相同的值、也可以不相同,S24003中的第一閾值是合計(jì)使用量的上限相對(duì)于所有容量虛擬化池的合計(jì)容量的比例。在該判斷的結(jié)果為合計(jì)使用量小于閾值的情況下,S24004視作儲(chǔ)存裝置中存在的多個(gè)容量虛擬化池的容量寬裕,從其它的容量虛擬化池向被進(jìn)行來自主機(jī)裝置的寫入處理的容量虛擬化池追加存儲(chǔ)池卷。另一方面,在S24003的判斷中合計(jì)使用量為閾值以上的情況下,程序3509視作容量虛擬化池的容量不足、需要從系統(tǒng)容量池44向容量虛擬化池42補(bǔ)充存儲(chǔ)池卷,在S24010中判斷系統(tǒng)容量池中是否存在能夠向容量虛擬化池追加的存儲(chǔ)池卷。在否定該判斷的情況下,向用戶通知無法擴(kuò)展容量虛擬化池的容量的內(nèi)容、即對(duì)用戶、管理者請(qǐng)求在儲(chǔ)存裝置中增設(shè)介質(zhì)(S24011)。另一方面,當(dāng)自動(dòng)容量擴(kuò)展縮小程序3509肯定S24010的判斷時(shí),從系統(tǒng)容量池向作為寫入處理對(duì)象的容量虛擬化池追加存儲(chǔ)池卷(S24005)。
在S24001中,程序3509判斷為容量虛擬化池的使用容量小于第一閾值時(shí),將使用容量與第二閾值進(jìn)行比較(S24002)。在前者為后者以下的情況下,視作容量虛擬化池中沒有出現(xiàn)容量不足而結(jié)束處理。但是,在這種情況下,由于容量虛擬化池中出現(xiàn)容量過剩,因此從容量虛擬化池刪減存儲(chǔ)池卷。當(dāng)前者大于后者時(shí),根據(jù)本次的寫入處理判斷是否在最初產(chǎn)生了該情形(S24007)。當(dāng)程序肯定該判斷時(shí),為了防備容量虛擬化池的容量不足,開始針對(duì)作為寫入對(duì)象的容量虛擬化池進(jìn)行監(jiān)視處理(S24008)。監(jiān)視處理是指容量虛擬化池的容量以及檢查容量的日期和時(shí)間的存儲(chǔ)。監(jiān)視程序定期地繼續(xù)容量虛擬化池的監(jiān)視處理。此外,S24003也可以變更為系統(tǒng)容量池的容量是否寬裕的判斷。接著,圖22是自動(dòng)容量擴(kuò)展/縮小程序3509定期地執(zhí)行的容量虛擬化池的自動(dòng) 容量擴(kuò)展處理的流程圖。S24210從存儲(chǔ)器的處理區(qū)域讀取容量虛擬化池的使用容量和判斷出該容量的日期和時(shí)間的記錄。S24220根據(jù)容量虛擬化池的過去的容量消耗速度等的使用傾向等,計(jì)算有效實(shí)際容量不足的日期和時(shí)間。容量的消耗速度能夠通過比較在定期檢查的定時(shí)獲取到的容量虛擬化池的容量(已使用容量、或者空閑容量)計(jì)算出。S24230將下一次的容量虛擬化池的容量檢查的預(yù)定日期和時(shí)間與計(jì)算出的日期和時(shí)間進(jìn)行比較,在預(yù)定日期和時(shí)間為計(jì)算出的日期和時(shí)間以前的情況下,結(jié)束流程。在預(yù)定日期和時(shí)間為計(jì)算出的日期和時(shí)間以后的情況下,S24240判斷系統(tǒng)容量池是否具有足夠的存儲(chǔ)池卷。當(dāng)判斷為否定時(shí),S24260判斷為不能擴(kuò)展容量虛擬化池的容量,結(jié)束流程。當(dāng)判斷為肯定時(shí),S24250執(zhí)行容量擴(kuò)展處理。此外,在系統(tǒng)容量池的容量不足的情況下,也可以由儲(chǔ)存裝置將系統(tǒng)容量池中所存在的容量追加到容量虛擬化池,管理裝置20向用戶、管理者通知容量用盡的系統(tǒng)容量池的ID、具有容量用盡的系統(tǒng)容量池的儲(chǔ)存裝置的識(shí)別信息。圖23是容量虛擬化池的自動(dòng)容量擴(kuò)展處理的另一流程圖。命令控制程序3501當(dāng)從管理者側(cè)裝置接收到虛擬卷創(chuàng)建命令時(shí),調(diào)用池控制程序3507。池控制程序3507檢查是否對(duì)附加有由管理者指定的ID的容量虛擬化池設(shè)定了超容量閾值(圖15的35217) (S24310)。當(dāng)池控制程序3507判斷為沒有設(shè)定閾值時(shí),池控制程序3507為了在被賦予了管理者所指示的ID的容量虛擬化池中定義由管理者指示創(chuàng)建的虛擬卷,而對(duì)創(chuàng)建對(duì)象的虛擬卷設(shè)定在容量虛擬化池的管理信息(圖15)中定義的虛擬化卷的信息。并且,當(dāng)調(diào)用結(jié)構(gòu)控制程序3503時(shí),結(jié)構(gòu)控制程序在地址管理表3511的各映射信息中設(shè)定所創(chuàng)建的虛擬卷的信息。即,S24310A進(jìn)行虛擬卷的定義、設(shè)定處理。接著,S24310B更新容量虛擬化池的管理信息(圖15),S24310C向管理者通知完成了虛擬卷的創(chuàng)建。當(dāng)池控制程序3507判斷為設(shè)定了超容量閾值時(shí),計(jì)算已安裝在儲(chǔ)存裝置中的虛擬化卷與根據(jù)來自管理者的請(qǐng)求創(chuàng)建的虛擬卷的合計(jì)的使用總?cè)萘?S24320),然后,將該總虛擬容量與容量虛擬化池的實(shí)際容量和超容量閾值的相乘值進(jìn)行比較,檢查前者是否超過了后者(S24330)。當(dāng)池控制程序3507判斷為前者未超過后者時(shí),執(zhí)行S24320A S24320C。另一方面,當(dāng)池控制程序3507判斷為超過了后者時(shí),為了判斷是否將與超過的量相應(yīng)的存儲(chǔ)池卷追加到容量虛擬化池來進(jìn)行補(bǔ)充,而檢查是否從管理服務(wù)器20等向儲(chǔ)存裝置發(fā)送了優(yōu)先級(jí)信息,進(jìn)而檢查該優(yōu)先級(jí)信息是否為“高”(S24340)。在優(yōu)先級(jí)為“高”的情況下,池控制程序3507調(diào)用自動(dòng)容量擴(kuò)展/縮小程序3509,使其執(zhí)行S24350以后的容量虛擬化池的自動(dòng)擴(kuò)展處理。S24350計(jì)算或預(yù)測容量虛擬化池中不足的實(shí)際容量的量(S24350),然后,S24360進(jìn)行對(duì)系統(tǒng)容量池設(shè)置的閾值的參照等,判斷系統(tǒng)容量池的空閑容量中是否存在足以提供該實(shí)際容量的量的實(shí)際容量。 作為以什么樣的程度擴(kuò)展容量虛擬化池的設(shè)計(jì)例,存在預(yù)先決定值來向容量虛擬化池增設(shè)存儲(chǔ)池卷以使虛擬卷的虛擬容量的合計(jì)為容量池的實(shí)際容量的90%以下。當(dāng)S24360對(duì)其進(jìn)行否定判斷時(shí),S24360A向虛擬卷創(chuàng)建請(qǐng)求源警告或通知不能創(chuàng)建虛擬卷的內(nèi)容。此外,也可以代替儲(chǔ)存裝置發(fā)出不能創(chuàng)建虛擬卷的通知的方式,而從容量寬裕的容量虛擬化池回收容量、或者檢索與儲(chǔ)存裝置30外接的儲(chǔ)存器,使用其容量來自動(dòng)繼續(xù)容量虛擬化池的容量擴(kuò)展處理。該方式不僅能夠應(yīng)用于圖23所示的流程圖所涉及的處理,也能夠應(yīng)用于其它的流程圖所涉及的處理。當(dāng)S24360進(jìn)行肯定判斷時(shí),S24370從系統(tǒng)容量池向?qū)ο笕萘刻摂M化池追加存儲(chǔ)池卷,S24380、S24390、S24400進(jìn)行虛擬卷的創(chuàng)建處理。另一方面,當(dāng)S24340將優(yōu)先級(jí)判斷為不是“高”時(shí),S24340A視作違反超容量,而向管理用戶通知無法創(chuàng)建虛擬卷。圖24是針對(duì)容量虛擬化池的容量自動(dòng)縮小處理進(jìn)行說明的流程圖。關(guān)于容量虛擬化池的容量自動(dòng)擴(kuò)展處理以及容量自動(dòng)縮小處理的應(yīng)用,也可以采用針對(duì)容量虛擬化池的IO頻率、IO負(fù)荷作為閾值。S24500的閾值3是基于針對(duì)容量虛擬化池的IO負(fù)荷的限制值。命令控制程序3501將針對(duì)容量虛擬化池的IO負(fù)荷與閾值3進(jìn)行比較(S24500),如果前者為后者以上,則視作不應(yīng)該縮小容量虛擬化池42的容量而結(jié)束處理。另一方面,在前者低于后者的情況下,視作有縮小容量的余地,而調(diào)用自動(dòng)容量擴(kuò)展/縮小程序3509。S24502將容量虛擬化池的已使用容量與閾值2進(jìn)行比較。閾值2是規(guī)定容量虛擬化池的已使用容量的下限的值,在容量虛擬化池的已使用容量為該閾值以上的情況下,視作容量虛擬化池的容量沒有過剩且沒有縮小其容量的余地,S24502結(jié)束流程。當(dāng)S24502進(jìn)行肯定判斷時(shí),S24504刪除容量虛擬化池的存儲(chǔ)池卷,向系統(tǒng)容量池追加所刪除的卷。此外,執(zhí)行圖24的流程的契機(jī)與圖21至圖23中的至少一個(gè)的契機(jī)相同。圖25是容量虛擬化池的自動(dòng)擴(kuò)展處理的另一例所涉及的流程圖。該流程圖是圖21的變形例,不同點(diǎn)在于容量虛擬化被分層、自動(dòng)容量的擴(kuò)展處理按容量虛擬化池的每個(gè)層級(jí)執(zhí)行。
在該流程圖中,對(duì)與圖21所示的各處理對(duì)應(yīng)的部分附加了相同的附圖標(biāo)記。在圖25的附圖標(biāo)記S24001和S24002的處理中,對(duì)每個(gè)層級(jí)研究閾值。圖25的流程圖不包含與圖21的S24003和S24004相當(dāng)?shù)奶幚?。圖26是針對(duì)系統(tǒng)容量池自動(dòng)追加/自動(dòng)削除存儲(chǔ)池卷的流程圖。自動(dòng)容量擴(kuò)展/變更程序309將系統(tǒng)容量池的現(xiàn)有容量(多個(gè)未使用存儲(chǔ)池卷的合計(jì)容量)與下限閾值(閾值I)進(jìn)行比較(S26001)。當(dāng)判斷為前者為后者以上吋,將系統(tǒng)容量池的容量與上限的閾值(閾值2)進(jìn)行比較(S26005)。當(dāng)判斷為前者為上限閾值以下時(shí),認(rèn)為系統(tǒng)容量池的容量既沒有不足也沒有過剩,從而結(jié)束流程。當(dāng)S26005判斷為系統(tǒng)容量池的容量超過閾值2時(shí),S26006視作系統(tǒng)容量池的容量過剩,從系統(tǒng)容量池刪除未使用的存儲(chǔ)池卷。這樣,在將系統(tǒng)容量池的容量縮小的情況下,減少存儲(chǔ)驅(qū)動(dòng)器是根本。自動(dòng)容量擴(kuò)展/變更程序309決定要撤除的HDD磁盤,根據(jù)事先的設(shè)定或來自管理用戶的輸入信息來
決定在儲(chǔ)存裝置側(cè)自動(dòng)減少系統(tǒng)容量池的容量、還是委托管理用戶手動(dòng)減少。在選擇了前者的情況下,自動(dòng)容量擴(kuò)展/變更程序309從管理表中刪除在要撤除的HDD中創(chuàng)建的存儲(chǔ)池卷。接著,向管理用戶通知要撤除的HDD信息。接收到該通知的用戶撤除HDD。另ー方面,在選擇了后者的情況下,用戶進(jìn)行從管理表刪除存儲(chǔ)池卷的處理,之后識(shí)別要撤除的HDD,執(zhí)行HDD的撤除。當(dāng)自動(dòng)容量擴(kuò)展/變更程序309關(guān)于S26001判斷為系統(tǒng)容量池的容量小于閾值I吋,由于系統(tǒng)容量池的容量不足,因此從TOEV向系統(tǒng)容量池追加存儲(chǔ)池卷。自動(dòng)容量擴(kuò)展/變更成3509當(dāng)檢測出系統(tǒng)容量池的容量的不足時(shí),向用戶或管理者發(fā)送介質(zhì)的增設(shè)請(qǐng)求。用戶或管理者從I3DEV設(shè)定VDEV和LDEV,將LDEV作為存儲(chǔ)池卷設(shè)定給系統(tǒng)容量池。接著,S26003參照系統(tǒng)容量池管理表(圖18),判斷向系統(tǒng)容量池追加的存儲(chǔ)池卷是否來自被分類在存在于系統(tǒng)容量池中的層級(jí)的介質(zhì),當(dāng)肯定該判斷時(shí)結(jié)束流程。另ー方面,當(dāng)S26002否定上述判斷吋,關(guān)于新的介質(zhì)和被分類在現(xiàn)有的層級(jí)的介質(zhì)進(jìn)行層級(jí)檢查,將檢查出的層級(jí)追加到系統(tǒng)容量池表(圖18)中,從而結(jié)束流程。在圖26中已說明的處理在規(guī)則的定時(shí)執(zhí)行。除此之外也可以在發(fā)生了容量虛擬化池的自動(dòng)容量擴(kuò)展/縮小時(shí)執(zhí)行。在系統(tǒng)容量池中沒有層級(jí)設(shè)定的情況下,省略S26003、26004。圖27是完成多個(gè)容量虛擬化池間的自動(dòng)容量變更處理的流程圖。容量虛擬化池A是存儲(chǔ)池卷的轉(zhuǎn)移目的地,容量虛擬化池B是存儲(chǔ)池卷的轉(zhuǎn)移源。該流程由自動(dòng)容量擴(kuò)展/縮小程序3509執(zhí)行。S33001將容量虛擬化池A與容量虛擬化池B的優(yōu)先級(jí)進(jìn)行比較,判斷容量虛擬化池A的優(yōu)先級(jí)是否高于容量虛擬化池B。當(dāng)S33001否定該判斷吋,S33008選擇有無其它的容量虛擬化池B的存在,當(dāng)判斷為其它的容量虛擬化池B不存在于儲(chǔ)存裝置中吋,結(jié)束流程。另ー方面,當(dāng)將其判斷為否定時(shí),移動(dòng)到下一步驟,S33009選擇下ー個(gè)容量虛擬化池B,并返回到S33001。當(dāng)S33001進(jìn)行肯定判斷時(shí),S33002將容量虛擬化池A的已使用容量與閾值(上限)進(jìn)行比較。當(dāng)S33002否定該判斷時(shí),移動(dòng)到S33008。另ー方面,當(dāng)S33002實(shí)施肯定判斷吋,S33003將容量虛擬化池B的已使用容量與閾值(下限)進(jìn)行比較,當(dāng)將其判斷為否定時(shí),移動(dòng)到S33008時(shí)。S33003進(jìn)行肯定判斷是指容量虛擬化池A的有效實(shí)際容量不足、容量虛擬化池B的有效實(shí)際容量寬裕,因此能夠從容量虛擬化池B向容量虛擬化池A追加存儲(chǔ)池卷。因此,S33004選擇從容量虛擬化池B刪除并要回收至系統(tǒng)容量池的存儲(chǔ)池卷。結(jié)構(gòu)控制程序3503在容量虛擬化池B的表(圖15)中應(yīng)用刪除存儲(chǔ)池卷的更新,然后在系統(tǒng)容量池表(圖18)中應(yīng)用追加來自容量虛擬化池B的存儲(chǔ)池卷的更新。接著,自動(dòng)容量擴(kuò)展/縮小程序3509參照系統(tǒng)容量池的表,從系統(tǒng)容量池選擇向容量虛擬化池A追加的存儲(chǔ)池卷(S33006)。接著,S33007更新系統(tǒng)容量池表和容量虛擬化池A的表來結(jié)束流程的處理。 圖28的流程圖是圖27的變形例,容量虛擬化池被分層,在相同層級(jí)之間進(jìn)行存儲(chǔ)池卷的追加、刪除。僅S33003A(圖27的S33003)與圖27的流程圖不同。對(duì)圖28的流程圖的步驟中的、與圖27的流程圖的步驟對(duì)應(yīng)的步驟附加相同的附圖標(biāo)記。要從容量虛擬化池B向容量虛擬化池A追加的存儲(chǔ)池卷在雙方的池中從相同的層級(jí)選擇。因而,容量虛擬化池B的使用容量是否低于閾值(下限值)、容量虛擬化池B的容量是否寬裕的判斷(S33003A)針對(duì)在S33002中判斷為容量虛擬化池A的有效實(shí)際容量不足的層級(jí)進(jìn)行。針對(duì)在命令控制程序3501將容量虛擬化池的存儲(chǔ)池卷的頁面分配給虛擬卷的訪問區(qū)域時(shí)選擇哪個(gè)層級(jí)的存儲(chǔ)池卷的處理進(jìn)行說明。根據(jù)針對(duì)虛擬卷的、每單位時(shí)間的IO數(shù)(10頻率)決定層級(jí)。即,IO頻率越大,選擇越上位的層級(jí)的存儲(chǔ)池卷。在選擇要?jiǎng)h除的存儲(chǔ)池卷時(shí),(圖24 :S24504、圖26 :S26006、圖28 S33004)中的選擇基準(zhǔn)的例子具有數(shù)據(jù)分配(使用量)較少的存儲(chǔ)池卷、或者沒有跨越模塊的存儲(chǔ)池卷。這是因?yàn)?,前者的?shù)據(jù)移動(dòng)負(fù)荷少、后者如圖3已經(jīng)記述過的那樣可以降低系統(tǒng)的負(fù)荷。同樣地,從系統(tǒng)容量池選擇向容量虛擬化池追加的存儲(chǔ)池卷的選擇基準(zhǔn)也優(yōu)選不跨越模塊。圖29A示出了從高位開始依次將SSD、SAS、SATA的各層級(jí)設(shè)定到容量虛擬化池42中的情形。并且,圖29A示出了各層級(jí)覆蓋何種程度的每單位時(shí)間的IO數(shù)(10頻率)的范圍進(jìn)行數(shù)據(jù)保存。在圖29A中示出了在SSD的層級(jí)中已使用容量接近閾值(I)、SSD的層級(jí)趨于緊迫的情形。這是因?yàn)閬碜灾饔?jì)算機(jī)10的IO頻率較高。在這種情況下,SSD的層級(jí)的已使用容量容易超過閾值(1),此時(shí),自動(dòng)容量擴(kuò)展/縮小程序3509從系統(tǒng)容量池的SSD的層級(jí)向容量虛擬化池的SSD的層級(jí)追加存儲(chǔ)池卷,但是這樣導(dǎo)致消耗位成本高的SSD。因此,管理者如圖29B所示那樣擴(kuò)大SAS所對(duì)應(yīng)的IO頻率的范圍,另一方面縮小分配給SSD的IO頻率的范圍,縮減SSD的層級(jí)中的容量消耗傾向,擴(kuò)展SAS的層級(jí)中的容量消耗傾向。其結(jié)果,能夠抑制位成本高的介質(zhì)的容量消耗。
接著,利用圖37的框圖說明用戶/管理者在計(jì)算機(jī)系統(tǒng)中設(shè)定自動(dòng)精簡配置功能(HDP功能)3900時(shí)的處理。在用戶/管理者在計(jì)算機(jī)系統(tǒng)中創(chuàng)建或設(shè)定容量虛擬化池時(shí),能夠設(shè)定在容量虛擬化池中應(yīng)用將層級(jí)管理應(yīng)用于容量虛擬化池的第一功能的開啟、關(guān)閉。當(dāng)在用戶/管理者進(jìn)行設(shè)定容量虛擬化池的輸入的情況下進(jìn)行該開啟的輸入時(shí)(S1000),創(chuàng)建附加有分層管理功能的容量虛擬化池3902。在開始使用容量虛擬化池3904之后、或者在其創(chuàng)建之后也能夠進(jìn)行該輸入。該開啟的輸入方式有針對(duì)單獨(dú)的容量虛擬化池的輸入(S1002)、針對(duì)所有的容量虛擬化池、即系統(tǒng)整體的輸入(S1004)。通過前者的輸入,儲(chǔ)存裝置30將沒有應(yīng)用層級(jí)管理的容量虛擬化池變更為沒有應(yīng)用分層管理的容量虛擬化池,其結(jié)果,設(shè)定或創(chuàng)建兩個(gè)類型的容量虛擬化池群3904,通過后者的輸入,將系統(tǒng)中存在的多個(gè)容量虛擬化池分別變更為層級(jí)管理型容量虛擬化池(S3906)。 并且,用戶/管理者能夠設(shè)定儲(chǔ)存裝置自動(dòng)擴(kuò)展或縮小容量虛擬化池的容量的第ニ功能的開啟、關(guān)閉。在進(jìn)行容量虛擬化池的設(shè)定吋,當(dāng)用戶等在開啟針對(duì)至少ー個(gè)容量虛擬化池的第一功能之后開啟第二功能時(shí),創(chuàng)建、設(shè)定應(yīng)用層級(jí)管理的系統(tǒng)容量池(S1006 — 3908、S1008 — 3910)。當(dāng)在針對(duì)所有的容量虛擬化池關(guān)閉第一功能的情況下繼續(xù)開啟第二功能時(shí),設(shè)定沒有應(yīng)用分層管理的系統(tǒng)容量池(S1010 — 3912)。當(dāng)用戶設(shè)定容量虛擬化池和系統(tǒng)容量池之后針對(duì)至少ー個(gè)容量虛擬化池開啟第一功能時(shí),儲(chǔ)存裝置在系統(tǒng)容量池沒有處于層級(jí)管理狀態(tài)時(shí)將其變換為分層管理狀態(tài)。當(dāng)針對(duì)在儲(chǔ)存裝置中混合層級(jí)管理型容量虛擬化池和非層級(jí)型容量虛擬化池的形態(tài)開啟第二功能時(shí),儲(chǔ)存裝置在創(chuàng)建層級(jí)管理型系統(tǒng)容量池時(shí),將非層級(jí)型容量虛擬化池自動(dòng)變換為層級(jí)型容量虛擬化池3914。此外,存在多個(gè)系統(tǒng)容量池向?qū)蛹?jí)型容量虛擬化池進(jìn)行變換,如果在非層級(jí)型容量虛擬化池和層級(jí)型容量虛擬化池中區(qū)分了相對(duì)應(yīng)的系統(tǒng)容量池,則不需要上述變換。在非層級(jí)型容量虛擬化池和層級(jí)型容量虛擬化池共用相同的系統(tǒng)容量池的情況下,在容量虛擬化池中也需要層級(jí)的管理。圖30是表示自動(dòng)精簡配置的系統(tǒng)結(jié)構(gòu)與輸入單元300的關(guān)系的框圖。輸入單元由主計(jì)算機(jī)10、管理服務(wù)器、或者維護(hù)管理端末153構(gòu)成。系統(tǒng)容量池44與容量虛擬化池42A或容量虛擬化池42B之間的虛線表示同一層級(jí)之間的對(duì)應(yīng)關(guān)系。并且,容量虛擬化池42A、42B與虛擬卷411、412之間的虛線表示虛擬卷所使用的層級(jí)與容量虛擬化池的層級(jí)的對(duì)應(yīng)關(guān)系。并且,附圖標(biāo)記1610表示由輸入單元進(jìn)行的將虛擬卷設(shè)定給儲(chǔ)存裝置的輸入,附圖標(biāo)記1611表示用于設(shè)定容量虛擬化池的輸入,附圖標(biāo)記1612表示用于設(shè)定系統(tǒng)容量池的輸入。圖31是表示虛擬卷的創(chuàng)建過程的流程圖。該流程通過向儲(chǔ)存裝置發(fā)送圖30的附圖標(biāo)記1610的輸入信息,來由儲(chǔ)存裝置的結(jié)構(gòu)控制程序3501執(zhí)行。該輸入信息中具有虛擬卷的編號(hào)、虛擬卷中所使用的容量虛擬化池的池編號(hào)、虛擬卷中所使用的介質(zhì)種類、池容量的自動(dòng)擴(kuò)展/縮小的可否、虛擬卷的虛擬容量。通過⑶I執(zhí)行輸入。并且,目標(biāo)端ロ、LUN、主機(jī)模式、LUN安全性也根據(jù)需要包含在可輸入信息中。介質(zhì)的種類能夠通過用戶指定性能要件、成本要件來進(jìn)行設(shè)定。當(dāng)在主計(jì)算機(jī)10等中進(jìn)行性能要件、成本要件輸入時(shí),主計(jì)算機(jī)10的程序基于輸入信息計(jì)算響應(yīng)性能(ms)、呑吐量(I0PS、MBPS)、位成本,來判斷最適合于儲(chǔ)存控制處理的介質(zhì)的種類。另外,用戶能夠通過指定服務(wù)等級(jí)來決定介質(zhì)的種類。例如當(dāng)選擇“重視響應(yīng)性能”吋,GUI的程序判斷出SSD或SAS作為要使用虛擬卷的介質(zhì)最佳。主計(jì)算機(jī)等對(duì)每個(gè)用戶判斷有無新創(chuàng)建池并分配給虛擬卷的權(quán)限。例如特定用戶除了能夠?qū)μ摂M卷分配現(xiàn)有的池以外,還能夠分配新的池。另外,某特定用戶能夠?qū)θ萘刻摂M化池設(shè)定層級(jí)。 在圖31的流程圖中,當(dāng)結(jié)構(gòu)控制程序3503從主計(jì)算機(jī)等接收到虛擬卷創(chuàng)建命令時(shí),開始虛擬卷的定義以及設(shè)定處理(S16100)。結(jié)構(gòu)控制程序3503判斷由虛擬卷創(chuàng)建命令1610指定的容量虛擬化池的ID是否存在于存儲(chǔ)器350內(nèi)的容量虛擬化池管理表(圖15)中(S16110)。當(dāng)將其判斷為肯定時(shí),判斷容量虛擬化池的容量是否不足(S16190)。該判斷基于容量虛擬化池的未使用容量或已使用容量以及對(duì)容量虛擬化池設(shè)定的閾值執(zhí)行。在容量虛擬化池的容量沒有不足的情況下,結(jié)構(gòu)控制程序?qū)⑻摂M卷與根據(jù)命令選擇的容量虛擬化池進(jìn)行關(guān)聯(lián)并結(jié)束虛擬卷的創(chuàng)建處理(S16260)。此外,在虛擬卷創(chuàng)建命令1610中包含有“所使用的介質(zhì)的類型”的指定的情況下,結(jié)構(gòu)控制程序3503在S16260之前進(jìn)行所指定的介質(zhì)是否存在于儲(chǔ)存裝置30的判斷,當(dāng)肯定該判斷時(shí)進(jìn)入S16260,當(dāng)否定吋,向用戶通知虛擬卷的創(chuàng)建失敗的意思。該情形在后述的流程圖所涉及的處理中也相同。此時(shí),如果開啟了自動(dòng)容量擴(kuò)展縮小功能,則虛擬卷用池被設(shè)定為容量虛擬化池,如果沒有開啟該功能,則虛擬卷用池被設(shè)定為此前的池。虛擬卷與虛擬卷用池的對(duì)應(yīng)關(guān)系通過注冊(cè)在管理表中來完成。另ー方面,當(dāng)結(jié)構(gòu)控制程序3503判斷為容量虛擬化池的未使用容量不足時(shí)(S16190),檢查在容量虛擬化池中是否開啟了自動(dòng)擴(kuò)展功能縮小功能(S16120),當(dāng)沒有對(duì)其設(shè)定開啟吋,儲(chǔ)存裝置無法對(duì)虛擬卷用池補(bǔ)充存儲(chǔ)池卷,其結(jié)果判斷為虛擬卷用池的容量不足的可能性高,接著,向用戶通知不可創(chuàng)建虛擬卷、不可新創(chuàng)建池(S16240)。當(dāng)S16200判斷出設(shè)定為開啟吋,S16210判斷基于由S16100指定的介質(zhì)的存儲(chǔ)池卷是否存在于系統(tǒng)容量池內(nèi)。當(dāng)S16210判斷為肯定吋,S16220從系統(tǒng)容量池向容量虛擬化池追加存儲(chǔ)池卷,將所追加的卷注冊(cè)到容量虛擬化池管理表(圖15)中。接著,S16230將虛擬卷與容量虛擬化池進(jìn)行對(duì)應(yīng)并結(jié)束虛擬卷創(chuàng)建處理。當(dāng)S16210判斷為否定吋,S16240向用戶通知由S16100指定的介質(zhì)不存在于儲(chǔ)存系統(tǒng)內(nèi)、因而無法創(chuàng)建虛擬卷的情形。當(dāng)S16110判斷為指定的池不存在于儲(chǔ)存裝置吋,S16120檢查虛擬卷用池的容量的自動(dòng)擴(kuò)展/縮小功能的開啟/關(guān)閉。結(jié)構(gòu)控制程序3503通過專用標(biāo)志來管理分層管理功能和自動(dòng)容量變更功能的開啟/關(guān)閉。在自動(dòng)容量變更功能關(guān)閉的情況下,S16180與S16250同樣地結(jié)束處理。另一方面,當(dāng)判斷為該功能開啟吋,S16130判斷基于由S16100指定的介質(zhì)的存儲(chǔ)池卷是否存在于系統(tǒng)容量池中(S16130),當(dāng)將其判斷為否定時(shí),與S16240同樣地結(jié)束處理。當(dāng)S16130判斷為肯定時(shí),設(shè)定新的容量虛擬化池(S16140),該新的容量虛擬化池設(shè)定了自動(dòng)容量擴(kuò)展/縮小功能。并且,結(jié)構(gòu)控制程序從系統(tǒng)容量池向容量虛擬化池追加存儲(chǔ)池卷(S16150)。從系統(tǒng)容量池向容量虛擬化池追加的存儲(chǔ)池卷根據(jù)優(yōu)先級(jí)依次從多個(gè)存儲(chǔ)池卷中確定。 接著,結(jié)構(gòu)控制程序?qū)⑻摂M卷與新規(guī)容量虛擬化池進(jìn)行對(duì)應(yīng)(S16160),從而結(jié)束虛擬卷的創(chuàng)建處理。圖32表示虛擬卷創(chuàng)建處理的第二例所涉及的流程圖。與圖31的流程圖的不同點(diǎn)在于用戶能夠?qū)μ摂M卷設(shè)定層級(jí)。在已經(jīng)記述過的S16110的判斷為“不存在”的情況下,執(zhí)行與圖31相同的處理。在該判斷為“存在”的情況下,如圖32所示那樣進(jìn)行處理,不同于圖31。結(jié)構(gòu)控制程序3503判斷在S16100中指定的池中是否存在虛擬卷所需的層級(jí)(S16300)。判斷為“存在”時(shí)的處理與已經(jīng)記述過的S16190以后的處理相同。當(dāng)S16300判斷為“不存在”吋,S16310判斷自動(dòng)容量擴(kuò)展/縮小功能的開啟/關(guān)閉。當(dāng)將其判斷為“關(guān)閉”吋,S16360向用戶通知不能創(chuàng)建虛擬卷用池、不能創(chuàng)建虛擬卷并
結(jié)束處理。當(dāng)S16310判斷為“開啟”時(shí),S16320判斷在系統(tǒng)容量池中是否存在將在S16100中指定的介質(zhì)設(shè)為起源的存儲(chǔ)池卷,當(dāng)將其判斷為否定時(shí),S16350向用戶通知無法將指定的介質(zhì)與虛擬卷進(jìn)行對(duì)應(yīng)并結(jié)束處理。另ー方面,當(dāng)S16320判斷為肯定吋,S16330對(duì)容量虛擬化池設(shè)定新的層級(jí),S16340從系統(tǒng)容量池的層級(jí)向容量虛擬化池的新層級(jí)追加存儲(chǔ)池卷并返回到S16300。結(jié)構(gòu)控制程序3503繼續(xù)S16300以后的處理直到容量虛擬化池中不存在不足的層級(jí)為止。圖33是虛擬卷的生成處理的第三例所涉及的流程圖。該流程圖的特征是用戶等能夠選擇是利用現(xiàn)有的池還是新設(shè)定的池來作為虛擬卷用池的點(diǎn)。此外,在用戶等選擇新創(chuàng)建容量虛擬化池的情況下,用戶等針對(duì)新容量虛擬化池執(zhí)行容量虛擬化池的池ID、容量、介質(zhì)的種類的設(shè)定、閾值等的設(shè)定。結(jié)構(gòu)控制程序3503判斷是否已經(jīng)存在具有在S16100中指定的介質(zhì)的層級(jí)的容量虛擬化池(S16130)。當(dāng)S16130否定該判斷吋,S16170判斷是否使用現(xiàn)有的容量虛擬化池。當(dāng)S16170根據(jù)來自用戶的輸入判斷為在針對(duì)虛擬卷的訪問處理中使用現(xiàn)有的容量虛擬化池時(shí),S16200從現(xiàn)有的多個(gè)容量虛擬化池選擇目標(biāo)的容量虛擬化池。S16210從系統(tǒng)容量池選擇由在S16100中指定的介質(zhì)構(gòu)成的層級(jí)的存儲(chǔ)池卷,將其追加到在S16200中選擇的容量虛擬化池。所追加的容量、存儲(chǔ)池卷數(shù)被預(yù)先決定。接著,S16160將虛擬卷與所選擇的容量虛擬化池的對(duì)應(yīng)關(guān)系注冊(cè)到卷和池的管理表中并結(jié)束處理。另ー方面,當(dāng)S16170判斷為不使用現(xiàn)有的容量虛擬化池時(shí),S16180在管理表中設(shè)定新的容量虛擬化池,并轉(zhuǎn)移到S16210的處理。
當(dāng)S16130判斷為“肯定”吋,選擇是否使用現(xiàn)有的容量虛擬化池,當(dāng)S16140選擇否定時(shí)轉(zhuǎn)移到S16180。當(dāng)選擇肯定時(shí),S16150從現(xiàn)有的容量虛擬化池中選擇具有由在S16100中指定的介質(zhì)構(gòu)成的層級(jí)的容量虛擬化池,轉(zhuǎn)移到S16160并結(jié)束處理。接著,根據(jù)圖34A-圖34D的流程圖說明容量虛擬化池的新創(chuàng)建處理。首先,管理者通過⑶I在管理服務(wù)器20中指定作為容量虛擬化池的標(biāo)識(shí)符的池ID、閾值、用途、第一類LDEV的數(shù)量、以及各LDEV的編號(hào)(S41110)。管理服務(wù)器20的管理程序生成包含有入力信息的容量虛擬化池的創(chuàng)建命令,將該命令發(fā)送到儲(chǔ)存裝置30。儲(chǔ)存裝置的命令控制程序3501接受上述創(chuàng)建命令(S41130)。命令控制程序3501確認(rèn)接收到的命令的內(nèi)容,如果是如命令的內(nèi)容無效那樣的內(nèi)容,則拒絕該命令的接收(S41140)。并且,命令控制程序當(dāng)判斷為接收到的命令是用于容量虛擬化池的設(shè)定處理的命令吋,將接收到的命令傳送給池控制程序3507。池控制程序3507根據(jù)接收到的命令,執(zhí)行容量虛擬化池的設(shè)定/創(chuàng)建處理(S41150)。 接著,池控制程序3507轉(zhuǎn)移到圖34B的流程圖。池控制程序3507確認(rèn)包含在指示命令中的池ID是否有效且池ID是否未定義(S41180)。接著,池控制程序3507從容量虛擬化池管理信息3521 (圖15)獲取由命令指示的容量虛擬化池ID的池固有信息,將池的狀態(tài)從池未定義設(shè)定為池定義中(S41190)。接著,池控制程序3507確認(rèn)是否能夠使用由命令指示的LDEV編號(hào)(S41210)。具體來說,在指示命令所涉及的LDEV編號(hào)已關(guān)閉或者正在格式化的情況下,由于該LDEV不可用,因此拒絕命令(S41210)。在由命令指示的LDEV已經(jīng)是使用中的情況下、例如在LDEV已定義路徑的情況下、正在由復(fù)制功能等使用的情況下、或者正預(yù)約設(shè)定為復(fù)制目的地的情況下,由于LDEV不可用,因此池控制程序3507拒絕命令(S41220)。接著,池控制程序3507根據(jù)命令中所指定的信息,對(duì)池固有信息(圖15的管理表)設(shè)定容量、空閑容量、閾值、池-卷數(shù)(S41230)。接著,池控制程序3507判斷在由命令指示的池個(gè)層級(jí)管理功能(圖37 : (Tier管理功能))是否被開啟(S41240)。當(dāng)肯定該判斷時(shí),池控制程序3507判斷是否與由命令指示的LDEV (存儲(chǔ)池卷)的數(shù)量相應(yīng)地循環(huán)執(zhí)行了 S41260-S41320的處理(S41250)。當(dāng)否定該判斷時(shí),池控制程序3507從由命令指定的多個(gè)LDEV中選擇ー個(gè)LDEV,將所選擇的LDEV注冊(cè)到存儲(chǔ)池卷設(shè)備編號(hào)列表(圖15 :35220) (S41260)。接著,池控制程序3507判斷在與存儲(chǔ)池卷對(duì)應(yīng)的層級(jí)信息區(qū)域中是否將管理信息設(shè)定給了由命令指示的池(S41270)。當(dāng)否定該判斷時(shí),池控制程序3507創(chuàng)建對(duì)容量虛擬化池的層級(jí)進(jìn)行管理的管理信息的表35271,將其注冊(cè)到容量虛擬化池管理表的層級(jí)列表(35223)中(S41280)。接著,池控制程序3507訪問層級(jí)管理表35271 (圖17),在其存儲(chǔ)池卷列表35283中注冊(cè)LDEV編號(hào)ID (S41290)。接著,池控制程序3507對(duì)在容量虛擬化池中設(shè)定的第一類LDEV分配PSCB(S41300)。然后,將PSCB與每個(gè)層級(jí)的空閑隊(duì)列進(jìn)行連接(S41310)。根據(jù)以上內(nèi)容,當(dāng)池控制程序3507在容量虛擬化池中設(shè)定第一類LDEV吋,結(jié)構(gòu)控制程序3503設(shè)定LDEV管理信息3512。具體來說,在由命令指定的LDEV編號(hào)的LDEV管理信息3512(圖12)的設(shè)備屬性35128中設(shè)定表示是容量虛擬化池的標(biāo)識(shí)符(存儲(chǔ)池卷屬性),在池ID中注冊(cè)存儲(chǔ)池卷所屬的池ID (S41320)。接著,結(jié)構(gòu)控制程序3503將控制權(quán)轉(zhuǎn)給池控制程序3507,池控制程序3507返回到S41250并判斷為針對(duì)所有的LDEV的處理已結(jié)束時(shí),將控制權(quán)轉(zhuǎn)給結(jié)構(gòu)控制程序3503。結(jié)構(gòu)控制程序3503如圖34C所示那樣將池管理信息3512的池-ID的狀態(tài)從“池定義中”設(shè)定為“池有效”(S41340)。然后,如圖34D所示,命令控制程序3501向管理服務(wù)器20發(fā)送命令已成功的意思的響應(yīng)(S41160)。然后,管理服務(wù)器20的管理程序當(dāng)接收到來自儲(chǔ)存裝置的響應(yīng)時(shí)(S41170),結(jié)束一系列的處理。在圖34B的S41240中判斷為層級(jí)管理功能關(guān)閉時(shí),池控制程序3507省略S41270-41290 的處理,實(shí)施 S41250、S41260、S41300、S41310、S41320。但是,由于不存在 Tier管理信息,因此在S41310中,空閑PSCB隊(duì)列不是在每個(gè)Tier中都存在。在生成容量虛擬化池吋,圖34A至圖34D的流程圖設(shè)為從I3DEV將LDEV設(shè)定為容量虛擬化池,但是可以將系統(tǒng)容量池44的存儲(chǔ)池卷分配給容量虛擬化池42,或者這兩方都可以。另外,圖34A至圖34D說明了根據(jù)來自管理服務(wù)器20的用戶指示生成池的情形,但是也可以代替管理服務(wù)器而根據(jù)來自主計(jì)算機(jī)或維護(hù)終端的用戶指示來生成容量虛擬化池。此外,在來自用戶的輸入信息中包含有在創(chuàng)建容量虛擬化池時(shí)要使用的介質(zhì)的類型的情況下,儲(chǔ)存裝置30首先判斷是否存在所指定的介質(zhì),在存在的情況下,進(jìn)行圖34A-34D所涉及的容量虛擬化池的新設(shè)定處理。在不存在所指定的介質(zhì)的情況下,向用戶通知在系統(tǒng)內(nèi)不存在指定的介質(zhì)的情形。將圖34A至圖34D作為生成容量虛擬化池的處理進(jìn)行了說明,但是也能夠?qū)D34A至圖34D的流程圖應(yīng)用于生成系統(tǒng)容量池的情況。作為管理信息,代替容量虛擬化池管理信息3521而利用系統(tǒng)容量池管理信息3525。由于是在系統(tǒng)容量池44中僅追加存儲(chǔ)池卷的處理,因此池控制程序3507如容量虛擬化池那樣在使用了 PSCB的隊(duì)列形態(tài)(S41300、S41310)的方式下不執(zhí)行系統(tǒng)容量池的創(chuàng)建。另ー方面,池控制程序3507當(dāng)從系統(tǒng)容量池向容量虛擬化池追加存儲(chǔ)池卷時(shí),在該階段創(chuàng)建存儲(chǔ)池卷的PSCB。接著,根據(jù)圖38說明從系統(tǒng)容量池向容量虛擬化池自動(dòng)追加存儲(chǔ)池卷的處理。圖38是由池控制程序3507實(shí)施的流程圖。池控制程序3507當(dāng)檢測到將要開始容量虛擬化池的容量追加處理的契機(jī)吋,開始流程。該契機(jī)有儲(chǔ)存裝置30接收由管理服務(wù)器20生成的命令的契機(jī)、以及不取決于來自管理服務(wù)器20的命令而由儲(chǔ)存裝置30在內(nèi)部產(chǎn)生容量虛擬化池的容量擴(kuò)展的命令的契機(jī)。在前者的方式下,管理服務(wù)器20定期地檢查儲(chǔ)存裝置30的狀態(tài),當(dāng)檢測出容量虛擬化池42的容量不足吋,向儲(chǔ)存裝置30發(fā)送擴(kuò)展容量虛擬化池的容量的命令。在后者的方式下,自動(dòng)容量擴(kuò)展/縮小程序3509進(jìn)行容量虛擬化池的容量監(jiān)視處理。
池控制程序3507判斷要追加存儲(chǔ)池卷的容量虛擬化池的ID,將該ID設(shè)為關(guān)鍵詞,檢查容量虛擬化池管理信息表3521。池控制程序3507參照容量虛擬化池管理信息表,當(dāng)確認(rèn)出ID有效且池狀態(tài)35218是“未定義”的情形時(shí)(S5000),接著,將池狀態(tài)設(shè)定為“擴(kuò)展中”(S5002)。參照系統(tǒng)容量池管理信息表(圖18),從未使用存儲(chǔ)池卷中選擇要追加到容量虛擬化池的ー個(gè)或多個(gè)存儲(chǔ)池卷(S5004)。此外,在將層級(jí)管理應(yīng)用于容量虛擬化池的容量的情況下,池控制程序3507參照系統(tǒng)容量池管理信息表的層級(jí)列表35271,選擇被分類在與容量虛擬化池中容量不足的層級(jí)相同的層級(jí)中的存儲(chǔ)池卷。接著,池控制程序3507指定系統(tǒng)容量池ID、容量虛擬化池ID、從系統(tǒng)容量池向容量虛擬化池追加的存儲(chǔ)池卷編號(hào)(LDEV#)、Tier編號(hào)(S5006)。接著,池控制程序3507判斷由命令指示的池中層級(jí)管理功能是否被開啟(S5007)。當(dāng)肯定該判斷時(shí),池控制程序3507與在S5002中選擇的LDEV(存儲(chǔ)池卷)的數(shù) 量相應(yīng)地循環(huán)進(jìn)行S5010 S5020的處理(S5008)。池控制程序3507選擇未處理的LDEV,并將所選擇的LDEV的編號(hào)從系統(tǒng)容量池管理信息3525(圖18)的LDEV列表中刪除。即,參照系統(tǒng)池的ID與Tier編號(hào)相同的Tier管理信息表3513(圖17),刪除S5010所涉及的未處理LDEV的編號(hào)(S5012)。池控制程序3507將從系統(tǒng)容量池管理信息刪除的LDEV注冊(cè)到存儲(chǔ)池卷設(shè)備編號(hào)列表(圖 15 :35220) (S5014)。接著,池控制程序3507訪問層級(jí)管理表35271 (圖17),在其存儲(chǔ)池卷列表35283中注冊(cè)向容量虛擬化池追加的LDEV的編號(hào)(S5016)。此外,對(duì)容量虛擬化池控制信息表的更新也與已經(jīng)記述過的針對(duì)系統(tǒng)容量池的處理(S5010、S5012)相同。儲(chǔ)存裝置在向容量虛擬化池注冊(cè)時(shí),在想要注冊(cè)的存儲(chǔ)池卷所屬的Tier不存在于容量虛擬化池的情況下,在容量虛擬化池管理信息表中追加Tier管理信息 35271。接著,池控制程序3507對(duì)在容量虛擬化池中設(shè)定的LDEV分配PSCB (S5018)。并且,將PSCB與每個(gè)層級(jí)的空閑隊(duì)列進(jìn)行連接(S5020)。根據(jù)以上內(nèi)容,在池控制程序3507向容量虛擬化池42追加了存儲(chǔ)池卷(第一類LEDV)的時(shí)刻,與圖34B同樣地用PSCB管理存儲(chǔ)池卷。接著,池控制程序3507返回到S5008,當(dāng)判斷為針對(duì)所有未處理的LDEV的處理已結(jié)束時(shí),將通過向容量虛擬化池追加存儲(chǔ)池卷所產(chǎn)生的容量、存儲(chǔ)池卷數(shù)等的變更注冊(cè)到容量虛擬化池(S5022)。結(jié)構(gòu)控制程序3053將容量虛擬化池管理信息(圖15)的狀態(tài)35218從“擴(kuò)展中”變更為“池有效”(S5024)。命令控制程序3501不對(duì)狀態(tài)不是“池有效”的存儲(chǔ)池卷應(yīng)用自動(dòng)精簡配置。在存儲(chǔ)池卷被追加到容量虛擬化池中的契機(jī)下,命令控制程序3501在包含向容量虛擬化池追加的存儲(chǔ)池卷的多個(gè)存儲(chǔ)池卷之間執(zhí)行已經(jīng)記述過的頁面調(diào)整處理。當(dāng)在S5007中判斷為層級(jí)管理功能關(guān)閉時(shí),池控制程序3507實(shí)施S5008、S5010、S5014、S5018、S5020 (S5026)。
接著,與圖38對(duì)比說明將容量虛擬化池的存儲(chǔ)池卷刪除并返回到系統(tǒng)容量池的情況下的處理。池控制程序3507將容量虛擬化池的容量與閾值進(jìn)行比較,當(dāng)對(duì)容量虛擬化池判斷出容量過剩時(shí),決定要?jiǎng)h除的卷。作為該卷,如已經(jīng)記述過的那樣,例如是分配頁面數(shù)較少的存儲(chǔ)池卷、或者屬于空閑容量較少的層級(jí)的存儲(chǔ)池卷。IO控制程序3501將所選擇的存儲(chǔ)池卷的分配頁面的數(shù)據(jù)移動(dòng)到其它的存儲(chǔ)池卷,變更虛擬卷與頁面的分配。此時(shí),命令控制程序?qū)嵤┮呀?jīng)記述過的調(diào)整處理。接著,池控制程序?qū)⒁獎(jiǎng)h除的存儲(chǔ)池卷的信息從容量虛擬化池管理信息、LDEV管理信息中刪除,并且如果容量虛擬化容量池被分層,則從各個(gè)Tier管理信息中刪除。此時(shí),池控制程序解除針對(duì)要?jiǎng)h除的存儲(chǔ)池卷設(shè)定的PSCB,并且從空閑隊(duì)列中釋放未使用PSCB。接著,池控制程序?qū)⑺鶆h除的存儲(chǔ)池卷的管理信息追加到系統(tǒng)容量池管理信息、 LDEV管理信息,并且如果容量虛擬化池被分層,則追加到各個(gè)Tier管理信息中。此外,池控制程序也可以在將存儲(chǔ)池卷從容量虛擬化池回收至系統(tǒng)容量池時(shí),不解除而是維持針對(duì)存儲(chǔ)池卷設(shè)定的PSCB。另外,在向容量虛擬化池追加存儲(chǔ)池卷時(shí)存在經(jīng)由系統(tǒng)容量池的情況和不經(jīng)由系統(tǒng)容量池的情況。接著,根據(jù)
來自主計(jì)算機(jī)的針對(duì)儲(chǔ)存裝置的讀取處理。圖35是說明讀取處理的流程圖。當(dāng)主計(jì)算機(jī)10發(fā)出命令時(shí)(S14100),儲(chǔ)存裝置125接收到命令(S14102)。儲(chǔ)存裝置的命令控制程序3501對(duì)命令進(jìn)行分析(S14104),參照包含在讀取請(qǐng)求中的地址(S14106)。命令控制程序根據(jù)所參照的地址,判斷訪問對(duì)象卷是否為實(shí)際卷(S214106)。當(dāng)判斷為讀取對(duì)象地址是實(shí)際卷的地址時(shí),命令控制程序進(jìn)行LU-LDEV-VDEV地址變換(14110),辨別讀取對(duì)象地址的數(shù)據(jù)是否位于閃速存儲(chǔ)器上(S14112)。如果讀取對(duì)象地址的數(shù)據(jù)位于閃速存儲(chǔ)器上,則命令控制程序?qū)㈤W速存儲(chǔ)器上的數(shù)據(jù)傳送到主計(jì)算機(jī)(S14122),井向主計(jì)算機(jī)報(bào)告完成(S14142)。如果讀取對(duì)象地址的數(shù)據(jù)沒有位于閃速存儲(chǔ)器上,則命令控制程序進(jìn)行VDEV-PDEV/外部LU地址變換(S14114),計(jì)算保存有讀取對(duì)象數(shù)據(jù)的介質(zhì)的地址(S14116),啟動(dòng)介質(zhì)訪問程序。介質(zhì)訪問程序從計(jì)算出的介質(zhì)的地址讀取數(shù)據(jù)并保存到閃速存儲(chǔ)器中(S14118),向命令控制程序通知已保存到閃速存儲(chǔ)器中的情形(S14120)。命令控制程序當(dāng)接收到來自介質(zhì)訪問程序的通知吋,將閃速存儲(chǔ)器上的數(shù)據(jù)傳送給主機(jī)(S14122)。在讀取對(duì)象地址是虛擬卷的地址的情況下,命令控制程序進(jìn)行LU-LDEV-VDEV地址變換(S14126),辨別讀取對(duì)象地址的數(shù)據(jù)是否位于閃速存儲(chǔ)器上(S14128)。如果讀取對(duì)象地址的數(shù)據(jù)位于閃速存儲(chǔ)器上,則將閃速存儲(chǔ)器上的數(shù)據(jù)傳送到主機(jī)(S14122)。如果讀取對(duì)象地址的數(shù)據(jù)沒有位于閃速存儲(chǔ)器上,則命令控制程序通過虛擬-池地址變換功能(S14130),從虛擬卷的VDEV空間的地址變換為容量虛擬化池的VDEV空間的地址。此時(shí),在是對(duì)一次也沒有寫入過數(shù)據(jù)的區(qū)域的數(shù)據(jù)讀取請(qǐng)求的情況下(S14132),計(jì)算用于返回默認(rèn)值(例如全是“O”)的VDEV空間(O數(shù)據(jù)區(qū)域)的地址(S14136)。
如果不是上述情況,則計(jì)算在最初寫入數(shù)據(jù)時(shí)對(duì)虛擬卷分配的用于數(shù)據(jù)寫入的區(qū)域的VDEV地址、或者為了池的負(fù)荷分散、使用率提高、故障恢復(fù)而從之前的數(shù)據(jù)寫入用等的區(qū)域?qū)?shù)據(jù)移動(dòng)到的區(qū)域的VDEV地址(S14134)。命令控制程序還進(jìn)行VDEV-PDEV/外部LU地址變換,計(jì)算保存有讀取對(duì)象數(shù)據(jù)的介質(zhì)的地址(S14136)。從計(jì)算出的介質(zhì)的地址讀取數(shù)據(jù),并保存到確保為虛擬卷的空間的地址用的閃速存儲(chǔ)器中(S14138)。接著,根據(jù)圖36的流程圖說明寫入處理。當(dāng)儲(chǔ)存裝置125接收到寫入命令時(shí)(S14140、S14142),命令控制程序參照寫入請(qǐng)求的地址(S14144)。無論地址是實(shí)際卷的地址、還是虛擬卷的地址,都進(jìn)行LU-LDEV-VDEV地址變換(S14146),辨別寫入對(duì)象地址是否被確保在閃速存儲(chǔ)器中(S14148)。如果沒有針對(duì)寫入對(duì)象地址確保閃速存儲(chǔ)器,則命令控制程序確保用于保存從主 機(jī)傳送的數(shù)據(jù)的閃速存儲(chǔ)器區(qū)域(14150)。接著,命令控制程序向主機(jī)報(bào)告已準(zhǔn)備接收數(shù)據(jù)的情形(S14152)。當(dāng)命令控制程序從主計(jì)算機(jī)接收到傳送數(shù)據(jù)時(shí)(S14154),將數(shù)據(jù)保存到已確保的閃速存儲(chǔ)器中(S14156),向主機(jī)裝置發(fā)送寫入完成報(bào)告(S14158)。在寫入請(qǐng)求地址是實(shí)際卷的地址的情況下(S14160),命令控制程序進(jìn)行VDEV-PDEV/外部LU地址變換(S14162),計(jì)算保存寫入對(duì)象數(shù)據(jù)的介質(zhì)的地址(S14164),將保存在閃速存儲(chǔ)器中的數(shù)據(jù)寫入到介質(zhì)地址(S14166)。在寫入請(qǐng)求地址是虛擬卷的情況下(S14160),命令控制程序通過虛擬卷地址-容量虛擬化池地址的變換功能,參照VVOL-DIR表來將虛擬卷的VDEV空間的地址變換為容量虛擬化池的VDEV空間的地址(S14168)。在是對(duì)一次也沒有寫過數(shù)據(jù)的區(qū)域的寫入請(qǐng)求的情況下(S14170),命令控制程序計(jì)算用于返回默認(rèn)值(例如全是“O”)的VDEV空間(O數(shù)據(jù)區(qū)域)的地址(S14172),解除該地址與虛擬卷地址的分配。接著,命令控制程序動(dòng)態(tài)地分配與虛擬卷的地址相對(duì)應(yīng)的用于保存數(shù)據(jù)的容量虛擬化池的空閑區(qū)域(S14174)。此時(shí),命令控制程序?qū)⒎峙鋮^(qū)域設(shè)為空閑區(qū)域管理対象外,并從空閑容量中減去(S14176)。此時(shí),命令控制程序進(jìn)行容量虛擬化池的空閑容量的閾值檢查。命令控制程序當(dāng)判斷為容量虛擬化池的容量不足或過剩時(shí),啟動(dòng)自動(dòng)容量擴(kuò)展縮小程序。另外,計(jì)算被動(dòng)態(tài)地分配空閑區(qū)域的上述容量虛擬化池的地址,將其作為與針對(duì)虛擬卷的寫入對(duì)象VDEV空間的地址相對(duì)應(yīng)的容量虛擬化池的VDEV空間的地址。此外,在后述的權(quán)利要求書所記載的本發(fā)明中,各模塊是通過已經(jīng)記述過的ー個(gè)或多個(gè)程序?qū)崿F(xiàn)的軟件模塊,但是其一部分或全部也可以通過專用的硬件模塊實(shí)現(xiàn)。附圖標(biāo)記的說明10主計(jì)算機(jī)20管理裝置30儲(chǔ)存裝置42容量虛擬化池44系統(tǒng)容量池
權(quán)利要求
1.一種計(jì)算機(jī)系統(tǒng),其具有對(duì)來自主計(jì)算機(jī)的寫入訪問進(jìn)行處理的控制裝置,在該計(jì)算機(jī)系統(tǒng)中, 上述控制裝置具有 第一模塊,其對(duì)上述主計(jì)算機(jī)訪問的訪問對(duì)象進(jìn)行設(shè)定; 第二模塊,其對(duì)具有一個(gè)或多個(gè)邏輯卷的第一池進(jìn)行設(shè)定; 第三模塊,其在從上述主計(jì)算機(jī)接收到針對(duì)上述訪問對(duì)象的寫入請(qǐng)求的情況下,從上述第一池的上述邏輯卷向上述訪問對(duì)象的寫入目的地區(qū)域分配存儲(chǔ)容量; 第四模塊,其對(duì)第二池進(jìn)行設(shè)定; 第五模塊,其根據(jù)存儲(chǔ)資源創(chuàng)建邏輯卷,并將其設(shè)定在上述第二池中;以及第六模塊,其判斷上述第一池的狀態(tài),根據(jù)該判斷的結(jié)果,將上述邏輯卷從上述第二池追加到上述第一池。
2.根據(jù)權(quán)利要求I所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述訪問對(duì)象包括將提供給上述主計(jì)算機(jī)的容量虛擬化而得到的虛擬卷, 上述控制裝置針對(duì)上述第三模塊而對(duì)上述第一池的容量進(jìn)行了虛擬化。
3.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述第六模塊當(dāng)判斷出能分配給上述第一池的上述訪問對(duì)象的實(shí)際容量不足時(shí),從上述第二池向上述第一池追加上述邏輯卷。
4.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述第六模塊當(dāng)判斷出能分配給上述第一池的上述訪問對(duì)象的實(shí)際容量過剩時(shí),從上述第一池刪除上述邏輯卷,并將該邏輯卷回收至上述第二池。
5.根據(jù)權(quán)利要求3所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述控制裝置具備第七模塊,該第七模塊針對(duì)上述第一池的實(shí)際容量設(shè)定第一閾值, 上述第六模塊根據(jù)上述第一閾值判斷上述第一池的實(shí)際容量是否不足。
6.根據(jù)權(quán)利要求I所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述控制裝置對(duì)上述第一池和上述第二池進(jìn)行設(shè)定使它們分別具備多個(gè)層, 上述第六模塊在將上述邏輯卷從上述第一池追加到上述第二池時(shí),使上述邏輯卷在上述第一池與上述第二池之間的同一層間移動(dòng)。
7.根據(jù)權(quán)利要求I所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述控制裝置具備第八模塊,該第八模塊對(duì)上述第二池的容量設(shè)定第二閾值, 上述第六模塊根據(jù)上述第二閾值判斷上述第二池的容量過剩還是不足,當(dāng)判斷為上述第二池的容量不足時(shí),從上述存儲(chǔ)資源向上述第二池追加上述邏輯卷。
8.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述第二模塊設(shè)定多個(gè)上述第一池, 上述第六模塊當(dāng)判斷為上述多個(gè)第一池中的一個(gè)第一池的實(shí)際容量不足、其它的第一池的實(shí)際容量過剩時(shí),從上述其它的第一池刪除上述邏輯卷,并將該邏輯卷回收至上述第二池,再從上述第二池向上述一個(gè)第一池追加上述邏輯卷。
9.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述控制裝置設(shè)定多個(gè)上述虛擬卷, 上述第六模塊將基于上述第一池的虛擬容量的第三閾值與上述多個(gè)虛擬卷的總虛擬容量進(jìn)行比較,當(dāng)判斷為上述總虛擬容量超過上述第三閾值時(shí),根據(jù)與上述第三閾值相關(guān)聯(lián)的優(yōu)先級(jí)判斷能否從上述第二池向第一池追加邏輯卷。
10.根據(jù)權(quán)利要求I所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述訪問對(duì)象包括將提供給上述主計(jì)算機(jī)的容量虛擬化而得到的虛擬卷, 上述控制裝置針對(duì)上述第三模塊對(duì)上述第一池的容量進(jìn)行了虛擬化, 上述控制裝置具備第七模塊和第八模塊,該第七模塊針對(duì)上述第一池的實(shí)際容量設(shè)定第一閾值,該第八模塊對(duì)上述第二池的容量設(shè)定第二閾值, 上述第六模塊當(dāng)根據(jù)上述第一閾值判斷出能夠分配給上述第一池的上述訪問對(duì)象的實(shí)際容量不足時(shí),從上述第二池向上述第一池追加上述邏輯卷, 上述第六模塊當(dāng)判斷出能夠分配給上述第一池的上述訪問對(duì)象的實(shí)際容量過剩時(shí),從上述第一池刪除上述邏輯卷,并將該邏輯卷回收至上述第二池, 上述第六模塊根據(jù)上述第二閾值判斷上述第二池的容量過剩還是不足,當(dāng)判斷為上述第二池的容量不足時(shí),從上述存儲(chǔ)資源向上述第二池追加上述邏輯卷, 并且,上述控制裝置對(duì)上述第一池和上述第二池進(jìn)行設(shè)定使它們分別具備多個(gè)層, 上述第六模塊在將上述邏輯卷從上述第一池追加到上述第二池時(shí),使上述邏輯卷在上述第一池與上述第二池之間的同一層間移動(dòng)。
11.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述第二模塊設(shè)定多個(gè)上述第一池, 上述第六模塊當(dāng)判斷為上述多個(gè)第一池中的一個(gè)第一池的實(shí)際容量不足、其它的第一池的實(shí)際容量過剩時(shí),從上述其它的第一池刪除上述邏輯卷,并將該邏輯卷回收至上述第二池,再從上述第二池向上述一個(gè)第一池追加上述邏輯卷。
12.根據(jù)權(quán)利要求I所述的計(jì)算機(jī)系統(tǒng),其特征在于, 在存在針對(duì)上述訪問對(duì)象的寫入請(qǐng)求的情況下,上述第三模塊判斷是否對(duì)上述訪問對(duì)象分配了針對(duì)寫入請(qǐng)求的上述存儲(chǔ)區(qū)域, 上述第三模塊在判斷為否定的情況下,將新的上述存儲(chǔ)區(qū)域分配給上述訪問對(duì)象, 上述第三模塊在判斷為肯定的情況下,將寫入數(shù)據(jù)寫入到上述已分配的存儲(chǔ)區(qū)域中。
13.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述第五模塊根據(jù)外部連接目的地存儲(chǔ)器的存儲(chǔ)資源制作上述邏輯卷, 上述第六模塊檢查上述第一池的容量,在上述容量不足的情況下,向第一池追加上述外部連接目的地存儲(chǔ)器的存儲(chǔ)容量。
14.根據(jù)權(quán)利要求10所述的計(jì)算機(jī)系統(tǒng),其特征在于, 上述第二模塊設(shè)定多個(gè)上述第一池, 上述第六模塊當(dāng)判斷為上述多個(gè)第一池中的一個(gè)第一池的實(shí)際容量不足、其它的第一池的實(shí)際容量過剩時(shí),從上述其它的第一池刪除上述邏輯卷,不將該邏輯卷回收至上述第二池,而將上述邏輯卷追加至上述一個(gè)第一池。
15.一種計(jì)算機(jī)系統(tǒng)的存儲(chǔ)控制方法,該計(jì)算機(jī)系統(tǒng)具備控制裝置,該控制裝置控制來自主計(jì)算機(jī)的訪問,來控制針對(duì)存儲(chǔ)資源的讀寫處理,在該計(jì)算機(jī)系統(tǒng)的存儲(chǔ)控制方法中, 上述控制裝置進(jìn)行如下動(dòng)作對(duì)上述主計(jì)算機(jī)訪問的訪問對(duì)象進(jìn)行設(shè)定, 執(zhí)行如下的處理,即當(dāng)從上述主計(jì)算機(jī)產(chǎn)生針對(duì)訪問對(duì)象的寫入時(shí),根據(jù)分配給上述訪問對(duì)象的池,從位于上述池中的邏輯卷向上述訪問對(duì)象的寫入?yún)^(qū)域分配存儲(chǔ)容量,預(yù)先定義其它的邏輯卷,將其作為針對(duì)上述池的預(yù)備邏輯卷匯總成管理組,根據(jù)上述池的狀態(tài)的變動(dòng),從上述管理組向上述池追加上述其它的邏輯卷。 ·
全文摘要
本發(fā)明提供一種計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)系統(tǒng)的特征在于,具有控制裝置,該控制裝置設(shè)定主計(jì)算機(jī)訪問的訪問對(duì)象,當(dāng)從主計(jì)算機(jī)產(chǎn)生對(duì)訪問對(duì)象的寫入時(shí),每次寫入都執(zhí)行從位于被分配給上述訪問對(duì)象的池的邏輯卷向上述訪問對(duì)象的寫入?yún)^(qū)域分配存儲(chǔ)容量的處理,上述控制裝置預(yù)先定義邏輯卷,將其作為針對(duì)上述池的預(yù)備邏輯卷匯總成管理組,根據(jù)上述池的狀態(tài)的變動(dòng),從上述管理組向上述池追加上述邏輯卷。根據(jù)本發(fā)明,能夠在從存儲(chǔ)池卷向上位系統(tǒng)的訪問對(duì)象動(dòng)態(tài)地分配存儲(chǔ)容量的計(jì)算機(jī)系統(tǒng)中,迅速地應(yīng)對(duì)具有上述存儲(chǔ)池卷的池的狀態(tài)變動(dòng)。
文檔編號(hào)G06F12/00GK102859499SQ20108006626
公開日2013年1月2日 申請(qǐng)日期2010年4月30日 優(yōu)先權(quán)日2010年4月30日
發(fā)明者里山愛, 江口賢哲 申請(qǐng)人:株式會(huì)社日立制作所