Disclaimer :-- all the content is sourced from various pages on openstack .. I am just putting together that information in a crash course :)
What is Cloud?
Let's quickly review just what exactly we mean by cloud technologies?Cloud technologies are built on existing technologies such as virtualization and clustering to virtualize hardware, software, storage, and networking resources into flexible units that are quickly allocated to meet demand. So rather than the old static model of dedicated hardware servers for various tasks, and static network and storage configurations, all of those formerly specialized devices are assimilated into a common resource pool. It's a more efficient use of hardware, and very fast to scale up or down according to demand. You can even configure self-service for users so they can grab whatever they need when they need it.
Types of cloud ?
- Private
- Public
- Hybrid
- SaaS, software as a service
- PaaS, platform as a service
- IaaS, infrastructure as a service
What is Openstack?
Open Source Cloud Computing platform (short answer).
OpenStack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter, all managed through a dashboard that gives administrators control while empowering their users to provision resources through a web interface.
https://en.wikipedia.org/wiki/OpenStack (long answer)
What are Openstack components?
core projects (short answer):
- Identity (Keystone)
- Dashboard (Horizon)
- Orchestration (Heat)
- Metering (Celiometer)
- Object stroage (Swift)
- Image service (Glance)
- Networking (Quantum now Neutron)
- Compute (Nova)
https://www.openstack.org/software/ (long answer)
How do these Openstack Components talk to each other?
- Messaging Queues:
AMQP is the messaging technology chosen by the OpenStack cloud.The
OpenStack components such as Nova , Cinder , Quantum communicates
internally via AMQP(Advanced Message Queue Protocol) and through
eachother using REST-call.
The AMQP broker, RabbitMQ , sits between any two internal
Openstack components and allows them to communicate in a loosely coupled
fashion i.e its components has, or makes use of, little or no knowledge
of the definitions of other separate components. More precisely, Nova
components (nova-api, nova-scheduler , nova-compute) use Remote
Procedure Calls (RPC) to communicate to one another.
In OpenStack the Nova ,Cinder and Quantum implements RPC (both request+response, and one-way, respectively nicknamed ‘rpc.call’ and ‘rpc.cast’) over AMQP by providing an adapter class which take cares of marshaling and unmarshaling of messages into function calls. Each Nova components (for example api ,compute, Scheduler, etc.) , Cinder components ( for example volume, Scheduler) , Quantum Components( for example quantum-server , agents ,plugins ) create two queues at the initialization time, one which accepts messages with routing keys ‘NODE-TYPE.NODE-ID’ (for example compute.hostname) and another, which accepts messages with routing keys as generic ‘NODE-TYPE’ (for example compute) .
Great post... It is really beginners guide to cloud and openstack. Both topic explained very well. Openstack local storage topic is missing. Thanks for sharing
ReplyDelete