La configuration Cinder doit indiquer au moins les informations suivantes :
Informations d'autorisations pour authentification auprès de Keystone.
Classe des volumes à créer.
controller# pkg install cinder
Annulez le commentaire et définissez les paramètres suivants dans le fichier /etc/cinder/api-paste.ini. Ces paramètres indiquent l'emplacement du service de l'API Keystone et les informations d'authentification Cinder.
auth_uri = http://controller-name:5000/v2.0 identity_uri = http://controller-name:35357 admin_tenant_name = service admin_user = cinder admin_password = cinder-password
Dans le fichier /etc/cinder/cinder.conf, annulez le commentaire du paramètrevolume_driver approprié. Les quatre classes de volumes ci-dessous sont prises en charge :
Prend en charge la création de volumes locaux que Nova utilisera sur le même noeud que le service de volume Cinder.
Prend en charge la création et l'exportation des cibles iSCSI utilisés par les noeuds de calcul distants Nova.
Prend en charge la création et l'exportation des Luns Fibre Channel utilisés par les noeuds de calcul distants Nova.
Prend en charge la création et l'exportation des cibles iSCSI à partir d'Oracle ZFS Storage Appliance utilisées par les noeuds de calcul distants Nova. Des paramètres supplémentaires de ce pilote doivent être définis dans le fichier /etc/cinder/cinder.conf.
Dans l'exemple décrit dans ce chapitre, iSCSI permet de fournir les volumes utilisés par les instances Nova. Mettez en commentaire la sélection par défaut de ZFSVolumeDriver, et annulez le commentaire de la sélection ZFSISCSIDriver.
# Driver to use for volume creation (string value) # The local ZFS driver provides direct access to ZFS volumes that it # creates. The other listed drivers provide access to ZFS volumes via # iSCSI or Fibre Channel and are suitable for cases where block storage # for Nova compute instances is shared. #volume_driver=cinder.volume.drivers.solaris.zfs.ZFSVolumeDriver volume_driver=cinder.volume.drivers.solaris.zfs.ZFSISCSIDriver #volume_driver=cinder.volume.drivers.solaris.zfs.ZFSFCDriver #volume_driver=cinder.volume.drivers.zfssa.zfssaiscsi.ZFSSAISCSIDriver
Annulez le commentaire et définissez les paramètres suivants dans le fichier /etc/cinder/cinder.conf. Ces paramètres précisent l'emplacement du service de l'API Glance, la base de données correspondante pour Cinder et le service RabbitMq.
glance_host=controller-name sql_connection=mysql://cinder:cinder@controller-name/cinder rabbit_host=controller-name volume_driver=cinder.volume.drivers.solaris.zfs.ZFSISCSIDriver
controller# svcadm enable iscsi/target stmf
controller# svcadm enable cinder-db controller# svcadm enable cinder-api cinder-scheduler controller# svcadm enable cinder-volume:default cinder-volume:setup
Voir aussi
Reportez-vous également à How to Build OpenStack Block Storage on ZFS.
Le pilote Oracle ZFS Storage Appliance iSCSI Cinder permet au ZFSSA (Oracle ZFS Storage Appliance) d'être utilisé de façon transparente sous la forme d'une ressource de stockage en mode bloc pour Cinder. Le pilote permet de créer des volumes iSCSI pouvant être alloués par un serveur Cinder à toute machine virtuelle instanciée par le service Nova. Le pilote est distribué par le package cloud/openstack/cinder. Votre appareil doit exécuter au moins la version logicielle 2013.1.2.0. de ZFSSA.
Avant de commencer
Configuration d'un pool sur Oracle ZFS Storage Appliance. Vous pouvez décider d'utiliser un pool préexistant.
Vous pouvez utiliser un utilisateur existant ou créer un nouvel utilisateur avec les autorisations de rôle pour effectuer les opérations du pilote Cinder.
Le workflow cinder.akwf effectue les tâches suivantes :
Création de l'utilisateur s'il n'existe pas.
Définition des autorisations de rôle pour effectuer les opérations du pilote Cinder.
Activation du service RESTful si le service est désactivé.
Vous pouvez exécuter le workflow dans l'interface de ligne de commande (CLI) ou à partir de l'interface utilisateur de navigateur (BUI) de votre appareil.
zfssa:maintenance workflows> download zfssa:maintenance workflows download (uncommitted)> show Properties: url = (unset) user = (unset) password = (unset) zfssa:maintenance workflows download (uncommitted)> set url="url to the cinder.akwf file" url = "url to the cinder.akwf file" zfssa:maintenance workflows download (uncommitted)> commit Transferred 2.64K of 2.64K (100%) ... done zfssa:maintenance workflows> ls Properties: showhidden = false Workflows: WORKFLOW NAME OWNER SETID ORIGIN VERSION workflow-000 Clear locks root false Oracle Corporation 1.0.0 workflow-001 Configuration for OpenStack Cinder Driver root false Oracle Corporation 1.0.0 zfssa:maintenance workflows> select workflow-001 zfssa:maintenance workflow-001 execute (uncommitted)> set name=openstack name = openstack zfssa:maintenance workflow-001 execute (uncommitted)> set password=openstack-password password = ******** zfssa:maintenance workflow-001 execute (uncommitted)> commit User openstack created.
Le workflow invite à entrer un nom d'utilisateur et un mot de passe. Ce nom d'utilisateur et ce mot de passe seront également utilisés dans le fichier cinder.conf en tant que zfssa_auth_user et zfssa_auth_password.
Indiquez les propriétés obligatoires suivantes dans le fichier cinder.conf :
volume_driver – Assurez-vous que cinder.volume.drivers.zfssa.zfssaiscsi.ZFSSAISCSIDriver n'est pas commentée. Assurez-vous que les trois autres sélections sont commentées.
zfssa_host – Nom ou adresse IP de l'hôte de gestion ZFSSA.
zfssa_auth_user – Nom d'utilisateur de l'utilisateur Cinder sur le ZFSSA.
zfssa_auth_password – Mot de passe de l'utilisateur Cinder sur le ZFSSA.
zfssa_pool – Le pool à utiliser pour allouer les volumes.
zfssa_target_portal – Portail cible iSCSI ZFSSA (data-ip:port). Le port par défaut est 3260.
zfssa_project – Nom du projet ZFSSA. Si le projet n'existe pas sur l'appareil, un projet avec le même nom est créé par le pilote au démarrage. Ce projet contient tous les volumes créés par le pilote. Des propriétés ZFSSA supplémentaires sont utilisées pour définir les caractéristiques des volumes (la taille de bloc, par exemple) et leur accès (par exemple, initiateurs, cibles, sécurité).
zfssa_initiator_group – Nom du groupe d'initiateurs. Si le groupe d'initiateurs n'existe pas sur l'appareil, un groupe d'initiateurs avec le même nom est créé par le pilote au moment du démarrage. Si vous souhaitez utiliser le groupe d'initiateurs default, définissez la valeur de ce paramètre avec sa valeur default. Le groupe d'initiateurs default peut s'avérer utile à des fins d'évaluation. Le groupe d'initiateurs default ne doit normalement pas être utilisé, car cela risque d'exposer les volumes à des initiateurs non souhaités ou incompatibles.
zfssa_target_interfaces – Les interfaces de réseau des cibles iSCSI ZFSSA. Exécutez la commande suivante pour afficher les interfaces :
zfssa:configuration net interfaces> show Interfaces: INTERFACE STATE CLASS LINKS ADDRS LABEL e1000g0 up ip e1000g0 1.10.20.30/24 Untitled Interface
connection – Modifiez la connection en sql_connection.
Recherchez la ligne suivante :
connection=mysql://cinder:cinder...
Comme indiqué ci-dessous modifiez cette ligne :
sql_connection=mysql://cinder:cinder...
Si le service ZFSSA iSCSI n'est pas en ligne, utiliser la BUI ou la CLI dans l'appareil pour l'activer. L'exemple suivant montre comment utiliser la CLI dans l'appareil :
zfssa:> configuration services iscsi zfssa:configuration services iscsi> enable zfssa:configuration services iscsi> show Properties: <status> = online ...
controller# svcadm enable cinder-volume:default cinder-volume:setup