01
Stage 1 – User Login and Access
Process
The employee or procurement staff logs into the Procurement Management Application to access purchasing functions.
Tools
Keycloak
Kubernetes
PostgreSQL
Implementation
The user submits login credentials to the application. Keycloak authenticates the user and provides an access token. The application verifies the user's role and permissions before allowing access to procurement functions.
02
Stage 2 – Purchase Request
Process
The employee creates a purchase request for required goods or services.
Tools
Docker
Kubernetes
PostgreSQL
Implementation
The user enters item details, quantity, and requirement information. The containerized application processes the request and stores the purchase request in PostgreSQL.
03
Stage 3 – Request Approval
Process
The manager reviews and approves or rejects the purchase request.
Tools
Kubernetes
PostgreSQL
Keycloak
Implementation
The manager accesses the pending request based on their role. After approval or rejection, the application updates the request status and stores the decision in PostgreSQL.
04
Stage 4 – Supplier and Purchase Order
Process
The procurement team selects a supplier and creates a purchase order for the approved request.
Tools
Kubernetes
PostgreSQL
Helm
Implementation
The procurement team selects the appropriate supplier and enters product, quantity, and price details. The application generates the purchase order and stores it in PostgreSQL.
05
Stage 5 – Persistent Storage
Process
The application permanently stores procurement data so that it is not lost when containers or Pods restart.
Tools
Kubernetes
Persistent Volume (PV)
Persistent Volume Claim (PVC)
PostgreSQL
Cloud EBS
Implementation
A PVC requests storage for PostgreSQL, and Kubernetes binds it to a Persistent Volume. The PV uses EBS storage, allowing purchase requests, supplier details, purchase orders, and delivery records to remain available after Pod restart or recreation.
06
Stage 6 – Delivery and Data Update
Process
The procurement team records the delivery and verifies the received items.
Tools
Kubernetes
PostgreSQL
Persistent Storage
Implementation
After receiving the goods, the team updates the delivery status in the application. The updated information is stored in PostgreSQL on persistent storage and remains available for future reference.
07
Stage 7 – Monitoring and Recovery
Process
The application, Kubernetes Pods, database, and storage are monitored to ensure availability and reliable operation.
Tools
Prometheus
Grafana
Kubernetes
Implementation
Prometheus collects application and Kubernetes metrics, while Grafana displays them through dashboards. Pod failures are tested to verify Kubernetes recovery and confirm that procurement data remains available through persistent storage.