Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 25 additions & 15 deletions k8s/api-gateway.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,29 +14,39 @@ spec:
spec:
containers:
- name: api-gateway
image: frostbyte-api-gateway:latest
image: 600627355881.dkr.ecr.ap-south-1.amazonaws.com/valerix/api-gateway:latest
ports:
- containerPort: 3000
- containerPort: 8080

env:
- name: NETWORK_SERVICE_URL
value: http://network-service:3000
- name: PRODUCT_SERVICE_URL
value: http://product-service:3000
- name: DEMAND_SERVICE_URL
value: http://demand-service:3000
- name: VALIDATION_SERVICE_URL
value: http://validation-service:3000
- name: PORT
value: "3000"
- name: ORDER_SERVICE_URL
value: http://order-service:3001
- name: INVENTORY_SERVICE_URL
value: http://inventory-service:3002

livenessProbe:
httpGet:
path: /health
port: 8080
initialDelaySeconds: 20
periodSeconds: 10

readinessProbe:
httpGet:
path: /health
port: 8080
initialDelaySeconds: 10
periodSeconds: 5

---
apiVersion: v1
kind: Service
metadata:
name: api-gateway
spec:
type: ClusterIP
selector:
app: api-gateway
ports:
- port: 80
targetPort: 3000
type: ClusterIP
- port: 8080
targetPort: 8080
46 changes: 46 additions & 0 deletions k8s/frontend.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: frontend
spec:
replicas: 1
selector:
matchLabels:
app: frontend
template:
metadata:
labels:
app: frontend
spec:
containers:
- name: frontend
image: 600627355881.dkr.ecr.ap-south-1.amazonaws.com/valerix/frontend:latest
ports:
- containerPort: 80
env:
- name: VITE_API_GATEWAY_URL
value: "http://api-gateway:8080/api"
livenessProbe:
httpGet:
path: /
port: 80
initialDelaySeconds: 20
periodSeconds: 10
readinessProbe:
httpGet:
path: /
port: 80
initialDelaySeconds: 10
periodSeconds: 5
---
apiVersion: v1
kind: Service
metadata:
name: frontend
spec:
type: ClusterIP
selector:
app: frontend
ports:
- port: 80
targetPort: 80
32 changes: 19 additions & 13 deletions k8s/ingress.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,23 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: frostbyte-ingress
annotations:
kubernetes.io/ingress.class: nginx
name: valerix-ingress
spec:
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: network-service
port:
number: 80
ingressClassName: nginx
rules:
- http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: frontend
port:
number: 80
- path: /api
pathType: Prefix
backend:
service:
name: api-gateway
port:
number: 8080
38 changes: 38 additions & 0 deletions k8s/inventory-db.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: inventory-db
spec:
replicas: 1
selector:
matchLabels:
app: inventory-db
template:
metadata:
labels:
app: inventory-db
spec:
containers:
- name: postgres
image: postgres:15-alpine
env:
- name: POSTGRES_DB
value: inventory_db
- name: POSTGRES_USER
value: user
- name: POSTGRES_PASSWORD
value: password
ports:
- containerPort: 5432

---
apiVersion: v1
kind: Service
metadata:
name: inventory-db
spec:
type: ClusterIP
selector:
app: inventory-db
ports:
- port: 5432
71 changes: 71 additions & 0 deletions k8s/inventory-service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: inventory-service
spec:
replicas: 1
selector:
matchLabels:
app: inventory-service
template:
metadata:
labels:
app: inventory-service
spec:
containers:
- name: inventory-service
image: 600627355881.dkr.ecr.ap-south-1.amazonaws.com/valerix/inventory-service:latest
ports:
- containerPort: 3002

env:
- name: INVENTORY_DB_USER
valueFrom:
secretKeyRef:
name: db-secrets
key: INVENTORY_DB_USER

- name: INVENTORY_DB_PASSWORD
valueFrom:
secretKeyRef:
name: db-secrets
key: INVENTORY_DB_PASSWORD

- name: INVENTORY_DB_NAME
valueFrom:
secretKeyRef:
name: db-secrets
key: INVENTORY_DB_NAME

- name: DATABASE_URL
value: postgresql://$(INVENTORY_DB_USER):$(INVENTORY_DB_PASSWORD)@inventory-db:5432/$(INVENTORY_DB_NAME)

- name: RABBITMQ_URL
value: "amqp://user:password@rabbitmq:5672"

livenessProbe:
httpGet:
path: /health
port: 3002
initialDelaySeconds: 20
periodSeconds: 10

readinessProbe:
httpGet:
path: /health
port: 3002
initialDelaySeconds: 10
periodSeconds: 5

---
apiVersion: v1
kind: Service
metadata:
name: inventory-service
spec:
type: ClusterIP
selector:
app: inventory-service
ports:
- port: 3002
targetPort: 3002
Empty file removed k8s/inventory.yaml
Empty file.
Empty file removed k8s/monitoring.yaml
Empty file.
38 changes: 38 additions & 0 deletions k8s/order-db.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: order-db
spec:
replicas: 1
selector:
matchLabels:
app: order-db
template:
metadata:
labels:
app: order-db
spec:
containers:
- name: postgres
image: postgres:15-alpine
env:
- name: POSTGRES_DB
value: order_db
- name: POSTGRES_USER
value: user
- name: POSTGRES_PASSWORD
value: password
ports:
- containerPort: 5432

---
apiVersion: v1
kind: Service
metadata:
name: order-db
spec:
type: ClusterIP
selector:
app: order-db
ports:
- port: 5432
77 changes: 77 additions & 0 deletions k8s/order-service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: order-service
spec:
replicas: 1
selector:
matchLabels:
app: order-service
template:
metadata:
labels:
app: order-service
spec:
containers:
- name: order-service
image: 600627355881.dkr.ecr.ap-south-1.amazonaws.com/valerix/order-service:latest
ports:
- containerPort: 3001

env:
- name: ORDER_DB_USER
valueFrom:
secretKeyRef:
name: db-secrets
key: ORDER_DB_USER

- name: ORDER_DB_PASSWORD
valueFrom:
secretKeyRef:
name: db-secrets
key: ORDER_DB_PASSWORD

- name: ORDER_DB_NAME
valueFrom:
secretKeyRef:
name: db-secrets
key: ORDER_DB_NAME

- name: DATABASE_URL
value: postgresql://$(ORDER_DB_USER):$(ORDER_DB_PASSWORD)@order-db:5432/$(ORDER_DB_NAME)

- name: INVENTORY_SERVICE_URL
value: "http://inventory-service:3002"

- name: RABBITMQ_URL
value: "amqp://user:password@rabbitmq:5672"

- name: PORT
value: "3001"

livenessProbe:
httpGet:
path: /health
port: 3001
initialDelaySeconds: 20
periodSeconds: 10

readinessProbe:
httpGet:
path: /health
port: 3001
initialDelaySeconds: 10
periodSeconds: 5

---
apiVersion: v1
kind: Service
metadata:
name: order-service
spec:
type: ClusterIP
selector:
app: order-service
ports:
- port: 3001
targetPort: 3001
Empty file removed k8s/order.yml
Empty file.
Loading