Skip to content

Commit e825fe8

Browse files
Set environment variable for obagent to overwrite host ip config (#605)
1 parent 6dc7816 commit e825fe8

File tree

2 files changed

+32
-2
lines changed

2 files changed

+32
-2
lines changed

internal/const/obagent/obagent.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ See the Mulan PSL v2 for more details.
1212

1313
package monitor
1414

15+
const (
16+
LocalHostAddress = "127.0.0.1"
17+
)
18+
1519
const (
1620
HttpPort = 8088
1721
PprofPort = 8089
@@ -42,6 +46,7 @@ const (
4246
EnvMonitorUser = "MONITOR_USER"
4347
EnvMonitorPASSWORD = "MONITOR_PASSWORD"
4448
EnvOBMonitorStatus = "OB_MONITOR_STATUS"
49+
EnvHostIp = "HOST_IP"
4550
)
4651

4752
const (

internal/resource/observer/utils.go

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -395,6 +395,33 @@ func (m *OBServerManager) createMonitorContainer(obcluster *v1alpha1.OBCluster)
395395
},
396396
},
397397
}
398+
399+
mode, modeAnnoExist := resourceutils.GetAnnotationField(m.OBServer, oceanbaseconst.AnnotationsMode)
400+
if modeAnnoExist {
401+
switch mode {
402+
case oceanbaseconst.ModeStandalone:
403+
envHostIp := corev1.EnvVar{
404+
Name: obagentconst.EnvHostIp,
405+
Value: obagentconst.LocalHostAddress,
406+
}
407+
env = append(env, envHostIp)
408+
case oceanbaseconst.ModeService:
409+
svc, err := m.getSvc()
410+
if err != nil {
411+
if kubeerrors.IsNotFound(err) {
412+
m.Logger.Info("Svc not found")
413+
} else {
414+
m.Logger.Error(err, "Failed to get svc")
415+
}
416+
} else {
417+
envHostIp := corev1.EnvVar{
418+
Name: obagentconst.EnvHostIp,
419+
Value: svc.Spec.ClusterIP,
420+
}
421+
env = append(env, envHostIp)
422+
}
423+
}
424+
}
398425
env = append(env, envOBModuleStatus)
399426
env = append(env, envClusterName)
400427
env = append(env, envClusterId)
@@ -540,7 +567,6 @@ func (m *OBServerManager) createOBServerContainer(obcluster *v1alpha1.OBCluster)
540567
Name: "ZONE_NAME",
541568
Value: m.OBServer.Spec.Zone,
542569
}
543-
544570
mode, modeAnnoExist := resourceutils.GetAnnotationField(m.OBServer, oceanbaseconst.AnnotationsMode)
545571
if modeAnnoExist {
546572
switch mode {
@@ -567,7 +593,6 @@ func (m *OBServerManager) createOBServerContainer(obcluster *v1alpha1.OBCluster)
567593
}
568594
}
569595
}
570-
571596
startupParameters := make([]string, 0)
572597
for _, parameter := range obcluster.Spec.Parameters {
573598
reserved := false

0 commit comments

Comments
 (0)