機能はそのままで!だけでは終わらせない。大規模メール配信システムの AWS 移行

株式会社JPIX

https://www.jpne.co.jp

cloudpack

株式会社JPIX

株式会社JPIX様における工事情報配信システムの開発・移行、および監視・運用

既存環境と同じ機能を持ったシステムを AWS で再現したい

VNE(Virtual Network Enabler)事業者の株式会社JPIX様(以下、JPIX 様)は、ISP 事業者向けに IPv6 インターネットを提供するためのネットワーク設備等のローミングサービスを展開。ネットワーク設備等の共同利用により、高品質なネットワークを高効率・低コストに提供しています。

同社は NTT 東日本および西日本の工事・障害情報を ISP 事業者の法人ユーザーにメールを自動配信するシステムを自社運用していました。しかし、稼働しているサーバーの OS サポート終了に伴い、AWS へのリプレースを実施することになり、そのインフラ構築およびアプリケーション開発をアイレットが担当いたしました。

JPIX 様が求めていたのは、既存システムと同じ機能を持ったシステムを AWS 環境で再現すること。そこで、機能や UI は既存環境と全く同じ状態を維持しながら、裏側で使用するエンジンやソフトウェアを変更する提案をいたしました。

お客様との対話を重ね、AWS 移行の予期せぬ不具合を解決

プロジェクトは順調にスタートしましたが、AWS クラウドへの移行を検証したところ、システム構成上の違いから考慮しなければならない問題が見つかりました。

たとえば、メールの自動配信システムでは通常、全配信件数のうち数%はメールアドレスの変更など、何らかの理由でメールが正常に配信されずに差し戻される「バウンス」が発生します。従来 JPIX 様は、正常配信せずに滞留したメールを監視する機能を備えていましたが、AWS の SES の場合、バウンスが一定数発生するとメール配信がストップする仕組みになっています。

この問題はシステム構築で対処することもできるのですが、追加でコストが発生してしまうため、JPIX 様と対話を重ねて協議した上で、バウンス発生時のルールづくりを行うことでコストをかけずに対処することにしました。

また、JPIX 様がメール配信の状況を把握できるよう、バウンスが発生した際は、都度 Backlog に課題を起票して通知するフローを採用したのですが、バウンスが発生するたびに課題を完了にする手間が増えてしまうため、課題のクローズをアイレット側で行なうように調整。さらに、Lambda と EventBridge を用いて課題を自動クローズする機能を実装したことで、課題管理を人に依存することなく、ミスなく確実に課題を完了できる仕組みを構築しました。

既存の機能を維持しながら、より安定した監視・運用環境を実現!

今回、既存システムから新システムへの移行は DNS レコードの切り替えによって実施しましたが、DNS は JPIX 様が管理しているため、事前に切り替えることが難しい状況でした。そのため、リリース前に仮説検証用の EC2 を用意し、DNS レコード切り替えのリハーサルを行いました。結果的に、リリース当日もトラブルが発生することはなく、スムーズな切り替えを行うことができました。

また、今回の移行に際して、高いオブザーバビリティを誇るシステムパフォーマンス管理ツール New Relic と、アイレットが自社開発した次世代監視基盤 Advanced Monitoring System(AMS)を組み合わせて導入することで、既存の機能を維持しながら、より安定した監視・運用環境を実現しています。

アイレットは今後も、お客様のご要望を第一に考え、その実現に向けて豊富な知見と高い技術力を存分に活用しながら、課題解決やビジネスの発展をご支援してまいります。

システム構成図
AWSを使用したシステム構成図
    (AWS プロダクト)
  • ・Amazon EC2
  • ・Amazon SNS
  • ・Amazon SES
  • ・Amazon Kinesis Data Firehose
  • ・Amazon CloudWatch
  • ・Amazon Route 53
  • ・AWS Certificate Manager (ACM)
  • ・AWS ELB (ALB)
  • ・AWS CodePipeline
  • ・AWS Config
  • ・AWS Systems Manager
  • ・AWS CodeCommit
  • ・AWS CodeDeploy
  • ・AWS CodeBuild
  • ・AWS Certificate Manager (ACM)
  • ・AWS Identity and Access Management (IAM)

※アイレットでは、今回利用した AMS を始め、自動化ツールを積極的に自社開発し導入することで、効率的な監視・運用を実現しています。以下のページもご参照ください。
https://cloudpack.jp/service/automation.html

Credit

クライアント株式会社JPIX

Recent Cases