Ignorer les liens de navigation | |
Quitter la vue de l'impression | |
![]() |
Guide d'administration des systèmes Oracle® ZFS Storage Appliance, version 2013.1.3.0 |
A propos d'Oracle ZFS Storage Appliance
Fonctionnalités clés d'Oracle ZFS Storage Appliance
Services de données Oracle ZFS Storage Appliance
Configuration de l'appareil Oracle ZFS Storage Appliance
Interface utilisateur de navigateur (BUI, Browser User Interface)
Icônes de la barre d'outils d'analyse
Icônes de mappage des identités
Interface de ligne de commande (CLI, Command Line Interface)
Utilisation de l'écriture de scripts CLI
Utilisation des commandes de traitement par lots
Présentation des commandes d'écriture de script CLI
Accès à l'environnement de script CLI
Présentation des fonctions CLI intégrées
Utilisation de la fonction run
Utilisation de la fonction get
Utilisation de la fonction list
Utilisation de la fonction children
Utilisation de la fonction Choices
Utilisation des fonctions pour la génération des sorties
Présentation des erreurs de script CLI
Configuration d'Oracle ZFS Storage Appliance
Le contexte dans lequel les commandes sont exécutées constitue l'un des principes fondamentaux de la CLI. Le contexte détermine les éléments du système pouvant être gérés et les commandes disponibles. Les contextes ont une structure en arborescence dans laquelle les contextes peuvent à leur tour contenir des contextes imbriqués. La structure reflète généralement celle des vues de la BUI.
Le contexte initial au moment de la connexion est le contexte root, qui fait office de parent ou d'ancêtre pour tous les contextes. Pour accéder à un contexte, exécutez le nom du contexte en tant que commande. Par exemple, les fonctions disponibles dans la vue Configuration du navigateur sont disponibles dans le contexte configuration de la CLI. Dans le contexte root, vous pouvez y accéder en saisissant directement ce qui suit :
dory:> configuration dory:configuration>
Notez que l'invite change pour refléter le contexte, le contexte s'affichant entre le caractère deux-points et le caractère supérieur à dans l'invite.
La commande show affiche les contextes enfant. Par exemple, depuis le contexte configuration :
dory:configuration> show Children: net => Configure networking services => Configure services version => Display system version users => Configure administrative users roles => Configure administrative roles preferences => Configure user preferences alerts => Configure alerts storage => Configure Storage
Ces contextes enfant correspondent aux vues disponibles sous la vue Configuration dans le navigateur, notamment Réseau, Services et utilisateurs, Préférences, etc. Pour sélectionner l'un de ces contextes enfant, saisissez son nom :
dory:configuration> preferences dory:configuration preferences>
Accédez directement à un contexte subordonné à partir d'un ancêtre en indiquant les contextes intermédiaires, séparés par des espaces. Par exemple, pour accéder directement à configuration preferences à partir du contexte root, saisissez simplement :
dory:> configuration preferences dory:configuration preferences>
Certains contextes enfant sont dynamiques, au sens où ils ne correspondent pas à des vues figées dans le navigateur, mais à des entités dynamiques créées par l'utilisateur ou le système. Pour accéder à ces contextes, servez-vous de la commande select, suivie du nom du contexte dynamique. La commande list permet d'afficher les noms des contextes dynamiques compris dans un contexte donné. Par exemple, le contexte users est un contexte statique, mais chaque utilisateur constitue un contexte dynamique pour lui-même.
dory:> configuration users dory:configuration users> list NAME USERNAME UID TYPE John Doe bmc 12345 Dir Super-User root 0 Loc
Pour sélectionner l'utilisateur nommé bmc, émettez la commande select bmc :
dory:configuration users> select bmc dory:configuration users bmc>
Dans certains contextes, il est également possible d'utiliser les commandes select et destroy pour sélectionner une entité en fonction de ses propriétés. La commande suivante peut par exemple être exécutée pour sélectionner des entrées de journal émises par le module reboot dans le contexte maintenance logs system :
dory:maintenance logs system> select module=reboot dory:maintenance logs system entry-034> show Properties: timestamp = 2010-8-14 06:24:41 module = reboot priority = crit text = initiated by root on /dev/console syslogd: going down on signal 15
A l'instar d'autres commandes, la commande select peut être associée à des commandes entraînant un changement de contexte. Par exemple, pour sélectionner l'utilisateur nommé bmc à partir du contexte root :
dory:> configuration users select bmc dory:configuration users bmc>
La commande last permet d'accéder directement à un contexte sélectionné ou créé précédemment. L'exemple suivant crée une action de réplication, puis exécute les commandes last et get id pour récupérer l'ID de l'action de réplication. Ensuite, une action différente est sélectionnée et les commandes last et get id permettent de récupérer l'ID de la dernière action de réplication visitée.
Avec la commande last, vous pouvez retourner au dernier noeud visité :
dory:configuration net interfaces> select igb4 dory:configuration net interfaces igb4> done dory:configuration net interfaces> last net:configuration net interfaces igb4>
La commande last est aussi utile pour extraire des valeurs ayant été automatiquement définies par l'appareil pendant la création d'un noeud dynamique. Par exemple, chaque action de réplication se voit attribuer un ID par l'appareil lorsqu'elle est créée. En utilisant la commande last avec la commande get id, vous pouvez extraire l'ID sans utiliser le nom de l'action de réplication :
dory:shares p1/share replication> create dory:shares p1/share action (uncommitted)> set target=dory target = dory (uncommitted) dory:shares p1/share action (uncommitted)> set pool=p0 pool = p0 (uncommitted) dory:shares p1/share action (uncommitted)> commit dory:shares p1/share replication> last get id id = 7034367a-d4d8-e26f-fa93-c3b454e3b595 dory:shares p1/share replication>
Notez que quand last est combinée avec une autre commande (dans ce cas, get id), la commande est exécutée dans le contexte du dernier noeud visité, mais le noeud actuel reste inchangé.
Parce que last vous permet d'extraire le dernier noeud visité et ses valeurs sans spécifier le nom du noeud, cette commande est particulièrement pratique pour l'écriture de scripts :
script project = 'myproj'; target = 'mytarget'; target_pool = 'notmypool'; run('cd /'); run('shares select ' + project); run('replication'); run('create'); set('target', target); set('pool', target_pool); run('commit'); run('last'); id = get('id'); printf("Sending update for replication action id %s ...", id); run('sendupdate'); while (get('state') != 'idle') { printf("."); run('sleep 1'); } printf("done\n"); .
Pour revenir au contexte précédent, exécutez la commande done :
dory:configuration> done dory:>
Cela vous renvoie au contexte précédent, qui n'est pas nécessairement le contexte parent, comme suit :
dory:> configuration users select bmc dory:configuration users bmc> done dory:>
La commande done peut être utilisée à plusieurs reprises pour revenir à des contextes antérieurs :
dory:> configuration dory:configuration> users dory:configuration users> select bmc dory:configuration users bmc> done dory:configuration users> done dory:configuration> done dory:>
Pour accéder à un contexte parent, utilisez la commande cd. Inspirée de la commande UNIX classique, la commande cd suivie de l'argument ".." permet de revenir au contexte parent :
dory:> configuration users select bmc dory:configuration users bmc> cd .. dory:configuration users>
Et, comme pour la commande UNIX, "cd /" permet d'accéder au contexte root :
dory:> configuration dory:configuration> users dory:configuration users> select bmc dory:configuration users bmc> cd / dory:>
De même, toujours à l'instar de la commande UNIX, "cd ../.." permet d'accéder au contexte grand-parent :
dory:> configuration dory:configuration> users dory:configuration users> select bmc dory:configuration users bmc> cd ../.. dory:configuration>
Les noms des contextes prennent en charge la saisie semi-automatique par tabulation, qu'il s'agisse des contextes statiques (saisie semi-automatique normale basée sur la commande) ou des contextes dynamiques (saisie semi-automatique basée sur la commande select). L'exemple suivant indique comment sélectionner l'utilisateur nommé bmc à partir du contexte root en quinze frappes seulement, au lieu des trente et une normalement requises sans saisie semi-automatique par tabulation :
dory:> configtab dory:> configuration utab dory:> configuration users setab dory:> configuration users select tab bmc root dory:> configuration users select btab dory:> configuration users select bmcenter dory:configuration users bmc>
Lorsque vous vous trouvez dans un contexte, exécutez des commandes spécifiques au contexte. Par exemple, pour obtenir les préférences de l'utilisateur actuel, exécutez la commande get dans le contexte configuration preferences :
dory:configuration preferences> get locale = C login_screen = status/dashboard session_timeout = 15 session_annotation = advanced_analytics = false
Si une commande est suivie d'une entrée entraînant un changement de contexte, la commande concernée est exécutée dans le contexte cible, mais le contrôle revient au contexte appelant. Par exemple, pour obtenir les préférences à partir du contexte root sans modifier le contexte, ajoutez la commande get aux commandes de navigation du contexte :
dory:> configuration preferences get locale = C login_screen = status/dashboard session_timeout = 15 session_annotation = advanced_analytics = false
Lors de la création d'une nouvelle entité dans le système, le contexte associé à la nouvelle entité est fréquemment créé avec l'état uncommitted ("non validé"). Vous pouvez par exemple créer une alerte avec seuil en exécutant la commande create à partir du contexte configuration alerts threshold :
dory:> configuration alerts thresholds create dory:configuration alerts threshold (uncommitted)>
La mention (uncommitted) dans l'invite indique qu'il s'agit d'un contexte non validé. Une entité non validée est validée via la commande commit. Toute tentative de quitter un contexte non validé déclenche l'affichage d'une invite de confirmation :
dory:configuration alerts threshold (uncommitted)> cd / Leaving will abort creation of "threshold". Are you sure? (Y/N)
Lors de la validation d'une entité non validée, les propriétés associées à la nouvelle entité sont validées et une erreur est générée si l'entité ne peut pas être créée. Par exemple, la création d'une nouvelle alerte avec seuil nécessite la spécification d'un nom de statistique, sans quoi une erreur se produit :
dory:configuration alerts threshold (uncommitted)> commit error: missing value for property "statname"
Pour résoudre ce problème, résolvez l'erreur et retentez la validation :
dory:configuration alerts threshold (uncommitted)> set statname=cpu.utilization statname = cpu.utilization (uncommitted) dory:configuration alerts threshold (uncommitted)> commit error: missing value for property "limit" dory:configuration alerts threshold (uncommitted)> set limit=90 limit = 90 (uncommitted) dory:configuration alerts threshold (uncommitted)> commit dory:configuration alerts thresholds> list THRESHOLD LIMIT TYPE STATNAME threshold-000 90 normal cpu.utilization
Voir aussi :