Cloud SQL 用リリース チェックリスト

はじめに

この「Cloud SQL 用リリース チェックリスト」では、Cloud SQL を使用する商用アプリケーションをリリースする前に、完了することが推奨される作業について説明します。このチェックリストでは、Cloud SQL 固有の作業に焦点を当てています。プラットフォームのチェックリストである GCP 用リリース チェックリストも使用して、すべてのサービスに共通して完了することが推奨される作業も把握してください。

この「Cloud SQL 用リリース チェックリスト」は、Cloud SQL に精通しているデベロッパーに適しています。Cloud SQL の使用を開始したばかりのユーザー向けの基本的な使用方法の説明は含まれていません。新規ユーザーの方はまず、クイックスタートから始めてください。

このチェックリストは、次の 3 つのセクションで構成されています。

  • アーキテクチャの設計と開発
  • アルファ版テスト
  • 最終リリース

これらのセクションは、アプリケーションのリリースに向けて、使用をおすすめする順番で記述されています。たとえば、最初は「アーキテクチャの設計と開発チェックリスト」から開始します。この手順では、アプリケーション開発の初期段階で実施することが適切な作業を取り上げています。同様に、「アルファ版テスト チェックリスト」には、リリースが近付いた時期に実施することをおすすめする作業が記述されています。なお、チェックリストに挙げられている作業の正確な実施時期とその所要時間は、実際のアプリケーション開発日程に応じて異なります。

アーキテクチャの設計と開発のチェックリスト

このチェックリストはアプリケーション開発の初期段階で使用することをおすすめします。チェックリストの作業を並行して進めてもかまいませんが、ソフトウェアのアーキテクチャに関連する作業は時間がかかるため、可能な限り早い段階で実施することをおすすめします。

作業内容
❑  
Cloud SQL のパフォーマンス特性、管理および複製されるデータベース サービス、サービスの限界と制限(SUPER 権限がない、など)を慎重に評価します。
❑  
DevOps チームが GCP ConsoleCloud SDKgcloud コマンドライン ツールを含む)に習熟していることを確認します。どちらのツールもパブリック クラウドの Cloud SQL API を使用します。いずれのツールでも、インスタンスの管理(作成、編集、削除)、ユーザー パスワードの更新、復元の開始、その他の管理タスクを実行できます。Cloud SQL は標準のワイヤ プロトコルを使用しているため、サードパーティの管理ツールも使用できます。
❑  
Cloud SQL に関する情報と実用的なアドバイスについて、Stack Overflow の Cloud SQL のコミュニティ サポートに相談します。
❑  
Cloud SQL の通知グループに登録します。このグループには、サービスの更新や問題およびインシデントのレポートについての情報が投稿されます。GCP ステータス ダッシュボードでも、Cloud SQL とその他の GCP サービスに関する情報が提供されます。

アルファ版テストのチェックリスト

この「アルファ版テストのチェックリスト」は、コードが完成に近付き、目的のアプリケーションに関する指標が必要になった時点で使用します。

作業内容
❑  
開発プラットフォームにデータアクセスを提供するドライバを最新の状態に保ちます。
❑  
早い段階から頻繁に実際の環境に即した負荷テストを行います。最大負荷の状態で Cloud SQL インスタンスを再起動してもアプリケーションに問題がないことを確認します。アプリケーションが多数の接続を行う場合は、サーバー再起動後の再接続に、保留中接続数の上限に達しない適切な量のバックオフがあることを確認します。詳しくは、よくある質問のサイズや QPS に制限はありますか?をご覧ください。 大きなコールド バッファはいっぱいになるまでにかなり長い時間がかかることに注意してください。可能であれば、常に一時テーブルが作成されないようにクエリを最適化する必要があります。一時テーブルを含むオペレーションは、特に速度が低下する可能性があります。
❑  
Compute Engine から接続する場合は、アイドル状態の接続に関するファイアウォールの動作がアプリケーションに悪影響を及ぼさないことを確認します。必要に応じて、仮想マシンが再起動しても TCP キープアライブが維持されるように変更を行います。詳細については、Compute Engine から Cloud SQL に接続する方法をご覧ください。
❑  
第 1 世代インスタンスを使用している場合は、適切な App Engine アプリケーションに従っていること、あるいは適切な Compute Engine ゾーンにあることを確認します。そうすることにより、ほとんどの場合、レイテンシを 2 ミリ秒未満に抑えることができます。可能な限り、接続プールを使用して新しいデータベース接続を確立しないようにします。新しい接続の確立には時間がかかり、10 ミリ秒以上かかることがあります。
❑  
App Engine アプリの接続制限を超えないようにします。そのために推奨される手段は、接続プールです。
❑  
スキーマの変更に対する戦略が設けられていて、スキーマ変更の影響が十分に把握されていることを確認します。インスタンスのクローンを作成してスキーマの変更をテストすることをおすすめします。

最終リリース チェックリスト

リリース直前とリリース中は、「最終リリース チェックリスト」を使用します。

作業内容
❑  
リリースに関して Cloud SQL 固有の作業はありません。ここまでこのチェックリストに沿って作業を完了していれば、プロジェクトの Cloud SQL サービスはアプリケーションをリリースできる状態になっています。GCP 用リリース チェックリストの最終リリース チェックリストも確認することをおすすめします。
このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...