バックグラウンド
- ノードの起動時に自動起動されるアプリケーションがあります (.rel、.boot などを使用)。
- 最初のノードがダウンした場合、アプリケーションを別のノードにフェイルオーバーさせたい。
- Erlang の分散アプリケーション機能を使用して、フェイルオーバーとテイクオーバーを処理します。
問題
問題は、分散アプリケーション ネゴシエーションの一部として、ノードがハンドシェイクして、どのノードが稼働状態を維持し、どのノードが静止するかを決定するときに、アプリケーションがすべてのノードで開始されることです。可能であれば、複数のノードでアプリケーションを起動しないようにする必要があります。
質問
- 分散アプリケーションの起動ネゴシエーションに関与している場合を除き、ノードにアプリケーションを自動的に起動させる方法はありますか? あるいは、
- アプリケーションを複数のノードで (短時間でも) 起動する必要なく、アプリケーションを無人で起動してフェイルオーバーさせるにはどうすればよいですか?