Skip to content

Commit f4753f2

Browse files
author
hechao
committed
[feature][disaggregated] Support configuration of username and password and multi secret
1 parent 0edece1 commit f4753f2

File tree

4 files changed

+45
-30
lines changed

4 files changed

+45
-30
lines changed

pkg/common/utils/resource/pod.go

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -500,23 +500,8 @@ func buildEnvFromPod() []corev1.EnvVar {
500500
}
501501
}
502502

503-
func GetPodDefaultEnv(ddc *dv1.DorisDisaggregatedCluster) []corev1.EnvVar {
504-
defaultEnvs := buildEnvFromPod()
505-
506-
if ddc.Spec.AdminUser != nil {
507-
defaultEnvs = append(defaultEnvs, corev1.EnvVar{
508-
Name: ADMIN_USER,
509-
Value: ddc.Spec.AdminUser.Name,
510-
})
511-
if ddc.Spec.AdminUser.Password != "" {
512-
defaultEnvs = append(defaultEnvs, corev1.EnvVar{
513-
Name: ADMIN_PASSWD,
514-
Value: ddc.Spec.AdminUser.Password,
515-
})
516-
}
517-
}
518-
519-
return defaultEnvs
503+
func GetPodDefaultEnv() []corev1.EnvVar {
504+
return buildEnvFromPod()
520505
}
521506

522507
func getCommand(componentType v1.ComponentType) (commands []string, args []string) {

pkg/controller/sub_controller/disaggregated_cluster/computegroups/statefulset.go

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ func (dcgs *DisaggregatedComputeGroupsController) NewCGContainer(ddc *dv1.DorisD
139139

140140
c.Ports = resource.GetDisaggregatedContainerPorts(cvs, dv1.DisaggregatedBE)
141141
c.Env = cg.CommonSpec.EnvVars
142-
c.Env = append(c.Env, resource.GetPodDefaultEnv(ddc)...)
142+
c.Env = append(c.Env, resource.GetPodDefaultEnv()...)
143143
c.Env = append(c.Env, dcgs.newSpecificEnvs(ddc, cg)...)
144144

145145
resource.BuildDisaggregatedProbe(&c, &cg.CommonSpec, dv1.DisaggregatedBE)
@@ -152,11 +152,6 @@ func (dcgs *DisaggregatedComputeGroupsController) NewCGContainer(ddc *dv1.DorisD
152152
c.VolumeMounts = append(c.VolumeMounts, cmvms...)
153153
}
154154

155-
if len(cg.Secrets) != 0 {
156-
_, secretVolumeMounts := resource.GetMultiSecretVolumeAndVolumeMountWithCommonSpec(&cg.CommonSpec)
157-
c.VolumeMounts = append(c.VolumeMounts, secretVolumeMounts...)
158-
}
159-
160155
// add basic auth secret volumeMount
161156
if ddc.Spec.AuthSecret != "" {
162157
c.VolumeMounts = append(c.VolumeMounts, corev1.VolumeMount{
@@ -165,6 +160,11 @@ func (dcgs *DisaggregatedComputeGroupsController) NewCGContainer(ddc *dv1.DorisD
165160
})
166161
}
167162

163+
if len(cg.Secrets) != 0 {
164+
_, secretVolumeMounts := resource.GetMultiSecretVolumeAndVolumeMountWithCommonSpec(&cg.CommonSpec)
165+
c.VolumeMounts = append(c.VolumeMounts, secretVolumeMounts...)
166+
}
167+
168168
return c
169169
}
170170

@@ -357,5 +357,20 @@ func (dcgs *DisaggregatedComputeGroupsController) newSpecificEnvs(ddc *dv1.Doris
357357
corev1.EnvVar{Name: resource.COMPUTE_GROUP_NAME, Value: ddc.GetCGName(cg)},
358358
corev1.EnvVar{Name: resource.ENV_FE_ADDR, Value: feAddr},
359359
corev1.EnvVar{Name: resource.ENV_FE_PORT, Value: fqpStr})
360+
361+
// add user and password envs
362+
if ddc.Spec.AdminUser != nil {
363+
cgEnvs = append(cgEnvs, corev1.EnvVar{
364+
Name: resource.ADMIN_USER,
365+
Value: ddc.Spec.AdminUser.Name,
366+
})
367+
if ddc.Spec.AdminUser.Password != "" {
368+
cgEnvs = append(cgEnvs, corev1.EnvVar{
369+
Name: resource.ADMIN_PASSWD,
370+
Value: ddc.Spec.AdminUser.Password,
371+
})
372+
}
373+
}
374+
360375
return cgEnvs
361376
}

pkg/controller/sub_controller/disaggregated_cluster/disaggregated_fe/statefulset.go

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ func (dfc *DisaggregatedFEController) NewFEContainer(ddc *v1.DorisDisaggregatedC
136136

137137
c.Ports = resource.GetDisaggregatedContainerPorts(cvs, v1.DisaggregatedFE)
138138
c.Env = ddc.Spec.FeSpec.CommonSpec.EnvVars
139-
c.Env = append(c.Env, resource.GetPodDefaultEnv(ddc)...)
139+
c.Env = append(c.Env, resource.GetPodDefaultEnv()...)
140140
c.Env = append(c.Env, dfc.newSpecificEnvs(ddc)...)
141141

142142
if ddc.Spec.FeSpec.ElectionNumber != nil {
@@ -156,11 +156,6 @@ func (dfc *DisaggregatedFEController) NewFEContainer(ddc *v1.DorisDisaggregatedC
156156
c.VolumeMounts = append(c.VolumeMounts, cmvms...)
157157
}
158158

159-
if len(ddc.Spec.FeSpec.Secrets) != 0 {
160-
_, secretVolumeMounts := resource.GetMultiSecretVolumeAndVolumeMountWithCommonSpec(&ddc.Spec.FeSpec.CommonSpec)
161-
c.VolumeMounts = append(c.VolumeMounts, secretVolumeMounts...)
162-
}
163-
164159
// add basic auth secret volumeMount
165160
if ddc.Spec.AuthSecret != "" {
166161
c.VolumeMounts = append(c.VolumeMounts, corev1.VolumeMount{
@@ -169,6 +164,11 @@ func (dfc *DisaggregatedFEController) NewFEContainer(ddc *v1.DorisDisaggregatedC
169164
})
170165
}
171166

167+
if len(ddc.Spec.FeSpec.Secrets) != 0 {
168+
_, secretVolumeMounts := resource.GetMultiSecretVolumeAndVolumeMountWithCommonSpec(&ddc.Spec.FeSpec.CommonSpec)
169+
c.VolumeMounts = append(c.VolumeMounts, secretVolumeMounts...)
170+
}
171+
172172
return c
173173
}
174174

@@ -310,5 +310,20 @@ func (dfc *DisaggregatedFEController) newSpecificEnvs(ddc *v1.DorisDisaggregated
310310
corev1.EnvVar{Name: resource.ENV_FE_ADDR, Value: ddc.GetFEVIPAddresss()},
311311
corev1.EnvVar{Name: resource.ENV_FE_ELECT_NUMBER, Value: strconv.FormatInt(int64(ddc.GetElectionNumber()), 10)},
312312
)
313+
314+
// add user and password envs
315+
if ddc.Spec.AdminUser != nil {
316+
feEnvs = append(feEnvs, corev1.EnvVar{
317+
Name: resource.ADMIN_USER,
318+
Value: ddc.Spec.AdminUser.Name,
319+
})
320+
if ddc.Spec.AdminUser.Password != "" {
321+
feEnvs = append(feEnvs, corev1.EnvVar{
322+
Name: resource.ADMIN_PASSWD,
323+
Value: ddc.Spec.AdminUser.Password,
324+
})
325+
}
326+
}
327+
313328
return feEnvs
314329
}

pkg/controller/sub_controller/disaggregated_cluster/metaservice/statefulset.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ func (dms *DisaggregatedMSController) NewMSContainer(ddc *v1.DorisDisaggregatedC
203203

204204
c.Ports = resource.GetDisaggregatedContainerPorts(cvs, v1.DisaggregatedMS)
205205
c.Env = ddc.Spec.MetaService.CommonSpec.EnvVars
206-
c.Env = append(c.Env, resource.GetPodDefaultEnv(ddc)...)
206+
c.Env = append(c.Env, resource.GetPodDefaultEnv()...)
207207
c.Env = append(c.Env, dms.newSpecificEnvs(ddc)...)
208208
resource.BuildDisaggregatedProbe(&c, &ddc.Spec.MetaService.CommonSpec, v1.DisaggregatedMS)
209209
_, vms, _ := dms.buildVolumesVolumeMountsAndPVCs(cvs, &ddc.Spec.MetaService)

0 commit comments

Comments
 (0)