glusterfs 和鴿子問題

glusterfs 和鴿子問題

我有兩台帶有共享 glusterfs 磁碟的伺服器,都運行 dovecot 並從該共享磁碟提供郵件。使用者只會從其中一台伺服器讀取郵件,但郵件會同時傳送到兩台伺服器。有時,我在訪問收件匣 maildir 資料夾時會遇到問題:

IMAP(使用者):開啟(/home/user/Maildir/dovecot-uidlist)失敗:權限被拒絕

使用者無法開啟收件匣。存取其他資料夾工作正常。如果我刪除 dovecot 索引檔案並重新啟動 dovecot 一切正常。

我該怎麼做才能讓這個設定更可靠?

我在兩台伺服器上的鴿舍設置:

mmap_disable = no
dotlock_use_excl = yes
mail_nfs_storage = yes
mail_nfs_index = no

如果一切都失敗了,如果日誌中有錯誤,我可以建立一個 bash 腳本來清理 dovecot 索引檔案...

答案1

我為幾個專案部署了 glusterfs,但沒有將其用作 IMAP/SMTP 儲存的後端儲存。

但根據經驗可以說幾點:

首先,我不建議任何人在 IMAP 和 SMTP 等高事務工作負載上使用分散式檔案系統作為儲存後端。由於它們不能很好地工作,主要是因為兩個原因:高延遲和檔案鎖定問題。

其次,在 gluster freenode 頻道上花了相當長的時間看到人們報告 Dovecot 抱怨 gluster 的索引不斷損壞。因此,我強烈建議您使用其他一些後台儲存複製解決方案、dsync 複製或類似的解決方案。

希望這可以幫助。

答案2

我認為你應該設定 mail_nfs_index = yes,並確保使用始終將相同 IP 重定向到相同後端伺服器的代理。此連結可以幫助: https://wiki.dovecot.org/MailLocation/SharedDisk

相關內容