The Birth of OpenStack
Open Stack Summary
• Born on: 21 October 2010
• First Release Name : Austin
• Service offer with first release : Compute -
Nova, Storage – Swift
• Coding Language: Python
• OS Requirement: Cross Platform
• Open Component : 40+
• Open Source Code Repo: [Link]
• Website: [Link]
What is Openstack?
• OpenStack is a cloud OS/a software platform .
• that is used to control the large pools of
computing, storage, and networking resources
within a data center.
• Open Stack is open-source and free software.
• This is basically used for cloud computing and
deployed as an IaaS.
• uses pooled virtual resources to create and
manage private and public cloud.
What is Openstack?
• OpenStack manages a lot of virtual machines;
this permits the usage of physical resources to
be reduced.
• OpenStack offers many cloud-related services
(such as networking, storage, image services,
identity, etc.) by default.
• Open stack allow management through a
web-based dashboard or through CLI
commands or RESTful web services.
RESTful API
• Representational State Transfer (REST)
• RESTful API is an interface that two computer
systems use to exchange information securely
over the internet.
Open Stack components:
• Open stack is a modular architecture to
provides different IaaS services with different
components with various codes names.
• There are about 40 component that open
stack have.
Components of OpenStack
Neutron
Horizon
(Control Panel)
1. Compute (Nova)
• The OpenStack Compute Service (Nova) is a cloud computing
instance controller, which is the main part of an IaaS system.
• It is designed to manage and automate pools of computer
resources and can work with widely available virtualization
technologies, as well as bare metal and high-performance
computing (HPC) configurations.
• Nova is written in Python language.
• Nova can use several hypervisor technologies, including KVM
(Kernel-based Virtual Machine)
• OpenStack Services which communicate with Nova:
Keystone
Glance
Neutron
2. Block Storage (Cinder)
• OpenStack Block Storage (Cinder) provides
persistent block-level storage devices for use with
OpenStack compute instances.
• The block storage system manages the creation,
attaching and detaching of the block devices to servers.
• Block storage volumes are fully integrated into
OpenStack Compute and the Dashboard allowing for
cloud users to manage their own storage needs.
3. Object Storage (Swift)
• OpenStack Object Storage (Swift) is a scalable redundant storage
system.
• Objects and files are written to multiple disk drives spread
throughout servers in the data center, with the OpenStack software
responsible for ensuring data replication and integrity across the
cluster.
• Storage clusters scale horizontally simply by adding new servers.
Should a server or hard drive fail, OpenStack replicates its content
from other active nodes to new locations in the cluster. Because
OpenStack uses software logic to ensure data replication and
distribution across different devices, inexpensive commodity hard
drives and servers can be used.
4. Networking (Neutron)
• OpenStack Networking (Neutron) is a system
for managing networks and IP addresses.
• OpenStack Networking ensures the network is
not a bottleneck or limiting factor in a cloud
deployment, and gives users self-service
ability, even over network configurations.
5. Dashboard (Horizon)
• OpenStack Dashboard (Horizon) provides administrators and users
with a graphical interface to access, provision, and automate
deployment of cloud-based resources.
• The design accommodates third party products and services, such as
billing, monitoring, and additional management tools.
• The dashboard is also brand-able for service providers and other
commercial vendors who want to make use of it.
• The dashboard is one of several ways users can interact with
OpenStack resources.
6. Identity (Keystone)
• OpenStack Identity (Keystone) provides a
central directory of users mapped to the
OpenStack services they can access.
• It acts as a common authentication
system across the cloud operating system
and can integrate with existing backend
directory services.
7. Image (Glance)
• OpenStack Image (Glance) provides discovery,
registration, and delivery services for disk and server
images.
• Stored images can be used as a template when assigning
new VM instances.
• It can also be used to store and catalog an unlimited
number of backups.
• The Image Service can store disk and server images in a
variety of back-ends, including Swift.
8. Telemetry (Ceilometer)
• OpenStack Telemetry (Ceilometer) provides a
single point of contact for billing systems,
providing the counters needed to establish
customer billing across all current and future
OpenStack components.
• Counters must be easily expandable in order
to handle new projects, and data collection
agents should be independent of the overall
system.
9. Orchestration (Heat)
• Heat is a service for organizing multiple
complex cloud applications using templates,
both via a REST API that is native to OpenStack
and a Query API compatible with AWS
CloudFormation.
Benefits of Openstack
• OpenSource
• Scalability
• Security
• Automation
• Easy to access & manage
• Services
• Strong Community
• Compatibility
OpenStack test-drive
• To test-drive OpenStack in cloud computing,
there are a few steps that you can follow:
1. Choose an OpenStack distribution
2. Set up a test environment
3. Launch an instance
4. Create a network
5. Access the instance
6. Test the instance
Basic OpenStack operations
• Once OpenStack is set up, there are a few basic
operations that can be performed to manage the
infrastructure:
1. Launching an instance
2. Creating a network
3. Managing storage
4. Managing security
5. Scaling resources
6. Monitoring and logging
OpenStack APIs and Command
Line Interface
• All of the functionality provided by the dashboard is also accessible
through the OpenStack APIs (e.g. launching instances, creating images,
etc). They are useful for scripting/automating your cloud configuration and
setup. Many cloud configuration and automation software packages already
exist that make use of these APIs (e.g. Terraform, Packer) but even if you
have no need for them, you may find the OpenStack Command Line
Interface (CLI) useful and/or more powerful than the dashboard, which
makes use of the OpenStack APIs.
• To use the APIs you need to have the correct OpenStack credentials loaded
into your environment.
**For following points refer notes
• Tenant model operations
• Quotas
• Private cloud building blocks