From ec3ceebf03c7a584de0c3c687753490da4752377 Mon Sep 17 00:00:00 2001 From: Reshma Date: Fri, 9 Jan 2026 15:05:10 -0500 Subject: [PATCH 01/13] Added Liveness Probe and Readiness Probe --- manifests/kubernetes/metadata-service.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/manifests/kubernetes/metadata-service.yaml b/manifests/kubernetes/metadata-service.yaml index 972e241..6b93f07 100644 --- a/manifests/kubernetes/metadata-service.yaml +++ b/manifests/kubernetes/metadata-service.yaml @@ -43,6 +43,20 @@ spec: image: manojmdocker14/microforge-metadata-service:v1.1.0 ports: - containerPort: 8084 + readinessProbe: + httpGet: + path: /api/metadata/health + port: 8084 + initialDelaySeconds: 45 + periodSeconds: 20 + timeoutSeconds: 5 + livenessProbe: + httpGet: + path: /api/metadata/health + port: 8084 + initialDelaySeconds: 45 + periodSeconds: 10 + timeoutSeconds: 5 envFrom: - configMapRef: name: metadata-service-config From 62cbcba0b9979f450e87690c6955c23d7fe60813 Mon Sep 17 00:00:00 2001 From: Reshma Date: Fri, 9 Jan 2026 15:07:34 -0500 Subject: [PATCH 02/13] Added Liveness Probe and Readiness Probe --- manifests/kubernetes/auth-service.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/manifests/kubernetes/auth-service.yaml b/manifests/kubernetes/auth-service.yaml index 248cec2..7bcf251 100644 --- a/manifests/kubernetes/auth-service.yaml +++ b/manifests/kubernetes/auth-service.yaml @@ -42,6 +42,20 @@ spec: image: manojmdocker14/microforge-auth-service:v1.1.0 ports: - containerPort: 8082 + livenessProbe: + httpGet: + path: /api/auth/health + port: 8082 + initialDelaySeconds: 45 + periodSeconds: 20 + timeoutSeconds: 10 + readinessProbe: + httpGet: + path: /api/auth/health + port: 8082 + initialDelaySeconds: 15 + periodSeconds: 10 + timeoutSeconds: 5 envFrom: - configMapRef: name: auth-service-config From 30d3a2241c84dbd55c91ab5c18d6d7daee3d3272 Mon Sep 17 00:00:00 2001 From: Reshma Date: Fri, 9 Jan 2026 15:08:39 -0500 Subject: [PATCH 03/13] Added Liveness Probe and Readiness Probe --- manifests/kubernetes/login-mysql.yaml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/manifests/kubernetes/login-mysql.yaml b/manifests/kubernetes/login-mysql.yaml index dd25f42..f8ca7b9 100644 --- a/manifests/kubernetes/login-mysql.yaml +++ b/manifests/kubernetes/login-mysql.yaml @@ -43,6 +43,32 @@ spec: image: manojmdocker14/microforge-users-mysql:v1.0.0 ports: - containerPort: 3306 + startupProbe: + exec: + command: + - bash + - "-c" + - "mysqladmin ping -u root -p${MYSQL_ROOT_PASSWORD}" + failureThreshold: 30 + periodSeconds: 10 + timeoutSeconds: 5 + livenessProbe: + exec: + command: + - bash + - "-c" + - "mysqladmin ping -u root -p${MYSQL_ROOT_PASSWORD}" + periodSeconds: 20 + timeoutSeconds: 5 + readinessProbe: + exec: + command: + - bash + - "-c" + - "mysql -u root -p${MYSQL_ROOT_PASSWORD} -e 'SELECT 1;'" + initialDelaySeconds: 5 + periodSeconds: 10 + timeoutSeconds: 5 envFrom: - configMapRef: name: login-mysql-config From 7d9a4cf39341f59eed408df4056e9f8b616dbc2d Mon Sep 17 00:00:00 2001 From: Reshma Date: Fri, 9 Jan 2026 15:09:31 -0500 Subject: [PATCH 04/13] Added Liveness Probe and Readiness Probe --- manifests/kubernetes/notification-mysql.yaml | 26 ++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/manifests/kubernetes/notification-mysql.yaml b/manifests/kubernetes/notification-mysql.yaml index 8602fc4..f98b4e2 100644 --- a/manifests/kubernetes/notification-mysql.yaml +++ b/manifests/kubernetes/notification-mysql.yaml @@ -43,6 +43,32 @@ spec: image: manojmdocker14/microforge-notifications-mysql:v1.0.0 ports: - containerPort: 3306 + startupProbe: + exec: + command: + - bash + - "-c" + - "mysqladmin ping -u root -p$MYSQL_ROOT_PASSWORD" + initialDelaySeconds: 15 # Wait 15s before starting the first check + periodSeconds: 10 # Check every 10s + failureThreshold: 30 # Allow 30 failures (Total 5 minutes of boot time) + livenessProbe: + exec: + command: + - bash + - "-c" + - "mysqladmin ping -u root -p$MYSQL_ROOT_PASSWORD" + periodSeconds: 20 + timeoutSeconds: 5 + readinessProbe: + exec: + command: + - bash + - "-c" + - "mysql -u root -p$MYSQL_ROOT_PASSWORD -e 'SELECT 1;'" + initialDelaySeconds: 5 + periodSeconds: 10 + timeoutSeconds: 10 envFrom: - configMapRef: name: notification-mysql-config From cc0e06a515b2d98ec090491377e0b79011769467 Mon Sep 17 00:00:00 2001 From: Reshma Date: Fri, 9 Jan 2026 15:10:09 -0500 Subject: [PATCH 05/13] Added Liveness Probe and Readiness Probe --- manifests/kubernetes/notification-service.yaml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/manifests/kubernetes/notification-service.yaml b/manifests/kubernetes/notification-service.yaml index 7751bbe..110619c 100644 --- a/manifests/kubernetes/notification-service.yaml +++ b/manifests/kubernetes/notification-service.yaml @@ -45,6 +45,20 @@ spec: image: manojmdocker14/microforge-notification-service:v1.1.0 ports: - containerPort: 8083 + livenessProbe: + httpGet: + path: /actuator/health + port: 8083 + initialDelaySeconds: 45 # Increased for DB connection setup + periodSeconds: 20 + timeoutSeconds: 10 + readinessProbe: + httpGet: + path: /actuator/health + port: 8083 + initialDelaySeconds: 20 + periodSeconds: 10 + timeoutSeconds: 5 env: - name: MYSQL_HOST value: notification-mysql From 956d69d187de22a38a06c6fff6b58846801485ef Mon Sep 17 00:00:00 2001 From: Reshma Date: Sat, 10 Jan 2026 14:41:59 -0500 Subject: [PATCH 06/13] Updated health check for Authentication Service and Metadata Service --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9455f37..8afb011 100644 --- a/README.md +++ b/README.md @@ -148,7 +148,7 @@ kubectl get pods -n microforge-dev-ns ### **Authentication Service (Go - Port 8082)** ```http -GET /api/health # Health check +GET /api/auth/health # Health check POST /api/validate # JWT token validation GET /api/verify/:token # Token verification GET /api/protected/profile # Protected user profile @@ -164,7 +164,7 @@ GET /api/users # User management ### **Metadata Service (Python - Port 8084)** ```http -GET /api/health # Health check +GET /api/metadata/health # Health check GET /api/metadata/instance # System instance metadata GET /api/metadata/deployment # Deployment information POST /api/stress/start # Performance stress testing From 527bcb04947e8078f9d8c61f20e92ab622cb5f64 Mon Sep 17 00:00:00 2001 From: Reshma Date: Sat, 10 Jan 2026 14:54:53 -0500 Subject: [PATCH 07/13] Added labels, modified container image,added rolling update --- manifests/kubernetes/login-service.yaml | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/manifests/kubernetes/login-service.yaml b/manifests/kubernetes/login-service.yaml index 7a6e76a..683b72c 100644 --- a/manifests/kubernetes/login-service.yaml +++ b/manifests/kubernetes/login-service.yaml @@ -15,6 +15,8 @@ kind: Service metadata: name: login-service namespace: microforge-dev-ns + labels: + app: login-service spec: selector: app: login-service @@ -33,6 +35,11 @@ metadata: app: login-service spec: replicas: 1 + strategy: + type: RollingUpdate + rollingUpdate: + maxSurge: 1 + maxUnavailable: 0 selector: matchLabels: app: login-service @@ -43,9 +50,23 @@ spec: spec: containers: - name: login-service - image: manojmdocker14/microforge-login-service:v1.2.0 + image: manojmdocker14/microforge-login-service:v1.1.0 ports: - containerPort: 8081 + livenessProbe: + httpGet: + path: /actuator/health + port: 8081 + initialDelaySeconds: 70 + periodSeconds: 20 + timeoutSeconds: 10 + readinessProbe: + httpGet: + path: /actuator/health + port: 8081 + initialDelaySeconds: 30 + periodSeconds: 10 + timeoutSeconds: 5 env: - name: DB_HOST value: login-mysql From 27064acd4fc672ffc052deaac18fc276db7af265 Mon Sep 17 00:00:00 2001 From: Reshma Date: Sat, 10 Jan 2026 14:56:38 -0500 Subject: [PATCH 08/13] Added Rolling updatae --- manifests/kubernetes/login-mysql.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/manifests/kubernetes/login-mysql.yaml b/manifests/kubernetes/login-mysql.yaml index f8ca7b9..6ef9449 100644 --- a/manifests/kubernetes/login-mysql.yaml +++ b/manifests/kubernetes/login-mysql.yaml @@ -30,6 +30,11 @@ metadata: app: login-mysql spec: replicas: 1 + strategy: + type: RollingUpdate + rollingUpdate: + maxSurge: 1 + maxUnavailable: 0 selector: matchLabels: app: login-mysql From a47dc16535fcc0088655d50afef29444e014c661 Mon Sep 17 00:00:00 2001 From: Reshma Date: Sat, 10 Jan 2026 14:57:20 -0500 Subject: [PATCH 09/13] Added Rolling updatae --- manifests/kubernetes/notification-service.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/manifests/kubernetes/notification-service.yaml b/manifests/kubernetes/notification-service.yaml index 110619c..6223b81 100644 --- a/manifests/kubernetes/notification-service.yaml +++ b/manifests/kubernetes/notification-service.yaml @@ -32,6 +32,11 @@ metadata: app: notification-service spec: replicas: 1 + strategy: + type: RollingUpdate + rollingUpdate: + maxSurge: 1 + maxUnavailable: 0 selector: matchLabels: app: notification-service From 977c303e44613d9cb5d45157915e24e1d16decdf Mon Sep 17 00:00:00 2001 From: Reshma Date: Sat, 10 Jan 2026 14:57:52 -0500 Subject: [PATCH 10/13] Added Rolling updatae --- manifests/kubernetes/notification-mysql.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/manifests/kubernetes/notification-mysql.yaml b/manifests/kubernetes/notification-mysql.yaml index f98b4e2..bc6b677 100644 --- a/manifests/kubernetes/notification-mysql.yaml +++ b/manifests/kubernetes/notification-mysql.yaml @@ -30,6 +30,11 @@ metadata: app: notification-mysql spec: replicas: 1 + strategy: + type: RollingUpdate + rollingUpdate: + maxSurge: 1 + maxUnavailable: 0 selector: matchLabels: app: notification-mysql From 05306485ec621025825886d64b441d81a53be533 Mon Sep 17 00:00:00 2001 From: Reshma Date: Sat, 10 Jan 2026 14:58:56 -0500 Subject: [PATCH 11/13] Added Rolling updatae and replica --- manifests/kubernetes/auth-service.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/manifests/kubernetes/auth-service.yaml b/manifests/kubernetes/auth-service.yaml index 7bcf251..d6fc781 100644 --- a/manifests/kubernetes/auth-service.yaml +++ b/manifests/kubernetes/auth-service.yaml @@ -29,6 +29,12 @@ metadata: labels: app: auth-service spec: + replicas: 1 + strategy: + type: RollingUpdate + rollingUpdate: + maxSurge: 1 + maxUnavailable: 0 selector: matchLabels: app: auth-service From 950d20405fd4079e0a52407904e4363004995f88 Mon Sep 17 00:00:00 2001 From: Reshma Date: Sat, 10 Jan 2026 14:59:39 -0500 Subject: [PATCH 12/13] Added Rolling updatae and replica --- manifests/kubernetes/metadata-service.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/manifests/kubernetes/metadata-service.yaml b/manifests/kubernetes/metadata-service.yaml index 6b93f07..aeb9b74 100644 --- a/manifests/kubernetes/metadata-service.yaml +++ b/manifests/kubernetes/metadata-service.yaml @@ -30,6 +30,12 @@ metadata: labels: app: metadata-service spec: + replicas: 1 + strategy: + type: RollingUpdate + rollingUpdate: + maxSurge: 1 + maxUnavailable: 0 selector: matchLabels: app: metadata-service From f0e9299d24902958b34e6a3cc30ed8dc4445f0c3 Mon Sep 17 00:00:00 2001 From: Reshma Date: Sun, 11 Jan 2026 17:12:39 -0500 Subject: [PATCH 13/13] Changed the version back to V1.2.0 --- manifests/kubernetes/login-service.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifests/kubernetes/login-service.yaml b/manifests/kubernetes/login-service.yaml index 683b72c..a270e76 100644 --- a/manifests/kubernetes/login-service.yaml +++ b/manifests/kubernetes/login-service.yaml @@ -50,7 +50,7 @@ spec: spec: containers: - name: login-service - image: manojmdocker14/microforge-login-service:v1.1.0 + image: manojmdocker14/microforge-login-service:v1.2.0 ports: - containerPort: 8081 livenessProbe: