Kiuwan on premises is based on a client-server architecture that includes these major server components:
- Apache web server
- Wildfly application server
- MySQL database
- Redis in-memory data store
Kiuwan on premises can be deployed on a number of decentralized servers, depending on your necessities and accessed by users via HTTPS website.
By default, all needed services will be installed in the same host. For custom distributed installations please refer to ******.
Supplied services
All needed services are supplied as Docker containers. The following table summarizes all the available services:
Image | Provider | Default number of containers |
---|---|---|
kiuwan/apacheloadbalancer | Kiuwan | 1 |
kiuwan/wildflykiuwan | Kiuwan | 3 |
kiuwan/updaterkiuwan | Kiuwan | 1 (temporal) |
mysql:5.7.27 | Docker Official Images | 1 |
redis:5.0.5 | Docker Official Images | 6 + 1 (temporal) |
The following diagram shows the infrastructure that KoP installer will create by default:
*******
The main purpose of each container is:
- loadbalancer: an Apache instance that balances the traffic between Kiuwan frontals (kept in the default installation to allow easy frontal scaling).
- wildfly-f1: a Kiuwan frontal. Receives and answers HTTPS requests.
- wildfly-a1: a Kiuwan analyzer. Processes analysis results asynchronously.
- wildfly-s1: a Kiuwan scheduler. Processes background tasks as notifications and Insights database upgrades.
- mysql: the main Kiuwan database.
- redis_0000[n]: redis store nodes. Used by Kiuwan as a data cache.
- clustercreator: a temporal redis container that configures each Redis node as a cluster.
- updater: a temporal Kiuwan instance that installs, updates and upgrades needed data or configuration.