Cloud these days is spreading out everywhere, is a hot topic , is the trend, is the future, is the continuity of IT ,is the automation , is the magic .
there is different defintion of Cloud computing but I prefer the definition of NIST "Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential characteristics, three service models, and four deployment models."
There is three basics models of cloud service, explained in this schema The Pizza-as-a-Service metaphor was firstly introduced by Albert Barron in 2014 as a visualization of the differences between Infrastructure-as-a-service (IaaS), Platform-as-a-service (PaaS) and Software-as-a-service (SaaS).
Openstack is the best solution to build your own IaaS !
It is a collection of open source software modules that provides a framework to create and manage public and private cloud .
Restaurant as a Service is our Infrastructure as a service ,
* the receptionist: keystone * the menu : horizon * the waiter : neutron * the dish : glance * nova : the chef * cinder&swift : the shop * heat : the manager * ansible : the supervisor
we'll choose from the menu Instance openstack centos automated contains web service ,video conference service ,dns ,monitoring service ,Firewalls , security rules ,security services
With one or more compute node (nova + neutron components), controller node (keystone , horizon , neutron , glance and heat) and storage node (cinder + swift)
In the end of this post you 'll have an infrastructure composed by this team , working in harmony together , automated and orchestrated !
you have to follow only this link to build your IaaS
with openstack documentation you can do it without the need for any other source
When it comes to glance you can follow me as the right-hand of the chef, to build an instance with centos or any other image you wish from this link
you'll need #guestfish#. It is a shell and command-line tool for examining and editing virtual machine filesystems. It uses libguestfs and exposes all of the functionality of the guestfs API, You have just to install it
sudo apt install libguestfs-tools
then we'll have to use the command virt-customize to customize a virtual machine
sudo virt-customize -a CentOS-7-x86_64-GenericCloud.qcow2 --root-password password:centos
Now you have instances of VMs running on your IaaS .
We can constomize them more by automating the creation of this instances and services with Ansible.
check my Ansible's post to get your dish