heal

package
v0.0.0-...-01eed89 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 19, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CheckAndHeal

type CheckAndHeal struct {
	Logger     logr.Logger
	PodControl k8sutil.IPodControl
	Pods       []*corev1.Pod
	DryRun     bool
}

func (*CheckAndHeal) FixClusterSplit

func (c *CheckAndHeal) FixClusterSplit(cluster *redisv1alpha1.DistributedRedisCluster, infos *redisutil.ClusterInfos, admin redisutil.IAdmin, config *config.Redis) (bool, error)

FixClusterSplit use to detect and fix Cluster split

func (*CheckAndHeal) FixFailedNodes

func (c *CheckAndHeal) FixFailedNodes(cluster *redisv1alpha1.DistributedRedisCluster, infos *redisutil.ClusterInfos, admin redisutil.IAdmin) (bool, error)

FixFailedNodes fix failed nodes: in some cases (cluster without enough master after crash or scale down), some nodes may still know about fail nodes

func (*CheckAndHeal) FixTerminatingPods

func (c *CheckAndHeal) FixTerminatingPods(cluster *redisv1alpha1.DistributedRedisCluster, maxDuration time.Duration) (bool, error)

FixTerminatingPods used to for the deletion of pod blocked in terminating status. in it append the this method will for the deletion of the Pod.

func (*CheckAndHeal) FixUntrustedNodes

func (c *CheckAndHeal) FixUntrustedNodes(cluster *redisv1alpha1.DistributedRedisCluster, infos *redisutil.ClusterInfos, admin redisutil.IAdmin) (bool, error)

FixUntrustedNodes used to remove Nodes that are not trusted by other nodes. It can append when a node are removed from the cluster (with the "forget nodes" command) but try to rejoins the cluster.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL