Cluster

節點無法離開集群進行 eJabberd 升級

  • February 19, 2022

環境

  • ejabberd 版本:20.04
  • Erlang 版本:Erlang (SMP,ASYNC_THREADS)(BEAM) 模擬器版本 9.2
  • 作業系統:Linux(Debian)
  • 安裝自:源碼

crash.log 中的錯誤

2022-02-08 22:42:45 =CRASH REPORT==== crasher:初始呼叫:pgsql_proto:init/1 pid:<0.27318.6018> 註冊名稱:

$$ $$ 異常退出:{{init,{error,timeout}},$$ {gen_server,init_it,6,[{file,“gen_server.erl”},{line,349}]},{proc_lib,init_p_do_apply,3,[{file,“proc_lib.erl”},{line,247}]} $$} 祖先:$$ ’ejabberd_sql_vhost1.xmpp_12’,’ejabberd_sql_sup_vhost1.xmpp’,ejabberd_db_sup,ejabberd_sup,<0.87.0> $$ message_queue_len:0 條消息:$$ $$ 連結:$$ $$ 字典:$$ $$ 陷阱退出:錯誤狀態:執行堆大小:376 堆棧大小:27 減少:997 鄰居: 錯誤描述 我正在嘗試從 eJabberd 20.04 升級到 20.07。我的集群設置有三個節點。兩個節點滾動升級成功。當 node1 試圖離開集群進行升級時,它會給出以下錯誤:

與節點 ’ejabberd@xmpp1.node 的 RPC 連接失敗:超時

當我嘗試 ejabberdctl 狀態時,返回以下內容:節點 ’ejabberd@xmpp1.node’ 以狀態啟動:已啟動 與節點 ’ejabberd@xmpp1.node’ 的 RPC 連接失敗:{‘EXIT’, {timeout, {gen_server ,稱呼,

$$ application_controller, which_applications $$}}} 在 Erlang shell 上,節點仍然顯示為集群的一部分

節點()。

$$ ’ejabberd@xmpp3.node’,’ejabberd@xmpp2.node’ $$ 你能幫我解決這個問題嗎?

這可能是一個愚蠢的評論,但以防萬一它給你一些想法:

您正在其中一個節點中執行leave_cluster命令,但它沒有正確連接到另一個節點。

您可以嘗試在另一個節點中執行該命令。

如果這沒有幫助,也許有一些內部方法可以嘗試從集群中刪除節點……

但是您應該更新您的問題並澄清節點名稱是什麼,您嘗試執行管理任務的位置以及您嘗試的方法到底是什麼。

引用自:https://serverfault.com/questions/1093104