A demo application with a three-tier architecture (Frontend → Backend → Database) designed to:
- Show the capabilities of the cloud platform
- Demonstrate how Network Policies work
- Example of integration with Dex authentication system
- Testing the interaction of components in a virtualized environment
- Project: demo-db
- Database
- VM:
db(PostgreSQL)
- VM:
- Database
- Project: demo-app
- Frontend
- VM:
frontend(Bootstrap app) - Pod:
frontend(Bootstrap app)
- VM:
- Backend
- VM:
backend-a(Flask + Gunicorn) - VM:
backend-b(Flask + Gunicorn)
- VM:
- Frontend
Component interaction is restricted by network policies. Application access requires authentication via Dex.
| User | Role | Access Rights |
|---|---|---|
demo-user@flant.com |
Application User | Access via web interface |
demo-db-admin@flant.com |
Project Administrator demo-db |
Full VM access with PostgreSQL |
demo-app-admin@flant.com |
Project Administrator demo-app |
Management of all application components |
Translated with DeepL.com (free version)
/apps- Frontend and backend source code/k8s- Kubernetes deployment manifests
Make sure you install the following packages:
Ensure the following d8 modules are enabled and configured:
admission-policy-enginecni-ciliumconsolemultitenancy-managerservice-with-healthchecksuser-authnvirtualization
- Create a
.envfile with infrastructure settings:
STORAGE_CLASS=linstor-thin-r1
PASSWORD=password
FQDN=demo.example.com- Genereate ssh key to access VMs via ssh
task ssh-gen- Install APP
task deploy- Uninstall APP
task undeployVia SSH
d8 v ssh -n demo-app cloud@<vmname> -i ./tmp/demo --local-sshVia console
d8 v console -n demo-app <vmname>