Documentation ¶
Overview ¶
Package mon for the Ceph monitors.
Package mon for the Ceph monitors.
Package mon for the Ceph monitors.
Package mon for the Ceph monitors.
Index ¶
- Constants
- Variables
- func AdminSecretEnvVar() v1.EnvVar
- func ClusterNameEnvVar(name string) v1.EnvVar
- func EndpointEnvVar() v1.EnvVar
- func PublicIPEnvVar(publicIP string) v1.EnvVar
- func SecretEnvVar() v1.EnvVar
- func WriteConnectionConfig(context *clusterd.Context, clusterInfo *mon.ClusterInfo) error
- type Cluster
- type HealthChecker
- type Mapping
- type NodeInfo
Constants ¶
const ( // EndpointConfigMapName is the name of the configmap with mon endpoints EndpointConfigMapName = "rook-ceph-mon-endpoints" // EndpointDataKey is the name of the key inside the mon configmap to get the endpoints EndpointDataKey = "data" // MaxMonIDKey is the name of the max mon id used MaxMonIDKey = "maxMonId" // MappingKey is the name of the mapping for the mon->node and node->port MappingKey = "mapping" // DefaultMonCount Default mon count for a cluster DefaultMonCount = 3 // MaxMonCount Maximum allowed mon count for a cluster MaxMonCount = 9 )
Variables ¶
var ( // HealthCheckInterval interval to check the mons to be in quorum HealthCheckInterval = 45 * time.Second // MonOutTimeout the duration to wait before removing/failover to a new mon pod MonOutTimeout = 300 * time.Second )
Functions ¶
func AdminSecretEnvVar ¶
AdminSecretEnvVar is the admin secret environment var
func ClusterNameEnvVar ¶
ClusterNameEnvVar is the cluster name environment var
func EndpointEnvVar ¶
EndpointEnvVar is the mon endpoint environment var
func PublicIPEnvVar ¶
PublicIPEnvVar is the public ip env var for monitors
func WriteConnectionConfig ¶
func WriteConnectionConfig(context *clusterd.Context, clusterInfo *mon.ClusterInfo) error
WriteConnectionConfig save monitor connection config to disk
Types ¶
type Cluster ¶
type Cluster struct { Namespace string Keyring string Version string MasterHost string Size int AllowMultiplePerNode bool Port int32 HostNetwork bool // contains filtered or unexported fields }
Cluster is for the cluster of monitors
func New ¶
func New(context *clusterd.Context, namespace, dataDirHostPath, version string, mon cephv1beta1.MonSpec, placement rookalpha.Placement, hostNetwork bool, resources v1.ResourceRequirements, ownerRef metav1.OwnerReference) *Cluster
New creates an instance of a mon cluster
type HealthChecker ¶
type HealthChecker struct {
// contains filtered or unexported fields
}
HealthChecker check health for the monitors
func NewHealthChecker ¶
func NewHealthChecker(monCluster *Cluster) *HealthChecker
NewHealthChecker creates a new HealthChecker object
func (*HealthChecker) Check ¶
func (hc *HealthChecker) Check(stopCh chan struct{})
Check periodically the health of the monitors
type Mapping ¶
Mapping mon node and port mapping
func CreateOrLoadClusterInfo ¶
func CreateOrLoadClusterInfo(context *clusterd.Context, namespace string, ownerRef *metav1.OwnerReference) (*mon.ClusterInfo, int, *Mapping, error)
CreateOrLoadClusterInfo constructs or loads a clusterinfo and returns it along with the maxMonID
func LoadClusterInfo ¶
func LoadClusterInfo(context *clusterd.Context, namespace string) (*mon.ClusterInfo, int, *Mapping, error)
LoadClusterInfo constructs or loads a clusterinfo and returns it along with the maxMonID