Bahmni distribution - Configurations
Shared Single Instance
This setup is more ideal for single facility e.g. Hospitals OR Multi-tenant SAAS setup (note: current Bahmni is not multi-tenant. There are future plans to leverage location concept in OpenMRS in order to achieve multi-tenancy i.e. using location for logical grouping of data in database to isolate various tenants).
Single Bahmni Instance
Shared node group
1 - * Nodes (depending on the scale)
Single shared database
Multiple Instance on Shared Resources
This setup leverages kubernetes namespace in order to support multiple bahmni instances on the shared infrastructure where every instance have their own Database. This is still single tenant but provides more opportunities to optimize cost by sharing resources. This is more ideal for setting up smaller hospitals or polyclinics in a given geography cluster. Note: scale up and down would impact all the instances. We leveraged this setup to support various development environments on shared infra such as dev, qa, demo etc.
Multiple Bahmni Instance (namespace)
Each instance with their own Database (same RDS)
Shared node group
1 - * Nodes (depending on the scale)
Multiple Instance on Shared & Dedicated Resources
This setup is very similar to above except it also allows allocating dedicated infrastructure resources to one or more instances. This gives more control to scale up or down one or more bahmni instances based on the needs. This may be ideal for supporting bigger facilities into their own nodegroup within a given geography cluster to allow independent scale (e.g. we leveraged this setup to isolate our performance test environment from other development environments).
Multiple Bahmni Instance (in multiple nodegroups)
Each instance with their own Database (shared RDS across nodegroups)
multiple node group
1 - * Nodes (depending on the scale) independently managed in various nodegorups
Setup
Infra
Follow the setup guide to provision the infrastructure. Take a note while creating the resources to decide on what configuration you would