Portworx Central on-premises is a graphical user interface that allows you to monitor and manage your Portworx clusters. With Portworx Central on-premises, you can do the following:
- Monitor your clusters using built-in dashboards
- Add and manage Portworx licenses through the license server
- View and manage your volumes
- Take snapshots
Portworx Central architecture
Portworx Central components
The on-premises Portworx Central application includes the following components:
- Application gateway
- OIDC server
- Backend service
- Middleware service
The Portworx Central on-premises application contains multiple services running in it. Using the Nginx reverse proxy mechanism, more than one service in the application gateway needs to be exposed on an external network. All these services listen on HTTP or HTTPS (allowing reachability through reverse proxy).
The OIDC server manages the identity of users, groups, and roles of a user. Portworx Central uses Keycloak as a SSO server to enable user authorization. Keycloak also uses portgres as a datastore. This token is passed to other micro-services that need to authorize the user.
The backend service is a Laravel PHP based service. This service manages active users and clusters added on Lighthouse. When using stateless micro-services, the Portworx Central architecture requires some states be saved at a user level or global level. The backend service provides an option to save states at a user level or global level by making use of a MySQL database.
The middleware service is a connector service used to interface multiple microservices and third party services to the UI. The middleware does not authorize any API, it passes the token information to the corresponding services, and authorization happens directly at the provider service. The middleware service also provides a common data interface for error or success messages, paginated responses, pagination services, and so on.