Wednesday, April 17, 2013

Beginner's Guide to OpenStack : Basics [Part 1]

# OpenStack?

OpenStack (http://www.openstack.org/) is an OpenSource cloud computing platform that can be used to build up a Public and Private cloud. As in weaving of various technological components to provide a capability to build a cloud service supporting any use-case and scale.

Once upon a time RackSpace came into Cloud Services. In some parallel beautiful world, few Pythonistas at NASA started building there own Nova Cloud Compute to handle there own instances. RackSpace bought SliceHost which worked 'somewhat' fine. RackSpace came along with their Swift Object Storage Service and weaved in Nova with few more components around it. More other companies like HP, RedHat, Canonical  etc. came along to contribute and benefit from OpenSource cloud.

It's all Open it can be. Open Source. Open Design. Ope Development. Open Community.

---

# Quick Hands-On

DevStack (http://devstack.org/) gives you the easiest fastest way to get all OpenStack components installed, configured and started on any supported O.S. platform.
You can trial-run your app-code in an OpenStack environment at TryStack (http://trystack.org/).
RedHat RDO (http://openstack.redhat.com/Main_Page) is also coming in soon making it super easy to get OpenStack running on RHEL-based distros.
---

# Components?


OpenStack Cloud Platform constitutes of mainly following components:
  • Compute: Nova
    Brings up and maintains operations related to virtual server as per requirement.
    ~like aws ec2
  • Storage: Swift
    Allows you to store, retrieve & remove objects (files).
    ~like aws s3
  • Image Registry/Delivery: Glance
    Processes metadata for disk images, manages read/write/delete for actual image files using  'Swift' or similar scalable file storage service.
    ~like aws ami
  • Network Management: Quantum/Melange
    Provides all the networking mechanisms required in any instance or environment as a service. Handels network interface cards plug/un-plug actions, ip allocation procedures along-with capability enhancement possible to virtual switches.
  • Block Storage: Cinder
    Enables to attach volumes for persistent usage. Detach them, snapshot them.
    ~like aws ebs
  • WebUI: Horizon
    Provides usability improvement for users or projects for managing compute nodes, object storage resources, quota usages and more in a detailed web-app way.
    ~like aws web dashboard
  • Authentication: Keystone
    Identity management system, providing apis to all other OpenStack components to query for authorization.
  • Billing Service: Ceilometer (preview)
    Analyzes quantity, cost-priority and hence billing of all the tasks performed at cloud.
  • Cloud Template: Heat (under construction)
    Build your entire desired cloud setup providing OpenStack a Template for it.
    ~like aws cloudformation
  • OpenStack CommonOSLO (tenure code)
    Supposed to contain all common libraries of shared infrastructure code in OpenStack.

Hypervisors are software/firmware/hardware that enables to create, run and monitor virtual machines. OpenStack Compute supports multiple hypervisors like KVM, LXC, QEMU, XEN, VMWARE & more.

Message Queue Service is used by most of the OpenStack Compute services to communicate with each other using AMQP (Advanced Message Queue Protocol) supporting async calls and callbacks.

---

# Weaving of Components


asciigram: openstack ~ evolution mode, how varied components are connected
~~~~~

~~~~~










~~~~~












~~~~~













~~~~~















---

More Links:


4 comments:

  1. "OSLO (under construction)" -> not exactly. Oslo contains only code that was already proven to work in other projects and has been moved from those separate locations into one common project. It's more of a "tenured code" than "under construction".

    ReplyDelete
  2. thanks for the correction, updated it... so just to confirm, there is no wrapping-around or so is still in progress... as in it's just like extracted to a common library.

    ReplyDelete
  3. There is also an easy to get OpenStack Grizzly sandbox. It's a Amazon PAID AMI called NanoStack from Diamond Keys. It's pretty cheap. There is no installation or configuration. Just launch an instance and you get a working OpenStack installation.

    ReplyDelete
  4. Open Stack Cloud Computing Online Training
    http://www.21cssindia.com/courses/open-stack-online-training-224.html
    Introduction - Virtualization Overview - Software as a service - patform as a service - Infrastructure as a Service - Openstack – History and Overview - Q&A - OpenStack Architecture DeepDive - Components Overview - Keystone architecture - Nova architecture - Glance architecture - Quantum architecture - - Deploying OpenStack – Step by Step through CLI - Getting the pre-requisites right - Setting up MySQL, RabbitMQ - Setting up Keystone - Setting up Glance - Setting up Horizon - Creating accounts and users - Deploying OpenStack – Step by Step through CLI - Understanding Cloud Images and instances - Building an image for Cloud - Registering and uploading an image - Setting up Nova - Running an image - Creating keypairs, Security Groups - Managing Instances - Deploying OpenStack – Advanced - Multi-node Environment - Differences between single and multi-node setup - DevStack – Scripted installation for OpenStack - DevStack – Script Discussion - Log Files, Troubleshooting, Common Errors - Openstack API - Introduction - Nova APIs - Consuming the APIs – demo - openstackforums, User Groups, ML, Documentation - Openstack Foundation. - Employees to learn at their own pace and maintain control of learning “where, when and how” with boundless access 24/7by 21st Century Software Solutions. contact@21cssindia.com
    http://www.21cssindia.com

    ReplyDelete