Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Osis18_Cloud : Projet Wolphin

62 views

Published on

Gandi, Objectif Libre, Alter Way

Published in: Software
  • DOWNLOAD FULL BOOKS, INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... 1.DOWNLOAD FULL. doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Osis18_Cloud : Projet Wolphin

  1. 1. Wolphin ⇒ Objectif Libre, Gandi, Lip6, LIPN Osis Cloud 2018
  2. 2. Alter Way WOLPHIN ⇒ Facturer les consommations en conteneurs - métrologie - monitoring - orchestration - facturation ⇒ 3/4 d’avancement sur deux ans, fin Janvier 2019 ⇒ Prototype quasi finalisé, livraison Juillet 2018 P. 2 OSIS Cloud - présentation Wolphin OSIS CloudJuin 2018
  3. 3. Alter Way WOLPHIN ⇒ Facturer les consommations en conteneurs - métrologie ✓ - monitoring ✓ - orchestration ✓ - facturation ✓ ⇒ 3/4 d’avancement sur deux ans, fin Janvier 2019 ⇒ Prototype quasi finalisé, livraison Juillet 2018 P. 3 OSIS Cloud - présentation Wolphin OSIS CloudJuin 2018
  4. 4. LIPN Système d’ordonnancement traditionnel • Réservation/Allocation sur la base d’un nombre fixe de ressources. 1 / 3
  5. 5. LIPN Notre approche (exemple) • Réservation dynamique de ressources selon des classes SLA : Premium pour les CPUs (entre 2 et 4 cœurs) ; Advanced pour la RAM (entre 4 et 8GB RAM) Motivation • Augmenter la combinatoire pour des placements plus fins ⇒ meilleures performances • On masque à l’utilisateur une complexité (il spécifie des classes) Principe • Sélection de la requête (encapsulée dans un conteneur); • Sélection des nœuds candidats; • Calcul automatique du nombre de ressources; • Affectation du conteneur sur une machine. 2 / 3
  6. 6. Résultats Collaboration • Xuanhua Shi - Huazhong University of Science and Technology (Chine) Implémentations • Système d’allocation et d’ordonnancement de conteneurs (C++) • Nouvelles stratégies multi-critères dans SwamrKit (Go) Publications • 2 articles publiés dans des conférences internationales (SC2 et PDP) • 1 article en cours de soumission dans une revue internationale (JPDC) • 3 articles en cours de soumission dans 2 conférences internationales (DATCOM et SBAC) et 1 workshop international (Europar-CBDP) 3 / 3
  7. 7. Offrir la consolidation et l’isolation de performance Memory Consolidation: Minimiser la mémoire inutilisée Memory Isolation: Garantir l’accès à la mémoire M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 1 / 7
  8. 8. Offrir la consolidation et l’isolation de performance Memory Consolidation: Minimiser la mémoire inutilisée Memory Isolation: Garantir l’accès à la mémoire Native Host Mem A Mem B Mem C Consolidation: un seul espace mémoire Isolation: même espace mémoire M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 1 / 7
  9. 9. Offrir la consolidation et l’isolation de performance Memory Consolidation: Minimiser la mémoire inutilisée Memory Isolation: Garantir l’accès à la mémoire Native Host Mem A Mem B Mem C Consolidation: un seul espace mémoire Isolation: même espace mémoire With Virtual Machines Host Mem A Mem B Mem C VM A VM B VM C Consolidation: difficilement transferable Isolation: espace mémoire dédié M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 1 / 7
  10. 10. Offrir la consolidation et l’isolation de performance Memory Consolidation: Minimiser la mémoire inutilisée Memory Isolation: Garantir l’accès à la mémoire Native Host Mem A Mem B Mem C Consolidation: un seul espace mémoire Isolation: même espace mémoire With Virtual Machines Host Mem A Mem B Mem C VM A VM B VM C Consolidation: difficilement transferable Isolation: espace mémoire dédié With Containers Host Mem A Mem B Mem C Consolidation: facilement transferable Isolation: espace mémoire dédié M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 1 / 7
  11. 11. L’automatisation du dimensionnement des conteneurs Un problème ouvert : LSFMMS 2016 (Linux Storage, Filesystem and Memory Management Summit) Vladimir Davydov "Memory control group fairness" FOSDEM 2017 Chris Down (Facebook) "cgroupv2: Linux’s new unified control" blog linkedin engineering 2016 Zhenyun Zhuang "Don’t Let Linux Control Groups Run Uncontrolled" M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 2 / 7
  12. 12. L’automatisation du dimensionnement des conteneurs Un problème ouvert : LSFMMS 2016 (Linux Storage, Filesystem and Memory Management Summit) Vladimir Davydov "Memory control group fairness" FOSDEM 2017 Chris Down (Facebook) "cgroupv2: Linux’s new unified control" blog linkedin engineering 2016 Zhenyun Zhuang "Don’t Let Linux Control Groups Run Uncontrolled" Des besoins différents mais un même constat : 1 besoin d’une métrique pour optimiser le dimensionnement 2 un candidat semble s’imposer, la refault distance M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 2 / 7
  13. 13. L’automatisation du dimensionnement des conteneurs Un problème ouvert : LSFMMS 2016 (Linux Storage, Filesystem and Memory Management Summit) Vladimir Davydov "Memory control group fairness" FOSDEM 2017 Chris Down (Facebook) "cgroupv2: Linux’s new unified control" blog linkedin engineering 2016 Zhenyun Zhuang "Don’t Let Linux Control Groups Run Uncontrolled" Des besoins différents mais un même constat : 1 besoin d’une métrique pour optimiser le dimensionnement 2 un candidat semble s’imposer, la refault distance Cette métrique est-elle suffisamment précise ? M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 2 / 7
  14. 14. Évaluation de la précision de la refault_distance 1 Go 20 min10 sec2 Go 0 500 1000 1500 2000 Position in shadow (in MB) 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 Absoluteerror(GB) M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 3 / 7
  15. 15. Évaluation de la précision de la refault_distance 1 Go 20 min10 min2 Go 0 500 1000 1500 2000 Position in shadow (in MB) 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 Absoluteerror(GB) M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 3 / 7
  16. 16. Évaluation de la précision de la refault_distance 1 Go 20 min30 min2 Go 0 500 1000 1500 2000 Position in shadow (in MB) 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 Absoluteerror(GB) M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 3 / 7
  17. 17. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  18. 18. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  19. 19. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P7 P5 P2P3P4P6 Groupe 0 1 P1 Nb_evictions : 1 Nb_pages : 1 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  20. 20. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P8 P5 P3P4P6P7 Groupe 0 2 P2 1 P1 Nb_evictions : 2 Nb_pages : 2 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  21. 21. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  22. 22. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  23. 23. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 Px P5P6P7P8P9 Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  24. 24. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 Px P5P6P7P8P9 Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 Nb_evictions : 0 Nb_pages : 0 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  25. 25. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 Px P6P7P8P9Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 1 P5 Nb_evictions : 1 Nb_pages : 1 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  26. 26. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 P7Px Px Px P8P9 Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 2 P6 1 P5 Nb_evictions : 2 Nb_pages : 2 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  27. 27. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 P8P9Px Px Px Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 3 P7 2 P6 1 P5 Nb_evictions : 3 Nb_pages : 3 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  28. 28. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 Px P9Px Px Px Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 3 P7 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 4 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  29. 29. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 Px P9Px Px Px Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 3 P7 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 4 Groupe 2 Nb_evictions : 0 Nb_pages : 0 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  30. 30. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 PxPx Px Px Px Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 3 P7 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 4 Groupe 2 1 P9 Nb_evictions : 1 Nb_pages : 1 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  31. 31. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 PxPx Px Px Px Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 3 P7 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 4 Groupe 2 1 P9 Nb_evictions : 1 Nb_pages : 1 PxPx Px Px Px Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 3 P7 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 4 Groupe 2 1 P9 Nb_evictions : 1 Nb_pages : 1 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  32. 32. Une approche de refault par groupes P1P5 P2P3P4P6 Groupe 0 Nb_evictions : 0 Nb_pages : 0 P9 P5 P4P6P7P8 Groupe 0 3 P3 2 P2 1 P1 Nb_evictions : 3 Nb_pages : 3 PxPx Px Px Px Px Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 3 P7 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 4 Groupe 2 1 P9 Nb_evictions : 1 Nb_pages : 1 PxPx Px Px PxP7 Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 3 Groupe 2 Nb_evictions : 2 Nb_pages : 2 Px 1 P9 M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 4 / 7
  33. 33. Une approche de refault par groupes new_refault_distance = 2 + 3 + ( 4 - 2 ) P6Px P6P8P6P9P6Px P6Px P6Px P6PxP6P7 Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 3 Groupe 2 Nb_evictions : 2 Nb_pages : 2 P6Px 1 P9 Complexité : on obtient directement la métrique refault_distance = nb_pages−page_age M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 5 / 7
  34. 34. Une approche de refault par groupes new_refault_distance = 2 + 3 + ( 4 - 2 ) P6Px P6P8P6P9P6Px P6Px P6Px P6PxP6P7 Groupe 0 4 P4 3 P3 2 P2 1 P1 Nb_evictions : 4 Nb_pages : 4 Groupe 1 4 P8 2 P6 1 P5 Nb_evictions : 4 Nb_pages : 3 Groupe 2 Nb_evictions : 2 Nb_pages : 2 P6Px 1 P9 Complexité : on obtient directement la métrique refault_distance = nb_pages−page_age Empreinte mémoire : limitée et configurable (2 entiers par groupes) M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 5 / 7
  35. 35. Évaluation de la précision de notre approche par groupe 1 Go 20 min10 sec2 Go 0 500 1000 1500 20000 2 4 6 8 10 12 Absoluteerror(MB) Maximum error M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 6 / 7
  36. 36. Évaluation de la précision de notre approche par groupe 1 Go 20 min10 min2 Go 0 500 1000 1500 20000 2 4 6 8 10 12 Absoluteerror(MB) Maximum error M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 6 / 7
  37. 37. Évaluation de la précision de notre approche par groupe 1 Go 20 min30 min2 Go 0 500 1000 1500 20000 2 4 6 8 10 12 Absoluteerror(MB) Maximum error M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 6 / 7
  38. 38. Estimation d’un working-set depuis la métrique La métrique donne une approximation de la position d’une page. On peut en inférer une estimation du working-set : à chaque miss on regarde la position de la page on maintient des statistiques sur des fenêtres temporelles M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 7 / 7
  39. 39. Estimation d’un working-set depuis la métrique La métrique donne une approximation de la position d’une page. On peut en inférer une estimation du working-set : à chaque miss on regarde la position de la page on maintient des statistiques sur des fenêtres temporelles # cat /sys/muse 1024 5% 10% 5% 512 0% 0% 5% 1536 22% 15% 8% 2048 38% 27% 16% 2560 38% 27% 16% 4096 56% 50% 45% ... ..% ..% ..% 1min 5min 15min M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 7 / 7
  40. 40. Estimation d’un working-set depuis la métrique La métrique donne une approximation de la position d’une page. On peut en inférer une estimation du working-set : à chaque miss on regarde la position de la page on maintient des statistiques sur des fenêtres temporelles # cat /sys/muse 1024 5% 10% 5% 512 0% 0% 5% 1536 22% 15% 8% 2048 38% 27% 16% 2560 38% 27% 16% 4096 56% 50% 45% ... ..% ..% ..% 1min 5min 15min1min 5min 15min 2048 38% 27% 16% Sur les 5 dernières minutes, avec 2 Go en plus, on aurait eu 27% hits M. Bittan / J. Sopena MUsE - Memory Usage Evaluation 7 / 7
  41. 41. www.objectif­libre.com Cloudkitty pour  Wolphin par Objectif Libre 5 juin 2018 www.objectif-libre.com @objectiflibre
  42. 42. Objectif Libre Nous accompagnons vos projets Cloud de A à Z Concevoir Mettre en  œuvre Optimiser  l’usage Exploiter Une infrastructure  adaptée à vos  enjeux Déployer  intelligemment en  automatisant Et tirer le meilleur  parti de votre Cloud Assurer le maintien  en conditions  opérationnelles Audit Conseil Architecture Workshops Notre offre de conseil : sur­mesure ou sur­étagère Déploiement Migration Intégration DevOps Big Data Stockage Support Infogérance SLAs Packs Starters  OpenStack Kit DevOps CloudKitty Nos formations à l’utilisation et à la mise en œuvre 
  43. 43.  Composante logicielle d’OpenStack pour la  facturation  Rating et chargeback (facturation) des  ressources physiques consommées (cpu, mémoire, disque, réseau…)  Génération de rapports de facturation Cloudkitty en bref
  44. 44.  Objectif Libre société adhérente au Pôle  Systematic / Groupement Thématique Logiciels  Libres  Prise de connaissance du projet Wolphin lors  d’échanges avec les partenaires du pôle  Proposition d’expertise pour la partie facturation  des ressources consommées par les conteneurs Wolphin : une rencontre grâce à Systematic
  45. 45.  Ouverture à de nouvelles sources de métriques  Accélération de l’évolution de la solution pour  l’écosystème « cloud­natif »  Découplage de l’authentification d’OpenStack  Design plus générique pour la collection de  métriques de nouvelles sources  Réponse aux besoins de facturation et aux  enjeux du projet Wolphin Évolution de Cloudkitty grâce à Wolphin
  46. 46.  Ajout du collecteur Prometheus  Client v2 qui apporte plus de souplesse et un  découplage possible avec OpenStack Avenir de Cloudkitty pour le projet Wolphin
  47. 47. Besoin d’information ? +33 (0)5.82.95.65.36 contact@objectif-libre.com Restons en contact @objectiflibre Objectif-libre ObjectifLibre notre newsletter www.objectif-libre.com Vous voulez nous rejoindre ? jobs@objectif-libre.com
  48. 48. Présentation de Gandi Gandi.net Domain : Fournisseur de nom de domaine depuis Mars 2000 Simple Hostng: Plus de 100K applicaton et sites déployés Cloud: Fournisseur de cloud depuis 2008 Security: Geston de certfcats SSL Créaton : 1999 Effectfs : 84 salaries Points de présences: 3 contnents (Europe, us, Asie)
  49. 49. Métrologie réseau Définition métrologie: La métrologie regroupe l'ensemble des techniques permettant d'effectuer des mesures, de les interpréter et de garantir leur exactitude Définition métrologie réseau: Assurer la collecte est la bonne exploitation des métriques réseaux pour assurer une facturation équitable Métrologie réseau au niveau de Wolphin: • Collecte générique des métriques réseau au travers d’une couche d’abstraction • Collecte générique Docker/LXC/… • Collecte au niveau des containers et au niveau des hosts
  50. 50. Mécanique de Collecte 1/2 Deux processus de collecte: • Collecte online : • Extraction periodique de la consommation en bande passante et en paquets par seconde a partir des statistique netdev du kernel • Mapping entre les interfaces des containers et leur pair au niveau des kernel • Collecte offline: • Patch du kernel pour retourner les statistique des netdev a la destruction • Mapping entre les interfaces des containers et leur pair au niveau des kernel
  51. 51. Mécanique de Collecte 2/2 • Architecture de collecte: • Daemon en python pour la collecte online • Règle UDEV et script python pour la collecte offline • Kairos DB pour le stockage des métriques • Stockage actuel se basant sur une api en envoyant des données en JSON → Modifier la collecte pour utiliser le model de données Cloudkitty
  52. 52. Alter Way OSIS Cloud - présentation Wolphin Jun. 2018 OSIS CloudP. 1
  53. 53. Alter Way Storage solutions: Prometheus TS DBMS and monitoring system + performance, efficient space (as low as 1.3bytes/sample) +/- pull model - no string type metrics, by design strings only for metadata (labels) - low performance with high cardinality labels (i.e. container_id - each value is a new time series) better with new storage layer in 2.0 - no event logging - no bulk API OSIS Cloud - présentation Wolphin Jun. 2018 OSIS CloudP. 2
  54. 54. Alter Way Storage solutions: InfluxDB Hybrid DBMS for time series and events + string type metrics + event logging - commercial clustering - still not a general storage OSIS Cloud - présentation Wolphin Jun. 2018 OSIS CloudP. 3
  55. 55. Alter Way Storage solutions: Elasticsearch Search engine / document store + perfect for event logging + maturity, tooling, kibana, etc. - performance, space - especially bad for time series OSIS Cloud - présentation Wolphin Jun. 2018 OSIS CloudP. 4
  56. 56. Alter Way Storage solutions: Timescale Postgres extension: partitioned hypertables - performance but wrt Postgres: ~20x insert, 2kx delete, up to 14kx queries - grafana dashboards + no need for ETL can manage all types of data we need + free clustering ++ flexibility, maturity OSIS Cloud - présentation Wolphin Jun. 2018 OSIS CloudP. 5
  57. 57. Alter Way ⇒ https://gitlab.com/wolphin Merci - Julien Sopena, LIP6 - Christophe Cérin, LIPN - Christophe Sauthier, Objectif Libre - Ahmed Amamou, Gandi - Marco Mariani, Alter Way Juin 2018 OSIS CloudP. 4 Aller plus loin avec Wolphin OSIS Cloud - présentation Wolphin

×