Documentation
¶
Index ¶
- type CephConfig
- type CephConfigDifference
- type CephConfigDifferenceKind
- type CephOSDConfig
- type CephOSDConfigDifference
- type CephOSDConfigDifferenceKind
- type ClusterHealthIndicator
- type ClusterHealthIndicatorStatus
- type ClusterHealthIndicatorType
- type ClusterReport
- type ClusterStatus
- type ClusterStatusCheck
- type ClusterStatusHealth
- type ClusterStatusMutedCheck
- type Device
- type OSDDaemon
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CephConfig ¶
type CephConfigDifference ¶
type CephConfigDifference struct {
Kind CephConfigDifferenceKind
Section string
Key string
OldValue *string
Value *string
}
type CephConfigDifferenceKind ¶
type CephConfigDifferenceKind string
const ( CephConfigDifferenceKindAdd CephConfigDifferenceKind = "add" CephConfigDifferenceKindChange CephConfigDifferenceKind = "change" CephConfigDifferenceKindRemove CephConfigDifferenceKind = "remove" )
type CephOSDConfig ¶ added in v0.2.0
type CephOSDConfig struct {
AllowCrimson bool `yaml:"allow_crimson" diff:"allow_crimson" default:"false"`
BackfillfullRatio float32 `yaml:"backfillfull_ratio" diff:"backfillfull_ratio" default:"0.9"`
FullRatio float32 `yaml:"full_ratio" diff:"full_ratio" default:"0.95"`
NearfullRatio float32 `yaml:"nearfull_ratio" diff:"nearfull_ratio" default:"0.85"`
RequireMinCompatClient string `yaml:"require_min_compat_client" diff:"require_min_compat_client" default:"reef"`
}
type CephOSDConfigDifference ¶ added in v0.2.0
type CephOSDConfigDifferenceKind ¶ added in v0.2.0
type CephOSDConfigDifferenceKind string
type ClusterHealthIndicator ¶
type ClusterHealthIndicator struct {
Indicator ClusterHealthIndicatorType
CurrentValue string
CurrentValueStatus ClusterHealthIndicatorStatus
}
type ClusterHealthIndicatorStatus ¶
type ClusterHealthIndicatorStatus string
const ( ClusterHealthIndicatorStatusGood ClusterHealthIndicatorStatus = "GOOD" ClusterHealthIndicatorStatusAtRisk ClusterHealthIndicatorStatus = "AT_RISK" ClusterHealthIndicatorStatusDangerous ClusterHealthIndicatorStatus = "DANGEROUS" ClusterHealthIndicatorStatusUnknown ClusterHealthIndicatorStatus = "UNKNOWN" )
type ClusterHealthIndicatorType ¶
type ClusterHealthIndicatorType string
const ( // ClusterHealthIndicatorTypeAllowCrimson reflects allow_crimson flag state // // Description: allow_crimson flag means possibility of using Crimson OSD // releases which are future releases so not marked as release or stable // which makes it risky to use in production environment. // // Ref: https://docs.ceph.com/en/latest/glossary/#term-Crimson // // Good: false // AtRisk: true // Dangerous: n/a ClusterHealthIndicatorTypeAllowCrimson ClusterHealthIndicatorType = "ALLOW_CRIMSON" // ClusterHealthIndicatorTypeClusterStatus reflects overall cluster status // reported by ceph status command // // Description: cluster health is the universal indicator for overall cluster // status which is also displayed via `ceph status` command. // // Ref: https://docs.ceph.com/en/latest/rados/operations/health-checks/ // // Good: HEALTH_OK // AtRisk: HEALTH_WARN // Dangerous: HEALTH_ERR ClusterHealthIndicatorTypeClusterStatus ClusterHealthIndicatorType = "CLUSTER_STATUS" // ClusterHealthIndicatorTypeInactivePGs reflects amount of PGs which are not in // active state // // Description: Inactive PGs indicator shows how many PGs are inactive i.e. can not be // used to perform IO operations at the moment. // // Ref: https://docs.ceph.com/en/latest/rados/operations/monitoring-osd-pg/#monitoring-pg-states // // Good: 0 // AtRisk: n/a // Dangerous: >0 ClusterHealthIndicatorTypeInactivePGs ClusterHealthIndicatorType = "INACTIVE_PGS" // ClusterHealthIndicatorTypeIPCollision ensures each IP is used by the only OSD daemon // active state // // Good: no collisions // AtRisk: n/a // Dangerous: collisions found ClusterHealthIndicatorTypeIPCollision ClusterHealthIndicatorType = "IP_COLLISION" // ClusterHealthIndicatorTypeMonsDown reflects amount of monitor nodes which are down // // Description: amount of monitors which are not up at the moment // // Good: 0 // AtRisk: >0 // Dangerous: n/a ClusterHealthIndicatorTypeMonsDown ClusterHealthIndicatorType = "MON_DOWN" // ClusterHealthIndicatorTypeMutesAmount reflects amount of mutes set on the cluster // // Description: Ceph allows to mute checks i.e. exclude them from triggering // overall cluster status. Muted checks are easy to miss when making decision // of performing any maintenance which could cause a more serious cluster // state or even data loss. // // Good: 0 // AtRisk: >0 // Dangerous: n/a ClusterHealthIndicatorTypeMutesAmount ClusterHealthIndicatorType = "MUTES_AMOUNT" // ClusterHealthIndicatorTypeOSDsDown reflects amount of OSD nodes which are down // // Description: Amount of OSDs in down state // // Good: 0 // AtRisk: >0 // Dangerous: n/a ClusterHealthIndicatorTypeOSDsDown ClusterHealthIndicatorType = "OSD_DOWN" // ClusterHealthIndicatorTypeOSDsMetadataSize reflects metadata size in percents of total OSD capacity // // Description: In Ceph documentation is described typical data usage for // block.db volume which is between 1-4%, however using RGW increases this // estimation to 4% at least. This value allows to estimate size of block.db // volume for hybrid OSD and growing over block.db volume capacity will // cause spillover - i.e. writing metadata to data volume which is usually // much slower. // // Ref: https://docs.ceph.com/en/latest/rados/configuration/bluestore-config-ref/#sizing // // Good: 0-7 // AtRisk: >15 // Dangerous: >20 ClusterHealthIndicatorTypeOSDsMetadataSize ClusterHealthIndicatorType = "OSD_METADATA_SIZE" // ClusterHealthIndicatorTypeOSDVersionMismatch indicates different versions // of running OSD daemons at the same time // // Description: running different versions of components is normal only // while upgrade procedure is a go. In all other cases daemon versions // should match i.e. their amount must be equal 1 except the case of // upgrade. // // Good: 1 // AtRisk: 2 // Dangerous: >2 ClusterHealthIndicatorTypeOSDsNumDaemonVersions ClusterHealthIndicatorType = "OSD_NUM_DAEMON_VERSIONS" // ClusterHealthIndicatorTypeOSDsOut reflects amount of OSD nodes which are out // // Description: Amount of OSDs in out state // // Good: 0 // AtRisk: >0 // Dangerous: n/a ClusterHealthIndicatorTypeOSDsOut ClusterHealthIndicatorType = "OSD_OUT" // ClusterHealthIndicatorTypeQuorum reflects monitor quorum status // // Description: monitors in quorum which should be the same as total // monitors amount // // Good: 0 // AtRisk: >0 // Dangerous: n/a ClusterHealthIndicatorTypeQuorum ClusterHealthIndicatorType = "QUORUM" // ClusterHealthIndicatorTypeDownPGs reflects amount of PGs which are down // // Description: Down PGs indicator shows how many PGs are down i.e. are stored // on OSDs which are down and there's no available copy or a way to reconstruct // them // // Ref: https://docs.ceph.com/en/latest/rados/operations/monitoring-osd-pg/#monitoring-pg-states // // Good: 0 // AtRisk: n/a // Dangerous: >0 ClusterHealthIndicatorTypeDownPGs ClusterHealthIndicatorType = "DOWN_PGS" // ClusterHealthIndicatorTypeUncleanPGs reflects amount of PGs which are not in clean state // // Description: Inactive PGs indicator shows how many PGs are inactive i.e. can not be // used to perform IO operations at the moment. // // Ref: https://docs.ceph.com/en/latest/rados/operations/monitoring-osd-pg/#monitoring-pg-states // // Good: 0 // AtRisk: >0 // Dangerous: n/a ClusterHealthIndicatorTypeUncleanPGs ClusterHealthIndicatorType = "UNCLEAN_PGS" // ClusterHealthIndicatorTypeDeviceHealthWearout reflects devices with risky wearout levels // // Good: 0 // AtRisk: at least 1 devices w/ wear out >50% // Dangerous: at least 1 device w/ wear out >75% ClusterHealthIndicatorTypeDeviceHealthWearout ClusterHealthIndicatorType = "DEVICE_HEALTH_WEAROUT" )
type ClusterReport ¶
type ClusterReport struct {
AllowCrimson bool
BackfillfullRatio float32
Checks []ClusterStatusCheck
Devices []Device
FullRatio float32
HealthStatus ClusterStatusHealth
MutedChecks []ClusterStatusMutedCheck
NearfullRatio float32
NumMons uint8
NumMonsInQuorum uint8
NumOSDs uint16
NumOSDsByDeviceType map[string]uint16
NumOSDsByRelease map[string]uint16
NumOSDsByVersion map[string]uint16
NumOSDsIn uint16
NumOSDsUp uint16
NumOSDsWithoutClusterAddress uint16
NumPGs uint32
NumPGsByState map[string]uint32
NumPools uint16
OSDDaemons []OSDDaemon
RequireMinCompatClient string
StretchMode bool
TotalOSDCapacityKB uint64
TotalOSDUsedDataKB uint64
TotalOSDUsedMetaKB uint64
TotalOSDUsedOMAPKB uint64
}
type ClusterStatus ¶
type ClusterStatus struct {
HealthStatus ClusterStatusHealth
Checks []ClusterStatusCheck
MutedChecks []ClusterStatusMutedCheck
QuorumAmount uint
MonsTotal uint
MonsDownAmount uint
MGRsDownAmount uint
MDSsDownAmount uint
OSDsDownAmount uint
UncleanPGs uint
InactivePGs uint
}
type ClusterStatusCheck ¶
type ClusterStatusCheck struct {
Code string
Severity ClusterStatusHealth
Summary string
}
type ClusterStatusHealth ¶
type ClusterStatusHealth string
const ( ClusterStatusHealthOK ClusterStatusHealth = "HEALTH_OK" ClusterStatusHealthWARN ClusterStatusHealth = "HEALTH_WARN" ClusterStatusHealthERR ClusterStatusHealth = "HEALTH_ERR" ClusterStatusHealthUnknown ClusterStatusHealth = "UNKNOWN" )
type ClusterStatusMutedCheck ¶
Click to show internal directories.
Click to hide internal directories.