Skip to content

Commit 7d3f41b

Browse files
committed
Add eks fis v2 support
Signed-off-by: Mikkel Oscar Lyderik Larsen <[email protected]>
1 parent 598305e commit 7d3f41b

File tree

6 files changed

+38
-17
lines changed

6 files changed

+38
-17
lines changed

cluster/manifests/02-admission-control/config.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,11 @@ data:
169169
{{- end}}
170170

171171
pod.pod-security-policy.allow-privilege-escalation: "{{ .Cluster.ConfigItems.teapot_admission_controller_pod_security_policy_privileged_allow_privilege_escalation }}"
172+
{{- if eq .Cluster.ConfigItems.eks_fis_support_enabled "true" }}
173+
pod.aws-fis-experiment-service-account-name: "fis-experiment-executor"
174+
pod.aws-fis-experiment-user: "fis-experiment-executor"
175+
pod.aws-fis-experiment-privileged-capabilities.NET_ADMIN: ""
176+
{{- end}}
172177

173178
deployment.default.rolling-update-max-surge: "{{ .Cluster.ConfigItems.teapot_admission_controller_deployment_default_max_surge }}"
174179
deployment.default.rolling-update-max-unavailable: "{{ .Cluster.ConfigItems.teapot_admission_controller_deployment_default_max_unavailable }}"

cluster/manifests/02-admission-control/deployment.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ spec:
3333
priorityClassName: system-cluster-critical
3434
containers:
3535
- name: admission-controller
36-
image: 926694233939.dkr.ecr.eu-central-1.amazonaws.com/production_namespace/teapot/admission-controller:master-274
36+
image: 926694233939.dkr.ecr.eu-central-1.amazonaws.com/production_namespace/teapot/admission-controller:master-276
3737
lifecycle:
3838
preStop:
3939
sleep:

cluster/manifests/eks-fis/01-rbac.yaml

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,4 @@
11
{{- if eq .Cluster.ConfigItems.eks_fis_support_enabled "true" }}
2-
# {{ range $namespace := split .Cluster.ConfigItems.eks_fis_namespaces "," }}
3-
kind: ServiceAccount
4-
apiVersion: v1
5-
metadata:
6-
namespace: "{{ $namespace }}"
7-
name: fis-experiment-executor
8-
---
9-
# {{ end }}
102
kind: ClusterRole
113
apiVersion: rbac.authorization.k8s.io/v1
124
metadata:
@@ -17,7 +9,7 @@ rules:
179
verbs: ["get", "create", "patch", "delete"]
1810
- apiGroups: [""]
1911
resources: ["pods"]
20-
verbs: ["create", "get", "delete", "deletecollection", "list"]
12+
verbs: ["create", "list", "get", "delete", "deletecollection"]
2113
- apiGroups: [""]
2214
resources: ["pods/ephemeralcontainers"]
2315
verbs: ["update"]
@@ -33,11 +25,6 @@ kind: ClusterRoleBinding
3325
metadata:
3426
name: fis-experiment-executor
3527
subjects:
36-
# {{ range $namespace := split .Cluster.ConfigItems.eks_fis_namespaces "," }}
37-
- kind: ServiceAccount
38-
name: fis-experiment-executor
39-
namespace: "{{ $namespace }}"
40-
# {{ end }}
4128
- apiGroup: rbac.authorization.k8s.io
4229
kind: User
4330
name: fis-experiment-executor

cluster/manifests/role-sync-controller/cronjob.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ spec:
3333
restartPolicy: Never
3434
containers:
3535
- name: role-sync-controller
36-
image: container-registry.zalando.net/teapot/role-sync-controller:main-13
36+
image: container-registry.zalando.net/teapot/role-sync-controller:main-14
3737
args:
3838
- --subject-group=PowerUser
3939
- --subject-group=Manual
@@ -47,4 +47,7 @@ spec:
4747
{{- if eq .Cluster.Provider "zalando-eks"}}
4848
- --subject-serviceaccount=kube-system/deployment-service-controller
4949
{{- end}}
50+
{{- if eq .Cluster.ConfigItems.eks_fis_support_enabled "true" }}
51+
- --eks-fis-serviceaccount=fis-experiment-executor
52+
{{- end}}
5053
{{ end }}

cluster/manifests/role-sync-controller/rbac.yaml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,15 @@ rules:
1414
- "namespaces"
1515
verbs:
1616
- "list"
17+
# Allow the controller to manage ServiceAccounts
18+
- apiGroups:
19+
- ""
20+
resources:
21+
- serviceaccounts
22+
verbs:
23+
- "get"
24+
- "create"
25+
- "update"
1726
# Allow the controller to manage Roles and Rolebindings
1827
- apiGroups:
1928
- rbac.authorization.k8s.io
@@ -41,6 +50,23 @@ rules:
4150
- "get"
4251
- "list"
4352
- "watch"
53+
# Allow the controller to manage roles with permissions required by eks-fis
54+
# integration.
55+
- apiGroups: [""]
56+
resources: ["configmaps"]
57+
verbs: ["get", "create", "patch", "delete"]
58+
- apiGroups: [""]
59+
resources: ["pods"]
60+
verbs: ["create", "get", "delete", "deletecollection", "list"]
61+
- apiGroups: [""]
62+
resources: ["pods/ephemeralcontainers"]
63+
verbs: ["update"]
64+
- apiGroups: [""]
65+
resources: ["pods/exec"]
66+
verbs: ["create"]
67+
- apiGroups: ["apps"]
68+
resources: ["deployments"]
69+
verbs: ["get"]
4470
---
4571
apiVersion: rbac.authorization.k8s.io/v1
4672
kind: ClusterRoleBinding

cluster/node-pools/master-default/userdata.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ write_files:
219219
limits:
220220
memory: {{ .Values.InstanceInfo.MemoryFraction (parseInt64 .Cluster.ConfigItems.apiserver_memory_limit_percent)}}
221221
{{- end }}
222-
- image: 926694233939.dkr.ecr.eu-central-1.amazonaws.com/production_namespace/teapot/admission-controller:master-274
222+
- image: 926694233939.dkr.ecr.eu-central-1.amazonaws.com/production_namespace/teapot/admission-controller:master-276
223223
name: admission-controller
224224
lifecycle:
225225
preStop:

0 commit comments

Comments
 (0)