Skip to content

Commit 2da0e95

Browse files
committed
add traefik and simplifies helm chart
1 parent 0f658a3 commit 2da0e95

5 files changed

Lines changed: 33 additions & 89 deletions

File tree

deployments/model-serving/templates/_helpers.tpl

Lines changed: 0 additions & 51 deletions
This file was deleted.

deployments/model-serving/templates/deployment.yaml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,26 @@
11
apiVersion: apps/v1
22
kind: Deployment
33
metadata:
4-
name: {{ include "{{ .Chart.Name }}.fullname" . }}
4+
name: {{ .Release.Name }}-{{ .Chart.Name }}
5+
namespace: {{ .Release.Namespace }}
56
labels:
6-
{{- include "{{ .Chart.Name }}.labels" . | nindent 4 }}
7+
app.kubernetes.io/name: {{ .Chart.Name }}
8+
app.kubernetes.io/instance: {{ .Release.Name }}
79
spec:
810
replicas: {{ .Values.replicaCount }}
911
selector:
1012
matchLabels:
11-
{{- include "{{ .Chart.Name }}.selectorLabels" . | nindent 6 }}
13+
app.kubernetes.io/name: {{ .Chart.Name }}
14+
app.kubernetes.io/instance: {{ .Release.Name }}
1215
template:
1316
metadata:
1417
annotations:
1518
{{- with .Values.podAnnotations }}
1619
{{- toYaml . | nindent 8 }}
1720
{{- end }}
1821
labels:
19-
{{- include "{{ .Chart.Name }}.selectorLabels" . | nindent 8 }}
22+
app.kubernetes.io/name: {{ .Chart.Name }}
23+
app.kubernetes.io/instance: {{ .Release.Name }}
2024
spec:
2125
containers:
2226
- name: {{ .Chart.Name }}
Lines changed: 14 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,21 @@
11
{{- if .Values.ingress.enabled -}}
2-
apiVersion: networking.k8s.io/v1
3-
kind: Ingress
2+
apiVersion: traefik.io/v1alpha1
3+
kind: IngressRoute
44
metadata:
5-
name: {{ include "{{ .Chart.Name }}.fullname" . }}
5+
name: {{ .Release.Name }}-{{ .Chart.Name }}
6+
namespace: {{ .Release.Namespace }}
67
labels:
7-
{{- include "{{ .Chart.Name }}.labels" . | nindent 4 }}
8-
{{- with .Values.ingress.annotations }}
9-
annotations:
10-
{{- toYaml . | nindent 8 }}
11-
{{- end }}
8+
app.kubernetes.io/name: {{ .Chart.Name }}
9+
app.kubernetes.io/instance: {{ .Release.Name }}
1210
spec:
13-
rules:
11+
entryPoints:
12+
{{- toYaml .Values.ingress.entryPoints | nindent 4 }}
13+
routes:
1414
{{- range .Values.ingress.hosts }}
15-
- host: {{ .host | quote }}
16-
http:
17-
paths:
18-
{{- range .paths }}
19-
- path: {{ .path }}
20-
pathType: {{ .pathType }}
21-
backend:
22-
service:
23-
name: {{ include "{{ .Chart.Name }}.fullname" $ }}
24-
port:
25-
name: http
26-
{{- end }}
15+
- match: Host(`{{ .host }}`) && PathPrefix(`/`)
16+
kind: Rule
17+
services:
18+
- name: {{ $.Release.Name }}-{{ $.Chart.Name }}
19+
port: {{ $.Values.service.port }}
2720
{{- end }}
2821
{{- end }}

deployments/model-serving/templates/service.yaml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
apiVersion: v1
22
kind: Service
33
metadata:
4-
name: {{ include "{{ .Chart.Name }}.fullname" . }}
4+
name: {{ .Release.Name }}-{{ .Chart.Name }}
5+
namespace: {{ .Release.Namespace }}
56
labels:
6-
{{- include "{{ .Chart.Name }}.labels" . | nindent 4 }}
7+
app.kubernetes.io/name: {{ .Chart.Name }}
8+
app.kubernetes.io/instance: {{ .Release.Name }}
79
spec:
810
type: {{ .Values.service.type }}
911
ports:
@@ -16,4 +18,5 @@ spec:
1618
protocol: TCP
1719
name: http-metrics
1820
selector:
19-
{{- include "{{ .Chart.Name }}.selectorLabels" . | nindent 4 }}
21+
app.kubernetes.io/name: {{ .Chart.Name }}
22+
app.kubernetes.io/instance: {{ .Release.Name }}

deployments/model-serving/values.yaml

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ image:
55
pullPolicy: IfNotPresent
66
imagePullSecrets: []
77
service:
8-
type: LoadBalancer
8+
type: ClusterIP
99
port: 8000
1010
env:
1111
- name: MODEL_PATH
@@ -16,16 +16,11 @@ env:
1616
value: "fraud-detection-api"
1717
# Ingress configuration
1818
ingress:
19-
enabled: false
20-
annotations:
21-
# This tells Kubernetes which ingress controller to use.
22-
# For Traefik, this is a common annotation.
23-
kubernetes.io/ingress.class: "traefik"
19+
enabled: true
20+
entryPoints:
21+
- websecure
2422
hosts:
25-
- host: "fraud-api.your-domain.com" #<-- The public URL for your app
26-
paths:
27-
- path: /
28-
pathType: Prefix
23+
- host: "fraud.home.phuchoang.sbs"
2924
podAnnotations:
3025
# -- Add annotations for Prometheus to scrape metrics
3126
prometheus.io/scrape: "true"

0 commit comments

Comments
 (0)