1
0
mirror of https://github.com/rancher/rke.git synced 2025-09-05 17:00:20 +00:00

allow single node deployments

This commit is contained in:
moelsayed
2017-11-30 01:18:12 +02:00
parent 6fafe7bddc
commit 9807ce60df
3 changed files with 20 additions and 31 deletions

View File

@@ -71,15 +71,6 @@ func validateHostsOptions(c *Cluster) error {
return fmt.Errorf("Role [%s] for host (%d) is not recognized", role, i+1) return fmt.Errorf("Role [%s] for host (%d) is not recognized", role, i+1)
} }
} }
k := 0
for _, role := range host.Role {
if role == services.ControlRole || role == services.WorkerRole {
k++
}
}
if k > 1 {
return fmt.Errorf("Host (%d) can't contain both worker and controlplane roles", i+1)
}
} }
return nil return nil
} }

View File

@@ -44,7 +44,6 @@ func buildKubeletConfig(host hosts.Host, kubeletService v1.KubeletService, isMas
}, },
} }
if isMaster { if isMaster {
imageCfg.Cmd = append(imageCfg.Cmd, "--register-with-taints=node-role.kubernetes.io/master=:NoSchedule")
imageCfg.Cmd = append(imageCfg.Cmd, "--node-labels=node-role.kubernetes.io/master=true") imageCfg.Cmd = append(imageCfg.Cmd, "--node-labels=node-role.kubernetes.io/master=true")
} }
hostCfg := &container.HostConfig{ hostCfg := &container.HostConfig{

View File

@@ -10,29 +10,33 @@ func RunWorkerPlane(controlHosts []hosts.Host, workerHosts []hosts.Host, workerS
logrus.Infof("[%s] Building up Worker Plane..", WorkerRole) logrus.Infof("[%s] Building up Worker Plane..", WorkerRole)
for _, host := range controlHosts { for _, host := range controlHosts {
// only one master for now // only one master for now
err := runKubelet(host, workerServices.Kubelet, true) if err := runKubelet(host, workerServices.Kubelet, true); err != nil {
if err != nil {
return err return err
} }
err = runKubeproxy(host, workerServices.Kubeproxy) if err := runKubeproxy(host, workerServices.Kubeproxy); err != nil {
if err != nil {
return err return err
} }
} }
for _, host := range workerHosts { for _, host := range workerHosts {
// run nginx proxy // run nginx proxy
err := runNginxProxy(host, controlHosts) isControlPlaneHost := false
if err != nil { for _, role := range host.Role {
if role == ControlRole {
isControlPlaneHost = true
break
}
}
if !isControlPlaneHost {
if err := runNginxProxy(host, controlHosts); err != nil {
return err return err
} }
}
// run kubelet // run kubelet
err = runKubelet(host, workerServices.Kubelet, false) if err := runKubelet(host, workerServices.Kubelet, false); err != nil {
if err != nil {
return err return err
} }
// run kubeproxy // run kubeproxy
err = runKubeproxy(host, workerServices.Kubeproxy) if err := runKubeproxy(host, workerServices.Kubeproxy); err != nil {
if err != nil {
return err return err
} }
} }
@@ -43,27 +47,22 @@ func RunWorkerPlane(controlHosts []hosts.Host, workerHosts []hosts.Host, workerS
func RemoveWorkerPlane(controlHosts []hosts.Host, workerHosts []hosts.Host) error { func RemoveWorkerPlane(controlHosts []hosts.Host, workerHosts []hosts.Host) error {
logrus.Infof("[%s] Tearing down Worker Plane..", WorkerRole) logrus.Infof("[%s] Tearing down Worker Plane..", WorkerRole)
for _, host := range controlHosts { for _, host := range controlHosts {
err := removeKubelet(host) if err := removeKubelet(host); err != nil {
if err != nil {
return err return err
} }
err = removeKubeproxy(host) if err := removeKubeproxy(host); err != nil {
if err != nil {
return err return err
} }
} }
for _, host := range workerHosts { for _, host := range workerHosts {
err := removeKubelet(host) if err := removeKubelet(host); err != nil {
if err != nil {
return err return err
} }
err = removeKubeproxy(host) if err := removeKubeproxy(host); err != nil {
if err != nil {
return err return err
} }
err = removeNginxProxy(host) if err := removeNginxProxy(host); err != nil {
if err != nil {
return err return err
} }
} }