您好,登錄后才能下訂單哦!
最近我遇到過一次solr的文件權限問題,導致索引崩潰。同事也遇到一次FS的類似現象問題。多次經歷發現hadoop目前對目錄的權限管理有同步問題。
正常情況下,以某個用戶啟動,則目錄權限會變成該用戶。至于用戶所在的組,可以直接忽略,沒有看到用處。但是有時候會出現這樣的情形。明明運行程序是超級用戶,也就是缺省使用hdfs用戶(如果有設置缺省),但是可以訪問solr, 權限的目錄,而且一直穩定運行。
但是某一天,也許你忽然想改變一些配置。重啟了一些應用。也許就忽然它就權限變更了。除非你用正確的用戶啟動,并修正權限所帶來的問題,否則就不能訪問。經歷過兩次,一次是cloudear solr(solrcloud)的問題。另外一次是hdfs的一個擴展應用程序,文件系統時遇到。都是開始能用,在進行目錄清理,或者是配置變更,重啟某些應用后忽然就不能用了。象是延遲發作的地雷。延時爆炸的雷。
仔細想了一下hadoop整個兒的機制,hdfs系統的機制,還有linux文件系統管理機制。 最后想,可能是這個原因。
hdfs 文件系統,主要是nameserver, 它在管理權限時并不會立即生效,除非你手機用chmod改權限。它有一個更新數據的觸發條件。在此之前,所有文件都是可以跨權限訪問的。而且它也允許這么 做。這是因為避免過快的同步,提高文件系統的管理效率。也減少了同步造成的一系列問題。嚴格的說,它的權限同步是“人為手工”觸發的。除非你明確的說,我需要僅限變更,否則它不更新。
這樣以來,所有已啟動的進程,所有namenode里已經在活動狀態的文件,都可以跨權限訪問了。 但是在偶爾的情況下,它會觸發權限同步,造成后來的應用忽然就不能訪問,顯示為目錄無權限。
此時需要手工更新所有的目錄權限,建議同時重新啟動所有服務節點,所有相關應用。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。