Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
1
LINUXDAY 2012
Un'altra azienda è possibileIvan Rossi
BioDec S.r.l.
ERLUG
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
2
LINUXDAY 2012
… che non usa software closed-source
BioDec S.r.l. è una società di informatica che, fin dalla fondazione (2003), ha scelto di usare esclusivamente software libero o open-source.
Tutte le attività aziendali sono gestite senza usare prodotti proprietari: dal desktop alle infrastrutture cloud, passando per la intranet e il filesystem distribuito.
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
3
LINUXDAY 2012
Un breve inventario
Desktop & server– Debian, Ubuntu
Comunicazione– Postfix, mailman, ejabberd, Asterisk, openVPN
Gestione attività e conoscenza– Plone, Redmine, Penelope, SVN & co.
Storage e backup– NFS, GlusterFS, Backuppc
Virtualizzazione e Cloud computing– KVM, Ganeti, OpenNebula
Autenticazione– NIS, OpenLDAP
Gestione di configurazione, provisioning e monitoraggio– Fai, puppet, cfengine3, OMD + icinga, graphite & co.
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
4
LINUXDAY 2012
Gestione delle attività: Redmine
Redmine (http://www.redmine.org) è un issue tracker modulare e molto flessibile e configurabile– Progetti multipli – Ruoli definibili e permessi granulari– Ticket customizzabili (campi aggiuntivi)– Sistema di reportistica flessibile– Autenticazione su LDAP multipli– Supporta vari DB backend– Supporta tutti i maggiori sistemi di versionamento
● SVN, CVS, Git, Mercurial, Bazaar, Darcs
Questa flessibilità ci ha permesso di mappare il nosto flusso di lavoro “iterazioni+kanban”
nonostante nasca per progetti software
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
5
LINUXDAY 2012
Redmine: rapporti
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
6
LINUXDAY 2012
Gestione delle attività: Penelope
Un nuovo sistema di gestione progetti – Specializzato per la gestione di progetti software– Focus on metodologie agili (concetto di iterazione)– Integra issue tracking, documentazione, reportistica– Interfacciabile a Google Docs
Finanziato dalla regione Emilia-Romagna – POR 2010 Misura 2.1 B (Elogic, RedTurtle, BioDec)
Verrà rilasciato a breve come software libero– http://getpenelope.github.com
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
7
LINUXDAY 2012
Storage: GlusterFS
GlusterFS è un file system distribuito che aggrega le risorse fornite da storage servers interconnessi tramite TCP/IP o RDMA (Infiniband), permettendo di creare enormi filesystems di rete in maniera scalabile ed elastica– Scalabile: esistono installazioni multi-petabytes– Elastico: è possibile sia espandere che ridurre un filesystem
GlusterFS, aggiungendo o togliendo servers. (anche se è molto più semplice espandere)
Software libero, con supporto commerciale di RedHat
Dettagli: http://www.gluster.org
Altri oggetti simili: Ceph, Lustre, MooseFS
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
8
LINUXDAY 2012
GlusterFS features
File system Posix
Supporto ACL e quota
Esportabile nativamente, NFSv3, CIFS (con samba)
Fault-tolerance (opportunamente configurato)
High availability (solo export nativo)
Self-healing
Installazione molto semplice e veloce
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
9
LINUXDAY 2012
GlusterFS: alcuni dettagli
Architettura a plugins– NB è basato su FUSE
Componenti– Brick: filesystem locale a un
server su cui opera GlusterFS– Translator: componente sw che
opera su brick o subvolume, e genera un subvolume con particolari proprietà.
– Distribute, replicate, stripe: speciali translator che generano configurazioni simil-RAID
– Volume: il risultato finale, uno share glusterfs
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
10
LINUXDAY 2012
GlusterFS: veramente semplice da installare
Procurarsi un paio di “server”– installarci il pacchetto di Glusterfs e far partire glusterfsd
● Usate i pacchetti di gluster.org e non quelli delle distribuzioni.– Preparare filesystems per i brick
● Io uso XFS su LVM
Creare un “trusted pool” dei server – gluster peer probe numero.ip.del.server
Creare un volume gluster– gluster volume create gv1 sgrv1.my.net:/export/brick1
sgrv2.my.net:/export/brick1– gluster volume start gv1; gluster volume info
Installare i client e montare il filesystem distribuito– mount -t glusterfs glssrv1.my.net:gv1 /mnt
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
11
LINUXDAY 2012
GlusterFS: RAID-like
gluster volume create (vol) replica (n) stripe (m) transport (tcp,rdma) server1:brick1 server2:brick2 …
Distribute– Il default (replica 0 stripe 0)– I files creati vengono scritti interamente su uno dei brick– Nessuna forma di ridondanza (JBOD)
Replicate– I files vengono replicati interamente su diversi bricks
(RAID1,RAID5-6)
Stripe– I files venfono spezzati in m stripes su m bricks
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
12
LINUXDAY 2012
GlusterFS: elasticità
Espandere un volume1. gluster peer probe (server)2. gluster volume add-brick (volume) (server:nuovobrick)3. gluster volume rebalance (volume) fix-layout start
Ridurre un volume1. gluster volume remove-brick (volume) (server:brick) start2. gluster volume remove-brick (volume) (server:brick) status 3. ...aspettare... ; goto 24. gluster volume remove-brick (volume) (server:brick) commit 5.gluster volume rebalance (volume) fix-layout start
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
13
LINUXDAY 2012
GlusterFS: una nota di realismo
Non sperate che con hardware scadente
il tutto vada fortissimo
La velocità sarà funzione del componente più scadente
(come sempre!)
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
14
LINUXDAY 2012
Alla ricerca della nuvola giusta
Le nostre esigenze di private cloud– Aggregare installato legacy: servers KVM/virsh indipendenti con
VM su LVM, cluster di virtualizzazione– Semplicità di migrazione VM, punti extra per live migration
Soluzioni valutate– OpenStack: documentazione molto scadente, immaturo
● pensato per grandi installazioni (provider). Vale anche per CloudStack
– OpenQRM: carino ma progetto one-man band.– OpenNebula: maturo, valido scalabile, ben documentato
● Interfaccia CLI e portali● Scalabile a grandi installazioni, ma OK sulle piccole● Interfacciabile ad Amazon EC2● Live migration solo con VM su file, CLVM o ISCSI (vedi anche virsh)● Molte feature superflue per noi (portali, virtual switch,
autenticazione granulare, rendicontazione)– Ganeti: ...
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
15
LINUXDAY 2012
Alla fine... Ganeti
Un sistema di gestione per cluster di macchine virtuali http://code.google.com/p/ganeti
Simile a virsh/libvirt, ma pensato da zero per la gestione di un cluster di server
Simile a virsh: command-line interface, no GUI &;-)
Progetto nato in Google – Pensato per hardware COTS, requisiti minimali, peer-to-peer– Basato su altri progetti open-source
● Requisiti software: – Xen o KVM hypervisor– Python, Haskell (necessario per auto-balancing)– LVM (opzionale, ma fortemente consigliato)– DRBD (necessario per live migration, altrimenti opzionale)
– ERLUG - Guido Trotter
Piattaforma di sviluppo: Debian Ganeti
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
16
LINUXDAY 2012
Ganeti: features
Xen o KVM
Migrazione automatizzata istanze (macchine virtuali)
Live migration (usando DRBD)
Allocazione automatica istanze (auto-bilanciamento)
Peer to peer: master non è SPOF
Cluster multi-site (node groups)
Sistema di provisioning interno
Interfaccia REST
Tagging di cluster, gruppi, nodi, istanze
Configurazione abbastanza semplice– Auto-gestione di LVM e DRBD
Ganeti
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
17
LINUXDAY 2012
Uno schemino
Ganeti
Thanks: http://swift.siphos.be/aglara/platform.html
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
18
LINUXDAY 2012
Ganeti: alcuni esempi
Creazione di una nuova macchina virtuale– gnt-instance add -t drbd -o image+squeeze -s 20G (miaIstanza)
Reinstallare una VM esistente– gnt-instance reinstall -o (tipoOS) (miaIstanza)
Migrazione VM– live, solo tipo drbd
● gnt-instance migrate (miaIstanza) – a freddo, tutti i tipi
● gnt-instance move [-n nuovonodo | -I] (miaIstanza)
“Adozione” di VM esterne (siate benedetti!)– gnt-instance add -t plain -n (miohost) --disk 0:adopt=lv (miaVM)
Emergenza!!!!– Svuotare un nodo intero: gnt-node evacuate (mioNodo)– il master non funziona: gnt-cluster master-failover Ganeti
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
19
LINUXDAY 2012
Ganeti: tagging, sembra una fesseria...
… invece è troppo comodo!
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
20
LINUXDAY 2012
Monitoraggio: Open Monitoring Distribution
OMD è una raccolta di strumenti integrati, finalizzata a realizzare sistemi di monitoraggio– Motori di monitoraggio
● Nagios, Icinga, Shinken– Interfacce web
● Thruk, Multisite+WATO, Shinken UI, NagVis – Grafici
● Pnp4Nagios– Documentazione
● Dokuwiki
Costruita attorno a check-mk ed MK-livestatus
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
21
LINUXDAY 2012
OMD: check-mk
Check-mk è un plugin nagios dedicato alla raccolta dati– Riduzione drastica del carico sulla CPU del server Nagios– Inventario automatico di host e checks– Possibilità di esportare i dati verso altri strumenti (multisite)– http://mathias-kettner.com/check_mk.html
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
22
LINUXDAY 2012
OMD: Wato
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
23
LINUXDAY 2012
OMD: host service view
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
24
LINUXDAY 2012
OMD: group view
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
25
LINUXDAY 2012
OMD: Multisite
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
26
LINUXDAY 2012
OMD: PNP4nagios
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
27
LINUXDAY 2012
OMD: NagVis
Ivan Rossi, Un'altra azienda è possibileBologna, 2012-10-27 ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it
28
LINUXDAY 2012
GRAZIE PER L'ATTENZIONE
Le slides e le riprese audio/videodell'intervento saranno disponibili su:
http://erlug.linux.it/linuxday/2012/