GetAPIParams() ([]string, error)
// GetSchedulerParams returns scheduler parameters.
GetSchedulerParams() ([]string, error)
+ // GetControllerManagerParams returns controller manager parameters.
+ GetControllerManagerParams() ([]string, error)
}
// Command represents commands run on cluster.
APIProcess Command = iota
// SchedulerProcess represents scheduler command ("kube-scheduler").
SchedulerProcess
+ // ControllerManagerProcess represents controller manager command ("kube-controller-manager").
+ ControllerManagerProcess
)
func (c Command) String() string {
names := [...]string{
"kube-apiserver",
"kube-scheduler",
+ "kube-controller-manager",
}
- if c < APIProcess || c > SchedulerProcess {
+ if c < APIProcess || c > ControllerManagerProcess {
return "exit"
}
return names[c]
APIService Service = iota
// SchedulerService represents scheduler service ("kubernetes/scheduler").
SchedulerService
+ // ControllerManagerService represents controller manager service ("kubernetes/controller-manager").
+ ControllerManagerService
)
func (s Service) String() string {
names := [...]string{
"kubernetes/kubernetes",
"kubernetes/scheduler",
+ "kubernetes/controller-manager",
}
- if s < APIService || s > SchedulerService {
+ if s < APIService || s > ControllerManagerService {
return ""
}
return names[s]
return getProcessParams(check.SchedulerProcess, check.SchedulerService)
}
+// GetControllerManagerParams returns parameters of running Kubernetes scheduler.
+// It queries default environment set in configuration file.
+func (r *Rancher) GetControllerManagerParams() ([]string, error) {
+ return getProcessParams(check.ControllerManagerProcess, check.ControllerManagerService)
+}
+
func getProcessParams(process check.Command, service check.Service) ([]string, error) {
hosts, err := listHosts()
if err != nil {
return getProcessParams(check.SchedulerProcess)
}
+// GetControllerManagerParams returns parameters of running Kubernetes scheduler.
+// It queries only cluster nodes with "controlplane" role.
+func (r *Raw) GetControllerManagerParams() ([]string, error) {
+ return getProcessParams(check.ControllerManagerProcess)
+}
+
func getProcessParams(process check.Command) ([]string, error) {
nodes, err := config.GetNodesInfo()
if err != nil {