Skip to content

Commit af814ab

Browse files
add opensearch to dev worker cluster
add a test opensearch instance to run on dev worker cluster to test collecting k8s logs
1 parent da06e7b commit af814ab

File tree

6 files changed

+221
-0
lines changed

6 files changed

+221
-0
lines changed

clusters/dev/worker/apps.yaml

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
apiVersion: argoproj.io/v1alpha1
2+
kind: Application
3+
metadata:
4+
name: cloud-deployed-apps
5+
namespace: argocd
6+
spec:
7+
destination:
8+
namespace: argocd
9+
server: https://kubernetes.default.svc
10+
project: default
11+
source:
12+
repoURL: https://github.com/stfc/cloud-deployed-apps.git
13+
targetRevision: main
14+
path: clusters/dev/worker
15+
syncPolicy:
16+
automated:
17+
prune: false
18+
selfHeal: true
19+
allowEmpty: true
20+
syncOptions:
21+
- CreateNamespace=true
22+
23+
---
24+
apiVersion: argoproj.io/v1alpha1
25+
kind: ApplicationSet
26+
metadata:
27+
name: worker-apps
28+
namespace: argocd
29+
spec:
30+
generators:
31+
- list:
32+
elements:
33+
- name: "argocd"
34+
chartName: argocd
35+
36+
# NOTE: each chart needs a valuesFile for this to work
37+
# so create one for each chart - even if its empty
38+
39+
# argocd and all dependencies use the same file "argocd-setup-values.yaml"
40+
valuesFile: ../../../clusters/dev/worker/argocd-setup-values.yaml
41+
namespace: argocd
42+
43+
- name: "cert-manager"
44+
chartName: cert-manager
45+
namespace: cert-manager
46+
valuesFile: ../../../clusters/dev/worker/argocd-setup-values.yaml
47+
48+
- name: longhorn
49+
chartName: longhorn
50+
namespace: longhorn-system
51+
valuesFile: ../../../clusters/dev/worker/argocd-setup-values.yaml
52+
53+
- name: opensearch
54+
chartName: opensearch
55+
namespace: opensearch
56+
valuesFile: ../../../clusters/dev/worker/opensearch-values.yaml
57+
secretsFile: ../../../secrets/dev/worker/opensearch.yaml
58+
59+
syncPolicy:
60+
# Don't remove everything if we remove the appset
61+
preserveResourcesOnDeletion: true
62+
63+
template:
64+
metadata:
65+
name: "{{name}}"
66+
namespace: argocd
67+
spec:
68+
project: default
69+
source:
70+
repoURL: "https://github.com/stfc/cloud-deployed-apps.git"
71+
targetRevision: main
72+
path: "charts/dev/{{chartName}}"
73+
helm:
74+
valueFiles:
75+
- "{{valuesFile}}"
76+
- secrets://{{ .secretsFile | default "../../../secrets/dummy-secret.yaml"}}
77+
78+
destination:
79+
server: https://kubernetes.default.svc
80+
namespace: "{{namespace}}"
81+
82+
syncPolicy:
83+
automated:
84+
prune: true
85+
selfHeal: true
86+
allowEmpty: true
87+
syncOptions:
88+
- CreateNamespace=true
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
argo-cd:
2+
global:
3+
domain: argocd-worker.dev.nubes.stfc.ac.uk
4+
5+
longhorn:
6+
ingress:
7+
host: "longhorn-worker.dev.nubes.stfc.ac.uk"

clusters/dev/worker/infra-values.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ openstack-cluster:
99

1010
nodeGroupDefaults:
1111
machineFlavor: l3.nano
12+
nodeLabels:
13+
# we're running longhorn on this cluster
14+
# set label so worker nodes can host longhorn volumes
15+
longhorn.store.nodeselect/longhorn-storage-node: true
1216

1317
addons:
1418
ingress:
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
2+
dashboards:
3+
ingress:
4+
hosts:
5+
- host: dashboards.dev.nubes.stfc.ac.uk
6+
paths:
7+
- path: /
8+
pathType: ImplementationSpecific
9+
tls:
10+
- secretName: opensearch-tls
11+
hosts:
12+
- dashboards.dev.nubes.stfc.ac.uk
13+
14+
ingress:
15+
hosts:
16+
- host: nodes.dev.nubes.stfc.ac.uk
17+
paths:
18+
- path: /
19+
pathType: ImplementationSpecific
20+
tls:
21+
- secretName: opensearch-tls
22+
hosts:
23+
- nodes.dev.nubes.stfc.ac.uk
24+
25+
users:
26+
# for ingesting k8s container logs
27+
- name: fluentbit
28+
passwordFrom:
29+
name: fluentbit-credentials-secret
30+
key: password
31+
backendRoles:
32+
- kibana_user
33+
34+
roles:
35+
# for ingesting k8s container logs
36+
- name: fluentbit
37+
clusterPermissions:
38+
- cluster_composite_ops
39+
- cluster_monitor
40+
indexPermissions:
41+
- indexPatterns:
42+
- audit-*
43+
- container-*
44+
- access-*
45+
allowedActions:
46+
- create_index
47+
- index
48+
- write
49+
50+
roleMappings:
51+
- roleName: fluentbit
52+
user: fluentbit

secrets/dev/worker/opensearch.yaml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
admin:
2+
#ENC[AES256_GCM,data:QDwUx9kyi7vi5HPNVEQhuwGQOT+eW5phHcR8UdB5+UNwqglGUH9vE+KNODDx7sFiY9qNCKY+uGyeMYizRoYV+YyERwe4HD37q9zJgZhn/4xIX6+7ckJvbp1VCdAlqMFJvzWCXg==,iv:uB9tqBLPjyImmEjf5FsnR+y1+JJjMwWIhJJQcaAxJ2s=,tag:BRVlYoT8f/rv1fPEe5Jafg==,type:comment]
3+
#ENC[AES256_GCM,data:alsLLQvOohiKKaN43KC2HCrgq5T6NLV8f30+jMXSOgBKY5tsVFe+UFT1ytf6BwtE8GjmKvaCNa3XQwpocEscwW0=,iv:lP2I9Z6Mcqqdoa2QxFVShiWiCBBxsPsHa7+IHe6TjTU=,tag:Aeq1r6FE0IlOXJ0xd/5XHQ==,type:comment]
4+
username: ENC[AES256_GCM,data:+3N6gQk=,iv:QACkhN3EdWdoX8xMaZhBiJAR7A6KmXYkdC6ofzHoDPc=,tag:QxG2MOG80IbGQieotfRXwA==,type:str]
5+
password: ENC[AES256_GCM,data:GSBu4wvPNJtyqRn2fxlzkyFaI6k=,iv:bx5HKPN966C37Bn50MberMSghgagxHZmBwbCoqbVIVo=,tag:h8UrCU1txVeqMwEqpS2Ueg==,type:str]
6+
#ENC[AES256_GCM,data:gZlCxtaB0j+TphQu32xtaQd1SW2sYI/CEl6C9voAOAzIV+y1kuFR3RVF+m5iTnj/YDuuv3YCaFcaIUazOyU/2QahtO8e2eIqS7k=,iv:2pJpNb1Ch75NT9p8CNucFaQIvdILfsqv7QJ0WPNc05c=,tag:S0pcMZ/JFdxC6TZ/WkgElw==,type:comment]
7+
#ENC[AES256_GCM,data:L/ADRhy7+OMOc28MR/33YfNugpt08WBSsInwIYN0AyUPpOK911ovWGNqnD7GA0rq,iv:Ulbyq/kEN4kGxme87QqLz8OUstF8CvvYCZvn0t7Y2Yk=,tag:rOIWsjVJpFZoP/JRbRznYg==,type:comment]
8+
hash: ENC[AES256_GCM,data:QgIEtPdyIllxZe5crric/5cO5X9gBTxgiXrof5QGmuSXM6mdv80qs4hvxz/6RlBG4INtSFrVLF4MARSO,iv:iQVTEpl6UZu9ka2qOK6RtYTpbBnBYzUdO2AVrU4dX4Q=,tag:GdpuPtevB7O44SdjlRbqWA==,type:str]
9+
#ENC[AES256_GCM,data:iv/FAimh8SfFVqzzM7U4rsbpCNzxcyMFEgM7sA==,iv:bPpGgV0VwJjgqD8jaxu0/q2AXijvtipojtImk43W75g=,tag:PERZkKFgWhPKf9d9Jfjw7A==,type:comment]
10+
openid:
11+
clientID: ENC[AES256_GCM,data:uMvsOIjTttBfy/BKplxEGhmuNLhKddQH1MlBicQ+UbStPiko,iv:H8+om/9YGfh2vxf8Xh+E90tNLyrKTpXPQjybgt62Ou0=,tag:eqjGOGyi/va5Bs1vDSQQ/g==,type:str]
12+
clientSecret: ENC[AES256_GCM,data:3qhDQuypewAKxtR5p488hv5Q/+4qIBFvvEAZZSOEyS4icCEaZSd2Viwr7oWdts95R9cqLM7ruoQlI5s+XzNbQiG9BUkc0mjEOuuR92CRCa6GIuaXwvg=,iv:5UJuqz2JkJAqtYRglzrC3U8eZzkSv3nT0WMhhg+yN5c=,tag:alMz/tPl1d7RAQZCeIyLFg==,type:str]
13+
sops:
14+
kms: []
15+
gcp_kms: []
16+
azure_kv: []
17+
hc_vault: []
18+
age:
19+
- recipient: age1acqcungzwkt807d3jt94ngtdt0vhk9kec4ps4a22cpaah57jw4xsl7q4xc
20+
enc: |
21+
-----BEGIN AGE ENCRYPTED FILE-----
22+
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBCUmYzbWxlL3A2clpPR1BW
23+
N1Awb1dxQ2t6MlBUWmlXUEtzaHR6Y1FYR0NrCjRnVXJmWFpNdHNXNllUd0kyTk02
24+
ZmlWYzFESWl0NzkydjFkYkk4MXdYQTAKLS0tIHN1Nk1DWTBxcmtCTTFVN0ZQM01z
25+
d1Z2eTdjVy8zZ29PbURXa0s1ZUtiYVkKDKTSsZIB50U7tURMzl7WcqOy5aLqaQOL
26+
dfU7AKQveF0j4v0Udw9e2tC4ex7+yefCpT+TT/eC0h5onA8graW+cg==
27+
-----END AGE ENCRYPTED FILE-----
28+
- recipient: age1h3dmygqf4v6jg3nxk5sr9jkp27w3q83sqnqxdd5n92xf3w6fs5kshakrxn
29+
enc: |
30+
-----BEGIN AGE ENCRYPTED FILE-----
31+
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA4ZXBid2t5cloreTFUSlF5
32+
UEZwWVZJakVCQnU5VC9qcVh0UzBpaUhiSmxZCmVOY1VqUVRCMXdQMTg0c0VhM1J5
33+
bnBOSk1WSGdPb0tyRzNqUHRUeEFjWDgKLS0tIG1KUHJVVCt1QkhZdUpUaU9xSWF1
34+
dmdhUUxiWVVrTTJUcklQbDNHdk44UzAKukZvY0krD44pVmW4EibbG9ml5gDFqcxF
35+
SLcWhivgbesvULqJMAo5azicIFxDvRgIhIr5oUypGD1EaRpUXmVZgg==
36+
-----END AGE ENCRYPTED FILE-----
37+
- recipient: age1xr298hh8ammzethfcdeh72c25wnrk3u2zlzxx78k4nfcq2rwpgqs9hljq8
38+
enc: |
39+
-----BEGIN AGE ENCRYPTED FILE-----
40+
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBJb21qS1h2Q3pBcXFWbHJ5
41+
UVE5dHNRME1QaEFjcGQwS1hVa2J1TElzcFNrClBZQ1MyeHA3UFBaaDVCS0p3NEFQ
42+
TEsydTUxYUpHTjhoRHZuTEMwQTRqNlUKLS0tIFhhMGcxWk9KN0xqUE40R3RseWRs
43+
dDFWczQ4QUlTaW1qZWphT1dFYTJMTDAK52sxrj8CwRrJWuFiu8qaRpaCtQGoY8om
44+
EGwC0Ue+IK2KWMdofrZpgfIgpEm/eNVbCAVTWtZM77xqmleYc6MANQ==
45+
-----END AGE ENCRYPTED FILE-----
46+
- recipient: age12khufkd7z25eqgpjjyy0zcrq6kpjxzekmff5zhq7q54tajm4e58qul35x0
47+
enc: |
48+
-----BEGIN AGE ENCRYPTED FILE-----
49+
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBjZkJYMzlqbVNRMWhUdWJq
50+
Vk9WWWd0ZHpIcWJPWFZNdmFZN014QUNqZkhZCkl4aC9xZGFSam9SL0ZKWFN2K3VU
51+
MG1VZGxkbmJhLzZ6Skp0TVhwcWw1cHMKLS0tIGsvR3d1WE81TGxLWWhjb2Q0OVBQ
52+
eCtYeGh3cnQvUFRDdHBmaXp3YVcxWXMKT9EoHeWQIlAfHIkEoxVG5Ggjwp2zYyhW
53+
/Zlonduy6rzTvtUXbeYsKjTluFOn9m6GEC4hdgISKzGW8Zvc/wRGDw==
54+
-----END AGE ENCRYPTED FILE-----
55+
- recipient: age16fufeddr0arrns268526gxethxgkh3g0euf8cn37kuwfmq3h23psutz4q8
56+
enc: |
57+
-----BEGIN AGE ENCRYPTED FILE-----
58+
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBJbXEvSzNqeTZpR1F2bEI3
59+
Szl5dmxtaC9LNWdlTE9BWWZKWTVOUGNCUVhvCjNhUGE1MG1GSkpLZ09md1krY1BZ
60+
Y1VEYWEydC9lYjZKbzlySVg1WnZZbEkKLS0tIDRTM2ZocHpQTzFUUkYvbTBSZWVN
61+
UG9MN0lCWElaUVNLQ0pJTEJKMHVFa2cKgetiuhLepPcjva1pR2hEQLrwc67ygux+
62+
jqHXJ+BVReG0Sq7HZoCDv6iMQM5DrL0DwmGAZy+5S83zQeTUE1kwaA==
63+
-----END AGE ENCRYPTED FILE-----
64+
lastmodified: "2024-10-15T21:13:56Z"
65+
mac: ENC[AES256_GCM,data:Im6TOCdWj6XBgC9HO/nHbfdg68dRmYwIz+FQw5hmBmsTjQPFl/zNNiBcS/UbwpxuOoIMfrsdhKa0A/DaU+0D+HucFGD7QMGcflTguN/k+gTxBI/BQIQEfAlSJUzhwFbJUJ075KcrmgKQOX9a8GmRyv44uhZwm4be8NYUIapEhnQ=,iv:N2ABX3eovw/Swc8mmppaNC6h8oHH1KKxuLFN16ol66g=,tag:8YhncBZ2MZLELl8uvpb6MQ==,type:str]
66+
pgp: []
67+
unencrypted_regex: ^(apiVersion|metadata|kind|type)$
68+
version: 3.8.1

secrets/dummy-secret.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# This file is left purposefully empty to act as a "dummy" secrets file to
2+
# get argocd appsets to function properly

0 commit comments

Comments
 (0)