amCLI

amCLI est une interface de ligne de commande pour ServerView RAID Manager. Celle-ci peut être utilisée pour créer, supprimer ou gérer des matrices RAID ou pour gérer ServerView RAID Manager à partir de la ligne de commande ou d'un script.

La version haut de gamme d'amCLI comprend les options de commande suivantes :

-c|--create : créer un lecteur logique
-d|--delete : supprimer le dernier lecteur logique
-e|--exec : exécuter une commande spécifique à un périphérique
-g|--get : obtenir la propriété d'une cible
-i|--import : importer un certificat
-l|--list : recenser des informations
-m|--migrate : migrer une matrice RAID vers un autre niveau RAID
-r|--restore : restaurer l'état d'un fichier
-s|--set : définir la propriété d'une cible sur une valeur donnée
-w|--write : écrire l'état actuel d'un fichier
-Z|--zap : supprimer une cible
-?|--help : donner une aide succincte

Seule l'une d'entre elles peut être spécifiée, -? étant la valeur par défaut.

Schéma d'adressage

Tous les objets pouvant être manipulés à l'aide de cette commande (l'intégralité du sous-système ServerView RAID Manager, des adaptateurs, des lecteurs physiques et des lecteurs logiques, c'est-à-dire les matrices RAID) sont identifiés par deux numéros séparés par une barre oblique (/) : le premier numéro représente un module et le second un index (basé sur 0) : <mod/idx>. Dans ce document, le terme utilisé pour désigner cette combinaison de numéros est l'adresse d'un objet.

Actuellement, sont pris en charge les numéros de module suivants :

mod Module
21 ServerView RAID Manager
32 Adaptateur Avago MegaRAID SAS, Adaptateur SAS/SAS2/SAS3 IT/IR, MegaSR
36 Adaptateur Fujitsu Aries SAS
39 Logiciel Linux RAID
40 Adaptateur Avago MegaRAID SAS, Adaptateur SAS/SAS2/SAS3 IT/IR (via CIM)
47 Chipset AMD RAID
48 Fusion-io PCIe SSD's
53 Intel PCIe SSD's

Remarque : les valeurs d'index ne sont pas obligatoirement consécutives (par exemple, si 27/5 et 27/7 existent, 27/6 peut ne pas exister), sont associées à un module (par exemple, 26/5 et 27/5 peuvent exister simultanément) et la numérotation continue entre les adaptateurs, les lecteurs logiques et physiques (par exemple, 27/5 et 27/10 peuvent être des adaptateurs, 27/6 et 27/7 peuvent être des lecteurs physiques et 27/8 et 27/9 peuvent être des lecteurs logiques).

Dans les exemples suivants,

Utilisez amCLI -l pour rechercher les adresses des objets que vous souhaitez utiliser.

Pour le script, il est possible de supprimer toutes les demandes de confirmation à l'aide de l'option -quiet.

Création d'un lecteur logique

Avant la création d'un lecteur logique, vous devez décider du niveau RAID à utiliser, des paramètres requis pour le niveau RAID choisi et des lecteurs (physiques et/ou logiques) qui constitueront ce lecteur logique. La compréhension des concepts RAID et différents niveaux RAID exposés dans ce document nécessite une bonne connaissance du sujet.

Synopsis

amCLI [-c|--create] <mod/AdpIdx> raid=<niveauRaid> paramètres <mod/LPIdx>+

Paramètres

Utilisez amCLI --help create <mod/AdpIdx> pour rechercher les paramètres et niveaux RAID pris en charge par l'adaptateur spécifié.

Exemple

Pour créer une matrice RAID-5 constituée de lecteurs physiques 32/5, 32/6 et 32/7 sur l'adaptateur Avago MegaRAID 32/1 avec les paramètres par défaut, la commande suivante peut être utilisée :

# amCLI -c 32/1 raid=5 32/5 32/6 32/7

Une confirmation est ensuite requise pour l'exécution de cette commande (la saisie n'est pas sensible à la casse) :

Are you sure to create a new Logical Drive on Adapter '32/1'? (Souhaitez-vous vraiment créer un nouveau lecteur logique sur l'adaptateur « 32/1 » ?)
Type YES to confirm _ (Tapez YES -OUI- pour confirmer _)

Remarque

ServerView RAID Manager attribuera une adresse au nouveau lecteur logique. Utilisez amCLI -l pour déterminer l'adresse.

Suppression du dernier lecteur logique

Cette commande supprime le lecteur logique dont l'ID de lecteur logique est le plus élevé sur un adaptateur donné (cela correspond en général au lecteur logique le plus récemment créé).

Synopsis

amCLI [-d|--delete] <mod/AdpIdx>

Paramètres

Exemple

Pour supprimer immédiatement après sa création le lecteur logique créé ci-dessus, utilisez

# amCLI -d 32/1

A nouveau, une confirmation explicite est requise pour l'exécution de cette commande :

Are you sure to delete the last Logical Drive on Adapter '32/1'? (Souhaitez-vous vraiment supprimer le lecteur logique le plus récent sur l'adaptateur « 32/1 » ?)
Type YES to confirm _ (Tapez YES -OUI- pour confirmer _)

Exécution d'une opération sur un périphérique

Cette commande lance l'exécution d'une commande spécifique à un périphérique sur un périphérique donné.

Synopsis

amCLI [-e|--exec] <mod/idx> <opération> <param>*

Paramètres

Pour savoir quelles sont les opérations prises en charge par un objet donné et quels sont les paramètres supplémentaires nécessaires, utilisez

amCLI [-?|--help] exec <mod/idx>

Exemples

# amCLI -? exec 32/26
amCLI v5.7.0
Usage:
  -e | --exec <32/LPIdx>    locate
  -e | --exec <32/LPIdx>    stop_location
  -e | --exec <32/LPIdx>    create_global_hot_spare
  -e | --exec <32/LPIdx>    delete_global_hot_spare
  -e | --exec <32/LPIdx>    create_dedicated_hot_spare <mod/LLIdx>
  -e | --exec <32/LPIdx>    delete_dedicated_hot_spare
  -e | --exec <32/LPIdx>    make_online
  -e | --exec <32/LPIdx>    make_offline
  -e | --exec <32/LPIdx>    make_ready
  -e | --exec <32/LPIdx>    replace_missing_disk <mod/LLIdx>
# amCLI -e 32/26 locate

Obtention d'une propriété

Cette commande récupère la valeur d'une propriété donnée d'un objet précis.

Synopsis

amCLI [-g|--get] <mod/idx> <propriété>

Paramètres

Utilisez amCLI -? get pour connaître les propriétés généralement prises en charge en fonction des classes d'objet ou amCLI -? get <mod/idx> pour savoir quelles propriétés sont prises en charge par un objet spécifique.

Exemples

# amCLI -? get 32/2
amCLI v5.7.0
Usage:
  -g | --get <32/LLIdx> activity
  -g | --get <32/LLIdx> status
  -g | --get <32/LLIdx> disk_cache_mode
  -g | --get <32/LLIdx> bgi
  ...
# amCLI -g 32/2 status
Operational

Importation d'un certificat

Cette commande importer un certificat.

Synopsis

amCLI [-i|--import] <certificate file> <private key file>

Paramètres

Exemple

# amCLI -i cert.pem key.pem [intermediate.pem]

Recensement d'informations

Cette commande répertorie les informations disponibles à propos d'un objet donné.

Synopsis

amCLI [-l|--list] [all|struct|<mod/idx>]

Paramètres

Exemple

# amCLI -l struct
21/3: System, 'hostname'
  32/1: SAS Adapter 0, 'Avago MegaRAID SAS PCI Express(TM) ROMB (0)'
    32/2: Logical Drive 0, 'LogicalDrive_0', RAID-0, 69472MB
    32/3: SAS Port 0
      32/11: Physical Drive 0, 'SEAGATE ST373454SS (0)', 69472MB
    32/4: SAS Port 1
      32/12: Physical Drive 1, 'SEAGATE ST336754SS (1)', 34464MB
     ...

Migration d'un lecteur logique vers un nouveau niveau RAID

Cette commande modifie le niveau RAID d'un lecteur logique, si cela est possible dans la configuration actuelle et pris en charge par l'adaptateur qui contrôle le lecteur logique.

Synopsis

amCLI [-m|--migrate] <mod/LLIdx> [raid=<niveauRaid>] paramètres <mod/LPIdx>*

Paramètres

Pour savoir vers quels niveaux RAID un lecteur logique peut être migré et si des lecteurs physiques supplémentaires peuvent s'avérer nécessaires, utilisez

amCLI -? migrate <mod/LLIdx>

Exemples

# amCLI -l 32/2
32/2: Logical Drive 0, 'LogicalDrive_0', RAID-0, 69472MB
   Parents: 1
   Children: -
   Containers: 1
   Drives: 1 --> ( 32/11 )
   Propriétés :
    Unique ID: PCI:Bus=2&Device=14&Function=0&ID=0
    Logical Drive Number: 0
    Name: LogicalDrive_0, settable
    Logical Size: 69472 MB
    Physical Size: 69472 MB
    RAID Level: RAID-0
    ...
# amCLI -? migrate 32/2
amCLI v5.7.0
Usage:
  -m | --migrate 32/2
  [raid=(0|1|5)]
  (<LPIdx>)+

Cela signifie que le lecteur logique 32/2 (un lecteur logique RAID-0) peut uniquement être migré vers les niveaux RAID 0, 1 ou 5 et il est possible d'intégrer des lecteurs physiques supplémentaires (dans ce cas précis, il peut être nécessaire de migrer vers des niveaux RAID 1 ou 5).

# amCLI -m 32/2 raid=1 32/8

Une confirmation est également demandée :

Are you sure to modify Logical Drive '32/2' on Adapter '32/1'? (Voulez-vous vraiment modifier le lecteur logique « 32/2 » sur l'adaptateur « 32/1 » ?)
Type YES to confirm _ (Tapez YES -OUI- pour confirmer _)

Restauration d'un état

Cette commande restaure l'état d'une configuration RAID à partir d'un fichier précédemment créé par amCLI -w.

Synopsis

amCLI [-r|--restore] <nomFichier>

Paramètres

Exemple

# amCLI -r OldState

A nouveau, une confirmation explicite est requise :

Are you sure to restore the configuration? (Voulez-vous vraiment restaurer la configuration ?)
Type YES to confirm _ (Tapez YES -OUI- pour confirmer _)

Avertissement 

Restaurer l’état de l’adaptateur gérant le disque système pourrait rendre le système inutilisable!

Définition d'une propriété

Cette commande définit la propriété donnée d'un objet précis sur une nouvelle valeur spécifique.

Synopsis

amCLI [-s|--set] <mod/idx> <propriété> <valeur>

Paramètres

Utilisez amCLI -? set pour connaître les propriétés généralement prises en charge en fonction des classes de périphérique ou amCLI -? set <mod/idx> pour savoir quelles propriétés sont prises en charge par un périphérique donné.

Exemples

# amCLI -? set 32/2
amCLI v5.7.0
Usage:
  -s | --set <32/LLIdx> name <chaîne>
  ...
# amCLI -g 32/2 name
LogicalDrive_0
# amCLI -s 32/2 name 'OS disk'
# amCLI -g 32/2 name
OS disk

Écriture d'un état

Cette commande enregistre l'état interne d'un objet spécifique dans un fichier donné ou l'imprime sur la sortie standard.

Synopsis

amCLI [-w|--write] <mod/SysIdx> [<fichier>]

amCLI [-w|--write] <mod/AdpIdx> [<fichier>]

Paramètres

Exemple

# amCLI -w 32/1
<ServerViewRAIDManager Version="5.7.0">
  <SASAdapter UniqueID="PCI:Bus=2&Device=14&Function=0" AdapterNumber="0
...

Suppression de lecteur

Cette commande efface la configuration existante d'un adaptateur (elle supprime par exemple tous les lecteurs logiques, les disques de secours, etc.).

Synopsis

amCLI [-Z|--zap] [<mod/idx>]
(Veillez à respecter la casse du Z majuscule.)

Paramètres

Exemple

# amCLI -Z 32/17

Une confirmation est ensuite requise pour l'exécution de cette commande (la saisie n'est pas sensible à la casse) :

Are you sure to zap Adapter '32/17'? (Voulez-vous vraiment supprimer l'adaptateur « 32/17 » ?)
Type YES to confirm _ (Tapez YES -OUI- pour confirmer _)

Aide

La commande d'aide répond à deux objectifs :

  1. Rappeler à l'utilisateur la syntaxe des diverses commandes et
  2. Récupérer les options spécifiques à un objet ou une commande.

Synopsis

amCLI [-?|--help] [[create | get | set | exec | migrate] [<mod/idx>]]

Paramètres

Sans paramètre supplémentaire, amCLI -? dirigera la syntaxe de toutes les commandes amCLI vers la sortie. -? étant la valeur par défaut, en saisissant amCLI, on obtient le même résultat.

Des paramètres supplémentaires peuvent être définis pour récupérer des informations spécifiques sur les paramètres d'une commande donnée lors de l'application à un objet précis :

Si aucun périphérique n'est précisé, la syntaxe de la commande est affichée. Si l'adresse d'un objet est précisée, les informations spécifiques à l'exécution de la commande sur cet objet sont affichées.

Exemples

# amCLI -?
amCLI v5.7.0
Usage:
-c <mod/AdpIdx> raid=<niveauRaid> [span=<nombExtension>] [stripe=<tailleBande>]
   [<indicateurRaid>=<indicateur>] [size=<mégaoctets>] (<mod/LPIdx>)+
--create <mod/AdpIdx> raid=<niveauRaid> [span=<nombExtension>]
   [stripe=<tailleBande>] [<indicateurRaid>=<indicateur>] [size=<mégaoctets>]
   (<mod/LPIdx>)+
-d <AdpIdx>
--delete <AdpIdx>
...

# amCLI -? create
amCLI v5.7.0
Usage:
-c <mod/AdpIdx> raid=<niveauRaid> [span=<nombExtension>] [stripe=<tailleBande>]
   [<indicateurRaid>=<indicateur>] [size=<mégaoctets>] (<mod/LPIdx>)+
--create <mod/AdpIdx> raid=<niveauRaid> [span=<nombExtension>]
   [stripe=<tailleBande>] [<indicateurRaid>=<indicateur>] [size=<mégaoctets>]
   (<mod/LPIdx>)+

# amCLI --help create 32/17
amCLI v5.7.0
Usage:
  -c | --create 32/17
  raid=(0|1|5|6|10|50|60|1e)
  [span=<(RAID-0:1)|
         (RAID-1:1)|
         (RAID-5:1)|
         (RAID-6:1)|
         (RAID-10:2..8)|
         (RAID-50:2..8)|
         (RAID-60:2..8)|
         (RAID-1E:1)>]
  [stripe=<(RAID-0:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
           (RAID-1:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
           (RAID-5:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
           (RAID-6:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
           (RAID-10:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
           (RAID-50:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
           (RAID-60:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
           (RAID-1E:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)>]
  [init_mode=(no_initialization|fast_initialization|normal_initialization)]
  [read_mode=(readahead|no_readahead)]
  [write_mode=(writeback|always_writeback|writethrough)]
  [cache_mode=(cached|direct)]
  [disk_cache_mode=(disabled|enabled)]
  [cache_settings=(data_protection|performance|advanced)]
  [name=<chaîne>]
  [size=<mégaoctets>]
  (<LPIdx>)+

Diagnostics

L'état de sortie (ou niveau d'erreur) correspond approximativement aux conditions d'erreur définies par ServerView RAID Manager et reprend les valeurs suivantes :

État de sortie Description
0 Normal ; aucune erreur ou aucun avertissement détecté(e)
1 Erreur interne
2 Syntaxe non valide
3 Objet non valide
4 Défaillance de la mémoire
5 Opération non prise en charge
6 Propriété non prise en charge
7 Opération impossible à exécuter pour le moment
8 Échec de la communication avec le service principal
10 Échec de l'initialisation du service principal
11 Échec de la base de données du service principal
12 Échec de l'opération
13 Valeur de paramètre non valide
14 Échec de la connexion
15 Arrêt en cours
16 Aucun droit administrateur octroyé
17 Ouverture du fichier impossible
18 Lecture du fichier impossible
19 Écriture du fichier impossible
20 Initialisation du service principal