2013 dev ops (linuxday lug urbino e montefeltro)
DESCRIPTION
TRANSCRIPT
DevOpsLinux Day 2013 - Urbino
Calogero ‘Kalos’ Bonasiawww.bonasia.info
configuration management
attività (documentale / implementativa) che porta alla produzione di software
http://upload.wikimedia.org/wikipedia/commons/e/e2/Dsky.jpg
generare e mantenere informazioni accurate
service management
incident management
problem management
change management
release management
l’automazione dell’ITè come un gelato:
- tutti lo vogliono in “gusti” diversi
- in pochi sanno farlo… (buono)
devops: development + operations
metodologia sviluppo software che punta alla comunicazione,collaborazione ed integrazione
tra gli sviluppatori egli operatori dell’IT
http://it.wikipedia.org/wiki/File:Agile-vs-iterative-flow.jpg
effetto della metodologia agile nell'incrementare la frequenza degli eventi di rilascio, spesso misurati in giorni o settimane, in contrasto a grossi, rari rilasci, misurati in quadrimestri o anni, con le tradizionali metodologie di sviluppo
standardizzazione degli ambienti di svilupporilascio del prodotto, collaudodel software, evoluzione e mantenimento (bug fixing e minor release)
Il ruolo di un professionista DevOps ricorda molto la figura dell'ingegnere capo all'interno del cosiddetto "Toyota Production System".
Tali figure sono responsabili del successo del progetto ma senza alcuna formale autorità sui diversi gruppi coinvolti.
È loro richiesta conoscenza tecnica adeguata al fine di convincere i manager di quali siano le necessità e può essere di loro aiuto il sostegno da parte della dirigenza aziendale.
Invece, in molte organizzazioni, lo sviluppo del software e la gestione dei sistemi sono in divisioni differenti e poiché lo sviluppo è generalmente guidato dalle necessità dell'utente, per continue modifiche e conseguenti rilasci, i gruppi operativi sono concentrati sulla disponibilità e affidabilità dei servizi, nonché sulla gestione dei costi.
Ciò produce un "gap" tra sviluppo e gestione dei servizi che rallenta il passaggio in produzione.
(http://it.wikipedia.org/wiki/Devops)
puppetè un programma che consente agli amministratori di sistema di gestire le infrastrutture in tutto il loro ciclo di vita… … dal provisioning (stabilire le risorse che saranno necessarie alla struttura informatica)… alla configurazione per la gestione degli aggiornamenti di sicurezza… alle operazioni per verificare che l’ambiente dei server sia efficiente
puppet- software scritto in Ruby- gestione automatizzata e centralizzata di sistemi Linux, Unix, Solaris, AIX e le varianti di BSD ( e MacOSX)- impiego certificati X509- traffico di rete criptato- server + client
node facts (inventario risorse)
node manager
http://puppetlabs.com/wp-content/uploads/2013/05/puppet_node_manager.jpg
chi usa puppet ?
chi usa puppet ? I server di Wikipedia sono configurati e mantenuti con Puppet software.
Aziende come Google, VMWare e Cisco sponsorizzano l’azienda che guida lo sviluppo e offre una versione commerciale http://puppetlabs.com/
perché usare puppet?- un unico “luogo” in cui tenere le configurazioni- possibilità di creare macchine virtuali pronte all’uso e funzionanti al 100% senza sforzo- velocizzare i test di configurazione- replicare rapidamente l’infrastruttura di produzionegrazie a Vagrant un software open-source
per la creazione e configurazione di sistemi virtualizzati
cosa puoi fare con puppet- automatizzare facilmente le operazioni ripetitive
- distribuire rapidamente applicazioni critiche
- gestire in modo proattivo i cambiamenti necessari in un ambiente in continua evoluzione come quello dei server
- scalando da decine a migliaia di server, sia in infrastrutture fisiche che nel cloud
doh!
risorse su puppetdocs.puppetlabs.comwww.planetpuppet.orgforge.puppetlabs.com/example42/puppetopenskill.info
IRC (FreeNet) #puppet
Amazon … Google …