#!/bin/bash # Bailey Allison # Matthew Hutchinson #v7 OS=$(cat /etc/os-release | grep -w NAME) if [ "$OS" == 'NAME="Rocky Linux"' ] ; then dnf install ceph-mgr ceph-mgr-modules-core ceph-mgr-dashboard elif [ "$OS" == 'NAME="Ubuntu"' ]; then apt install ceph-mgr ceph-mgr-modules-core ceph-mgr-dashboard else echo "OS is not Ubuntu or Rocky Linux" exit fi # Check for ceph.conf and admin keyring if [[ ! -f "/etc/ceph/ceph.conf" || ! -f "/etc/ceph/ceph.client.admin.keyring" ]]; then echo "ceph conf and admin keyring not on host, exiting" exit 1 fi # Create Keyring Directory and make Keyring echo "Creating Keyring" mkdir /var/lib/ceph/mgr/ceph-$(hostname -s) ceph auth get-or-create mgr.$(hostname -s) mon 'allow profile mgr' osd 'allow *' mds 'allow *' ceph auth get mgr.$(hostname -s) > /var/lib/ceph/mgr/ceph-$(hostname -s)/keyring chown ceph:ceph /var/lib/ceph/mgr/ceph-$(hostname -s)/keyring # Open Firewall ports echo "OPening Firewall" firewall-cmd --add-service=ceph --permanent firewall-cmd --reload # Start MGR Service echo "Starting MGR service" systemctl enable --now ceph-mgr@$(hostname -s) ceph -s echo -e "\e[1;31mmgr-$(hostname -s)\e[0m has been \e[1;32madded\e[0m"