[發明專利]訪問文件的方法和裝置有效
| 申請號: | 201610053459.7 | 申請日: | 2016-01-26 |
| 公開(公告)號: | CN105718589B | 公開(公告)日: | 2020-01-17 |
| 發明(設計)人: | 沈燦泉 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F16/182 | 分類號: | G06F16/182 |
| 代理公司: | 11329 北京龍雙利達知識產權代理有限公司 | 代理人: | 毛威;孫濤 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 訪問 文件 方法 裝置 | ||
本發明公開了一種訪問文件的方法和裝置,該方法包括:確定文件系統處于網絡分割狀態,該文件系統運行在多個主機上,該網絡分割狀態指示該文件系統被劃分為至少兩個分區,該至少兩個分區之間的網絡是不通的;接收第一文件的訪問請求;獲取該訪問請求對應的第一主機標識;確定該第一主機標識與該文件系統中為該第一文件預配置的第二主機標識一致;訪問該第一文件。本發明實施例的訪問文件的方法和裝置,能夠提高網絡發生分割時訪問集群文件系統的可靠性。
技術領域
本發明涉及信息技術領域,并且更具體地,涉及一種訪問文件的方法和裝置。
背景技術
集群文件系統或者分布式文件系統中的多個主機通過交換機連接在一起形成一個可以互通的網絡,多個主機之間對共享資源進行訪問采用的是互斥訪問的模式,例如多個主機同時寫一個文件,這時候要用分布式鎖保證互斥。只有當一個主機寫完后,釋放鎖,其他主機才能繼續寫。但是如果出現主機網卡故障或者交換機端口故障網絡故障或者軟件故障時,有可能造成集群文件系統被分割成兩個或多個子網絡,在子網絡內的網絡是互通的,但是在各個分割的網絡間是不互通的。
現有技術中,當集群文件系統發生網絡分割時,為了保證集群文件系統不掛住,必須把一部分的服務器剔除集群文件系統,那么被剔除出集群文件系統的主機上的應用就不能訪問集群文件系統,從而導致業務中斷,業務為了保證連續性,只能關閉虛擬機,然后再在其他主機上啟動虛擬機,因此,在網絡發生分割時訪問集群文件系統的可靠性降低。
發明內容
本發明實施例提供一種訪問文件的方法和裝置,能夠提高網絡發生分割時,訪問文件系統的可靠性。
第一方面,提供了一種訪問文件的方法,該方法包括:確定文件系統處于網絡分割狀態,所述文件系統運行在多個主機上,所述網絡分割狀態指示所述文件系統被劃分為至少兩個分區,所述至少兩個分區之間的網絡不通;接收第一文件的訪問請求;獲取所述訪問請求對應的第一主機標識;確定所述第一主機標識與所述文件系統中為所述第一文件預配置的第二主機標識一致;訪問所述第一文件。
結合第一方面,在第一方面的第一種實現方式中,在所述確定文件系統處于網絡分割狀態之前,所述方法還包括:在所述文件系統的整個磁盤空間中,分別為所述多個主機中的每個主機預先分配所述每個主機對應的磁盤空間。
結合第一方面及其上述實現方式,在第一方面的第二種實現方式中,所述第一文件的訪問請求為寫入請求,在所述訪問所述第一文件之前,所述方法還包括:確定所述文件系統的整個磁盤空間中所述第一主機對應的磁盤空間的剩余空間不小于寫入所述第一文件所需的磁盤空間;所述訪問所述第一文件,包括:在所述第一主機的所述剩余空間為寫入所述第一文件分配第一磁盤空間;在所述第一磁盤空間寫入所述第一文件。
結合第一方面及其上述實現方式,在第一方面的第三種實現方式中,所述在所述文件系統的整個磁盤空間中,分別為所述多個主機中的每個主機預先分配所述每個主機對應的磁盤空間,包括:將所述整個磁盤空間平均分配給所述每個主機;或根據所述每個主機上的虛擬機的磁盤空間的大小,分別為所述每個主機分配相應的磁盤空間。
結合第一方面及其上述實現方式,在第一方面的第四種實現方式中,所述將所述整個磁盤空間平均分配給所述每個主機,包括:若所述N能被M整除,為所述M個主機中的每個主機分配N/M個磁盤塊;或若所述N不能被M整除,為所述M個主機中的a個主機分配b+1個磁盤塊,為剩余的M-a個主機中的每個主機分配b個磁盤塊;其中,所述M為所述多個主機包括的主機的數量,所述N為所述整個磁盤空間包括的磁盤塊的數量,a為N對M取余得到的整數,b為N對M取整得到的整數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610053459.7/2.html,轉載請聲明來源鉆瓜專利網。





