I have install openstack on single node using packstack. but i cannot find any way to know about how to do billing of my virtual machines. Is the billing module integrated inside openstack? (which i came to know that it is, but where is it), or are there are free 3rd party openstack modules, which i can use to bill the resource usage of my cloud??
Linux – Where is billing module in OpenStack fresh install
cloudlinuxopenstack
Related Solutions
Consider creating a local private mirror of your favorite Openstack-containing distribution, such as CentOS, Fedora, Ubuntu, etc. Once you have set up the local mirror (on a networked machine) using the distribution's instructions, walk it over the air gap on an external hard drive to the disconnected network for use there.
To obtain updates, you can simply update the mirror on the network, and then walk it over the air gap again.
Let's use their respective web pages to find out what are all these projects about. I'll change the order in which you listed, though:
Chef: Chef is an automation platform that transforms infrastructure into code.
This is a configuration management software. Most of them use the same paradigm: they allow you to define the state you want a machine to be, with regards to configuration files, software installed, users, groups and many other resource types. Most of them also provide functionality to push changes onto specific machines, a process usually called orchestration.
Vagrant: Create and configure lightweight, reproducible, and portable development environments.
It provides a reproducible way to generate fully virtualized machines using either Oracle's VirtualBox or VMWare technology as providers. Vagrant can coordinate with a configuration management software to continue the process of installation where the operating system's installer finishes. This is known as provisioning.
Docker: An open source project to pack, ship and run any application as a lightweight container
The functionality of this software somewhat overlaps with that of Vagrant, in which it provides the means to define operating systems installations, but greatly differs in the technology used for this purpose. Docker uses Linux containers, which are not virtual machines per se, but isolated processes running in isolated filesystems. Docker can also use a configuration management system to provision the containers.
OpenStack: Open source software for building private and public clouds.
While it is true that OpenStack can be deployed on a single machine, such deployment is purely for proof-of-concept, probably not very functional due to resource constraints.
The primary target for OpenStack installations are bare metal multi-node environments, where the different components can be used in dedicated hardware to achieve better results.
A key functionality of OpenStack is its support for many virtualization technologies, from fully virtualized (VirtualBox, VMWare), to paravirtualized (KVM/Qemu) and also containers (LXC) and even User Mode Linux (UML).
I've tried to present these products as components of an specific architecture. From my point of view, it makes sense to first be able to define your needs with regards to the environment you need (Chef, Puppet, Ansible, ...), then be able to deploy it in a controlled fashion (Vagrant, Docker, ...) and finally scale it to global size if needs be.
How much of all this functionality you need should be defined in the scope of your project.
Also note I've over-simplified mostly all technical explanations. Please use the referenced links for detailed information.
Best Answer
Ceilometer is the OpenStack project which deals with metering of various attributes of your private cloud, and can be integrated to produce information about billing which you report on as you need.
There is a useful article here:
https://wiki.openstack.org/wiki/EfficientMetering
And information on the Ceilometer project below:
https://wiki.openstack.org/wiki/Ceilometer
It's a relatively new project, and perhaps isn't as closely integrated within OpenStack as other projects at this time, so you will need to do some work putting together the correct meters to make this work for billing purposes.