Jenkins, jclouds, CloudStack, and CentOS by David Nalley
-
Upload
buildacloud -
Category
Software
-
view
60 -
download
0
Transcript of Jenkins, jclouds, CloudStack, and CentOS by David Nalley
- 1. Jenkins, jclouds, CloudStack, and CentOS David Nalley @ke4qqq [email protected] 10 November 2014
- 2. #whoami Recovering sysadmin Former server hugger, now cloud addict Contributor to a few open source projects: Fedora, Zenoss, CloudStack, jclouds VP, Infrastructure for the Apache Software Foundation Employed by Citrix in the Open Source Business Office Jenkins + jclouds + Centos + CloudStack
- 3. Background: Jenkins Continuous Integration Server Formerly Hudson community forked Written in Java MIT-Licensed Lots of plugins Jenkins + jclouds + Centos + CloudStack
- 4. Background: Apache jclouds Cloud Abstraction Library Written in Java ASLv2 License Jenkins + jclouds + Centos + CloudStack
- 5. Background: Apache CloudStack Formerly from Cloud.com Compute- focused IaaS management solution. Started in 2008 Now a top level project at the ASF Written in Java ASLv2 Jenkins + jclouds + Centos + CloudStack
- 6. The Problem Lots of different testing needs multiple platforms, multiple versions, multiple versions of software. Jenkins + jclouds + Centos + CloudStack
- 7. The Problem at scale We have nearly 200 software projects each with their own set of needs, distinct platforms. Some want CentOS 5, 6, or 7; others want OSX, Win 2012, Ubuntu, FreeBSD, or Solaris. Demand varies widely projects getting closer to release test more; some days we had hundreds of jobs in the queue, other days we had 20 or 30 Jenkins + jclouds + Centos + CloudStack
- 8. The transition for monolith to scalable. Jenkins + jclouds + Centos + CloudStack
- 9. Where we were Dedicated Jenkins master Esoteric things had VMs ~30 dedicated machines, strewn across multiple datacenters. Jenkins + jclouds + Centos + CloudStack
- 10. How we started our move Defining what a build slave needs Make sure that Jenkins is working efficiently (Misconfigured jobs are a huge drain) Adopted a LTS version of Jenkins Jenkins + jclouds + Centos + CloudStack
- 11. Building images Packer building images Start with JeOS declare everything else in puppet, run puppet as a job. Create a jenkins job for this everytime a job changes rebuild, reupload. Jenkins + jclouds + Centos + CloudStack
- 12. How you plan to use Cloud Server huggers wanted to use fixed VMs (deploy fixed machines) Jenkins + jclouds + Centos + CloudStack
- 13. How you want to use cloud Fresh, dynamically provisioned VM for each build Jenkins + jclouds + Centos + CloudStack
- 14. The right answer Jenkins + jclouds + Centos + CloudStack
- 15. The right answer (for us) Spin up build slaves in response to demand. Leave the machine up for 30 minutes after demand subsides to keep from flapping. Jenkins + jclouds + Centos + CloudStack
- 16. Make it all work Jenkins + jclouds + Centos + CloudStack
- 17. Install the jclouds plugin Jenkins + jclouds + Centos + CloudStack
- 18. Choose a cloud provider Jenkins + jclouds + Centos + CloudStack
- 19. Configure Jenkins + jclouds + Centos + CloudStack
- 20. Configure Jenkins + jclouds + Centos + CloudStack
- 21. Profit? Jenkins + jclouds + Centos + CloudStack
- 22. Bonus Jenkins + jclouds + Centos + CloudStack
- 23. Get Involved Web: http://cloudstack.apache.org/ Mailing Lists: cloudstack.apache.org/mailing-lists.html IRC: irc.freenode.net: 6667 #cloudstack Twitter: @cloudstack LinkedIn: www.linkedin.com/groups/CloudStack-Users-Group-3144859 If it didnt happen on the mailing list, it didnt happen. Jenkins + jclouds + Centos + CloudStack