Enterprise Distributed Application Service(EDAS)でアプリケーションを作成してデプロイした後、アプリケーションを更新する必要がある場合があります。更新されたアプリケーションが正常に動作しない場合は、アプリケーションを以前のバージョンにロールバックできます。このトピックでは、アプリケーションを更新およびロールバックする方法について説明します。
アプリケーションのアップグレード
次の表に、さまざまなシナリオでアプリケーションを更新するために使用できる更新ポリシーと方法を示します。
アップグレードポリシー | シナリオ | アップグレード方法 | ドキュメント |
一括リリース(直接アップグレード) | アプリケーションのインスタンス数が少ない場合、またはサービスアーキテクチャが単純な場合は、アプリケーションを開発およびテストした後に直接アップグレードできます。つまり、アプリケーションの新しいバージョンを直接デプロイできます。 |
| |
段階的リリース | アプリケーションのインスタンス数が多い場合、またはサービスアーキテクチャが複雑な場合は、アプリケーションを複数のフェーズでリリースできます。アプリケーションは、各フェーズの一部のインスタンスでのみアップグレードされます。段階的リリースは、すべてのインスタンスでアプリケーションがアップグレードされるまで完了です。段階的リリース中にエラーが発生した場合は、プロセスを終了し、アプリケーションをロールバックできます。エラーが修正されたら、アプリケーションを再度リリースできます。 |
| |
カナリーリリース | 新しいアプリケーションバージョンは、少数のインスタンスで検証する必要があります。検証が成功した場合、すべてのインスタンスでアプリケーションをアップグレードできます。 | コンソール | EDASコンソールを使用して、Kubernetesクラスター内のアプリケーションのカナリーリリースを実装する |
アプリケーションのロールバック
アプリケーションのアップグレードプロセス中に、デプロイメントパッケージが使用できない、ヘルスチェックの失敗などの例外が原因で、アプリケーションのアップグレードが失敗する場合があります。この場合、アプリケーションのアップグレードプロセスは自動的に終了し、アプリケーションはロールバックされます。
アプリケーションの新しいバージョンで問題または例外が発生した場合は、手動でアプリケーションをロールバックできます。次の 2 つのシナリオが利用可能です。
- アップグレード中のロールバック:アプリケーションのアップグレードプロセスを終了し、アプリケーションをロールバックできます。
- アップグレード後のロールバック:アプリケーションの履歴バージョンをデプロイすることで、アプリケーションをロールバックできます。
Enterprise Distributed Application Service(EDAS)では、EDASコンソールで操作を実行し、API操作を呼び出すことで、アプリケーションをロールバックできます。詳細については、以下のトピックをご参照ください。
- EDASコンソールでKubernetesクラスター内のアプリケーションをロールバックする
- アプリケーションのアップグレードプロセスを終了し、アプリケーションをロールバックする:AbortAndRollbackChangeOrder
- アプリケーションの履歴バージョンをデプロイすることで、アプリケーションをロールバックする:RollbackApplication