in operator/controllers/operator/storage_controller.go [176:224]
func (r *StorageReconciler) checkSecurity(ctx context.Context, log logr.Logger, s *operatorv1alpha1.Storage) {
user, tls := s.Spec.Security.User, s.Spec.Security.TLS
if user.SecretName != "" {
if user.SecretName == "default" {
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "SW_ES_USER", Value: "elastic"})
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "ELASTIC_USER", Value: "elastic"})
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "SW_ES_PASSWORD", Value: "changeme"})
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "ELASTIC_PASSWORD", Value: "changeme"})
} else {
usersecret := core.Secret{}
if err := r.Client.Get(ctx, client.ObjectKey{Namespace: s.Namespace, Name: user.SecretName}, &usersecret); err != nil && !apierrors.IsNotFound(err) {
log.Info("fail get usersecret ")
}
for k, v := range usersecret.Data {
if k == "username" {
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "SW_ES_USER", Value: string(v)})
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "ELASTIC_USER", Value: string(v)})
} else if k == "password" {
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "SW_ES_PASSWORD", Value: string(v)})
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "ELASTIC_PASSWORD", Value: string(v)})
}
}
}
}
if tls {
s.Spec.ServiceName = "skywalking-storage"
} else {
s.Spec.ServiceName = s.Name + "-" + s.Spec.Type
}
if s.Spec.ResourceCnfig.Limit == "" && s.Spec.ResourceCnfig.Requests == "" {
s.Spec.ResourceCnfig.Limit, s.Spec.ResourceCnfig.Requests = "1000m", "100m"
}
setDefaultJavaOpts := true
for _, envVar := range s.Spec.Config {
if envVar.Name == "ES_JAVA_OPTS" {
setDefaultJavaOpts = false
}
}
if setDefaultJavaOpts {
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "ES_JAVA_OPTS", Value: "-Xms1g -Xmx1g"})
}
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "discovery.seed_hosts", Value: s.Spec.ServiceName})
clusterInitialMasterNodes := make([]string, s.Spec.Instances)
for i := 0; i < int(s.Spec.Instances); i++ {
clusterInitialMasterNodes[i] = s.Name + "-elasticsearch-" + strconv.Itoa(i)
}
s.Spec.Config = append(s.Spec.Config, core.EnvVar{Name: "cluster.initial_master_nodes", Value: strings.Join(clusterInitialMasterNodes, ",")})
}