2012-12-13 26 views

回答

2

我會害怕系統中部署的應用程序出現錯誤。 otp的好例子是SSL應用程序,3年前完全重寫。接下來會是http客戶端 - 內存泄漏。 Xmerl從來不是這個系統的強大組成部分。另外,要小心第三方Erlang應用程序:新的Web服務器(可能比inets更好,但如果你不需要所有的性能,請考慮穩定的Yaws),ejabberd - 直接操作OS的技術數量,Riak - 與文件系統,ulimit,iostats等

5

運行羣集意味着他們共享一個cookie,並且如果知道的cookie比他們可以附加到任何節點(假設他們連接到您的網絡),並執行任何Erlang命令或程序。

所以我的想法是聚集意味着至少有兩個文件(和一些人)知道什麼是cookie(或在哪裏可以找到它)。

+1

我認爲erlang主機一定不能公開訪問 – user425720

+0

我的意思是epmd和net_kernel的高端口 – user425720

+0

作爲[參考](http://www.erlang.org/doc/reference_manual/distributed.html#id87338 )說,兩個節點可以連接不同的cookie。但是我們必須知道對方的cookie。 –

2

首先,你想讓你的集羣在一個封閉的VPN中(如果它們相距甚遠並且通過WAN進行通信)。然後,您想要在硬化UNIXLINUX之前運行它們。另一個強大的想法是關閉所有epmd連接到你的集羣,即使你已經得到了cookie的使用net_kernel:allow(Nodes).

Erlang Vms的一個主要弱點(我已經認識到)是內存消耗。我認爲,如果一個Erlang平臺爲許多用戶提供服務並且其不受DOS攻擊,那麼它的左邊就很容易受到攻擊。您需要限制Web服務器允許的併發連接數,以便您可以輕鬆阻止某些script boys in the neighbourhood。另一種情況是在羣集中分佈/複製數據庫。 Mnesia複製數據,但我不確定該數據是否加密。最後,確保您是集羣中所有機器的唯一管理員。

相關問題