本發(fā)明涉及虛擬化存儲(chǔ)技術(shù)領(lǐng)域,特別涉及一種適應(yīng)于多用戶場景的存儲(chǔ)系統(tǒng)。
背景技術(shù):
當(dāng)前,隨著信息時(shí)代的快速發(fā)展,人們在日常的工作和生活中,需要對越來越多的數(shù)據(jù)進(jìn)行存儲(chǔ)。為了降低存儲(chǔ)成本,現(xiàn)在許多用戶逐漸開始使用云平臺上的存儲(chǔ)資源來對數(shù)據(jù)進(jìn)行存儲(chǔ)。對于云端存儲(chǔ)資源供應(yīng)商來說,如何為互聯(lián)網(wǎng)上的大量用戶提供存儲(chǔ)服務(wù)是目前還有待解決的問題。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明的目的在于提供一種適應(yīng)于多用戶場景的存儲(chǔ)系統(tǒng),能夠?yàn)榛ヂ?lián)網(wǎng)上的大量用戶提供存儲(chǔ)服務(wù)。其具體方案如下:
一種適應(yīng)于多用戶場景的存儲(chǔ)系統(tǒng),所述存儲(chǔ)系統(tǒng)為基于CIFS協(xié)議搭建的系統(tǒng),包括存儲(chǔ)子系統(tǒng)、AD域和ZFS文件系統(tǒng);其中,
所述AD域,用于為發(fā)起存儲(chǔ)資源請求的用戶創(chuàng)建與該用戶唯一對應(yīng)的AD域賬號,以便該用戶根據(jù)該AD域賬號使用位于所述存儲(chǔ)子系統(tǒng)中的相應(yīng)的存儲(chǔ)資源;
所述ZFS文件系統(tǒng),用于對所述存儲(chǔ)子系統(tǒng)中的LUN進(jìn)行統(tǒng)一管理,并利用Quota命令為所述AD域創(chuàng)建的每一AD域賬號配置相應(yīng)的存儲(chǔ)資源使用容量。
可選的,所述存儲(chǔ)子系統(tǒng)為IP SAN或FC SAN。
可選的,所述AD域?yàn)閃indows Server R2或Windows 2012提供的AD域。
可選的,所述存儲(chǔ)系統(tǒng),還包括:
ACL權(quán)限控制模塊,用于控制每個(gè)共享文件的讀寫權(quán)限。
可選的,所述存儲(chǔ)系統(tǒng),還包括:
空間隔離模塊,用于利用所述CIFS協(xié)議中的Home Directory特性為每個(gè)AD域賬戶定制相應(yīng)的存儲(chǔ)資源使用空間。
可選的,所述ZFS文件系統(tǒng),還用于為所述存儲(chǔ)系統(tǒng)中存儲(chǔ)的數(shù)據(jù)進(jìn)行備份處理。
可選的,所述ZFS文件系統(tǒng),還用于對所述存儲(chǔ)子系統(tǒng)中的存儲(chǔ)空間進(jìn)行在線擴(kuò)容處理。
本發(fā)明中,存儲(chǔ)系統(tǒng)為基于CIFS協(xié)議搭建的系統(tǒng),包括存儲(chǔ)子系統(tǒng)、ZFS文件系統(tǒng)和AD域;其中,AD域,用于為發(fā)起存儲(chǔ)資源請求的用戶創(chuàng)建與該用戶唯一對應(yīng)的AD域賬號,以便該用戶根據(jù)該AD域賬號使用位于存儲(chǔ)子系統(tǒng)中的相應(yīng)的存儲(chǔ)資源;ZFS文件系統(tǒng),用于對存儲(chǔ)子系統(tǒng)中的LUN進(jìn)行統(tǒng)一管理,并利用Quota命令為AD域創(chuàng)建的每一AD域賬號配置相應(yīng)的存儲(chǔ)資源使用容量??梢?,本發(fā)明基于CIFS協(xié)議、ZFS文件系統(tǒng)以及AD域,可實(shí)現(xiàn)為互聯(lián)網(wǎng)上的大量用戶提供存儲(chǔ)服務(wù)的目的。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例公開的一種適應(yīng)于多用戶場景的存儲(chǔ)系統(tǒng)結(jié)構(gòu)示意圖;
圖2為本發(fā)明實(shí)施例公開的一種具體的存儲(chǔ)系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明實(shí)施例公開了一種適應(yīng)于多用戶場景的存儲(chǔ)系統(tǒng),存儲(chǔ)系統(tǒng)為基于CIFS協(xié)議搭建的系統(tǒng),參見圖1所示,該系統(tǒng)包括存儲(chǔ)子系統(tǒng)11、AD域12(AD,即Active Directory)和ZFS文件系統(tǒng)13(ZFS,即Zettabyte File System);其中,
AD域12,用于為發(fā)起存儲(chǔ)資源請求的用戶創(chuàng)建與該用戶唯一對應(yīng)的AD域賬號,以便該用戶根據(jù)該AD域賬號使用位于存儲(chǔ)子系統(tǒng)11中的相應(yīng)的存儲(chǔ)資源;
ZFS文件系統(tǒng)13,用于對存儲(chǔ)子系統(tǒng)11中的LUN進(jìn)行統(tǒng)一管理,并利用Quota命令為AD域12創(chuàng)建的每一AD域賬號配置相應(yīng)的存儲(chǔ)資源使用容量。
具體的,本實(shí)施例中,上述存儲(chǔ)子系統(tǒng)可以為IP SAN或FC SAN(SAN,即Storage Area Network,存儲(chǔ)區(qū)域網(wǎng)絡(luò))。
優(yōu)選的,本實(shí)施例中的AD域可以為Windows Server R2或Windows 2012提供的AD域。
進(jìn)一步的,本實(shí)施例中的存儲(chǔ)系統(tǒng),還可以包括:
ACL權(quán)限控制模塊,用于控制每個(gè)共享文件的讀寫權(quán)限。
進(jìn)一步的,本實(shí)施例中的存儲(chǔ)系統(tǒng),還可以包括:
空間隔離模塊,用于利用CIFS協(xié)議中的Home Directory特性為每個(gè)AD域賬戶定制相應(yīng)的存儲(chǔ)資源使用空間。
另外,本實(shí)施例中的ZFS文件系統(tǒng),還可以用于為存儲(chǔ)系統(tǒng)中存儲(chǔ)的數(shù)據(jù)進(jìn)行備份處理,以及,對存儲(chǔ)子系統(tǒng)中的存儲(chǔ)空間進(jìn)行在線擴(kuò)容處理。
進(jìn)一步的,本發(fā)明實(shí)施例還相應(yīng)公開了一種存儲(chǔ)系統(tǒng)中各個(gè)組件的主要搭建過程,具體包括:
本實(shí)施例中,由于存儲(chǔ)子系統(tǒng)對應(yīng)的文件系統(tǒng)為ZFS文件系統(tǒng),它支持不同的存儲(chǔ)后端類型,如服務(wù)器本地盤、IP-SAN或FC-SAN提供的LUN。其中IP-SAN和FC-SAN兩者之間的主要差別就是選用不同的網(wǎng)絡(luò)設(shè)備及傳輸介質(zhì)來提供存儲(chǔ)空間。若需要節(jié)省成本且對性能無特別高的需求推薦選用IP SAN,反之若對性能要求較高,則推薦選用FC SAN。同時(shí),為了保障環(huán)境的可靠性需要安裝多路徑服務(wù)。
進(jìn)一步的,根據(jù)不同的存儲(chǔ)環(huán)境,在存儲(chǔ)后端創(chuàng)建LUN并將其映射給主機(jī)。在主機(jī)端根據(jù)不同的組網(wǎng)環(huán)境采用iSCSI或FC掃描LUN。ZFS文件系統(tǒng)的創(chuàng)建是依賴于開源的OpenZFS。OpenZFS分為存儲(chǔ)池和文件系統(tǒng)兩個(gè)層次來管理存儲(chǔ)資源。在安裝完ZFS并啟動(dòng)相關(guān)服務(wù)后,將掃描到LUN,并使用zpool命令創(chuàng)建存儲(chǔ)池。該存儲(chǔ)池支持在線添加、移除、遷移等功能,同時(shí)根據(jù)需求啟動(dòng)相應(yīng)的備份、冗余策略,保證數(shù)據(jù)的可靠性。利用zfs命令在已經(jīng)創(chuàng)建完成的存儲(chǔ)池上創(chuàng)建相應(yīng)的ZFS文件系統(tǒng),同時(shí)可以利用Quota及Reservation特性限制文件系統(tǒng)可以使用的磁盤空間。文件系統(tǒng)創(chuàng)建完成后,使用zfs set share smb將對應(yīng)文件系統(tǒng)的smb共享開關(guān)打開。完成后,將ZFS文件系統(tǒng)掛載到本地的/mnt/zfs路徑下。
本實(shí)施例中,為了保證AD域服務(wù)的正常運(yùn)行,一般是搭建主/備兩個(gè)DNS服務(wù)器,當(dāng)其中一個(gè)失效后可以自動(dòng)切換到備用服務(wù)器。AD域控的選擇可以是Windows Server R2或Windows 2012版本,創(chuàng)建過程中將DNS與AD域聯(lián)合起來。AD域作為用戶管理的中間件對接上層應(yīng)用注冊的多用戶。每次創(chuàng)建一個(gè)用戶都會(huì)在AD域上創(chuàng)建一個(gè)AD域用戶與之對應(yīng)。
本實(shí)施例中,還具體公開了CIFS環(huán)境配置與服務(wù)啟動(dòng)過程,包括:首先,CIFS環(huán)境配置需要先修改/etc/samba/smb.conf文件,將global標(biāo)簽中的workgroup、netbios name修改為對應(yīng)AD域的名字,并將max protocol修改為SMB2,支持SMB1和SMB2協(xié)議,將template homedir設(shè)置為ZFS掛載的本地目錄路徑,即將ZFS文件系統(tǒng)共享出去;將Domain Members對應(yīng)的security修改為ads;另外需要將homes標(biāo)簽中的Home Directory特性打開,更改valid users為對應(yīng)的AD域名稱。其次,修改AD域/etc/krb5.conf文件將default_realm修改為AD域名稱,同時(shí)將dns_lookup_realm和dns_lookup_kdc置為true,并將realms和domain_realm標(biāo)簽根據(jù)AD域的相關(guān)信息進(jìn)行配置;由于采用的是winbind認(rèn)證,修改/etc/nsswitch文件中的passwd、shadow、group及hosts為winbind;最后,由于使用net ads join命令將samba加入到AD域中。由于selinux對smb服務(wù)添加了安全機(jī)制,需要使用setsebool命令將samba_domain_controller、samba_enable_home_dirs的開關(guān)打開,重啟smb及winbind服務(wù)。
在上一步將ZFS文件系統(tǒng)掛載到本地目錄,并在smb.conf文件中將其共享出去。為了管理方便一般是使用一個(gè)LUN路徑做文件系統(tǒng),修改/etc/fstab文件對該LUN添加用戶usrquota和用戶組grpquota配額管理。使用edquota–u或edquota–g命令對不同的域用戶或域用戶組添加soft和hard兩種模式的配額。每次申請的多用戶都會(huì)調(diào)用配額命令設(shè)置相應(yīng)的用戶配額。
由于在多用戶場景下,多用戶之間需要共享一些文件或目錄。為了保證這些共享文件或目錄的安全性可以使用ACL權(quán)限管理指定特定的域用戶或域用戶組管理。在linux系統(tǒng)中使用setfacl工具可以對共享目錄的權(quán)限進(jìn)行細(xì)分。首先,在mount掛載文件系統(tǒng)時(shí)添加acl權(quán)限控制。其次由于系統(tǒng)已經(jīng)加入到AD域,可以使用setfacl–m添加對應(yīng)的AD域用戶或用戶組添加讀寫權(quán)限。另外,ACL權(quán)限也可以禁止某些用戶訪問。
本實(shí)施例中,經(jīng)過上述搭建過程后,可創(chuàng)建如圖2所示的存儲(chǔ)系統(tǒng)。
最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
以上對本發(fā)明所提供的一種適應(yīng)于多用戶場景的存儲(chǔ)系統(tǒng)進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體個(gè)例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。