...
Microservices Bus provide key infrastructure functionalities to support Microservice Architecture including service registration/discovery, service gateway, service load balancer. It's a pluggable architecture so it can plugin service provider options like AAF to provide Authentication & Authorization for APIs. Microservices Platform also provides a service portal and service requests logging, tracing and monitoring mechanism, etc.
Source codes are from OPEN-O and have already been used to support Microservice Architecture of OPEN-O for the vEPC and VoLTE use cases in its two successful releases.
Scope:
- Service registration
- Registration via Restful API
- Registration via portal
- Registration via proxy
- Note: Registration info is used for service request routing, the info including service name, service exposed url, version, service instance endpoint(IP:Port), service protocol, service ttl, service load balancing method, etc.
- Service discovery - Server side discovery
- service request routing
- service request load balancing
- Service discovery - Client side discovery
- client side discovery SDK
- Service discovery - DNS
- Discovery and load balancing by DNS server
- Service consumer directly talk to service provider
- Service Health Check
- Note: The goal of service health check of MSB is to maintain the correct health status of service in the service registry so the service consumer will not get a failed service provider instance, MSB doesn't try to kill and restart the service instance, which is the scope of OOM(ONAP Operations Manager).
- Service API gateway
- Client request routing
- Client request load balancing
- Transformation, such as https to http
- Provide authentication & authorization for service request with plugin of auth service provider like AAF
Note: MSB itself doesn't provide auth service, which is provided by a auth service provider microservice such as AAF(Authentication and Authorization Framework) - Service request logging
- Service Request Rate-limiting
- Service monitoring
- Request result cache
- Solve cross-domain issue for web application
- Other functionalities with the pluggable architecture capability ...
- Service API Portal
- Provide a Service API Portal to expose all the ONAP Swagger format API descriptions
- Don’t need to maintain an independent API Portal and API description documents – save money and time
- Keep the consistency of the API document with the source code
- Support multiple versions of APIs
- Always get the latest API documents of the current development branch which is generated by CI/CD automatically
- Provide self-service onboarding for developers
...