mirror of
https://github.com/ceph/ceph-csi.git
synced 2025-06-13 02:33:34 +00:00
deploy: add pod anti-affinity for provisioner deployments
The added anti-affinity rules prevent provisioner operators from scheduling on the same nodes. The kubernetes scheduler will spread the pods across nodes to improve availability during node failures. Signed-off-by: Nico Berlee <nico.berlee@on2it.net>
This commit is contained in:
committed by
mergify[bot]
parent
fd4328cd53
commit
6a5f1380b0
@ -63,6 +63,7 @@ func createORDeleteCephfsResouces(action string) {
|
||||
if err != nil {
|
||||
e2elog.Failf("failed to read content from %s with error %v", cephfsDirPath+cephfsProvisioner, err)
|
||||
}
|
||||
data = oneReplicaDeployYaml(data)
|
||||
_, err = framework.RunKubectlInput(cephCSINamespace, data, action, ns, "-f", "-")
|
||||
if err != nil {
|
||||
e2elog.Failf("failed to %s CephFS provisioner with error %v", action, err)
|
||||
|
@ -70,6 +70,7 @@ func createORDeleteRbdResouces(action string) {
|
||||
if err != nil {
|
||||
e2elog.Failf("failed to read content from %s with error %v", rbdDirPath+rbdProvisioner, err)
|
||||
}
|
||||
data = oneReplicaDeployYaml(data)
|
||||
_, err = framework.RunKubectlInput(cephCSINamespace, data, action, ns, "-f", "-")
|
||||
if err != nil {
|
||||
e2elog.Failf("failed to %s rbd provisioner with error %v", action, err)
|
||||
|
@ -7,6 +7,7 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"regexp"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
@ -492,3 +493,8 @@ func addTopologyDomainsToDSYaml(template, labels string) string {
|
||||
return strings.ReplaceAll(template, "# - \"--domainlabels=failure-domain/region,failure-domain/zone\"",
|
||||
"- \"--domainlabels="+labels+"\"")
|
||||
}
|
||||
|
||||
func oneReplicaDeployYaml(template string) string {
|
||||
var re = regexp.MustCompile(`(\s+replicas:) \d+`)
|
||||
return re.ReplaceAllString(template, `$1 1`)
|
||||
}
|
||||
|
Reference in New Issue
Block a user