Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
14 novembre 2016

iSCSI storages           Systèmes de fichier


isnsadm

isnsadm

Utilitaire client iSNS

   isnsadm est un utilitaire permettant d'interragir avec un serveur iSNS.

OPTIONS

-c filename, --config filename Spécifie le fichier de configuration. Défaut: /etc/isns/isnsadm.conf
-d facility, --debug facility Active de débug. facility peut être:

        socket Transmission/réception réseau
        auth Informations liées à l'authentification et la sécurité
        message couche du protocole iSNS
        state État de la base de données
        scn Message SCN (state change notification)
        esi message ESI (entity status inquiry)
        all Tout

--local Utilise un socket Unix pour dialoguer avec le serveur iSNS. Uniquement disponible par root
-s servename, --server servername Serveur à utiliser.
--control Identité d'un nœud de contrôle. Les nœud de contrôle sont spéciaux et ont plus de droits d'accès et modification dans la base que les nœuds de stockage normaux.
--key attr=value mode enregistrement uniquement, et permet de spécifier une clé.
--keyfile=filename En créant une stratégie pour un nouveau client iSNS, isnsadm est capable de générer une clé DSA pour le client. La partie publique est stockée dans l'objet stratégie, et la partie privée est stockée dans le fichier spécifié par l'option keyfile.

Attributs supportés

   La plupart des modes prennent une liste d'attributs comme argument sur la ligne de commande. Le nommage et la syntaxe de ces attributs sont les même pour tous les modes. Cependant, certains mode ne supporte qu'un jeu limité d'attribut.
   Les attributs sont généralement donnés en name=value. Les attributs vides sont supportés.

entity-id (alias eid)(tag 1) Network Entity
entity-prot (tag 2) Network Entity
entity-index (tag 7)
iscsi-name (tag 32) iSCSI Storage Node
iscsi-node-type (tag 33)
iscsi-alias (tag 34)
iscsi-idx (tag 36)
iscsi-authmethod (tag 42)
portal-addr (tag 16)
portal-port (tag 17)
portal-name (tag 18)
portal-esi-port (tag 20)
portal-esi-interval (tag 21)
portal-idx (tag 22)
portal-scn-port (tag 23)
portal-group-index (tag 52) Portal Group
pg-name (tag 48)
pg-addr (tag 49)
pg-port (tag 50)
pg-tag (alias pgt)(tag 51)
pg-idx (tag 52)
dd-id (tag 2065) Discovery Domain
dd-name (tag 2066)
dd-member-iscsi-idx (tag 2067)
dd-member-name (tag 2068)
dd-member-fc-name (tag 2069)
dd-member-portal-idx (tag 2070)
dd-member-addr (tag 2071)
dd-member-port (tag 2072)
dd-features (tag 2078)
policy-name (alias spi) Policy Object
policy-key -
policy-entity -
policy-node-type -
policy-object-type -
policy-functions -

Attributs Portail

   Les informations de portail sont transportés par 2 attributs séparés dans iSNS; un attribut address maintenant l'adresseIP, et l'attribut port maintenant le numéro de port et le protocole utilisé. isnsadm supporte une notation représentant un portail comme un pseudo-attribut. Ces 2 syntaxes sont équivalentes:

  

Attributs de champ de bits

   Les attributs iSNS sont des mots représentant un champ de bit. isnsadm affiche et parcour ces attributs au format human-readable au lieu d'utiliser la valeur numérique. En spécifiant un attribut bitfield, il est possible de combiner les caractères '+' ou ',': node-type=control+initiator

Mode enregistrement

   Le mode enregistrement est séléctionné en utilisant l'option --register, suivi par une liste d'un ou plusieurs objets à enregistrer avec le serveur iSNS. Par défaut, cela créé une entité réseau pour le client s'il n'en existe pas, et place les nouveau objets dedans. Généralement, on enregistre tous les objets pour une entité réseaux en une seule opération. Chaque objet est spécifié comme un type, optionnellement suivis par une liste d'attributs: target=iqn.2005-01.org.open-iscsi.foo:disk1,alias=disk1. Les types d'objets suivants sont supportés:

        entity=name Indique au serveur de grouper tous les objets dans l'objet conteneur Network Entity. Normalement, le serveur iSNS assigne automatiquement un nom d'entité qui est en phase avec ses stratégies, et il n'y a pas besoin de le spécifier explicitement.
        initiator[=name] Enregistre ne nœud de stockage iSCSI de type initiator.
        target[=name] Enregistre un nœud de stockage de type target.
        control[=name] Enregistre un nœud de stockage de type control.
        portal=[address:port/proto] Enregistre un portail en utilisant l'adresse donnée.
        pg Ergesitre un groupe de portail joignant le portail et nœud précédant. Les groupes de portail peuvent être utilisés pour décrire les portails préférés pour un nœud donné.

   Il y a 2 options de ligne de commande additionnels utilisés exclusivement avec le mode enregistrement. --replace recréé une nouvelle entité réseau, le serveur supprime l'ancien et tous les nœud et portails qu'il contient. --key permet de remplace simplement une partie de l'entité réseaux.

par exemple, supposons une entité contenant le portail 10.1.1.1:860, et l'adresse du client changé en 10.2.7.7:
isnsadm --replace --key portal=10.1.1.1:860 portal=10.2.7.7:860

   L'option --key ne reconnaît qu'un sous-jeu d'attributs:

        Entity eid=identifier
        Portail portail=address:port
        iSCSI Node iscsi-name=name

Mode requête

   Le mode Query consiste d'une liste de paires attr=value. Tous les attributs doivent appartenir au même type d'objet. Il est également possible de spécifier un nom d'attribut sans valeur qui match tout objet possédant un tel attribut sans regarder sa valeur.

Mode liste

   Affiche tous les objets d'un type donné, optionnellement restreint aux valeurs d'attribut correspondant. Les argument sont des noms de type (entities, nodes, portails, dds, ddsets, portail-groups et policies"

Mode dé-enregistrement

   deregistration supporte le même jeu d'attributs que le mode query.

Discovery Domain Registration

   Ce mode permet d'enregistrer un domaine de découverte ou d'ajouter de nouveaux membres. Seule des attributs de domaine de découvert sont reconnus.

Discovery Domain Deregistration

   Permet de dé-enregistrer un domaine de découverte. Supporte le même jeu d'attributs que le mode query.

Enrôlement client

   Ce mode ne fonctionne que quand le serveur reconnaît le client comme ayant des capacités de nœud contrôle, qui est possible de 2 manières, avec --local en root sur l'hôte isnsd, ou --control. Pour enrôler un client, utiliser l'option --enroll, suivis par le nom source du client à enrôler. La chaîne sera utilisé comme nom de stratégie de sécurité que le client utilise pour s'identifier lui-même. Les attributs supportés sont:

name (alias spi) Nom de stratégie
key Clé publique du client
entity Identifiant d'entité assignée
node-type Types de nœud permis
node-name Noms de nœud permis
functions Bitmap des fonctions permises
object-type Masque d'accès aux objets

   Note: pour générer une clé DSA, un jeu de paramètres DSA doit être installé. Par défaut isnsadm s'attend à le trouver dans /etc/isns/sda.params. Ces paramètres sont créé par isnsd --init une fois sur le serveur. Alternativement, la commande suivante peut être utilisée: openssl dsaparam 1024 -out /etc/isns/dsa.params

Exemples

Initialiser les paramètres et clé DSA du serveur
isnsd --init
Créer un objet policy pour un nœud nommé isns.control, en lui octroyant les privilèges control
isnsadm --local --keyfile=control.key --enroll isns.control node-type=ALL functions=ALL object-type=ALL
Créer un objet nœud de stockage pour la machine de gestion
isnsadm --local --register control
dans cette machine, enrôler les hôtes supplémentaires
isnsadm --control --keyfile=somehost.key --enroll iqn.2005-01.org.open-iscsi.somehost node-type=target+initiator
Pour créer un domaine de découverte, et y ajouter de nœuds
isnsadm --control --dd-register dd-name=mydomain member-name=iqn.org.bozo.client iqn.org.bozo.jbod ...
Ajouter des membres à un DD existant
isnsadm --control --dd-register dd-id=42 member-name=iqn.com.foo member-name=iqn.com.bar
l'ID DD peut être obtenu avec
isnsadm --control --query dd-name=mydomain
En mode management, enregistrer un nœud et portail dans un hôte nommé client.bozo.org
isnsadm --control --register entity=client.bozo.org initiator=iqn.org.bozo.client portal=191.168.7.1:860