プラットフォームの更新、メンテナンス、および通知
最終更新日 2023年04月04日(火)
場合によっては、Heroku は、お客様が認識できる変更を引き起こしたり、特定の機能を一時的に無効にするように要求したりすることのあるプラットフォームでのメンテナンスを実行する必要があります。
これが行われた場合、Heroku Status (ドキュメント) を使用して、予想される内容を知らせます。
予想される作業の影響によって、通知する方法が異なります。このドキュメントでは、実行するプラットフォーム作業の種類と、ステータスサイトで表示される通知に対するその作業の影響について説明します。
作業の種類
作業は以下のカテゴリのいずれかに分類されます。
- 定期更新
- サービス更新
- メンテナンスウィンドウ
- 緊急メンテナンス
定期更新
定期更新は、安定した実稼働アプリや開発ツールにまったく影響を及ぼさない通常のデプロイです。これらは、設計でプラットフォームに冗長性が用意されているので、プラットフォームまたはお客様のアプリケーションの機能に影響せずに行われます。お客様のアプリの稼働時間と信頼性を管理するプラットフォームの同じ機能により、システムに対する日常の操作と改善を妨げずに、ほとんどの変更を行うことができます。このため、この作業の通知をしません。
サービス更新
サービス更新は、デプロイワークフローおよびツールの機能を妨げる作業です。プラットフォームに対するこれらの変更は、デプロイワークフローまたはツールの可用性に影響しますが、すでに実行中のアプリには影響しません。これらの変更は、API をメンテナンスモードにする必要があったり、進行中のビルドを妨げたりすることがあります。場合によっては、単一の dyno アプリのアイドリング解除を妨げることもあります。
サービスの更新を実行する必要がある場合、作業を行う少なくとも 3 営業日前にステータスサイトで通知します。この告知には、作業の予定時間と予想される影響が記述されます。作業が始まったときと終了したときを示すようにステータスサイトを再び更新します。作業の変更が必要な場合は、それに応じてステータスサイトを更新します。
メンテナンスウィンドウ
メインテナンスウィンドウは、安定した本番アプリケーションに影響する、プラットフォームの変更です。このタイプの作業はめったになく、回避するために行えるすべての措置を行います。この作業を行う必要がある場合は、実行される地域のピーク時間外にこの作業を行うように慎重にスケジュールを立てます。
メンテナンスウィンドウが必要な場合は、少なくとも 5 営業日前にステータスサイトで通知します。この告知には、予定時間と予想される影響が記述されます。作業が始まったときと終了したときを示すようにステータスサイトを再び更新します。作業の変更が必要な場合は、それに応じてステータスサイトを更新します。
緊急更新
緊急更新とは、プラットフォームのヘルスやお客様のデータの整合性に影響する可能性のある問題に対応するために、迅速に行う必要のある、上記の分類のいずれかに該当する、プラットフォームに対する変更です。緊急更新はめったに行われず、その性質上分類が困難です。たとえば、セキュリティ問題 (Heartbleed など) への対応があります。
開発や生産への影響をもたらす可能性のある緊急更新を実行する必要がある場合は、作業を行う時間を選択するときに、可能性のある影響、時刻、および遅延に関連したリスクを考慮します。可能な場合は、ステータスサイトで事前警告を表示します。どの場合でも、スタータスサイトを使用して、何を行うか、どのような影響が考えられるか、いつ終了するかについて通知します。
通知
開発または生産に影響する作業を実行する必要がある場合、ステータスサイトを使用して事前に通知します。この場合、ステータスサイトの上部に表示されるアラートメッセージが作成され、ツイートが生成され、電子メールが購読者に送信されます。
作業を開始したときに、スタータスサイトを再度更新します。これは、ステータスサイトのタイムライン部分 (青色で表示) にインシデントを作成し、ツイートを生成して、メールで購読者に通知します。
作業が予定よりも時間がかかる場合や、進捗に関する更新を提供する必要がある場合は、インシデント中に行うようにしてステータスサイトを更新します。終了したら、インシデントを解決します。これらのアクションはどちらも、問題中に常に表示される同じ通知 (ツイートおよびメール) を作成します。
作業中に何か問題が発生した場合は、通常の問題を示すようにステータスサイトを変更します。これにより、通常の通知 (ツイートとメール) が生成されます。その時点で、プラットフォームの他の問題について行う方法で通知を処理します。