Blog
Akka Cluster と Auto-scaling
こんにちは。CA ProFit-Xの松村です。
先日 Scala Matsuri 2017の15分セッションにて機会を頂き、Auto-scaling環境下でのAkka Clusterの運用の事例についてお話ししました。今回はこの発表資料をご紹介します。
私たちのチームではCTR予測のオンライン学習とその特徴量の集計用に、多数の永続Actorを低コストにシャーディングして分散配備するためにAkka Clusterを導入しました(p.2 ~ p.5)。サーバは多い時で数十台ほど、運用を始めて約10ヶ月になります。unreachableメンバが残り続けることによってメンバ間の通信が行えない状況に陥らないために、scale-inトリガや、自動再起動、split brain resolverやクラスタ再参加などのfallbackの仕組みをそれぞれ入れておくべきだということを学びました(p.6 ~ p.20)。また、永続ActorでJournalをキャッシュ的に運用しようとする場合は、現時点では追加の検討・実装コストが発生することがあり注意が必要だと感じました(p.21 – p.24)。Akka Clusterやその関連ツールの導入を検討される際の参考になれば、と願っています。
また発表後に分野の詳しい方とお話しする機会があり、Journalの古いデータの扱いのアイデアや split brain 解決の実装の紹介・アドバイスを頂くことができました。
お忙しい中運営頂いたみなさま、練習や本番で貴重なフィードバックを頂いたみなさま、ありがとうございました!
Author
ikuo