L’Atelier Animationへのインタビュー

2017年6月14日筆者: ブライアン・ブラジル

Prometheusユーザーへのインタビューシリーズを続けます。今回はL’Atelier Animationのフィリップ・パナイト氏とバルトレミー・スティーブンス氏が、彼らのアニメーションスタジオでNagios、Graphite、InfluxDBを組み合わせた監視システムからPrometheusにどのように移行したかについて語ります。

ご自身とL’Atelier Animationの活動について教えていただけますか?

L’Atelier Animationは、カナダの美しい都市モントリオールを拠点とする3Dアニメーションスタジオです。弊社の最初の長編映画「Ballerina」(「Leap」としても知られる)は2017年に世界中で公開され、米国では今年後半に公開予定です。

現在、アニメーションTVシリーズと2作目の長編映画の制作に懸命に取り組んでいます。インフラは、約300台のレンダーブレード、150台のワークステーション、20台の各種サーバーで構成されています。数台のMacを除き、すべてLinux(CentOS)上で動作しており、Windowsマシンは一台もありません。

 

Prometheus導入前の監視経験はどのようなものでしたか?

最初はNagiosGraphiteInfluxDBを組み合わせていました。最初の設定は「まあまあ」でしたが、特別なものではなく、複雑すぎました(動く部分が多すぎました)。

Prometheusを検討することになったのはなぜですか?

すべてのサービスをCentOS 7に切り替える際、新しい監視ソリューションを検討した結果、Prometheusが多くの理由で浮上しました。最も重要な理由は次のとおりです。

  • Node Exporter: カスタマイズ機能により、クライアントからあらゆるデータを取得できます。
  • SNMPサポート: サードパーティのSNMPサービスが不要になります。
  • アラートシステム: Nagiosにさようなら。
  • Grafanaのサポート

どのように移行しましたか?

最初の映画を完成させた後、少しダウンタイムがあったので、IT部門が大規模な変更を行う絶好の機会でした。当初の監視システムは満足のいくものではなかったので、全体を刷新することにしました。

最も重要な部分の1つはネットワーク機器の監視でしたので、まずsnmp_exporterを設定して、スイッチの1つからデータを取得することから始めました。エクスポーターが行うNetSNMPへの呼び出しはCentOSでは異なるため、いくつかのバイナリを再コンパイルする必要がありました。いくつか小さな問題に遭遇しましたが、Robust Perceptionのブライアン・ブラジル氏の助けを借りて、すべてを迅速に解決することができました。snmp_exporterが動作し始めると、新しいデバイスを簡単に追加し、SNMPデータを取得できるようになりました。現在、主要なネットワーク(13台のスイッチ、10のVLANを含む)をGrafanaで監視しています。

Switch metrics from SNMP data

その後、ワークステーション、レンダーブレード、サーバーの分析が必要だったため、node_exporterを設定しました。この分野では、CPUが100%でないと問題なので、可能な限りすべてのパワーを使いたいと考えており、最終的には温度がより重要になります。さらに、可能な限り長い稼働時間が必要なため、すべてのステーションでPrometheusのAlertmanagerを介してメールアラートを設定し、何かダウンした際にはすぐにわかるようにしています。

Dashboard for one workstation

特定のニーズにより、クライアントからカスタムデータを監視する必要がありますが、これはnode_exporterのtextfile collector機能を使用して簡単に実現できます。cronジョブは、特定のツールから特定のデータをPrometheusが読み取れる形式で事前にフォーマットされたテキストファイルに出力します。

すべてのデータはHTTPプロトコルを介して利用可能なので、Prometheusからデータを取得するためのPythonスクリプトを作成しました。このデータを、ライブフロアマップを作成するWebアプリケーションからアクセスするMySQLデータベースに保存しています。これにより、簡単なマウスオーバーで、どのユーザーがどこにどのような種類のハードウェアで座っているかを知ることができます。また、ユーザーの顔写真と部署情報を記載した別のページも作成し、新しい従業員が隣の席の人が誰かを知るのに役立っています。ウェブサイトはまだ進行中のプロジェクトなので、見た目は気にしないでください。私たちは所詮システム管理者であり、ウェブデザイナーではありませんから :-)

Floormap with workstation detail

切り替えてからどのような改善が見られましたか?

これにより、スタジオ内のすべての監視方法を変更する機会が得られ、当初Prometheusによって取得されたすべてのデータを使用して、新しいカスタムフロアマップを作成するきっかけとなりました。すべてのサービスを1つのサービスで管理できるため、設定ははるかにシンプルになりました。

L’Atelier AnimationとPrometheusの未来はどうなると思いますか?

現在、ソフトウェアライセンスの使用状況をPrometheusと統合する作業を進めています。この情報により、アーティストは誰が何をどこで使用しているかを把握できるようになります。

ユーザーからの要望に応じてPrometheusのカスタマイズと機能追加を続けていきます。アーティストと一緒に仕事をしているので、たくさん要望があることは分かっています :-) SNMPとnode_exporterのカスタムテキストファイル入力を利用すれば、可能性は無限大です...