この度、音楽系アプリのBackendで動いているRuby on Rails AWSインフラ環境刷新を実施しましたので、ご紹介させていただきます。
背景
音楽系アプリのBackendは以下のような構成で動いていました
- AWS EC2上に構築されたRuby on Railsで動作
- コードのdeployは、capistrano による配布
今回、以下のようなご相談をいただきました。
- EC2が動いているOS version upを行いたい(Rails5系で動いていた)
- Ruby on Railsのバージョンアップを実施したい
- Ruby on Railsのバージョンアップに伴ったRuby gemパッケージのアップデート
- Ruby on Railsのバージョンアップに伴ったJavascript npmパッケージのアップデート
- 開発環境/staging/本番の刷新、構築
音楽系アプリを運営されている会社での課題感としては、以下のようなものがありました。
- 各種バージョンアップに割ける人員確保が難しい
- Railsを理解しながらAWSインフラを各種変更できる人材がいない
- サーバ費と運用にかかる工数を圧縮したい
- アプリサービス立ち上げ時に、別のサービスと同じAWSアカウント内にサーバ構築したが、分離したい
- 分社化したため、別アカウントで管理することになった
対応内容
前述の背景・課題に対し、弊社から以下のご提案をさせていただき、実施を行いました。
- AWSインフラ系人材・リソースの提供
- 現状構成の理解から新環境の提案・環境刷新・刷新後の安定運用までのサポート
- EC2で稼働しているRailsから、ECSを用いたManagedな環境への移行
- 監視から、オートスケールまで各種設定・引越含む
- CicleCIを用いて、自動テストからImageのビルド、AWS ECRへのプッシュ、デプロイまでを自動化
- AWSアカウント分離
- DB移設
- 静的データ移設
- EC2で稼働しているRailsから、ECSを用いたManagedな環境への移行
- バージョンアップ作業・本番切り替え作業・監視設定・アラート対応
実現できたこと
バージョンアップを実施でき、Managedなサービスを選択することで将来的なアップデートにかかる運用工数を削減することができました
かかった期間
着手から切り替えまで2ヶ月、その後の運用サポート3ヶ月
お問い合わせ
リゾラス株式会社 では、過去のAWS/GCPインフラ運用に関する知見を活かし、 現在サービス運用中のAWSサーバをメンテナンス、バージョンアップ、クラウド載せ替え等システム面のサポートを行っております。
ご興味がある方は お問い合わせフォーム よりお気軽にご連絡ください。