Files
URLShortener/k8s/base/ingress/ingress.yaml

55 lines
1.3 KiB
YAML

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: urlshortener-ingress
namespace: urlshortener
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
nginx.ingress.kubernetes.io/ssl-redirect: "true"
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
ingressClassName: nginx
tls:
- hosts:
- api.urlshortener.example.com
- short.urlshortener.example.com
secretName: urlshortener-tls
rules:
# API routes for shortener and auth services
- host: api.urlshortener.example.com
http:
paths:
- path: /api/shortener
pathType: Prefix
backend:
service:
name: shortener-service
port:
number: 8083
- path: /api/auth
pathType: Prefix
backend:
service:
name: auth-service
port:
number: 8080
- path: /api/analytics
pathType: Prefix
backend:
service:
name: analytics-service
port:
number: 8080
# Redirect service - handles short URL redirects
- host: short.urlshortener.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: redirect-service
port:
number: 8080