informatique:systeme:virtualisation:openstack

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
informatique:systeme:virtualisation:openstack [2013/10/31 16:23] – créée bn8informatique:systeme:virtualisation:openstack [2013/11/28 09:55] (Version actuelle) – [Neutron L3 agent] bn8
Ligne 34: Ligne 34:
 #       fi #       fi
 </code> </code>
 +
 +
 +==== Neutron LBaaS agent ====
 +
 +Une primitive //LBS// fait très bien l'affaire mis à part le faire que le script init ne tuera pas au stop les instance //haproxy//. Il faut donc légèrement modifier la configuration init pour gérer cela. Pour cela éditer le fichier ///etc/init/neutron-lbaas-agent.conf// et ajouter le bloc suivant à la bloc : <code>post-stop script
 +        HAPROXY_PID=$(/bin/ps -e | grep haproxy | awk '{print $1}')
 +        [ -n "$HAPROXY_PID" ] && kill $HAPROXY_PID
 +        exit 0
 +end script</code>
 +
 +Ensuite déclarer la primitive dans pacemaker :
 +<code>primitive p_neutron-lbaas-agent lsb:neutron-lbaas-agent \
 +        op monitor interval="30s"</code>
 +
 +
 +==== Neutron DHCP Agent ====
 +
 +Une primitive //LBS// fait très bien l'affaire mis à part le faire que le script init ne tuera pas au stop les instance //dnsmask//. Il faut donc légèrement modifier la configuration init pour gérer cela. Pour cela éditer le fichier ///etc/init/neutron-dhcp-agent.conf// et ajouter le bloc suivant à la bloc : <code>post-stop script
 +        DNSMASQ_PID=$(/bin/ps -e | grep dnsmasq | awk '{print $1}')
 +        [ -n "$DNSMASQ_PID" ] && kill $DNSMASQ_PID
 +        exit 0
 +end script</code>
 +
 +Ensuite déclarer la primitive dans pacemaker :
 +<code>primitive p_neutron-dhcp-agent lsb:neutron-dhcp-agent \
 +        op monitor interval="30s"</code>
 +
 +==== Neutron L3 agent ====
 +
 +Une primitive //LBS// fait très bien l'affaire mis à part le faire que le script init ne tuera pas au stop les instance //neutron-ns-metadata-proxy//. Il faut donc légèrement modifier la configuration init pour gérer cela. Pour cela éditer le fichier ///etc/init/neutron-l3-agent.conf// et ajouter le bloc suivant à la bloc : <code>post-stop script
 +        NEUTRON_NSMP_PID=$(/bin/ps -e | grep neutron-ns-meta | awk '{print $1}')
 +        [ -n "$NEUTRON_NSMP_PID" ] && kill $NEUTRON_NSMP_PID
 +        exit 0
 +end script</code>
 +
 +Ensuite déclarer la primitive dans pacemaker :
 +<code>primitive p_neutron-l3-agent lsb:neutron-l3-agent \
 +        op monitor interval="30s"</code>
 +
  
 ===== Mise en place de l'accès SSH entre les hyperviseurs pour la gestion des migrations d'instances ===== ===== Mise en place de l'accès SSH entre les hyperviseurs pour la gestion des migrations d'instances =====
Ligne 45: Ligne 84:
  
  
 +===== Mise en place de l'agent de metadata =====
 +
 +<note>Cette explication est valable dans le cas d'une utilisation de Neutron.</note>
 +
 +Il faut à la fois agir sur Neutron qui à pour rôle de relayer les requêtes jusqu'au service de metadata et sur Nova qui héberge le service de metadata en lui même.
 +
 +Il faut donc installer sur le //Network Node// le paquet //neutron-metadata-agent// puis éditer le fichier ///etc/neutron/metadata_agent.ini// :
 +  - Configurer les informations de connexion à Keystone (auth_url, admin_tenant_name, ...)
 +  - Définir //nova_metadata_ip// qui correspond à l'IP (ou nom d'ĥote) du serveur API Nova
 +  - Définir //metadata_proxy_shared_secret// qui est le secret partagé entre le Neutron (le proxy) et Nova (le service)
 +
 +Il faut ensuite sur le serveur d'API Nova éditer le fichier ///etc/nova/nova.conf// et :
 +  - vérifier que le service //metadata// est bien activé. Pour cela, vérifier que //metadata// est bien cité dans la variable //enabled_apis//
 +  - définir la variable //service_neutron_metadata_proxy// à //True//
 +  - définir la variable //neutron_metadata_proxy_shared_secret// comme sur le Network node
 +
 +Il faudra ensuite redémarrer les services //nova-api// et //neutron-metadata-agent//.
 +
 +===== Accès VNC aux consoles des instances =====
 +
 +Il faut :
 +
 +  * **Sur les hyperviseurs :** mettre les paramètres suivant dans le fichier /etc/nova/nova.conf : <code>
 +vncserver_listen=[IP local de l'hyp data network]
 +vncserver_proxyclient_address=[IP local de l'hyp data network]
 +novncproxy_base_url=[URL public horizon]:6080/vnc_auto.html => exemple : http://openstack.exemple.com:6080/vnc_auto.html
 +vnc_keymap =   => volontairement vide, c'est à dire en mode automatique, il n'y que comme ça que ça marche bien !</code>
 +
 +  * **Sur le noeud de management :** 
 +    * Installer les paquets //nova-consoleauth// et //nova-novncproxy//
 +    * Mettre le bloc suivant dans ///etc/nova/nova.conf// : <code># VNC Console
 +novncproxy_host=0.0.0.0 (ou IP publique d'accès = IP d'Horizon)
 +novncproxy_port=6080</code>
  • informatique/systeme/virtualisation/openstack.1383236604.txt.gz
  • Dernière modification : 2013/10/31 16:23
  • de bn8