Google Cloud Platform 用運用開始チェックリスト

はじめに

この「運用開始チェックリスト」は、Google Cloud Platform で商用アプリケーションを運用する場合のベスト プラクティスを示しています。Google Cloud Platform とサービスに関して十分な知識があり、アプリケーションを運用開始するためのガイダンスを求めている企業のデベロッパーを対象に作られたものです。

Google Cloud Platform の各サービスには、App Engine 向け運用開始チェックリストGoogle Cloud Storage 向け運用開始チェックリストなど、それぞれ固有の運用開始チェックリストが用意されています。ガイダンス、およびサービス チェックリストについては、このプラットフォーム「運用開始チェックリスト」を使用してください。

Google Cloud Platform を使い始めたばかりの場合は、クイック スタートガイド ソリューションをお試しください。特定のサービスに慣れるには、App Engine のチュートリアル、Compute Engine クイックスタート、Cloud Storage スタートガイドなど、サービスの基本操作マニュアルをお使いください。

この「運用開始チェックリスト」は、5 つのセクションに分かれています。

  • アーキテクチャの設計と開発
  • アルファ版のテスト
  • 試験的な運用開始
  • 最終的な運用開始
  • 運用開始後

これらのセクションは、アプリケーションの運用開始に向けた準備の中でおすすめする使用順序に沿って記述されています。たとえば、まず「アーキテクチャの設計と開発チェックリスト」から開始します。この手順では、アプリケーション開発の初期段階で推奨される作業を記載しています。同様に、運用開始が近付いた時期に推奨する作業については、「試験的な運用開始チェックリスト」をご覧ください。ただし、チェックリストの作業の正確なタイムラインと完了までの所要時間は、運用開始するアプリケーションの種類や対応する社内リソースによって異なります。

この「運用開始チェックリスト」は、製品の運用開始を円滑に進め、ユーザー体験を高めるために作られています。これらのチェックリストを利用して、Google Cloud Platform で実行される新規および既存アプリケーションの検証作業を行うことをおすすめします。

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

このチェックリストは、アプリケーション開発の初期段階で使用することをおすすめします。このチェックリストは、4 つの作業グループに分かれています。

  • ソフトウェア アーキテクチャ関連の作業
  • Google との連絡窓口の設定
  • プロビジョニング
  • 運用開始プランとトラフィック予測

各グループに対するチェックリスト作業を並行して進めてもかまいませんが、ソフトウェアのアーキテクチャに関連する作業は、可能な限り早い段階で実施することをおすすめします。この作業は完了に時間がかかります。

ソフトウェア アーキテクチャ関連の作業

作業内容
❑  
アーキテクチャの概要を作成します。アーキテクチャ全体図、プロセスフローの概要、サービス連絡窓口の情報を記載します。Google Cloud Platform サービスの使い方を一覧表示し、説明します。実験的な Google API、Cloud Platform 以外の Google API、サードパーティ API の使用についても記載します。
❑  
ビルドとリリース、構成、セキュリティ管理プロセスを文書化します。可能な部分は、自動化します。
❑  
所定のバックアップ作業、定期保守、災害復旧プロセスを文書化します。実際のデータを使用して、復元プロセスをテストします。完全復旧に要する時間を計算し、災害復旧プロセスに反映させます。
❑  
社内のサポート システムを Google のサポートと統合する必要がある場合は特に、DevOps プロセスを文書化します。また、システムの監視と警告プロセスを文書化し、定義します。DevOps が Google Cloud Platform Console について習熟しており、確実にテストに参加するようにしてください。クラウド ステータス ダッシュボードを監視します。

Google との連絡窓口の設定

作業内容
❑  
シルバーレベル以上の Google Cloud サポートを購入し、緊急時の連絡先を設定およびテストしてください。サポートレベルに関係なく、問題を報告する方法(たとえば、App Engine の問題を報告する方法など)を見直し、実践します。
❑  
ウェブ / メールの両方、購入したサポートレベルによっては電話サポート プロセスなど、チーム全体で Google for Work サポート センター(GWSC)に習熟します。テストは週末や夜間に実施します。Google への連絡方法をチーム全員が知っているようにします。
❑  
問題をすみやかに解決し、作業のダウンタイムを最小限に抑えるために、Cloud Support へチケット(特に P1 チケット)を提出した後に追加情報を要求された場合に迅速に対応するプロセスを用意しておいてください。Google の分析では、お客様の更新を待機する予測時間がほぼ 30% です。
❑  
このテンプレート(g.co/GCPLaunch)を使用して、運用開始することを Google に通知してください。運用開始に影響を及ぼす Google Cloud Platform イベントがあれば、Google に通知してください。

プロビジョニング

作業内容
❑  
プロビジョニング各開発環境(例: Dev、Test、Prod)用の Google Cloud Platform プロジェクト
❑  
Google Cloud Platform のお支払いを有効にし、コストをモデル化します。詳細については、料金計算を参照してください。
❑  
ドメインと証明書をプロビジョニングします。Google Apps Admin Console を使用して、証明書をインストールします。詳細については、カスタムドメインの SSL およびカスタム ドメインの SSL 証明書をご覧ください。
❑  
その他に必要な Google とサードパーティのサービスをプロビジョニングします。これらのサービスは、運用開始プロセスで説明した作業内容に含める必要があります。

運用開始プランとトラフィック予測

作業内容
❑  
ソリューション全体と全サブコンポーネントのトラフィック予測を計算します。
❑  
運用開始プランを作成し、運用開始の根拠となる資料として使用します。必要なプロセスと資料を参照したものであることが必要です。
❑  
テスト計画を作成します。本番環境のサービスに対する導入コードを含むテストを必ず含めるようにしてください。テストを繰り返します。可能な限り、作成するテストの設定を現実的にすると同時に、スタッフとプロセスも増やしてください。
❑  
負荷テスト計画を作成します。毎回、Google Cloud Platform プロジェクトを「リセット」(例: Cloud Datastore エンティティまたは Cloud Storage のバケットとオブジェクトを削除)するとともに、海外の運用開始に際しては、国際的なテストを行ってください。
❑  
割り当ての分析を完了します。割り当てについて理解し、割り当ての詳細を監視するとともに、割り当ての調整をリクエストするため、GWSC でサポート チケットを申告します。

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

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

作業内容
❑  
トラフィックの予測を見直します。
❑  
現在のアプリケーションログに基づいて、運用開始プランを見直します。
❑  
トラフィック予測に基づいて割り当て分析を見直し、割り当ての調整をリクエストするため、GWSC でサポート チケットを申告します。
❑  
ソリューションも Google Cloud Platform もほぼ継続して進化しているため、負荷テストは 1 回以上行ってください。
❑  
ステップ式の導入スクリプトとテストを作成します。検証可能で、再現性がある包括的なビルドとリリースのプロセスガイドを文書化するのが目的です。
❑  
現在のシステムの監視とアラートが十分かつ効果的であることを検証します。
❑  
主な障害をシミュレートし、災害復旧プロセスをテストします。可能な限り、スタッフとプロセスを増やしてテストしてください。
❑  
データセンターの障害、サービスの不具合、データ損傷などのイベントをシミュレートします。大規模な想定外のイベントに備えます。
❑  
ビルドとリリースの障害をシミュレートします。効果的にロールバックできるか、プロセスが文書化されているかを確認します。
❑  
構成管理の不具合をシミュレートします。これらが実現できた理由、ループホールを解消した方法、問題点を特定、解決するための時間を短縮する方法を確認します。
❑  
すべての項目についてテスト複数回行います。テストに携わったスタッフやマシンを記録しておき、不具合が起きた場所や文書化されていない作業を特定できるようにします。

試験的運用開始のチェックリスト

アプリケーションの商用運用に先立ち、「試験的運用のチェックリスト」を使用して、運用開始に向けた準備体制をテストすることをおすすめします。

作業内容
❑  
導入スクリプトを通じて実行します。エラーや抜けが発生するたびに修正します。導入に必要なすべての手順を文書化します。
❑  
トラフィック予測の 1.5 倍から 2 倍の負荷テストを行います。
❑  
発生する問題の優先順位を付け、解決します。実際のコストと比較してコストモデルを見直します。運用コストが予算内に収まることを確認してください。必要に応じて、コストモデルを見直します。
❑  
コストを削減する方法を見極め、検証します。

最終的な運用開始のチェックリスト

運用開始直前と運用開始中は「最終的な運用開始のチェックリスト」を使用します。

作業内容
❑  
導入スクリプトを通じて実行します。問題が発生するたびに文書化し、対応します。
❑  
必要に応じて、チームメンバー全員が問題点の優先順位を付け、解決に携われるようにしておいてください。

運用開始後のチェックリスト

作業内容
❑  
今後の参考となる情報を記録し、関連文書をすべて更新します。
❑  
事後分析の文書を作成します。

外出先でもリソースをモニタリング

Google Cloud Console アプリを入手して、プロジェクトの管理にお役立てください。

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