La production d’hubiC
Object	
  Storage	
  basé	
  sur	
  Swi2	
  chez	
  OVH	
  
Jean-­‐Daniel	
  
Sysadmin	
  
OpenStack	
  *	
  @OVH	
  
@pilgrimstack	
  
Romain	
  
DevOp	
  
OpenStack *	
  @OVH	
  
A...
1.  PrésentaJon	
  et	
  Architecture	
  
2.  AutogesJon	
  
3.  Déploiement	
  et	
  Upgrade	
  
3	
  
PRÉSENTATION ET ARCHITECTURE
4	
  
hubiC	
  in	
  a	
  nutshell	
  
•  +	
  450	
  000	
  
accounts	
  
•  3	
  x	
  6	
  Po	
  
•  3	
  Md	
  d’objets	
  
•...
6	
  
Swift	
  
Object
Storage	
  
API	
  
Scalabilité	
  
Haute
Disponibilité	
  
Applis	
  API	
  hubiC	
  
Swi2	
  Keystone	
  
OVH	
  
OpenStack	
  
7	
  
Keystone	
  	
  
Galera	
  
HAProxy	
  
Proxy	
  Node	
  
Storage	
  Node	
  
x	
  1500	
  
Zone	
  RBX	
  
Zone	
  
GRA	
...
# swift-recon -d
===============================================================================
--> Starting reconnaissan...
AUTOGESTION
10	
  
Ac=ve	
  
1	
  ssh	
  /	
  node	
  
1	
  PUT	
  +	
  GET	
  +	
  
MD5	
  /	
  infra	
  
Passive	
  
Disque,	
  Réseau	
  
...
12	
  
Reboot	
   <	
  1/mois	
   Humain	
  
Changement	
  
de	
  disque	
   <	
  1/mois	
   Humain	
  
Nombre	
  
d’alertes	
  e...
Changement	
  de	
  disque	
  en	
  2014	
  
•  1302	
  sur	
  l’année	
  
•  3,5	
  /	
  jour	
	
  
14	
  
• Monitoring	
  
• Collecte	
  
d’infos	
  
IdenJfi-
caJon	
  
DownJme	
  
dans	
  shinken	
  
Mise	
  en	
  
mainte-
nance...
DÉPLOIEMENT ET UPGRADE
16	
  
AdministraJf	
  
• InserJon	
  en	
  
base	
  
• DéfiniJon	
  du	
  
rôle	
  
Puppet	
  
• 20	
  modules	
  
• Pas	
  
d’in...
d1	
  
d2	
  
d3	
  
d4	
  
0000….	
  ffff….	
  
echo '/account/container/object' | md5sum
905800fbbe50068719815db4b82765b1
...
database	
  
admin	
  
shinken	
  
object1	
  
object2	
  
object3	
  
1.	
  Sync	
  DB/Ring	
  
2.	
  Collect	
  dispersi...
Upgrade	
  
SélecJon	
  
d’une	
  zone	
  
RéinstallaJon	
  
via	
  l’API	
  OVH	
  
Script	
  post-­‐
install	
  
Run	
  ...
Merci
*	
  
* on recrute !!!
Prochain SlideShare
Chargement dans…5
×

Meetup #13 osfr - ops - hubiC - pulbic

1 199 vues

Publié le

[EN]
hubiC is a public cloud storage plateform based on OpenStack Swift. 4700 nodes and 6 Po replicated 3 times require many automations and best pratctices.
[FR]
Hubic est une plateforme de stockage cloud publique basée sur OpenStack Swift. 4700 nœuds et 6 Po répliqués 3 fois nécessitent de nombreuses automatisations et best pratctices.

Publié dans : Internet
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 199
Sur SlideShare
0
Issues des intégrations
0
Intégrations
68
Actions
Partages
0
Téléchargements
14
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Meetup #13 osfr - ops - hubiC - pulbic

  1. 1. La production d’hubiC Object  Storage  basé  sur  Swi2  chez  OVH  
  2. 2. Jean-­‐Daniel   Sysadmin   OpenStack  *  @OVH   @pilgrimstack   Romain   DevOp   OpenStack *  @OVH   Arnaud   DevOp   OpenStack *  @OVH   2  
  3. 3. 1.  PrésentaJon  et  Architecture   2.  AutogesJon   3.  Déploiement  et  Upgrade   3  
  4. 4. PRÉSENTATION ET ARCHITECTURE 4  
  5. 5. hubiC  in  a  nutshell   •  +  450  000   accounts   •  3  x  6  Po   •  3  Md  d’objets   •  4700  nodes   Sep  2011   Cloud  NAS   Dec  2011   hubiC   Dec  2012   hubiC  passe   sur  Swi2   5  
  6. 6. 6   Swift   Object Storage   API   Scalabilité   Haute Disponibilité  
  7. 7. Applis  API  hubiC   Swi2  Keystone   OVH   OpenStack   7  
  8. 8. Keystone     Galera   HAProxy   Proxy  Node   Storage  Node   x  1500   Zone  RBX   Zone   GRA   Zone   SBG   Zone   RBX   Puppet   Shinken   En  vrac   •  Havana   •  Préférence  des  services  proches   •  Round  Robin  DNS  sur  les  HAProxy   8  
  9. 9. # swift-recon -d =============================================================================== --> Starting reconnaissance on 2826 hosts =============================================================================== [2015-01-13 18:08:20] Checking disk usage now Distribution Graph: 31% 1 40% 44 * 41% 178 ***** 42% 145 **** 43% 72 ** 44% 49 * 45% 9 46% 4 55% 2 80% 1 81% 81 ** 82% 919 *************************** 83% 2330 ********************************************************************* 84% 1487 ******************************************** 85% 287 ******** 86% 28 87% 1 Disk usage: space used: 8968121433358336 of 11209460259983360 Disk usage: space free: 2241338826625024 of 11209460259983360 Disk usage: lowest: 31.34%, highest: 87.13%, avg: 80.0049353435% 2819/2826 hosts succeeded, 7 error[s] while checking hosts. =============================================================================== 9  
  10. 10. AUTOGESTION 10  
  11. 11. Ac=ve   1  ssh  /  node   1  PUT  +  GET  +   MD5  /  infra   Passive   Disque,  Réseau   Charge,  dmesg   Process  Swi2  ...     2  serveurs  shinken   12  instances  acJve/ passive   Thruk  pour  agréger   108  K  probes   11  
  12. 12. 12  
  13. 13. Reboot   <  1/mois   Humain   Changement   de  disque   <  1/mois   Humain   Nombre   d’alertes  en   même  temps   Seuil  en   foncJon  de   l’infra   Humain   13  
  14. 14. Changement  de  disque  en  2014   •  1302  sur  l’année   •  3,5  /  jour   14  
  15. 15. • Monitoring   • Collecte   d’infos   IdenJfi- caJon   DownJme   dans  shinken   Mise  en   mainte- nance   • Ticket   datacenter   • Puppet   Correc- Jon   SorJe  de   downJme   SorJe   de   mainte- nance   15  
  16. 16. DÉPLOIEMENT ET UPGRADE 16  
  17. 17. AdministraJf   • InserJon  en   base   • DéfiniJon  du   rôle   Puppet   • 20  modules   • Pas   d’intervenJon   humaine   Swi2   • Refresh  Ring   • Rebalance   17  
  18. 18. d1   d2   d3   d4   0000….  ffff….   echo '/account/container/object' | md5sum 905800fbbe50068719815db4b82765b1 adresse  de  object 9058...   d1   d2   d3   d4   d5   adresse  de  object 9058...   Refresh Ring   18  
  19. 19. database   admin   shinken   object1   object2   object3   1.  Sync  DB/Ring   2.  Collect  dispersion   3.  Get  dispersion   4.  Palier  +100   5.  Get  Ring   6.  Move   parJJon   Refresh Ring   19  
  20. 20. Upgrade   SélecJon   d’une  zone   RéinstallaJon   via  l’API  OVH   Script  post-­‐ install   Run  Puppet   Sync   RécupéraJon   github   Patch   ReconstrucJon   de  paquets   Mise  a  jour  du   dépôt   Pinning   Upgrade   System   OpenStack   20  
  21. 21. Merci *   * on recrute !!!

×