summaryrefslogtreecommitdiffstats
path: root/collectors/python.d.plugin/megacli/metadata.yaml
blob: 4a2ba43ee5ed5f9dcd40781d30c73661ed2b92f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
plugin_name: python.d.plugin
modules:
  - meta:
      plugin_name: python.d.plugin
      module_name: megacli
      monitored_instance:
        name: MegaCLI
        link: "https://wikitech.wikimedia.org/wiki/MegaCli"
        categories:
          - data-collection.storage-mount-points-and-filesystems
        icon_filename: "hard-drive.svg"
      related_resources:
        integrations:
          list: []
      info_provided_to_referring_integrations:
        description: ""
      keywords:
        - storage
        - raid-controller
        - manage-disks
      most_popular: false
    overview:
      data_collection:
        metrics_description: "Examine MegaCLI metrics with Netdata for insights into RAID controller performance. Improve your RAID controller efficiency with real-time MegaCLI metrics."
        method_description: |
          Collects adapter, physical drives and battery stats using megacli command-line tool
          
          Executed commands:
          
            -  `sudo -n megacli -LDPDInfo -aAll`
            -  `sudo -n megacli -AdpBbuCmd -a0`
      supported_platforms:
        include: []
        exclude: []
      multi_instance: false
      additional_permissions:
        description: "The module uses megacli, which can only be executed by root. It uses sudo and assumes that it is configured such that the netdata user can execute megacli as root without a password."
      default_behavior:
        auto_detection:
          description: "After all the permissions are satisfied, netdata should be to execute commands via the megacli command line utility"
        limits:
          description: ""
        performance_impact:
          description: ""
    setup:
      prerequisites:
        list:
          - title: Grant permissions for netdata, to run megacli as sudoer
            description: |
              The module uses megacli, which can only be executed by root. It uses sudo and assumes that it is configured such that the netdata user can execute megacli as root without a password.
              
              Add to your /etc/sudoers file:
              which megacli shows the full path to the binary.
              
              ```bash
              netdata ALL=(root)       NOPASSWD: /path/to/megacli
              ```
          - title: "Reset Netdata's systemd unit CapabilityBoundingSet (Linux distributions with systemd)"
            description: |
              The default CapabilityBoundingSet doesn't allow using sudo, and is quite strict in general. Resetting is not optimal, but a next-best solution given the inability to execute arcconf using sudo.
              
              As root user, do the following:
              
              ```bash
              mkdir /etc/systemd/system/netdata.service.d
              echo -e '[Service]\nCapabilityBoundingSet=~' | tee /etc/systemd/system/netdata.service.d/unset-capability-bounding-set.conf
              systemctl daemon-reload
              systemctl restart netdata.service
              ```
      configuration:
        file:
          name: "python.d/megacli.conf"
        options:
          description: |
            There are 2 sections:
            
            * Global variables
            * One or more JOBS that can define multiple different instances to monitor.
            
            The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
            
            Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
            
            Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
          folding:
            title: "Config options"
            enabled: true
          list:
            - name: update_every
              description: Sets the default data collection frequency.
              default_value: 5
              required: false
            - name: priority
              description: Controls the order of charts at the netdata dashboard.
              default_value: 60000
              required: false
            - name: autodetection_retry
              description: Sets the job re-check interval in seconds.
              default_value: 0
              required: false
            - name: penalty
              description: Indicates whether to apply penalty to update_every in case of failures.
              default_value: yes
              required: false
            - name: do_battery
              description: default is no. Battery stats (adds additional call to megacli `megacli -AdpBbuCmd -a0`).
              default_value: no
              required: false
        examples:
          folding:
            enabled: true
            title: "Config"
          list:
            - name: Basic
              folding:
                enabled: false
              description: A basic example configuration per job
              config: |
                job_name:
                    name: myname
                    update_every: 1
                    priority: 60000
                    penalty: yes
                    autodetection_retry: 0
    troubleshooting:
      problems:
        list: []
    alerts:
      - name: megacli_adapter_state
        link: https://github.com/netdata/netdata/blob/master/health/health.d/megacli.conf
        metric: megacli.adapter_degraded
        info: "adapter is in the degraded state (0: false, 1: true)"
      - name: megacli_pd_media_errors
        link: https://github.com/netdata/netdata/blob/master/health/health.d/megacli.conf
        metric: megacli.pd_media_error
        info: number of physical drive media errors
      - name: megacli_pd_predictive_failures
        link: https://github.com/netdata/netdata/blob/master/health/health.d/megacli.conf
        metric: megacli.pd_predictive_failure
        info: number of physical drive predictive failures
      - name: megacli_bbu_relative_charge
        link: https://github.com/netdata/netdata/blob/master/health/health.d/megacli.conf
        metric: megacli.bbu_relative_charge
        info: average battery backup unit (BBU) relative state of charge over the last 10 seconds
      - name: megacli_bbu_cycle_count
        link: https://github.com/netdata/netdata/blob/master/health/health.d/megacli.conf
        metric: megacli.bbu_cycle_count
        info: average battery backup unit (BBU) charge cycles count over the last 10 seconds
    metrics:
      folding:
        title: Metrics
        enabled: false
      description: ""
      availability: []
      scopes:
        - name: global
          description: "These metrics refer to the entire monitored application."
          labels: []
          metrics:
            - name: megacli.adapter_degraded
              description: Adapter State
              unit: "is degraded"
              chart_type: line
              dimensions:
                - name: a dimension per adapter
            - name: megacli.pd_media_error
              description: Physical Drives Media Errors
              unit: "errors/s"
              chart_type: line
              dimensions:
                - name: a dimension per physical drive
            - name: megacli.pd_predictive_failure
              description: Physical Drives Predictive Failures
              unit: "failures/s"
              chart_type: line
              dimensions:
                - name: a dimension per physical drive
        - name: battery
          description: "Metrics related to Battery Backup Units, each BBU provides its own set of the following metrics."
          labels: []
          metrics:
            - name: megacli.bbu_relative_charge
              description: Relative State of Charge
              unit: "percentage"
              chart_type: line
              dimensions:
                - name: adapter {battery id}
            - name: megacli.bbu_cycle_count
              description: Cycle Count
              unit: "cycle count"
              chart_type: line
              dimensions:
                - name: adapter {battery id}