Surveillance et gestion des serveurs de stockage Exadata avec ExaCLI

L'utilitaire de ligne de commande ExaCLI vous permet d'exécuter des fonctions de surveillance et de gestion sur des serveurs de stockage Exadata dans une instance Exadata Cloud Infrastructure.

À propos de l'utilitaire de ligne de commande ExaCLI

ExaCLI fournit un sous-ensemble de commandes figurant dans l'utilitaire de ligne de commande Exadata sur place.

ExaCLI fournit un sous-ensemble de commandes figurant dans l'utilitaire de ligne de commande Exadata sur place CellCLI utility. L'utilitaire s'exécute sur les machines virtuelles de base de données dans le service Exadata Cloud.

Pour connaître les commandes disponibles, consultez la liste Commande ExaCLI de cette rubrique.

Nom d'utilisateur et mot de passe pour le serveur de stockage Exadata

Vous avez besoin d'un nom d'utilisateur et d'un mot de passe pour vous connecter au serveur de stockage Exadata.

Sur Exadata Cloud Infrastructure, l'utilisateur préconfiguré pour le serveur de stockage Exadata est Cloud_user_clustername, où clustername est le nom de la grappe de machines virtuelles (MV) utilisée.

Vous pouvez déterminer le nom de la grappe de MV en exécutant la commande crsctl suivante en tant qu'utilisateur grid sur n'importe quel noeud de la grappe :
crsctl get cluster name

Cette commande retourne CRS-6724: Current cluster name is <cluster_name>

Le mot de passe pour cloud_user_clustername est initialement réglé à une valeur aléatoire, que vous pouvez voir en exécutant la commande suivante en tant qu'utilisateur root sur n'importe quel noeud de la grappe :
/opt/exacloud/get_cs_data.py

Cette commande retourne un mot de passe <pwd>

Ensuite, effectuez un test à l'aide de ExaCLI en tant qu'utilisateur racine :
exacli -l cloud_user_<clusternmae> -c 192.168.136.14
Password: ****************************
exacli cloud_user_<cluster_name>@192.168.136.14>

Syntaxe de commande ExaCLI

Pour les cibles Serveur de stockage Exadata, construisez vos commandes à l'aide de la syntaxe suivante.

Notez que cet exemple de syntaxe suppose que vous êtes l'utilisateur opc d'un noeud de calcul.
exacli -c [username@]remotehost[:port] [-l username] [--xml] [--cookie-jar filename] [-e {command | 'command; command' | @batchfile}]
Cet exemple présente l'utilisateur d'un noeud de calcul Exadata émettant la commande de connexion à ExaCLI afin de démarrer une session ExaCLI interactive sur un serveur de stockage :
[opc@exacs-node1 ~]$ exacli -l cloud_user_clustername -c 192.168.136.7

Voir Connexion à un serveur de stockage avec ExaCLI pour obtenir des informations sur la détermination de l'adresse IP de votre serveur de stockage.

Une fois connecté, exécutez des commandes supplémentaires comme suit :
exacli cloud_user_clustername@192.168.136.7> LIST DATABASE
ASM
HRCDB
Exemple 2

Cet exemple présente une commande unique émise sur un noeud de calcul pour effectuer ce qui suit :

  • Connexion à un serveur de stockage
  • Exécuter une action LIST
  • Quitter la session (spécifié par l'indicateur "-e")
[opc@exacs-node1 ~]$ exacli -l cloud_user_clustername -c 192.168.136.7 --xml --cookie-jar -e list griddisk detail
Option Description

-c [username@]remotehost ou

--connect [username@]remotehost[:port]

Spécifie le noeud distant auquel vous voulez vous connecter. ExaCLI invite à entrer le nom d'utilisateur s'il n'est pas indiqué.

-l username ou

--login-name username

Indique le nom d'utilisateur pour la connexion au noeud distant. L'utilisateur préconfiguré est cloud_user_clustername.
--xml Affiche la sortie dans le format XML.
--cookie-jar [filename]

Indique le nom de fichier de l'emplacement réservé à utiliser. Si le nom du fichier n'est pas indiqué, le témoin est stocké dans un emplacement réservé par défaut situé sous HOME/.exacli/cookiejar, où HOME est le répertoire de base de l'utilisateur du système d'exploitation qui exécute la commande ExaCLI.

La présence d'un témoin valide permet à l'utilisateur ExaCLI d'exécuter des commandes sans avoir à se connecter pour les sessions ExaCLI suivantes.

-e command ou

-e 'command[; command]' ou

-e @batchFile

Indique les commandes ExaCLI à exécuter ou un fichier séquentiel. ExaCLI se ferme après l'exécution des commandes.

Si vous indiquez plusieurs commandes à exécuter, encadrez-les par des guillemets simples pour empêcher l'interprétation du point-virgule.

Omettez cette option pour démarrer une session ExaCLI interactive.

--cert-proxy proxy[:port] Indique le serveur mandataire à utiliser lors du téléchargement des certificats. Si port est omis, le port 80 est utilisé par défaut.

-n ou

--no-prompt

Supprime les invites pour les entrées d'utilisateur.
  • Notes pour l'option --cookie-jar :

    • Le nom d'utilisateur et le mot de passe sont envoyés au noeud distant aux fins d'authentification. Une fois l'authentification effectuée, le noeud distant émet un témoin (les données d'identification de connexion) stocké dans le paramètre filename spécifié sur le noeud de base de données. Si le paramètre filename n'est pas indiqué, le témoin est stocké dans un emplacement réservé par défaut situé sous HOME/.exacli/cookiejar, où HOME est le répertoire de base de l'utilisateur du système d'exploitation qui exécute la commande ExaCLI. Pour l'utilisateur opc, le répertoire de base est /home/opc.
    • L'utilisateur du système d'exploitation qui exécute la commande ExaCLI est le responsable du fichier de l'emplacement réservé.
    • Un emplacement réservé peut contenir plusieurs témoins de plusieurs utilisateurs sur plusieurs noeuds dans des sessions parallèles.
    • Les témoins sont invalidés après 24 heures.
    • Si le témoin est introuvable ou n'est plus valide, ExaCLI invite à entrer le mot de passe. Le nouveau témoin est stocké dans l'emplacement réservé identifié par filename ou dans l'emplacement réservé par défaut si filename n'est pas spécifié.
    • Même sans l'option --cookie-jar, ExaCLI recherche toujours les témoins dans l'emplacement réservé par défaut. Cependant, si le témoin n'existe pas ou n'est plus valide, le nouveau témoin ne sera pas stocké dans l'emplacement réservé par défaut si l'option --cookie-jar n'est pas spécifiée.

  • Notes pour l'option -e :

    • ExaCLI se ferme après l'exécution des commandes.
    • Si vous indiquez plusieurs commandes à exécuter, assurez-vous de les encadrer par des guillemets simples pour empêcher l'interprétation du point-virgule.
    • Le fichier séquentiel est un fichier texte qui contient une ou plusieurs commandes ExaCLI à exécuter.
  • Notes pour l'option -n (--no-prompt) :

    • Si ExaCLI requiert des informations supplémentaires de l'utilisateur, par exemple, si ExaCLI doit inviter l'utilisateur à entrer un mot de passe (probablement parce qu'il n'y avait aucun témoin valide dans la barre des témoins) ou à confirmer l'identité du noeud distant, ExaCLI affiche un message d'erreur et se ferme.

Connexion à un serveur de stockage avec ExaCLI

Pour utiliser ExaCLI sur des serveurs de stockage, vous devez connaître l'adresse IP de votre serveur de stockage cible.

Si vous ne connaissez pas l'adresse IP du noeud auquel vous voulez vous connecter, vous le trouverez en consultant le contenu du fichier cellip.ora.

L'exemple suivant illustre la manière de procéder sur la ligne de commande UNIX pour un système de quart de bâti. (Notez qu'un quart de bâti comprend trois cellules de stockage comportant chacune deux connexions : six adresses IP au total sont donc affichées.)
cat /etc/oracle/cell/
network-config/cellip.oracle
cell="192.168.136.5;cell="192.168.136.6"
cell="192.168.136.7;cell="192.168.136.8"
cell="192.168.136.9;cell="192.168.136.10"
Lorsque vous vous connectez à une cellule de stockage pour la première fois à l'aide d'ExaCLI, vous êtes invité à accepter un certificat SSL. La sortie ExaCLI dans ce cas ressemblera à ce qui suit :
exacli -l cloud_user_clustername -c 192.168.136.7 --cookie-jar
No cookies found for cloud_user_clustername@192.168.136.7
Password: *********
EXA-30016: This connection is not secure. You have asked ExaCLI to connect to cell 192.168.136.7 securely. The identity of 192.168.136.7 cannot be verified.
Got certificate from server:
C=US,ST=California,L=Redwood City,O=Oracle Corporation,OU=Oracle Exadata,CN=ed1cl03clu01-priv2.usdc2.oraclecloud.com
Do you want to accept and store this certificate? (Press y/n)

Acceptez le certificat Oracle auto-signé en appuyant sur "y" pour continuer à utiliser ExaCLI.

Informations de référence sur les commandes ExaCLI

Vous pouvez exécuter diverses commandes ExaCLI pour surveiller et gérer les serveurs de stockage Exadata associés à votre système de base de données Exadata pour Oracle Cloud Infrastructure. ExaCLI vous permet d'obtenir en temps réel des informations à jour sur votre service Exadata Cloud.

Utilisez la commande LIST avec les services et objets suivants :

  • ACTIVEREQUEST : Liste toutes les demandes actives actuellement exécutées par les serveurs de stockage.
  • ALERTDEFINITION : Liste toutes les alertes possibles et leurs sources pour les serveurs de stockage.
  • ALERTHISTORY : Liste toutes les alertes émises pour les serveurs de stockage.
  • CELL : Liste les détails des attributs spécifiques des serveurs de stockage (cellules de stockage).
    LIST CELL ATTRIBUTES A,B,C

    où A, B et C représentent les attributs à afficher.

    Pour voir tous les attributs de cellule, utilisez :

    LIST CELL ATTRIBUTES ALL
  • CELLDISK : Liste les attributs des disques de cellule dans les serveurs de stockage.
    LIST CELLDISK cell_disk_name DETAIL

    Affiche des informations détaillées sur le disque de cellule spécifié.

  • DATABASE : Liste les détails des bases de données.
    LIST DATABASE

    Affiche un sommaire de toutes les bases de données.

    LIST DATABASE DETAIL

    Affiche des informations détaillées pour toutes les bases de données.

    LIST DATABASE ATTRIBUTES NAME

    Affiche l'attribut spécifié (dans ce cas, le nom) pour chaque base de données.

  • FLASHCACHE : Liste les détails de la mémoire cache flash du système Exadata.
    LIST FLASHCACHE DETAIL

    Affiche des informations détaillées sur le cache Flash.

    LIST FLASHCACHE ATTRIBUTES attribute_name

    Affiche l'attribut spécifié pour la mémoire cache flash.

  • FLASHCACHECONTENT : Liste les détails de tous les objets dans la mémoire cache flash ou les détails d'un ID objet spécifié.
    LIST FLASHCACHECONTENT DETAIL

    Affiche des informations détaillées sur tous les objets du cache Flash.

    LIST FLASHCACHECONTENT WHERE objectNumber=12345 DETAIL

    Affiche des informations détaillées sur l'objet avec la valeur objectNumber spécifiée.

    Note

    Pour trouver l'ID objet d'un objet spécifique, interrogez user_objects à l'aide du nom de l'objet pour extraire la valeur data_object_id d'une partition ou d'une table.

  • FLASHLOG : Liste les attributs du journal de cache flash intelligent d'Oracle Exadata.
  • GRIDDISK : Liste les détails d'un disque grille particulier. La syntaxe est semblable à celle de la commande CELLDISK.
    LIST GRIDDISK grid_disk_name DETAIL

    Affiche tous les attributs du disque de grille indiqué.

    LIST GRIDDISK grid_disk_name ATTRIBUTES size, name

    Affiche uniquement les attributs spécifiés (taille, nom) du disque de grille.

  • IBPORT : Liste les détails des ports InfiniBand.
    LIST IBPORT DETAIL

    Affiche des informations détaillées sur tous les ports InfiniBand.

  • IORMPROFILE : Liste les profils IORM définis sur les serveurs de stockage. Vous pouvez également vous référer à l'attribut de profil de l'objet DATABASE pour voir si une base de données est associée à un profil IORM.
    LIST IORMPROFILE

    Affiche les profils IORM configurés sur les serveurs de stockage.

  • LUN : Représente les numéros d'unité logique (LUN) des disques physiques dans les serveurs de stockage.
    LIST LUN

    Affiche un sommaire de toutes les unités logiques.

    LIST LUN lun_number DETAIL

    Affiche des informations détaillées pour la LUN spécifiée.

  • METRICCURRRENT : Liste les mesures courantes d'un type d'objet particulier.
    LIST METRICCURRENT WHERE objectType = 'CELLDISK'

    Affiche les mesures courantes pour le type d'objet spécifié (dans ce cas, CELLDISK).

    LIST METRICCURRENT ATTRIBUTES name, metricObjectName 
    ORDER BY metricObjectName ASC, name DESC LIMIT 5

    Affiche les attributs sélectionnés, triés par metricObjectName (croissant) et name (décroissant), limités aux 5 premiers résultats.

  • METRICDEFINITION : Liste les définitions de mesure disponibles pour un type d'objet donné. Ces définitions peuvent ensuite être utilisées pour extraire les détails de mesures spécifiques.
    LIST METRICDEFINITION WHERE objectType = cell

    Affiche toutes les définitions de mesure pour le type d'objet spécifié (cellule).

    LIST METRICDEFINITION WHERE name = IORM_MODE DETAIL

    Affiche des informations détaillées sur la mesure spécifiée (IORM_MODE).

  • METRICHISTORY : Liste les mesures collectées sur une période spécifiée.
    LIST METRICHISTORY WHERE ageInMinutes < 30

    Affiche toutes les mesures collectées au cours des 30 dernières minutes.

    LIST METRICHISTORY WHERE collectionTime > '2018-04-01T21:12:00-10:00'

    Affiche toutes les mesures collectées après l'horodatage spécifié.

    LIST METRICHISTORY CT_FD_IO_RQ_SM

    Affiche l'historique d'une mesure spécifique par nom.

    LIST METRICHISTORY WHERE name LIKE 'CT_.*'

    Affiche toutes les mesures dont le nom correspond au modèle indiqué.

  • OFFLOADGROUP : Liste les attributs des groupes de déchargement s'exécutant sur les serveurs de stockage.
    LIST OFFLOADGROUP DETAIL

    Affiche des informations détaillées pour tous les groupes de déchargement.

    LIST OFFLOADGROUP offloadgroup4

    Affiche les détails d'un groupe de déchargement spécifique (offloadgroup4).

    LIST OFFLOADGROUP ATTRIBUTES name

    Affiche uniquement les attributs spécifiés, tels que le nom, pour tous les groupes de déchargement.

  • PHYSICALDISK : Liste tous les disques physiques des serveurs de stockage. Utilisez les résultats pour identifier un disque spécifique pour une enquête plus approfondie.
    LIST PHYSICALDISK

    Affiche un sommaire de tous les disques physiques.

    LIST PHYSICALDISK 20:10 DETAIL

    Affiche des informations détaillées sur un disque spécifique (20:10).

    LIST PHYSICALDISK FLASH_1_0 DETAIL

    Affiche des informations détaillées sur un disque flash spécifique (FLASH_1_0).

  • PLUGGABLEDATABASE : Liste toutes les bases de données enfichables de l'environnement.
    LIST PLUGGABLEDATABASE

    Affiche un sommaire de toutes les bases de données enfichables.

    LIST PLUGGABLEDATABASE pdb_name

    Affiche des informations détaillées sur la base de données enfichable spécifiée (pdb_name).

  • QUARANTINE : Liste tous les énoncés SQL qui ont été empêchés d'utiliser des balayages intelligents.
    LIST QUARANTINE DETAIL

    Affiche des informations détaillées sur toutes les instructions SQL mises en quarantaine.

    LIST QUARANTINE WHERE attribute = value

    Filtre les résultats par attributs spécifiques à l'aide d'une clause WHERE.

Utilisez les commandes ExaCLI CREATE, ALTER, DROP et LIST pour manipuler les objets Serveur de stockage Exadata suivants :

  • DIAGPACK : Liste les ensembles de diagnostic et leur statut dans le système Exadata.
    LIST DIAGPACK
    LIST DIAGPACK DETAIL

    Répertorie tous les ensembles de diagnostic. DETAIL fournit des informations étendues.

    CREATE DIAGPACK packStartTime=2019_12_15T00_00_00

    Crée un package de diagnostic à partir de l'heure spécifiée. Vous pouvez également utiliser now pour saisir les diagnostics immédiatement :

    CREATE DIAGPACK packStartTime=now
    DOWNLOAD DIAGPACK cfclcx2647_diag_2018_06_03T00_44_24_1 /tmp

    Télécharge le package de diagnostic spécifié dans le répertoire /tmp (ou un autre chemin local).

  • IORMPLAN : Gérer les plans du gestionnaire de ressources d'E/S (IORM) sur les serveurs de stockage Exadata. Vous pouvez lister, créer, modifier ou supprimer des plans IORM à l'aide de ExaCLI.
    LIST IORMPLAN DETAIL

    Liste tous les plans IORM avec des informations détaillées.

    Vous pouvez également utiliser CREATE IORMPLAN, ALTER IORMPLAN ou DROP IORMPLAN pour gérer les plans et les appliquer aux serveurs de stockage, si nécessaire.

    select object_name, data_object_id from user_objects where object_name = 'BIG_CENSUS';
    OBJECT_NAME               DATA_OBJECT_ID
    ----------------------------------------
    BIG_CENSUS                29152