File: //proc/self/root/usr/lib/check_mk_agent/plugins/mk_ceph
#!/bin/bash
# Copyright (C) 2019 Checkmk GmbH - License: GNU General Public License v2
# This file is part of Checkmk (https://checkmk.com). It is subject to the terms and
# conditions defined in the file COPYING, which is part of this source code package.
# Reason for this no-op: shellcheck disable=... before the first command disables the error for the
# entire script.
:
# Disable unused variable error (needed to keep track of version)
# shellcheck disable=SC2034
CMK_VERSION="2.3.0p38"
# Check Ceph storage
# Config file must contain:
# USER=client.admin
# KEYRING=/etc/ceph/ceph.client.admin.keyring
# shellcheck disable=SC1091 # TODO: add a configuration example and remove this suppression
# shellcheck source=agents/cfg_examples/ceph.cfg
. "$MK_CONFDIR/ceph.cfg" 2>/dev/null
if [ -n "$USER" ] && [ -n "$KEYRING" ]; then
CEPH_CMD="ceph -n $USER --keyring=$KEYRING"
echo "<<<ceph_status>>>"
$CEPH_CMD -s -f json-pretty
if OUT="$($CEPH_CMD df detail --format json)"; then
echo "<<<ceph_df_json:sep(0)>>>"
$CEPH_CMD version --format json
echo "$OUT"
else
# fallback for old versions if json output is not available
echo "<<<ceph_df>>>"
$CEPH_CMD df detail
fi
fi