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-engine
cni-cilium
console
multitenancy-manager
service-with-healthchecks
user-authn
virtualization
- Create a
.env
file 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 undeploy
Via SSH
d8 v ssh -n demo-app cloud@<vmname> -i ./tmp/demo --local-ssh
Via console
d8 v console -n demo-app <vmname>