Skip to content

Commit 938bb8a

Browse files
committed
upd sdx-edge chart
1 parent fae42a6 commit 938bb8a

File tree

8 files changed

+215
-51
lines changed

8 files changed

+215
-51
lines changed

sdx/chart/sdx-edge/templates/deployment.yaml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ spec:
2626
kuma.io/gateway: "enabled"
2727
traffic.sidecar.istio.io/includeInboundPorts: ""
2828
labels:
29+
DataClass: Medium
2930
app.kubernetes.io/name: sdx-edge
3031
app.kubernetes.io/component: app
3132
app.kubernetes.io/instance: "{{ include "sdx-edge.fullname" . }}"
@@ -84,6 +85,8 @@ spec:
8485
value: "{{- if .Values.mtls_required }}3{{- else }}1{{- end }}"
8586
- name: KONG_PROXY_ACCESS_LOG
8687
value: "off"
88+
- name: KONG_PROXY_LISTEN
89+
value: 0.0.0.0:8000, [::]:8000, 0.0.0.0:8443 http2 ssl, [::]:8443 http2 ssl, 0.0.0.0:3443 http2 ssl
8790
lifecycle:
8891
preStop:
8992
exec:
@@ -116,6 +119,8 @@ spec:
116119
mountPath: /etc/secrets/sdx-edge-cluster-cert
117120
- name: sdx-edge-client-cert
118121
mountPath: /etc/secrets/kong-upstream-jwt
122+
- name: sdx-public-ca
123+
mountPath: /etc/secrets/sdx-public-ca
119124
- name: sdx-edge-ca
120125
mountPath: /etc/secrets/sdx-edge-ca
121126
- name: kong-nginx-proxy-include
@@ -162,6 +167,9 @@ spec:
162167
- name: sdx-edge-server-cert
163168
secret:
164169
secretName: {{ include "sdx-edge.fullname" . }}-server
170+
- name: sdx-public-ca
171+
secret:
172+
secretName: sdx-public-ca
165173
- name: sdx-edge-ca
166174
secret:
167175
secretName: sdx-edge-ca

sdx/chart/sdx-edge/templates/fluentbit.yaml

Lines changed: 36 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ spec:
1818
metadata:
1919
creationTimestamp: null
2020
labels:
21+
DataClass: Low
2122
app.kubernetes.io/name: fluentbit
2223
app.kubernetes.io/component: app
2324
app.kubernetes.io/instance: "{{ include "sdx-edge.fullname" . }}"
@@ -74,15 +75,28 @@ spec:
7475
readOnly: true
7576
mountPath: /fb/parsers.conf
7677
subPath: parsers.conf
78+
- name: sdx-edge-client-cert
79+
mountPath: /etc/secrets/sdx-edge-client-cert
80+
- name: sdx-ca
81+
mountPath: /etc/secrets/sdx-ca
82+
83+
7784
terminationMessagePolicy: File
78-
image: 'cr.fluentbit.io/fluent/fluent-bit:3.2.1'
85+
image: 'docker.io/fluent/fluent-bit:4.1.1'
7986
args:
8087
- '--config=/fb/fluentbit.yaml'
8188
volumes:
8289
- name: config-vol
8390
configMap:
8491
name: sdx-fluentbit-config
8592
defaultMode: 420
93+
- name: sdx-edge-client-cert
94+
secret:
95+
secretName: {{ include "sdx-edge.fullname" . }}-client
96+
- name: sdx-ca
97+
secret:
98+
secretName: sdx-edge-ca
99+
86100
dnsPolicy: ClusterFirst
87101
strategy:
88102
type: RollingUpdate
@@ -116,20 +130,31 @@ data:
116130
buffer_max_size: 20M
117131
mem_buf_limit: 100MB
118132
119-
- name: fluentbit_metrics
120-
tag: internal_metrics
121-
scrape_interval: 2
133+
# - name: fluentbit_metrics
134+
# tag: internal_metrics
135+
# scrape_interval: 2
122136
123137
outputs:
124-
- name: stdout
125-
match: "*"
126-
format: json_lines
138+
# - name: stdout
139+
# match: "*"
140+
# format: json_lines
127141
128-
- name: prometheus_exporter
129-
match: internal_metrics
130-
host: 0.0.0.0
131-
port: 2021
142+
# - name: prometheus_exporter
143+
# match: internal_metrics
144+
# host: 0.0.0.0
145+
# port: 2021
132146
147+
- name: http
148+
match: "*"
149+
host: gwaggregator-api-gov-bc-ca-lab.dev.api.gov.bc.ca
150+
port: 443
151+
tls.vhost: gwaggregator-api-gov-bc-ca-lab.dev.api.gov.bc.ca
152+
format: json
153+
tls: on
154+
tls.verify: off
155+
tls.ca_file: /etc/secrets/sdx-ca/ca.crt
156+
tls.crt_file: /etc/secrets/sdx-edge-client-cert/tls.crt
157+
tls.key_file: /etc/secrets/sdx-edge-client-cert/tls.key
133158
134159
parsers.conf: |-
135160
[MULTILINE_PARSER]

sdx/chart/sdx-edge/templates/job-cert-bootstrap.yaml

Lines changed: 33 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,11 @@ spec:
1818
ttlSecondsAfterFinished: 604800 # 7 days
1919
template:
2020
metadata:
21-
creationTimestamp: null
21+
labels:
22+
DataClass: Low
23+
app.kubernetes.io/name: job-cert-bootstrap
24+
app.kubernetes.io/instance: "{{ include "sdx-edge.fullname" . }}"
25+
data-plane: "{{ include "sdx-edge.fullname" . }}"
2226
spec:
2327
restartPolicy: Never
2428
serviceAccountName: sdx-job-cert-bootstrap
@@ -33,7 +37,7 @@ spec:
3337
name: cert-bootstrap
3438
command:
3539
- /bin/bash
36-
- +x
40+
- -x
3741
- -e
3842
- -c
3943
- |-
@@ -42,33 +46,58 @@ spec:
4246
4347
step certificate create \
4448
--no-password --insecure \
49+
--san ${CN} --san ${IP} \
4550
--csr ${CN} tls.csr tls.key
4651
4752
TOKEN=$(cat /etc/secrets/sdx-edge-bootstrap-token/token)
4853
54+
curl -kLO "${CLIENT_CA_URL}/roots.pem"
55+
4956
step ca sign \
5057
--ca-url $CLIENT_CA_URL \
51-
--root /etc/secrets/sdx-edge-ca/ca.crt \
58+
--root ./roots.pem \
5259
--force --token $TOKEN tls.csr tls.crt
5360
5461
curl -sLO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
5562
chmod +x kubectl
5663
64+
kubectl delete secret ${EDGE_NAME}-client || true
65+
kubectl delete secret ${EDGE_NAME}-server || true
66+
5767
kubectl create secret \
5868
--save-config --dry-run=client -o yaml \
5969
tls ${EDGE_NAME}-client \
6070
--cert=./tls.crt \
6171
--key=./tls.key | kubectl apply -f -
6272
73+
kubectl create secret \
74+
--save-config --dry-run=client -o yaml \
75+
tls ${EDGE_NAME}-server \
76+
--cert=./tls.crt \
77+
--key=./tls.key | kubectl apply -f -
78+
79+
{{- if .Values.shared.ca_secret }}
80+
81+
kubectl create secret \
82+
--save-config --dry-run=client -o yaml \
83+
generic sdx-edge-ca \
84+
--from-file=ca.crt=./roots.pem | kubectl apply -f -
85+
{{- end }}
6386
kubectl rollout restart deployment $EDGE_NAME
6487

6588
env:
6689
- name: CN
6790
value: "{{ .Values.tls.client.cn }}"
91+
- name: IP
92+
value: "{{ .Values.tls.server.ip }}"
6893
- name: EDGE_NAME
6994
value: "{{ include "sdx-edge.fullname" . }}"
7095
- name: CLIENT_CA_URL
7196
value: "{{ .Values.client_ca_url }}"
97+
- name: HTTPS_PROXY
98+
value: "{{ .Values.https_proxy }}"
99+
- name: NO_PROXY
100+
value: ".cluster.local,.svc,10.91.0.0/16,10.93.0.0/16,172.30.0.0/16,127.0.0.1,localhost,.gov.bc.ca"
72101
imagePullPolicy: IfNotPresent
73102
volumeMounts:
74103
- name: working-dir
@@ -79,8 +108,6 @@ spec:
79108
mountPropagation: None
80109
- name: sdx-edge-bootstrap-token
81110
mountPath: /etc/secrets/sdx-edge-bootstrap-token
82-
- name: sdx-edge-ca
83-
mountPath: /etc/secrets/sdx-edge-ca
84111
image: 'docker.io/smallstep/step-cli:0.23.0'
85112
automountServiceAccountToken: true
86113
volumes:
@@ -91,9 +118,6 @@ spec:
91118
- name: sdx-edge-bootstrap-token
92119
secret:
93120
secretName: {{ include "sdx-edge.fullname" . }}-bootstrap
94-
- name: sdx-edge-ca
95-
secret:
96-
secretName: sdx-edge-ca
97121
dnsPolicy: ClusterFirst
98122
---
99123
{{ end }}
@@ -115,6 +139,7 @@ rules:
115139
- verbs:
116140
- get
117141
- create
142+
- delete
118143
- patch
119144
apiGroups:
120145
- ''

sdx/chart/sdx-edge/templates/job-cert-renewal.yaml

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@ spec:
1717
concurrencyPolicy: Replace
1818
suspend: false
1919
jobTemplate:
20-
metadata:
21-
creationTimestamp: null
2220
spec:
2321
parallelism: 1
2422
completions: 1
@@ -27,7 +25,11 @@ spec:
2725
ttlSecondsAfterFinished: 604800 # 7 days
2826
template:
2927
metadata:
30-
creationTimestamp: null
28+
labels:
29+
DataClass: Low
30+
app.kubernetes.io/name: job-cert-renewal
31+
app.kubernetes.io/instance: "{{ include "sdx-edge.fullname" . }}"
32+
data-plane: "{{ include "sdx-edge.fullname" . }}"
3133
spec:
3234
restartPolicy: Never
3335
serviceAccountName: sdx-job-cert-renewal
@@ -58,19 +60,32 @@ spec:
5860
curl -sLO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
5961
chmod +x kubectl
6062
63+
kubectl delete secret ${EDGE_NAME}-client || true
64+
kubectl delete secret ${EDGE_NAME}-server || true
65+
6166
kubectl create secret \
6267
--save-config --dry-run=client -o yaml \
6368
tls ${EDGE_NAME}-client \
6469
--cert=./tls.crt \
6570
--key=./tls.key | kubectl apply -f -
6671
72+
kubectl create secret \
73+
--save-config --dry-run=client -o yaml \
74+
tls ${EDGE_NAME}-server \
75+
--cert=./tls.crt \
76+
--key=./tls.key | kubectl apply -f -
77+
6778
kubectl rollout restart deployment $EDGE_NAME
6879
6980
env:
7081
- name: EDGE_NAME
7182
value: "{{ include "sdx-edge.fullname" . }}"
7283
- name: CLIENT_CA_URL
7384
value: "{{ .Values.client_ca_url }}"
85+
- name: HTTPS_PROXY
86+
value: "{{ .Values.https_proxy }}"
87+
- name: NO_PROXY
88+
value: ".cluster.local,.svc,10.91.0.0/16,10.93.0.0/16,172.30.0.0/16,127.0.0.1,localhost,.gov.bc.ca"
7489
imagePullPolicy: IfNotPresent
7590
volumeMounts:
7691
- name: working-dir

sdx/chart/sdx-edge/templates/ocp_route.yaml renamed to sdx/chart/sdx-edge/templates/ocp-route.yaml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
kind: Route
22
apiVersion: route.openshift.io/v1
33
metadata:
4-
name: "{{ include "sdx-edge.fullname" . }}"
4+
name: "{{- .Values.route.host }}"
55
labels:
6+
app.kubernetes.io/name: sdx-edge
7+
app.kubernetes.io/component: app
68
app.kubernetes.io/instance: "{{ include "sdx-edge.fullname" . }}"
7-
app.kubernetes.io/name: kong
89
data-plane: "{{ include "sdx-edge.fullname" . }}"
910
spec:
10-
host: "{{ .Values.route.host }}"
11+
host: "{{- .Values.route.host }}"
1112
to:
1213
kind: Service
1314
name: "{{ include "sdx-edge.fullname" . }}"

sdx/chart/sdx-edge/templates/prometheus.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ spec:
1515
template:
1616
metadata:
1717
labels:
18+
DataClass: Low
1819
app.kubernetes.io/name: prometheus
1920
app.kubernetes.io/component: server
2021
spec:

sdx/chart/sdx-edge/templates/secret.yaml

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,3 @@
1-
kind: Secret
2-
apiVersion: v1
3-
metadata:
4-
name: {{ include "sdx-edge.fullname" . }}-server
5-
data:
6-
tls.crt: {{ .Values.tls.server.crt | b64enc | quote }}
7-
tls.key: {{ .Values.tls.server.key | b64enc | quote }}
8-
type: kubernetes.io/tls
9-
---
101
{{ if .Values.tls.client.bootstrap.token }}
112
kind: Secret
123
apiVersion: v1
@@ -21,9 +12,9 @@ type: Opaque
2112
kind: Secret
2213
apiVersion: v1
2314
metadata:
24-
name: sdx-edge-ca
15+
name: sdx-public-ca
2516
data:
26-
ca.crt: {{ .Values.tls.ca | b64enc | quote }}
17+
ca.crt: {{ .Values.tls.public_ca | b64enc | quote }}
2718
type: Opaque
2819
---
2920
kind: Secret

0 commit comments

Comments
 (0)