Aws

Parse.comからparse-server(Elastic Beanstalk)に移行する

  • POST
Parse.comが終了するということで、移行作業しました。この記事ではParse.comからparse-serverとmLabのフリープランを利用した移行メモです。クライアントとして利用していたAndroidアプリも修正しています。画像なんてない。 これからParse.comからの移行を検討される場合は、Parseの利用をやめることを含めて十分な検討をしたほうがいいでしょう。parse-serverへ移行する場合の基本的な流れは公式で公開されています。またparse-serverを利用する場合、非常に沢山のコミュニティが移行方法を公開しています。自分の好きな環境がないか確認するといいです。 今回はparse-serverをElastic Beanstalkを利用してEC2上にデプロイし、Parse.comのデータをmLabに移行しました。 mLabのフリープランを検討する場合いくつか注意点があります。mLabは500MBインスタンスを無料で使用できます。しかし、これはシングルノードかつ共用インスタンスです。あとからスケールさせる場合再度移行作業が必要になります。またAWS, GCP、Azureでフリープランが用意されていますがリージョンが固定です。AWSの場合バージニアのみになります。 Parse.com to mLab mLabのアカウントを作成後、DBを作成する。 [Create New]ボタンを押す Cloud provider: AWS Plan: Single-node:Sandbox (shared 0.5GB) FREE 作成したDBを開く。parse-serverで使用するユーザを作成する。 Usersタブを開く [Add database user]ボタンを押す username/passwordを入力(Make read-onlyはチェックしない) 画面上部に表示されているURIをコピーする。 mongodb://<dbuser>:<dbpassword>@sample.mlab.com:13584/parse-server-sample Parse.comからmLabにデータを移行する。 Parse.comからデータを移行するアプリを開く [Analytics] - [Overview]でData storageが500MBより少ないことを確認 [App Settings] - [General] - [Migrate]ボタンを押す 表示されたダイアログ内に先ほどコピーしたURIを貼り付け SSLの利用を推奨しますという警告が表示されるが、mLabのフリーではSSLを利用できないため[Migrate anyway]ボタンを押す マイグレーション完了後、[Finalize]ボタンを押すことでParse.comの管理画面がmLabのホストを参照するようになります。Finalize完了後はParse.comのホストに再度戻すということはできないので注意。 あとで必要なので、[App Settings] - [Security & Keys]から各キーをメモしておきましょう。実際に必要なのは[Application ID]と[Master key]だけです。 もしデータ移行に失敗する場合は、mLabにfailIndexKeyTooLongの設定が必要かもしれません。mLabフリープランの場合は共用インスタンスなので変更できません。ほかの方法でmongodbを運用する必要があります。 参考: Set the failIndexKeyTooLong parameter to false parse-server on Elastic Beanstalk parse-serverをElastic Beanstalkを使ってデプロイします。