! Passionate sysadmin ! I’ve been working in IT for over a decade, mainly as a consultant in the system area ! Head of Opera&ons @ exoscale – Responsible for the overall exoscale plaIorm & product opera&on
cloud services, we need : ! A cloud – Cloudstack backed of course ! ! A team – Devops of course ! ! Third party tools ecosystem – Open Source of course !
! Linux KVM hypervisor (Ubuntu based) ! Local storage only, no clustering – Keep it Simple, scalable and fast ! Basic networking mode – Means one public IP per VM, No VLANs – Secured by security groups, AWS style
be kept small – Team growth ra&o != number of virtual machines hosted ! Devops doctrine applied ! Development is opera&ons aware – What impact my code has on produc&on ? ! Opera&ons is managed by development principles and tools – Revert (git) – Documented in line and in commits (avoid rewrite and informa&on loss) – Accountable: who did what
! Provide user database, billing/chargeback, &cke&ng and knowledge base ! Used by Cloudstack for user authen&ca&on ! Cloudstack does not offer any na&ve billing/chargeback capability ! Cloudstack only provide usage data which must be processed for billing
“It is only infrastructure, it does not change” ! Repe&&ve tasks are boring and cost &me ! Small devops team ! Adding & managing more and more – Quickly if required ! ! Deploy, maintain & enforce the same configura&on everywhere ! Adjust con&nuously
should: Automa&cally deploy itself (Almost) Find its iden&ty seings (name, networks,...) Install the necessary packages for which it was intended Register itself to all tools Live along its peers and respect regula&ons Report to cityhall if anything goes wrong
well known open source configura&on management tool Puppet ! Exoscalepuppet : – 40+ modules – Each applica&on got it’s module – Between 10 to 100 commits per week
visibility – Tradi&onally: service up, CPU, RAM, network & disk I/O ! Are we genera&ng business value ? – Need more insight into applica&on behavior (who using what, ...)
Source distributed resIul search and analy&cs system ! Distributed, NoSQL ! Data indexing is done thru HTTP PUT method, search by HTTP GET ! We store all our logs in a central ES cluster ! Logs kept only 24 hours locally on the server ! Open Source Kibana used as search portal
with many exis&ng plugins ! Plugin may be a script ! Collectd @ exoscale – Metrics sent to graphite – Metrics sent to Riemann – Metrics sent to custom dashboard apps – SNMP polling
server & bots used as a « control tower » ! Central view of our infrastrcture : ! Monitoring alarms ! All git commits ! Ability to pilot our servers thru IRC bots: – Puppet apply, apt-‐get, service restart etc… – No need to log on server – Changes can be performed on a group of servers very quickly
Con&nuous integra&on server ! Almost every of our apps are built with Jenkins ! Applica&on build may be piloted from IRC ! Linked with IRC and Git ! We build cloudstack with jenkins
our Web portal frontend infrastructure : ! Allocate IP/name ! Define machine belonging to the service plaIorm (by a fact) ! “press deploy” ! Let puppet deploy the configura&on and applica&on on the host : – Nginx – Web app ! Let puppet reconfigure load balancing to add this node in the farm ! Watch logs, graph and traffic to this new host in real &me on dashboards
us ! We’ve built a complete ecosystem around Cloudstack ! Massive automa&on is the key ! Required to be scalable and being operated by small a team ! Give it a try : hsps://portal.exoscale.ch