Installation et configuration d'OpenStack dans Oracle® Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Avril 2015
 
 

Installation de Cinder

La configuration Cinder doit indiquer au moins les informations suivantes :

  • Informations d'autorisations pour authentification auprès de Keystone.

  • Classe des volumes à créer.

Installation et configuration de Cinder

  1. Installez le package Cinder.
    controller# pkg install cinder
  2. Précisez les informations de configuration d'authentification.

    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
  3. Indiquez les classes des volumes à créer par le service de volume Cinder.

    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 :

    ZFSVolumeDriver

    Prend en charge la création de volumes locaux que Nova utilisera sur le même noeud que le service de volume Cinder.

    ZFSISCSIDriver

    Prend en charge la création et l'exportation des cibles iSCSI utilisés par les noeuds de calcul distants Nova.

    ZFSFCDriver

    Prend en charge la création et l'exportation des Luns Fibre Channel utilisés par les noeuds de calcul distants Nova.

    ZFSSAISCSIDriver

    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
  4. Définissez les paramètres de configuration supplémentaires.

    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
  5. Si les cibles iSCSI seront configurées, activez les services correspondants.
    controller# svcadm enable iscsi/target stmf
  6. Activez les services SMF Cinder.
    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.

Configuration du pilote ZFS Storage Appliance iSCSI Cinder

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.

  1. Exécutez le workflow cinder.akwf.

    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.

    • Exécutez le workflow à partir de la CLI.
      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.
    • Exécutez le workflow à partir de la BUI.
      1. Sélectionnez Maintenance -> Workflow, et utilisez l'icône plus (+) pour télécharger un nouveau workflow.
      2. Cliquez sur le bouton Parcourir et sélectionnez le fichier cinder.akwf.
      3. Cliquez sur le bouton TELECHARGER pour terminer le téléchargement du workflow.
      4. Cliquez sur la nouvelle ligne qui apparaît sur la page Workflows BUI pour exécuter le workflow du pilote Cinder.

        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.

  2. Définissez les paramètres dans le fichier cinder.conf.

    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...
  3. Vérifiez que le service ZFSSA iSCSI est en ligne.

    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
    ...
  4. Activez les services SMF de volume Cinder.
    controller# svcadm enable cinder-volume:default cinder-volume:setup