2019 年 11 月 30 日以降、アカウントでクレジット カードなどの支払い方法を指定している場合にのみ、App Engine アプリの新しいバージョンをデプロイできます。2021 年 8 月 9 日以降、すべての App Engine アプリでお支払い方法の指定が必須になりました。この要件は、App Engine スタンダード環境の Java 8、Python 2.7、PHP 5、Go 1.11 アプリを含む、すべての App Engine ランタイムのアプリに適用されます。
2021 年 8 月 9 日以降、実行中のアプリケーションにお支払い方法がない場合、アプリケーションはシャットダウンされます。
アカウントのお支払い方法を指定する必要がありますが、App Engine の無料枠には変更はなく、これまでどおりご利用いただけます。
この変更を行った理由
不正行為や不正使用を防ぎ、Google Cloud の他のサービスと App Engine をより緊密に統合するために、すべてのランタイムで支払い方法の指定を必須としました。この変更により、Google は新しい機能の提供と、App Engine をご利用いただいているお客様の成長の支援により多くの時間を使えるようになります。
また、すべての App Engine ランタイムが、デプロイ プロセスでアプリをコンテナにビルドするのに Cloud Build を使用するようになりました。Cloud Build ではお支払い方法の指定が必要なため、お支払い方法が設定されていない場合、App Engine へのデプロイが失敗します。2021 年 8 月 9 日以降、実行中のアプリケーションにお支払い方法が指定されていない場合、アプリケーションはシャットダウンされます。お支払い方法を追加するとアプリケーションを復帰させることができます。
支払い方法の指定以外には、プロジェクトに対する変更は必要ありません。Cloud Build への変更はすべてバックグラウンドで行われ、デプロイ コマンドや管理 API に対する影響はありません。
以前と同じ点
App Engine の無料枠に変更はありません。
表示される内容
プロジェクトに有効なお支払い方法がない場合は、以下のように表示されます。
リクエストがアプリに送信されたときに返される
HTTP 500
エラーApp Engine ログのアプリログ エントリに「課金が無効です。インスタンスをシャットダウンしています」という内容が表示されます。
必要な対応
App Engine スタンダード環境で Java 8、Python 2.7、PHP 5、Go 1.11 ランタイムを使用して App Engine アプリを使用している場合、プロジェクトに支払い方法を追加する必要があります。
支払い方法をプロジェクトに追加するには:
請求先アカウントを作成します(まだ作成していない場合)。
クレジット カードなどの支払い方法を追加します。
プロジェクトを請求先アカウントにリンクします。
詳しくは、支払い方法の追加、削除、更新をご覧ください。
今回の変更の理由
この変更は次のことを目的としています。
App Engine での不正行為の防止
他の Google Cloud サービスと App Engine とのより緊密な統合
App Engine での不正行為の防止
不正行為は、App Engine と Google のすべての正当なユーザーに悪影響を及ぼします。Google のエンジニアリング チームとサポートチームは、不正使用の防止、モニタリング、診断に多大な時間を費やしています。このため、正当なユーザーのために使えるリソースが制限されています。また、不正行為が発生すると Google が負担するコストが増大するため、App Engine の料金設定の調整が必要になり、結果としてお客様の負担も増加してしまいます。
比較的新しいランタイムで支払い方法の指定を必須としたところ、不正行為が減少することが明らかになりました。
他の Google Cloud サービスと App Engine の統合
2008 年に Google Cloud に先行してリリースされた App Engine は、完全に自社所有のカスタム アーキテクチャーで構築されていました。これは、このサービスと統合できる広範なプラットフォームが存在しなかったためです。Google Cloud が大規模で洗練されたプラットフォームとなった近年では、Google Cloud で提供されるサービスと App Engine をシームレスに統合してほしいという要望をお客様からいただいています。
他の Google Cloud サービスとの統合はサーバーレス VPC アクセスによって可能になります。これにより、App Engine を Compute Engine VM や Google Kubernetes Engine クラスタと同じ VPC 内に配置できます。この統合を実現するため、App Engine のビルドを Cloud Build に移行しています。これには、次のような利点があります。
詳細な警告とエラーを含むビルド出力を得られる
Cloud コンソールの Cloud Build セクションでビルド履歴を確認できる
(近日提供開始)App Engine ランタイムで使用可能な事前定義セットに加えて、コード内で任意のライブラリを含めることができる
ほとんどの Google Cloud サービスでは支払い方法の指定が必須になっているため、この統合により、App Engine でも支払い方法の設定が必要になります。
Cloud Build の費用
Cloud Build には、請求先アカウントごとに 1 日 120 ビルド分の無料枠があります。たとえば、ビルドの完了に 5 分かかる場合、1 日 24 回までのデプロイを無料で行うことができます。無料枠を超えた場合の費用については、Cloud Build の料金をご覧ください。
費用の上限
次の方法で App Engine の費用の上限を設定できます。
app.yaml
構成ファイルのmax_instances
設定を1
に設定し、インスタンスの使用を無料枠に制限します。予算とアラートを設定して、すべての Google Cloud サービスでのリソース消費量を監視します。
事前に設定された使用レベルを超えたら、アプリを手動で無効にします。