Skip to content

Commit ca47acd

Browse files
committed
feat: add gravity to k8s
1 parent 04d1d68 commit ca47acd

6 files changed

Lines changed: 129 additions & 0 deletions

File tree

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
3+
apiVersion: kustomize.toolkit.fluxcd.io/v1
4+
kind: Kustomization
5+
metadata:
6+
name: &app gravity
7+
namespace: &ns networking
8+
spec:
9+
targetNamespace: *ns
10+
path: ./kubernetes/core/gravity/
11+
commonMetadata:
12+
labels:
13+
app.kubernetes.io/name: *app
14+
prune: true
15+
sourceRef:
16+
kind: GitRepository
17+
name: chkpwd-ops
18+
namespace: flux-system
19+
wait: false
20+
interval: 30m
21+
retryInterval: 1m
22+
timeout: 5m
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/gateway.networking.k8s.io/httproute_v1.json
3+
apiVersion: gateway.networking.k8s.io/v1
4+
kind: HTTPRoute
5+
metadata:
6+
name: gravity
7+
spec:
8+
hostnames: ["gravity-dns-03.chkpwd.com"]
9+
parentRefs:
10+
- name: private
11+
namespace: kube-system
12+
sectionName: https
13+
rules:
14+
- backendRefs:
15+
- name: gravity
16+
namespace: networking
17+
port: 8008
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
3+
apiVersion: kustomize.config.k8s.io/v1beta1
4+
kind: Kustomization
5+
resources:
6+
- sts.yml
7+
- svc.yml
8+
- http-route.yml

kubernetes/core/gravity/sts.yml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
---
2+
apiVersion: apps/v1
3+
kind: StatefulSet
4+
metadata:
5+
labels:
6+
app.kubernetes.io/name: gravity
7+
name: gravity
8+
spec:
9+
selector:
10+
matchLabels:
11+
app.kubernetes.io/name: gravity
12+
serviceName: "gravity"
13+
template:
14+
metadata:
15+
labels:
16+
app.kubernetes.io/name: gravity
17+
spec:
18+
hostname: gravity-dns-03
19+
containers:
20+
- name: gravity
21+
image: ghcr.io/beryju/gravity:v0.27.0
22+
env:
23+
- name: LISTEN_ONLY
24+
value: "true"
25+
- name: INSTANCE_LISTEN
26+
value: 0.0.0.0
27+
- name: INSTANCE_IP
28+
value: 172.16.16.17
29+
livenessProbe:
30+
httpGet:
31+
path: /healthz/live
32+
port: http-metrics
33+
readinessProbe:
34+
httpGet:
35+
path: /healthz/ready
36+
port: http-metrics
37+
ports:
38+
- containerPort: 53
39+
name: dns-tcp
40+
- containerPort: 53
41+
protocol: UDP
42+
name: dns-udp
43+
- containerPort: 67
44+
protocol: UDP
45+
name: dhcp
46+
- containerPort: 68
47+
protocol: UDP
48+
name: dhcp-alt
49+
- containerPort: 8008
50+
name: http
51+
- containerPort: 8009
52+
name: http-metrics
53+
volumeMounts:
54+
- name: data
55+
mountPath: /data
56+
volumeClaimTemplates:
57+
- metadata:
58+
name: data
59+
spec:
60+
resources:
61+
requests:
62+
storage: 10Gi
63+
accessModes:
64+
- ReadWriteOnce

kubernetes/core/gravity/svc.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
apiVersion: v1
3+
kind: Service
4+
metadata:
5+
name: gravity
6+
namespace: gravity
7+
spec:
8+
type: ClusterIP
9+
selector:
10+
app.kubernetes.io/name: gravity
11+
ports:
12+
- port: 8008
13+
name: http
14+
targetPort: 8008
15+
- port: 8009
16+
name: metrics
17+
targetPort: 8009

kubernetes/core/kustomization.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,4 @@ resources:
2929
- grafana-operator/flux-kustomization.yml
3030
- keda-operator/flux-kustomization.yml
3131
- blackbox-exporter/flux-kustomization.yml
32+
- gravity/flux-kustomization.yml

0 commit comments

Comments
 (0)