--- title: TCONF Openstack tags: autres --- ## TCONF Openstack AWS a la maison. Creation de VM sur nos serveurs hébergés. Utilisé chez OVH Open-source Commencé en 2010 Services : - Swift : Object Storage - moins utilisé - fonctionne globalement comme S3 - **Nova** : Lancement de VM, Gestion du compute - Conductor : - Scheduler Donne l'HV - Compute : Lance sur l'HV - DB : Gere l'etat des VM - **Cinder** : Stockage - Agnostique a la solution de stockage : - CEPH, LVM, Iscsi, ... - **Neutron** : Gestion du network - Plusieurs back-end : OVS, OVM, ... - Keystone : Gestion d'utilisateurs - Plusieurs solution d'authentification : - SQL, LDAP, Kerberos, OIDC, SAML - Glance : Gestion des images - Image stocke dans S3 ou Swift - Horizon : Web Interface Communication entre les services: -> chaque service expose une API perso mais standardisée -> chaque service connait l'API des autres services -> avec du messaging, Nova ne sait pas que tous les autres services existent donc cette methode est utilisée avec une message queue. ex: DNS on cree un record DNS, il pop un event "dns create" dans une queue type RabbitMQ, le service DNS lit la queue RabbitMQ et traite le message. Logging : chaque service drop ses propres logs. Au CRI, les logs sont aggrégé dans un ES. -> les logs sont collectés avec Fluentd. kolla : Dockerise les services d'Open-stack Pas de CD, pour des questions de couverture de test. Plus facile en terme de gestion de faire un systeme de maintenance. Ressources : - docs.openstack.org : Section Architecture ### Liens utiles (pour aller plus loin) La doc, elle est pas forcément complète, mais elle a le mérite d'être clair sur les points qu'elle aborde. Les parties intéressantes à lire sont les « Architecture Guide » et « Operations Guide » https://docs.openstack.org/victoria/ Le design global d'OS (qui vient du Architecture Guide), avec le schéma super mastock donc je parlais https://docs.openstack.org/arch-design/design.html Globalement, le schéma ressemble à peu près à celui que j'ai fait, il détaille juste beaucoup plus les composants inhérants au fonctionnement de chaque service, comme les DB ou le messaging. https://docs.openstack.org/arch-design/_images/osog_0001.png Il y a le OpenStack Networking Guide, qui est super bien fait, mais faut s'accrocher, il se passe des trucs. Disons que passer sur l'introduction c'est déjà une grosse étape. https://docs.openstack.org/neutron/victoria/admin/ Il y a la doc du driver OVN qui est pas mal aussi https://docs.openstack.org/neutron/victoria/admin/ovn/index.html et qui montre assez bien comment les différentes entités vont se parler entre elle. Genre comment les VMs vont pouvoir accéder à un réseau extérieur, comment elles vont pouvoir parler entre elles si elles sont sur un même réseau, etc. https://docs.openstack.org/neutron/victoria/admin/ovn/routing.html Les docs de Kolla et de Kolla-ansible ne sont pas spécialement intéressantes, il vaut mieux lire le code. Et enfin, le service de Function-as-a-Service, Qinling https://docs.openstack.org/qinling/victoria/user/