InteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud Computing

  • Published on
    02-Dec-2014

  • View
    185

  • Download
    4

Embed Size (px)

DESCRIPTION

This will be an overview of the open source software that can be used to deploy and manage a cloud computing environment. The session will include information on storage, networking(e.g. OpenDaylight) and compute virtualization (Xen, KVM, LXC) and the orchestration(Apache CloudStack, OpenStack) of the three to build their own cloud services.

Transcript

<ul><li> 1. Crash Course In Open Source Cloud Computing Mark Hinkle Senior Director, Open Source Solutions Citrix Inc. mark.hinkle@citrix.com mrhinkle@gmail.com @mrhinkle Last updated: 10/1/2014 </li> <li> 2. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com ABOUT ME I Help Build Open Source Ecosystems Open Source Experience Manage Citrix Open Source Business Office Apache CloudStack Committer and PMC Member Advisory boards Gluster and Xen Project Joined Citrix via Cloud.com acquisition July 2011 Zenoss Core open source project to 100,000 users, 1.5 million downloads Former LinuxWorld Magazine Editor-in-Chief Open Management Consortium organizer Author - Windows to Linux Business Desktop Migration Thomson NetDirector Project - Open Source Configuration Management INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 3. http://www.slideshare.net/socializedsoftwar e Attribution You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. ShareAlike If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com Slides Available on Slideshare: Creative Commons Attributions-ShareAlike 4.0 International Share copy and redistribute the material in any medium or format Adapt remix, transform, and build upon the material for any purpose, even commercially. The licensor cannot revoke these freedoms as long as you follow the license terms. INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 4. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com AGENDA Vetting Open Source Projects Virtualization Infrastructure-as-a-Service Platform-as-a-Service SDN INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 5. the future of technological innovation is not stealing limited resources away from one another, but creating new resources and new opportunities to create new resources together in a rich ecosystem. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com OPEN SOURCE ISNT A ZERO-SUM GAME Allison Randal Open Source Hacker Former OSCON Program Chair @allisonrandal INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 6. Code Velocity Committers Committer Reputation User-driven or Vendor-Driven Innovation User Activity Corporate Support* Reputation of Foundation* By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com VETTING OPEN SOURCE PROJECTS How can you tell if theyre Legit INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 7. http://www.openhub.net http://activity.openstack.org By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com OPEN SOURCE ANALYSIS Visualizing Community Activity INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 8. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com VIRTUALIZATION Carving up compute resources OPEN SOURCE Xen Project Citrix XenServer KVM VirtualBox OpenVZ LXC PROPRIETARY VMware Microsoft Hyper-V OracleVM (Based on Xen Project) INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 9. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com HYPERVISORS AND CONTAINERS Differences in virtualization Type 1 Hypervisors VMware, Xen Project, Hyper-V Type 2 Hypervisors KVM, VirtualBox INTEROP NY 2014 - Crash Course in Open Source Cloud Computing Containers LXC </li> <li> 10. Lets your run a Linux system within A container is a group of processes on a Linux box, put together the provide an isolated environment From the inside, it looks like a VM Externally it looks like normal processes chroot on steroids By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com LINUX CONTAINERS (LXC) Lightweight Linux Virtualization another Linux system INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 11. Different file formats for virtual machines VMware uses vmdk file format, Xen and Hyper- V use VHD, KVM uses Raw or QCOW2 Guest images may be processor architecture VMware and Xen can manage SCSI devices, but KVM and Xen can use virtio drivers but not VMware uses a proprietary agent inside the guest OS (VMware tools) which does not work with Xen or KVM Xen uses VirtIo and ParaVirtualized drivers, Xen By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com THE PORTABILITY PROBLEM Containers compared to Hardware Virtualization bound KVM cannot VMware uses INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 12. Code Application is stored Build Code is built (Jenkins) Test Unit tests are By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com CONTINUOUS INTEGRATION Rebuild Applications on any Cloud and/or Virtualized Infrastructure in a repository (Subversion,Git) automated (Jenkins) Deploy Deploy code to server various ways Code Build Test Deploy Thoughtworks Go Open Source Continuous Deliver System INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 13. Docker is an open-source project to easily create lightweight, portable, self-sufficient containers from any application. The same container that a developer builds and tests on a laptop can run at scale, in production, on VMs, bare metal, public clouds and more. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com DOCKER CONTAINER PACKAGING Open source LXC Packaging Engine To learn more please visit: www.docker.io INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 14. Compliment to LXC not a replacement Managed daemonized processes on Linux Create ability to re-use and manage similar Content agnostic Hardware agnostic Easy to automate Integrated with other tools: Chef, OpenShift, By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com WHAT IS DOCKER System for Managing and Deploying LXC Containers using LXC applications Puppet, VMware, etc. INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 15. Kubernetes builds on top of Docker to construct a clustered container scheduling service. Kubernetes enables users to ask a cluster to run a set of containers. The system will automatically pick worker nodes to run those containers on, which we think of more as "scheduling" than "orchestration To learn more please visit: https://github.com/GoogleCloudPlatform/kubernetes Greek for Shipmaster By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com KUBERNETES Container Cluster Management Scheduler INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 16. Apache Mesos is a cluster manager that simplifies the complexity of running applications on a shared pool of servers. Largely supported by Twitter, used by LinkedIn, AirBNB too. Features Fault-tolerant replicated master using ZooKeeper Scalability to 10,000s of nodes Isolation between tasks with Linux Containers Multi-resource scheduling (memory and CPU aware) Java, Python and C++ APIs for developing new By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com APACHE MESOS One to many tools for managing large numbers of devices parallel applications Web UI for viewing cluster state To learn more please visit: http://mesos.apache.org/ INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 17. Project Year Started License Virtualization By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com INFRASTRUCTURE-AS-A-SERVICE Compute Orchestration INTEROP NY 2014 - Crash Course in Open Source Cloud Computing Technologies Apache CloudStack 2008 Apache (Bare Metal), Xenserver, KVM, LXC VMware Hyper- V HP Eucalyptus 2006 GPL Xen, KVM, VMware (commercial version) OpenNebula 2005 Apache Xen, KVM, VMware OpenStack 2010 (Developed by NASA by Anso Labs previously) Apache VMware ESX and ESXi, , Xen, XenServer, KVM, LXC, QEMU and Virtual Box </li> <li> 18. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com OPENSTACK The Boy Band of the Open Source Cloud INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 19. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com OPENSTACK SHARED SERVICES Span Compute, Storage and Networking IDENTITY SERVICE IMAGE SERVICE TELEMETRY SERVICE INTEROP NY 2014 - Crash Course in Open Source Cloud Computing ORCHESTRATION SERVICE </li> <li> 20. Trove Database Service Ironic Bare Metal (Ironic) Marconi Queue Service By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com EVEN MORE OPENSTACK PROJECTS Span Compute, Storage and Networking Cinder Block Storage Service Ceilometer Metering/Monitoring Heat Orchestration INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 21. OpenStack is not a product. If you are building a large infrastructure, its more like a tool kit. It gives you a lot of technologies that do take a lot of effort to integrate. Chris Kemp, OpenStack Board Member and Co-Founder By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com OPENSTACK SOLUTION PROVIDERS If you cant do it yourself INTEROP NY 2014 - Crash Course in Open Source Cloud Computing CEO of Piston Computing </li> <li> 22. Deltacloud(ruby) Daisein(java) Jclouds(java) Libcloud(python) Fog(ruby) By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com CLOUD APIS Everything (should) have an API in the Cloud INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 23. Project Description Ceph Distributed file storage system developed by DreamHost -&gt; GlusterFS Scale Out NAS system aggregating storage over Ethernet or Riak CS Riak CS is open source software designed to provide simple, available, distributed cloud storage at any scale. Riak CS is S3- API compatible and supports per-tenant reporting for billing and metering use cases. (object) Sheepdog Distributed storage for KVM hypervisors, distributed iSCSI By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com CLOUD STORAGE Virtualized, Distributed usually on Commodity Hardware InkTank -&gt; Red Hat (block, object, file) Infiniband (file) OpenStack Storage Long-term object storage system (object) INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 24. Project Sponsors Languages/Frameworks Spring for Java, Ruby for Rails and Sinatra, node.js, Grails, Scala on Lift and more via partners (e.g. Python, PHP) Cloudify Gigaspaces [Groovy for deployment recipes] OpenShift Origin Red Hat Java, Ruby, PHP, Perl and Python Apache Stratos WSO2 - &gt;Apache Stratus PHP, Tomcat, MySQL cartridges By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com PLATFORM-AS-A-SERVICE Abstracted Cloud-Scale Run-Time Environments CloudFoundry VMware -&gt; Pivotal -&gt; CloudFoundry Foundation INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li> 25. SOFTWARE DEFINED NETWORKING(SDN) Virtualization meets the network Decoupling of the control and data planes of the network to improve efficiency. Communication from a SDN controller via a protocol to network devices both physical and virtual. Abstractions allow for programmable networks. Network can be changed quickly via a controller Network offerings can match virtualization offerings for finer grained security in a highly volatile compute landscape. By Mark R. Hinkle @mrhinkle mrhinkle@gmail.com Automation Dynamic Networks Security Heterogeneous Management Single control point for various devices. INTEROP NY 2014 - Crash Course in Open Source Cloud Computing </li> <li>...</li></ul>