Skip to content

Commit 3e86168

Browse files
authored
chore: addon controller use kb sa for kb09 (#9573)
1 parent eac56a5 commit 3e86168

7 files changed

Lines changed: 4 additions & 62 deletions

File tree

controllers/extensions/addon_controller_stages.go

Lines changed: 3 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ const (
5858
)
5959

6060
func init() {
61-
viper.SetDefault(addonSANameKey, "kubeblocks-addon-installer")
61+
viper.SetDefault(constant.KBServiceAccountName, "kubeblocks")
6262
viper.SetDefault(addonHelmInstallOptKey, []string{
6363
"--atomic",
6464
"--cleanup-on-fail",
@@ -543,7 +543,6 @@ func (r *helmTypeInstallStage) Handle(ctx context.Context) {
543543
chartsPath,
544544
"--namespace",
545545
"$(RELEASE_NS)",
546-
"--create-namespace",
547546
}, viper.GetStringSlice(addonHelmInstallOptKey)...)
548547

549548
installValues := addon.Spec.Helm.BuildMergedValues(addon.Spec.InstallSpec)
@@ -861,19 +860,7 @@ func createHelmJobProto(addon *extensionsv1alpha1.Addon) (*batchv1.Job, error) {
861860
Name: getJobMainContainerName(addon),
862861
Image: viper.GetString(constant.KBToolsImage),
863862
ImagePullPolicy: corev1.PullPolicy(viper.GetString(constant.CfgAddonJobImgPullPolicy)),
864-
// TODO: need have image that is capable of following settings, current settings
865-
// may expose potential security risk, as this pod is using cluster-admin clusterrole.
866-
// SecurityContext: &corev1.SecurityContext{
867-
// RunAsNonRoot: &[]bool{true}[0],
868-
// RunAsUser: &[]int64{1001}[0],
869-
// AllowPrivilegeEscalation: &[]bool{false}[0],
870-
// Capabilities: &corev1.Capabilities{
871-
// Drop: []corev1.Capability{
872-
// "ALL",
873-
// },
874-
// },
875-
// },
876-
Command: []string{"helm"},
863+
Command: []string{"helm"},
877864
Env: []corev1.EnvVar{
878865
{
879866
Name: "RELEASE_NAME",
@@ -911,7 +898,7 @@ func createHelmJobProto(addon *extensionsv1alpha1.Addon) (*batchv1.Job, error) {
911898
},
912899
Spec: corev1.PodSpec{
913900
RestartPolicy: corev1.RestartPolicyNever,
914-
ServiceAccountName: viper.GetString("KUBEBLOCKS_ADDON_SA_NAME"),
901+
ServiceAccountName: viper.GetString(constant.KBServiceAccountName),
915902
Containers: []corev1.Container{container},
916903
Volumes: []corev1.Volume{},
917904
Tolerations: []corev1.Toleration{},

controllers/extensions/const.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ const (
4848

4949
// config keys used in viper
5050
maxConcurrentReconcilesKey = "MAXCONCURRENTRECONCILES_ADDON"
51-
addonSANameKey = "KUBEBLOCKS_ADDON_SA_NAME"
5251
addonHelmInstallOptKey = "KUBEBLOCKS_ADDON_HELM_INSTALL_OPTIONS"
5352
addonHelmUninstallOptKey = "KUBEBLOCKS_ADDON_HELM_UNINSTALL_OPTIONS"
5453
)

deploy/helm/templates/_helpers.tpl

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,6 @@ Create the name of the service account to use
6161
{{- end }}
6262
{{- end }}
6363

64-
{{/*
65-
Create the addon installer name of the service account to use
66-
*/}}
67-
{{- define "kubeblocks.addonSAName" -}}
68-
{{- printf "%s-%s" (include "kubeblocks.serviceAccountName" .) "addon-installer" }}
69-
{{- end }}
70-
7164
{{/*
7265
Create the name of the webhook service.
7366
*/}}

deploy/helm/templates/deployment.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,8 +154,6 @@ spec:
154154
- name: ADDON_JOB_IMAGE_PULL_POLICY
155155
value: {{ .jobImagePullPolicy | default "IfNotPresent" }}
156156
{{- end }}
157-
- name: KUBEBLOCKS_ADDON_SA_NAME
158-
value: {{ include "kubeblocks.addonSAName" . }}
159157
- name: KUBEBLOCKS_ADDON_HELM_INSTALL_OPTIONS
160158
value: {{ join " " .Values.addonHelmInstallOptions }}
161159
- name: KUBEBLOCKS_ADDON_CHARTS_IMAGE_PULL_POLICY

deploy/helm/templates/rbac/clusterrole_binding.yaml

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,6 @@ subjects:
1212
- kind: ServiceAccount
1313
name: {{ include "kubeblocks.serviceAccountName" . }}
1414
namespace: {{ .Release.Namespace }}
15-
{{- if ( include "kubeblocks.addonControllerEnabled" . ) | deepEqual "true" }}
16-
---
17-
apiVersion: rbac.authorization.k8s.io/v1
18-
kind: ClusterRoleBinding
19-
metadata:
20-
name: {{ include "kubeblocks.fullname" . }}-cluster-admin
21-
labels:
22-
{{- include "kubeblocks.labels" . | nindent 4 }}
23-
roleRef:
24-
apiGroup: rbac.authorization.k8s.io
25-
kind: ClusterRole
26-
name: cluster-admin
27-
subjects:
28-
- kind: ServiceAccount
29-
name: {{ include "kubeblocks.addonSAName" . }}
30-
namespace: {{ .Release.Namespace }}
31-
{{- end }}
3215
---
3316
apiVersion: rbac.authorization.k8s.io/v1
3417
kind: ClusterRoleBinding

deploy/helm/templates/serviceaccount.yaml

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,24 +14,6 @@ imagePullSecrets:
1414
{{- toYaml . | nindent 2 }}
1515
{{- end }}
1616

17-
{{- if ( include "kubeblocks.addonControllerEnabled" . ) | deepEqual "true" }}
18-
---
19-
apiVersion: v1
20-
kind: ServiceAccount
21-
metadata:
22-
name: {{ include "kubeblocks.addonSAName" . }}
23-
labels:
24-
{{- include "kubeblocks.labels" . | nindent 4 }}
25-
{{- with .Values.serviceAccount.annotations }}
26-
annotations:
27-
{{- toYaml . | nindent 4 }}
28-
{{- end }}
29-
{{- with .Values.addonChartsImage.pullSecrets }}
30-
imagePullSecrets:
31-
{{- toYaml . | nindent 2 }}
32-
{{- end }}
33-
{{- end }}
34-
3517
{{- if and .Values.dataProtection.enabled }}
3618
---
3719
apiVersion: v1

deploy/helm/values.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,7 @@ backupRepo:
430430
accessKeyId: ""
431431
secretAccessKey: ""
432432

433-
## Addon controller settings, this will require cluster-admin clusterrole.
433+
## Addon controller settings
434434
##
435435
## @param addonController.enabled
436436
## @param addonController.jobTTL - is addon job time-to-live period, this value is time.Duration-parseable string.

0 commit comments

Comments
 (0)