Tanzu Config Server は、外部に向けたアプリケーション構成サービスです。環境全体にわたるアプリケーションの外部プロパティを管理するための中心的な場所です。このサービスは、Java PropertiesファイルまたはYAMLファイルとして格納された構成を提供します。(構成のソースは通常、Gitリポジトリにファイルとして保存されます)。構成ソースのURIを指定すると、サーバーはリポジトリをクローンします。この構成は一連のプロパティソースとしてJSONのクライアントアプリケーションで使用できるようになります。
- Gitを使って構成コンテンツを管理することで、アプリケーションの構成を管理し監査可能になります。 アプリケーションがデプロイメントパイプライン(開発、テスト、本番)を進むに連れて、サービスがその構成を管理します。
- 開発者はConfig Serverを使用して、アプリケーションがこのプロセス中に実行する必要があるすべての要素を確保します。
- Config Serverは、環境固有の構成のラベル付きバージョンをサポートします。
- HTTPS暗号化は、ソースGitからConfig Serverインスタンスへの接続を安全に保護します。
Tanzu Service Registryは、NetflixOSS Eurekaに基づくサービスディスカバリパターンの実装を可能にします。これは、マイクロサービスベースのアーキテクチャにおける重要な機能の1つです。なぜでしょう?各クライアントまたはサービスの手動による構成は困難であり、多くの場合、本稼働環境では脆弱です。それに対し、サービスレジストリを使用すると、登録済みのサービスを動的に検出して呼び出すことができるからです。
- まず、クライアントがサービスレジストリに登録します。また、クライアントはホストやポートなど自身に関するメタデータも提供します。 一旦登録されると、レジストリは各サービスインスタンスからの定期的なハートビートメッセージを待ちます。
- ハートビートメッセージが一貫して受信されない場合、サービスレジストリはレジストリからそのインスタンスを削除します。
- HTTPS暗号化は、すべてのクライアントからサービスへの通信を安全に保護します。
- レジストリの複製はサービスの可用性を高めます。また、Cloud Foundryの権限モデルもサポートしています。開発者は許可されたサービスしか見ることができません。
NetflixOSS Hystrixライブラリ(Spring Cloud Netflixの一部)は、サーキットブレーカーパターンの実装を可能にします。Tanzuのサーキットブレーカーダッシュボードは、アプリケーション内のサーキットブレーカーのメトリックを可視化します。マイクロサービスアーキテクチャは、多くの場合、分散サービスの多くの層で構成されています。エンドユーザーの要求は、これらのサービスへの複数のコールを含むことがあります。下位レベルのサービスに障害が発生した場合、その障害はエンドユーザーまでカスケードされ、他の従属サービスにも広がる可能性があります。障害が発生したサービスへの大量トラフィックもまた、修復を困難にする要因です。Hystrixサーキットブレーカーは、障害がカスケードするのを防止します。障害が起きたサービスが正常に復元されるまでのフォールバック動作を提供することができます。
- サービスに適用すると、サーキットブレーカーはサービスへの失敗コールを監視します。障害が特定のしきい値に達すると、サーキットを「開きます」。
- サーキットブレーカーは、コールを指定されたフォールバックメカニズムに自動的にリダイレクトします。これにより、障害を起こしたサービスの復旧時間が確保されます。
- サーキットブレーカーダッシュボードは、コンテナ化されたWebアプリケーションとして実行され、クラウドネイティブサービスのフリートに存在するすべてのサーキットブレーカーの動作を可視化します。
- プラットフォーム上で、Spring Cloud StreamおよびRabbitMQインフラストラクチャは、NetflixOSS
- Turbineメトリックデータのストリームに対して、信頼性の高い暗号化されたトランスポートを自動的に提供します。