スマートフォンの台頭によって、様々な電子機器が高機能化もしくはスマホでの代用という二極化に向かっています。
カーナビゲーションシステム(カーナビ)もその一つ。地図アプリで充分という人もいれば、高機能な渋滞予測や、より最適なルート選択を求めて専用機を使う人もいたりと様々です。
パイオニア株式会社のカーナビに搭載されているルート探索機能「スーパールート探索」は、何千もの候補からベストなルートをサーバー上で演算して提供するシステム。所要時間だけではなく料金も考慮して計算しているため、その提案は非常に実用的です。
多くのカーナビからの情報を受け取り、効率的なルート提案をするサービスを提供するには、パフォーマンスがよくセキュリティが担保されたバックエンドのシステムが必要です。そのバックエンドでAWSが使われるようになったのは2019年の秋口のこと。利用するきっかけと、その導入に際してクラスメソッドがどのように貢献できたのかを同社の変革推進本部 イノベーション推進グループ データプラットフォーム部 開発1課 課長の清水晃様と、同課の島津貴行様にお尋ねしました。
AWSへの移行とクラスメソッドへ依頼するきっかけ
スーパールート探索で複雑なルート探索をする際、データ通信を活用してサーバー側で探索を行います。2017年から稼働しているこのサービスでは、サーバーサイドのインフラ契約更新のタイミングが近づいていました。パイオニアは、多くのカーナビから得られる情報、交通情報などのビッグデータを処理し分析する基盤をリプレースするか、既存のインフラの契約を延長するかの二択を迫られます。
「他社のクラウドサービスでOpenShiftを使って運用していたのですが、そのサービスの契約更新期限が2019年10月に迫っていました。スーパールート探索機能自体は安定稼働していましたが、既存のインフラ契約を延長した場合、運用コストが大幅に上がることが分かっていました。
加えて組織的な理由から、クラウドを利用しているにもかかわらず軽微な修正すらスピーディに行うことができず、成果物を投入することができない状態となっていました」(島津氏)
「従来、オンプレミスのシステムでよくあるような伝統的な方法で運用しており、モニタリング・ログ監視ができるモダンな監視システムがありませんでした。こうした要因が重なったことがあり、OpenShiftからAWSを使ったシステムに移行しよう、ということになったのです」(清水氏)
「マネージドKubernetesサービスのEKSに取り組んでいただけること、またAWSの割引があるのも決定のポイントです。個人的には技術ブログのDevelpers.IOの愛読者でもあったので、最初から技術面の信頼感がありました」(島津氏)
と2019年の初頭にご依頼をいただきました。
ご依頼いただいた部分が既存システムへのつなぎ替えの機能でもあることから
「高い費用を支払えば、以前のインフラ契約のままでも稼働自体は可能であったと思います。しかし、クラスメソッドさんに対しては最新技術の導入や費用面において大きな期待感があり、お願いすることにしました」(清水氏)
と期待を持たれての移行作業が始まりました。
3ヶ月でOpenShiftからEKSへ
ポイントはOpenShiftからKubernetes(EKS)への移行です。CI/CD(継続的インテグレーション・デリバリー)ツール・IaC(Infrastructure as Code)・EKSの導入を行いつつAWSアカウントの管理までを引き受け、2019年5月にはシステムの検討や検証環境の構築を終え、6月から8月の3か月で本番環境の構築を終えました。
環境構築の終盤で、クラスメソッドからデプロイツールの変更提案を行いましたが、
「開発メンバーからの評判が良くて助かっています。やることが絞られて、運用がシンプルになりましたから」(清水さん)
と好評価でした。
旧システムからの移行が無事終了
システム構築はオンスケジュールで無事に終了し、旧システムの契約を延長することなく移行が完了しました。
「切り替わったかどうかはバックエンドの仕組みであって、お客様に影響があってはいけない部分です。スーパールート検索が今までと同様、安定して動き続けていることが最も評価している部分です。安定して稼働するシステムをスケジュール通りにリリースしていただけたのは、クラスメソッドさんの力添えがあったからだと思っています」(清水さん)
と、安定した稼働を評価していただきました。
「ナビゲーション機能を強化しようと考えた時に、OpenShiftだったら指をくわえて見ていたかもしれない部分にチャレンジしようという気運が高まっています。移行したばかりなので具体的な動きはまだありませんが、チームのモチベーションの高まりを感じています」(島津さん)
環境を一新したことで、エンジニアのモチベーションも高まっているようです。
スケジュール的な厳しさが計画当初からの課題でしたが、
「厳しいスケジュールで動いていただいたという印象もあったので、ドキュメントやスキルトランスファー、その他資料を用意してくれるのかという懸念はありました。それらについてはマークダウン形式でGitHubに残してくれたのが助かりました」(清水さん)
充分なドキュメントをお納めするだけの余裕を持って完了できました。
他部門まで巻き込んで横展開したい
「エンジニアからは『開発に集中できるようになった。特にGitにプッシュしたら自動でデプロイされるようになり、今まで手作業だったところが簡略化された』と評判も良いですよ。
CI/CDやGitHubは違うシステム・環境でもどんどん使えるものだと感じました。今回覚えたものをこれからも活用していきたいです」(島津さん)
「私たちのチームで使用したツールを横断的に、管理部門まで巻き込んで利用したいですね。私たちで独占するのではなく、良いモノをみんなで使っていきたいです。これからはスピード感をもって仕事ができるだろうという期待感が高まっています」(清水さん)
モチベーションの上がるシステムを構築します
バックエンドシステムの変更が運営側のモチベーション向上をもたらしているのは、その構築にお力添えした甲斐があります。また、システムの変更からエンジニアのモチベーションが上がるのであれば、それはコスト削減以上の効果があると言えます。
動作速度と安定性、開発やデプロイのしやすさがビジネスのスピードアップには欠かせない現代のコンピューティングにおいて、AWSを活用した環境構築は有力な選択肢となります。OpenShiftからEKSへの移行も、本事例のように現実的に充分可能です。
ほかの環境から安定性・速度を維持しながらコストを下げたい、といったご要望がありましたら、どうぞお気軽にご相談ください。