Cette rubrique explique comment installer le plug-in de surveillance xdragon_hardware_detect_plugin sur une instance ECS Bare Metal équipée d'un disque local.
Prérequis
L'instance ECS Bare Metal cible doit répondre aux exigences suivantes :
L'instance se trouve dans l'une des régions suivantes : Chine (Pékin), Chine (Shanghai), Chine (Hangzhou), Chine (Shenzhen) ou Chine (Zhangjiakou).
L'instance exécute un système d'exploitation Linux.
Cette exigence s'applique uniquement si vous utilisez OOS pour installer le plug-in de surveillance par lots en faisant correspondre les tags. Si vous souhaitez sélectionner des instances ECS Bare Metal par tag, assurez-vous que les instances cibles sont taguées. Pour plus d'informations, consultez la section Créer ou ajouter un tag.
-
Cloud Assistant Agent est installé. Pour plus d'informations, consultez la section Installer Cloud Assistant Agent.
RemarqueCloud Assistant Agent est préinstallé sur les instances ECS créées à partir d'une image publique après le 1er décembre 2017.
Informations contextuelles
Si vous utilisez une instance ECS Bare Metal avec un disque local, vous devez surveiller et diagnostiquer l'état de santé du disque local.
Le plug-in xdragon_hardware_detect_plugin vérifie périodiquement l'état de santé des disques locaux de votre instance ECS Bare Metal. Si le plug-in détecte une erreur sur un disque local, il signale automatiquement un événement système. Le code d'événement système correspondant est SystemMaintenance.ReInitErrorDisk. Pour plus d'informations, consultez la section Maintenance et événements système pour les instances avec disques locaux.
Installation par lots via OOS
Utilisez un modèle public dans CloudOps Orchestration Service (OOS) pour installer automatiquement le plug-in de surveillance xdragon_hardware_detect_plugin.
Connectez-vous à la console OOS.
Dans le coin supérieur gauche de la page, sélectionnez une région et un groupe de ressources.
-
Dans le volet de navigation de gauche, choisissez . Recherchez ACS-ECS-InstallXDragonAndCloudMonitor pour trouver le modèle d'installation du plug-in de surveillance X-Dragon, puis cliquez sur Create an execution..

-
Dans la boîte de dialogue Create an execution., suivez les étapes ci-dessous :
À l'étape Basic Information, définissez le execution mode sur Automatic et laissez les autres paramètres à leurs valeurs par défaut. Cliquez ensuite sur Next: Set Parameters.
-
À l'étape Parameter Settings, configurez les paramètres suivants et laissez les autres paramètres à leurs valeurs par défaut. Cliquez ensuite sur Next: Confirm.
-
Action : Sélectionnez install pour installer le plug-in.
RemarqueCe modèle permet d'installer, de mettre à jour ou de désinstaller le plug-in de surveillance. Sélectionnez l'action requise.
Target Instances : Sélectionnez une ou plusieurs instances ECS Bare Metal sur lesquelles installer le plug-in de surveillance.
Rate Control : Sélectionnez Concurrency-based Control. Pour Concurrency, sélectionnez % et définissez la valeur sur 100.

-
Confirmez la configuration du modèle et cliquez sur Create.
Une fois la tâche automatisée créée, consultez les résultats d'exécution sur la page Executions.
Si Success s'affiche dans la colonne Execution Status correspondant à la tâche O&M, celle-ci est terminée.
Si Failed s'affiche dans la colonne Execution Status correspondant à la tâche O&M, cliquez sur Details dans la colonne Actions. Cliquez sur Log dans la section Output. Analysez et ajustez ensuite le contenu de l'exécution en fonction des informations du journal.
Installation manuelle
Utilisez l'outil aliyun_installer fourni par Cloud Assistant Agent pour télécharger et installer le plug-in de surveillance xdragon_hardware_detect_plugin.
Connectez-vous à l'instance ECS Bare Metal en tant qu'utilisateur root.
(Facultatif) Exécutez la commande
aliyun_installer -hpour afficher l'aide de l'outil.-
Exécutez la commande aliyun_installer pour installer le plug-in de surveillance xdragon_hardware_detect_plugin.
aliyun_installer -i xdragon_hardware_detect_plugin -e 1.0.0 -
Enregistrez et exécutez le script shell pour installer une version spécifique de l'agent CloudMonitor. Pour le contenu du script, consultez la section Exemple de script ci-dessous.
bash <nameOfTheScript>.shRemarqueInstallez le plug-in de surveillance xdragon_hardware_detect_plugin avant d'installer l'agent CloudMonitor. Si vous avez déjà installé l'agent CloudMonitor, exécutez la commande
/usr/local/cloudmonitor/CmsGoAgent.linux-amd64 restartpour le redémarrer. -
Exécutez la commande
smartctl -Vpour vérifier si l'outil d'analyse des disques locaux smartctl est installé.Si la sortie de la commande inclut le numéro de version, l'outil est installé.
-
(Facultatif) Si l'outil smartctl n'est pas installé, installez-le selon votre système d'exploitation :
-
CentOS :
yum install smartmontools -
Ubuntu :
apt update && apt install smartmontools Pour les autres distributions Linux, consultez la documentation smartmontools.
-
Le script suivant installe manuellement une version spécifique de l'agent CloudMonitor :
#!/bin/bash
echo "installing cms agent"
if [ -z "${CMS_HOME}" ]; then
CMS_HOME="/usr/local/cloudmonitor"
[[ ! -z "`egrep -i coreos /etc/os-release`" ]] && CMS_HOME="/opt/cloudmonitor"
fi
if [ `uname -m` = "x86_64" ]; then
ARCH="amd64"
else
ARCH="386"
fi
VERSION="2.1.57"
ELF_NAME=CmsGoAgent.linux-${ARCH}
DOWNLOAD_PATH="cms-go-agent/${VERSION}/${ELF_NAME}"
DEST_UPDATE_FILE="$CMS_HOME/${ELF_NAME}"
current_cms_version="0"
# The X-Dragon architecture is always x86, so just check the version.
if [ -f /usr/local/cloudmonitor/CmsGoAgent.linux-amd64 ]; then
current_cms_version="$($DEST_UPDATE_FILE version)"
fi
if [ $current_cms_version = "2.1.57" ]; then
echo "CmsGoAgent already installed"
echo "Installation success."
exit 0
fi
if [ -z "${REGION_ID}" ]; then
REGION_ID="$(wget -q --timeout=1 -t 1 -O - 'http://100.100.100.200/latest/meta-data/region-id')"
fi
if [ -d $CMS_HOME ] ; then
if [ -f $CMS_HOME/wrapper/bin/cloudmonitor.sh ] ; then
$CMS_HOME/wrapper/bin/cloudmonitor.sh remove;
rm -rf $CMS_HOME;
elif [ -f $DEST_UPDATE_FILE ]; then
$DEST_UPDATE_FILE stop
#$DEST_UPDATE_FILE uninstall
ps aux | grep -v grep | grep $ELF_NAME
fi
fi
download()
{
if [ -z "${REGION_ID}" ]; then
echo "Network type is classic."
OSS_URL="http://cms-agent-cn-hangzhou.oss-cn-hangzhou-internal.aliyuncs.com/$DOWNLOAD_PATH"
else
echo "networkType is vpc, REGION_ID: $REGION_ID"
if [[ "$REGION_ID" = "cn-shenzhen-finance-1" ]]; then
OSS_URL="http://cms-download.aliyun.com/$DOWNLOAD_PATH"
CMS_PROXY="szcmsproxy.aliyun.com:3128"
elif [[ "$REGION_ID" = "cn-shanghai-finance-1" ]]; then
OSS_URL="http://cms-agent-$REGION_ID.oss-$REGION_ID-pub-internal.aliyuncs.com/$DOWNLOAD_PATH"
elif [[ "$REGION_ID" = "ap-south-1" ]]; then
OSS_URL="http://cms-download.aliyun.com/$DOWNLOAD_PATH"
CMS_PROXY="cmsproxy-ap-south-1.aliyuncs.com:8080"
elif [ "$REGION_ID" = "ap-southeast-3" -o "$REGION_ID" = "me-east-1" -o "$REGION_ID" = "cn-chengdu" ]; then
OSS_URL="http://cms-download.aliyun.com/$DOWNLOAD_PATH"
else
OSS_URL="http://cms-agent-$REGION_ID.oss-$REGION_ID-internal.aliyuncs.com/$DOWNLOAD_PATH"
fi
fi
echo download from "$OSS_URL"
wget -q -e "http_proxy=$CMS_PROXY" "$OSS_URL" -O "$DEST_UPDATE_FILE" -t 3 --connect-timeout=2
if [ $? != 0 ]; then
echo "Download failed. Retrying..."
CMS_PROXY="vpc-opencmsproxy.aliyun.com:8080";
OSS_URL="http://cms-download.aliyun.com/$DOWNLOAD_PATH"
wget -q -e "http_proxy=$CMS_PROXY" "$OSS_URL" -O "$DEST_UPDATE_FILE" -t 3 --connect-timeout=2
fi
if [ $? != 0 ]; then
echo "Download failed. Retrying..."
CMS_PROXY="opencmsproxy.aliyun.com:8080";
OSS_URL="http://cms-download.aliyun.com/$DOWNLOAD_PATH"
wget -q -e "http_proxy=$CMS_PROXY" "$OSS_URL" -O "$DEST_UPDATE_FILE" -t 3 --connect-timeout=2
fi
}
mkdir -p $CMS_HOME && \
chown -R root:root $CMS_HOME && \
download && \
chmod a+x $DEST_UPDATE_FILE
$DEST_UPDATE_FILE check
RC=$?
if [ ${RC} -ne 0 ]; then
echo CmsGoAgent install failed, your platform is not supported
exit ${RC}
fi
$DEST_UPDATE_FILE install >/dev/null 2>&1 || true
$DEST_UPDATE_FILE start
ps aux | grep -v grep | grep $ELF_NAME
ACT_VERSION=`$DEST_UPDATE_FILE version`
if [ -n "$ACT_VERSION" ]; then
echo CmsGoAgent v$ACT_VERSION installed
else
echo CmsGoAgent install failed
exit 1
fi
Résultats
Après l'installation, le plug-in de surveillance xdragon_hardware_detect_plugin se trouve dans le répertoire /usr/local/xdragon_hwqc. Pour mettre à jour le plug-in, exécutez aliyun_installer -d xdragon_hardware_detect_plugin. Pour le désinstaller, exécutez aliyun_installer -u xdragon_hardware_detect_plugin.
Étapes suivantes
Appelez une opération API ECS pour isoler un disque local défectueux. Une fois le disque isolé, l'instance ECS Bare Metal continue de s'exécuter sur le même serveur physique. Pour plus d'informations, consultez la section Maintenance et événements système pour les instances avec disques locaux.