---
# System prepended metadata

title: TCONF Openstack
tags: [autres]

---

---
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/