プロダクション環境下でのマイクロサービス
マイクロサービスは、特定の種類のJHipsterアプリケーションです。プロダクションビルドの実行、最適化、および セキュリティ保護の詳細については、メインのプロダクション環境下でのJHipsterのドキュメントを参照してください。
マイクロサービスの監視
JHipsterレジストリを使用する場合、使用可能なランタイムダッシュボードとその使用方法については、JHipsterレジストリのドキュメントを参照してください。
モニタリングのドキュメントも非常に重要であり、以下の使用に関する具体的な情報を得ることができます。
- マイクロサービスのログを収集するELK
- マイクロサービスのメトリクスを収集するPrometheus
- サービス全体のHTTP要求をトレースするZipkin
Docker Composeを使用した開発とデプロイ
マイクロサービスアーキテクチャで作業するということは、複数の異なるサービスとデータベースを連携させる必要があるということであり、その意味でDocker Composeは、開発、テスト、運用環境を管理するための優れたツールです。
マイクロサービスに関する特定のセクションは、Docker Composeドキュメントに含 まれており、マイクロサービスアーキテクチャに取り組む際には、このセクションに精通することを強くお勧めします。
Docker SwarmはDocker Machineと同じAPIを使用しているため、クラウドにマイクロサービスアーキテクチャをデプロイすることは、ローカルマシンにデプロイすることとまったく同じです。JHipsterでDocker Composeを使用する方法の詳細については、Docker Composeドキュメントに従ってください。
Herokuを使用した本番環境への移行
Heroku sub-generator](/heroku)は、マイクロサービスアーキテクチャでもほぼ同じように動作しますが、主な違いはデプロイするアプリケーションが増えることです:
JHipsterレジストリをワンクリックで直接デプロイできます:
JHipsterレジストリをセキュアにする方法を理解するには、Herokuサブジェネレータのドキュメントに従ってください。
JHipsterレジストリがデプロイされているURLをメモします。アプリケーションはすべて、application-prod.yml
ファイルでそのURLを指定する必要があります。その構成を次のように変更します。
eureka:
instance:
hostname: https://admin:[password]@[appname].herokuapp.com
prefer-ip-address: false
これで、ゲートウェイとマイクロサービスをデプロイし、スケールができます。Herokuのサブジェネレータは、JHipsterレジストリのURLを知るために、新しい質問をします。これにより、アプリケーションはSpring Cloud Configサーバで設定を取得できるようになります。