Sheepdog
| Sheepdog software | |
|---|---|
| Genere | Storage Distribuito (non in lista) |
| Sviluppatore | Chris Webb, Christoph Hellwig, Fujita Tomonori, Hitoshi Mitake, Jens Weber, Kai Zhang, Levin Li, Morita Kazutaka, Robin Dong, Ruoyu, Steven Dake, Yuan Liu |
| Data prima versione | 2010 |
| Ultima versione | 0.9.5 (1º marzo 2017) |
| Sistema operativo | GNU/Linux |
| Linguaggio | C |
| Licenza | GPL v2 (licenza libera) |
| Lingua | Inglese |
| Sito web | github.com/sheepdog/sheepdog |
Sheepdog è uno storage distribuito nato per QEMU/KVM.
I dischi delle macchine virtuali sono distribuiti sui nodi.
In base al livello di ridondanza scelto è possibile perdere uno o più nodi e rilanciare le macchine virtuali sui nodi attivi (Reliability).
Per aumentare le dimensioni dello storage o per eseguire più macchine virtuali basta aggiungere nodi (Scalability).
La sua configurazione ed i comandi per interagire hanno una sintassi chiara, semplice e ben documentata (Manageability).
Infine offre molte funzionalità avanzate, snapshot, cloning, iSCSI, cluster wide backup etc.
Storia
Il progetto sheepdog è stato fondato da Kazutaka Morita, programmatore della NTT Cyber Space Labs (Giappone). I motivi per cui ha dato vita a sheepdog sono:
“IaaS basate su OSS erano ai loro albori nel 2010. Anche OpenStack non era stato rilasciato. Non esisteva uno storage distribuito per fornire volumi a livello di blocchi a molte macchine virtuali e a noi serviva.
Il nome Sheepodog (cane pastore) è stato scelto come metafora: sheep (pecora) rappresenta un pc/server. Per amministrare un gregge formato da molti server (pecore), ci serviva uno cane pastore (sheepdog)".
Anche Tomonori Fujita, sempre della NTT Cyber Space Labs, era coinvolto agli inizi del progetto ed è l'attuale maintainer di (STGT).
Il contributo di un piccolo gruppo di sviluppatori di Taobao capitanato da Yuan Liu ha segnato un'importante svolta del progetto come testimoniato da Yuan stesso:
"Ad agosto 2011 un piccolo gruppo di sviluppatori di Taobao ha iniziato a realizzare un servizio di cloud computing. All'epoca sheepdog era molto instabile ma straordinariamente semplice e con un codice di base molto ridotto, paragonato ad esempio a Ceph. La semplicità e la possibilità di evolverlo a nostro piacimento, sono le ragioni per cui abbiamo scelto Sheepdog come soluzione di storage. Abbiamo contribuito sia allo sviluppo che alla ristrutturazione interna e migliorato la sua stabilità.".
Caratteristiche Principali
- Semplice implementazione (solo 2 servizi) ed una CLI intuitiva.
- Importazione ed esportazione di dischi virtuali esistenti (tutti i tipi supportati da qemu).
- Esportazione dei vdi in formato file (tutti i tipi supportati da qemu).
- Possibilità di scegliere il livello di ridondanza (Full Replica o Erasure Code), per l'intero cluster o per singolo vdi.
- Vdi
- snapshot
- clonazione
- ridmensionamento
- preallocazione
- blocco
- cambio ridondanza
- backup incrementali
- Cluster snapshot (con deduplica).
- Interfaccia di rete dedicata al traffico di sincronizzazione dei nodi.
- Supporto per la migrazione live (senza spegnimento) delle macchine virtuali tra i nodi del cluster.
- Amministra un numero illimitato di dischi e di diverse dimensioni.
- Integrato con OpenStack
Struttura del programma
- Un cluster manager (zookeeper or corosync)
- Controlla quali nodi si aggiungono o lasciano il cluster
- Il demone sheep
- Gestisce la scrittura, lettura e replica dei dati
- Il comando dog
- Serve per amministrare il cluster
Tutti questi componenti, in particolare il demone sheep, girano in user space.
A differenza di altri storage distribuiti, sheepdog non fa uso di server di metadati.
Sheepdog fa uso di un qualsiasi file system supportato da linux (Ext3, Ext4, Xfs...) che abbia l'opzione per gli attributi estesi (user_xattr).
Versioni Stabili
- 0.9.5, su github.com.
- 0.9.4, su github.com.
- 0.9.3, su github.com.
- 0.8.3, su github.com.
- 0.7.8, su github.com.
Collegamenti esterni
- Sito web del programma Sheepdog, su sheepdog.github.io.
- Wiki su Sheepdog, su github.com.
- Futuro sito web del programma Sheepdog(ancora in costruzione)
- Documentazione e manuale di gestione del programma Sheepdog, su sheepdog-project.org. URL consultato il 18 settembre 2014 (archiviato dall'url originale il 13 ottobre 2014).
- Taobao story, su lists.wpkg.org.
- IRC meeting summary, su lists.wpkg.org.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.