技術ブログ
技術ブログ
2018年08月01日
このエントリーをはてなブックマークに追加

12 Factor Appに則ったモニタリングをNew Relicで ~第三回~

イントロダクション

SaaSサービスなどのWebアプリケーションを開発するにあたって、理想的なベストプラクティスをまとめた”12 Factor APP”。
12の項目からなるこのベストプラクティスについて、各項目の概要を説明しながら、当該項目と親和性の高いNew Relicの設定について、ご紹介しています。本日は3回目、最終回となります。

9. プロセスは使い捨てと考える

概要

12 factor appでプロセスは使い捨てのものとして考えられます。

プロセスを簡単に立ち上げて、すぐに捨てられるものとして構成することで、迅速かつ柔軟なスケーリング、コードや設定の変更の迅速な展開、堅牢な運用環境の導入が容易になります。これにより、プロセスは可能な限り迅速にジョブを実行できるようになります。

また、[SIGTERM] シグナルのようなものを受け取った場合、プロセスは正常にシャットダウンすることができます。

このプロセスの使い捨て性は、自動スケーリングを使用するアプリケーション(Kubernetesによってオーケストレーションされたコンテナ化されたアプリケーションなど)にとって不可欠です。今日のコンテナ化された世界では、使い捨ての重要性が実証されています。

New Relicはどのようにサポートするか?

  • New Relic Insightsを使用して、インスタンスとプロセスが作成/削除されたときにそれらのイベントを追跡することが可能です。負荷状況の推移とともにこれを追跡することで、アプリケーションの効率を測るのに役立ちます
  • 上記データを使用してAuto Scaling 設定を評価することもできます。アプリのプロビジョニングのリソースは適切なタイミングで行われているかや、インスタンスが無駄に起動し、必要以上にコストがかかっていないかを調べることができます

10. プロダクションと開発環境のデプロイ同期

概要

12 factor appによれば、各環境における同等性の欠如は、時間、個人、およびツールという3つのタイプのギャップとして現れることがあります。これらのギャップを避けるために、開発者はできるだけ早くコードをデプロイする必要があります。 プロダクションで使用されているのと同じツールを開発環境などでも使用する必要があります。

New Relicはどのようにサポートするか?

  • New Relic Infrastructureを使用して、各環境のパッケージやバージョン情報を比較することができます
  • すべての環境(開発、ステージング、および制作)でNew Relicを使用して、開発ライフサイクル全体を通じてアプリケーションの作成と改善に必要なすべての情報にアクセスできるようにします。

11. ログはイベントストリームとして扱う

概要

12 factor appによれば、ログは「実行中のすべてのプロセスとバッキングサービスの出力ストリームから収集&集約されたイベントストリーム」です。ログイベントストリームは、アプリケーションが動作している限り継続的に流れます。

New Relicはどのようにサポートするか?

  • ログを収集する場合は、New RelicのSplunk、もしくはSumo LogicとのIntegrationが推奨されます
  • New Relic Insights APIsを使用してログスクレーパーからデータをインポートすることも可能です。

12. 管理用のプロセスを通常プロセスと同じ環境で実行する

概要

12 factor appによると、管理や運用に必要なプロセスは一度だけのプロセスとして扱うべきと定義されています。「一度限りの管理プロセス」は、そのリリースで実行されている他のプロセスと同じコードと構成を使用して、通常のプロセスと同じリリース環境で実行するようにします。

New Relicはどのようにサポートするか?

  • [New Relic Infrastructure]を使用して「一回限りのプロセス」の実行を監視する
  • inspect-process-performanceを実行し、ホストへのログインと更新を追跡します

まとめ

12 factor appなどの方法論では、最新のアプリケーションのアーキテクチャー、構築、および保守に関するベストプラクティスが提供されています。

同様に、New Relicはアプリケーションのすべての問題を魔法のように解決するわけではありませんが、収集したクリティカルで実用的なメトリクスやデータは、アプリケーションやお客様の経験を確実に強力にします。

 

このエントリーをはてなブックマークに追加

PROプランのすべての機能を
30日間無料でお試し

新規無料登録いただくとPROプランのすべての機能を
30日間無料でお試しいただけます。
クレジットカードなど決済情報の登録は不要です。

各プランの詳細はこちらからご確認ください。