OpenStack and quick PoC deployment using RDO on CentOS7

By

OpenStack and quick PoC deployment using RDO on CentOS7

Introduction to OpenStack

OpenStack is a set of software tools for building and managing cloud computing platforms for public and private clouds. Backed by some of the biggest companies in software development and hosting, as well as thousands of individual community members, many think that OpenStack is the future of cloud computing. OpenStack is managed by the OpenStack Foundation, a non-profit that oversees both development and community-building around the project.
And most importantly, OpenStack is open source software, which means that anyone who chooses to can access the source code, make any changes or modifications they need, and freely share these changes back out to the community at large.

OpenStack components

Nova is the primary computing engine behind OpenStack. It is used for deploying and managing large numbers of virtual machines and other instances to handle computing tasks
Swift is a storage system for objects and files. Rather than the traditional idea of a referring to files by their location on a disk drive, developers can instead refer to a unique identifier referring to the file or piece of information and let OpenStack decide where to store this information. This makes scaling easy, as developers don’t have the worry about the capacity on a single system behind the software. It also allows the system, rather than the developer, to worry about how best to make sure that data is backed up in case of the failure of a machine or network connection.
Cinder is a block storage component, which is more analogous to the traditional notion of a computer being able to access specific locations on a disk drive. This more traditional way of accessing files might be important in scenarios in which data access speed is the most important consideration.
Neutron provides the networking capability for OpenStack. It helps to ensure that each of the components of an OpenStack deployment can communicate with one another quickly and efficiently.
Horizon is the dashboard behind OpenStack. It is the only graphical interface to OpenStack, so for users wanting to give OpenStack a try, this may be the first component they actually “see.” Developers can access all of the components of OpenStack individually through an application programming interface (API), but the dashboard provides system administrators a look at what is going on in the cloud, and to manage it as needed.
Keystone provides identity services for OpenStack. It is essentially a central list of all of the users of the OpenStack cloud, mapped against all of the services provided by the cloud, which they have permission to use. It provides multiple means of access, meaning developers can easily map their existing user access methods against Keystone.
Glance provides image services to OpenStack. In this case, “images” refers to images (or virtual copies) of hard disks. Glance allows these images to be used as templates when deploying new virtual machine instances.
Ceilometer provides telemetry services, which allow the cloud to provide billing services to individual users of the cloud. It also keeps a verifiable count of each user’s system usage of each of the various components of an OpenStack cloud. Think metering and usage reporting.

OpenStack competitors within open-source community

Eucalyptus
CloudStack
OpenNebula

Deploying OpenStack with RDO

In this article we will show you quick and easy way to deploy OpenStack as PoC(Proof of Concept). We will be using RDO and CentsOS 7 for this tutorial. RDO is a community of people using and deploying OpenStack on CentOS and Red Hat Linux. We will be using packstack installation utility which is Puppet based installation utility
We will be deploying pike current pike release

Prerequisites
1. We installed minimum CentOS 7 ON hardware system with 16GB RAM, processors with hardware virtualization extensions, and 2 network adapters
2. Disable network manager and assight static IP to one of network interfaces

systemctl disable NetworkManager
systemctl stop NetworkManager
systemctl enable network
systemctl start network

3. Disable firewalld

Systemctl disable firewalld

4 disable selinux

Vi /etc/selinux
SELINUX=disabled

5 set hostname for our openstacl poc server

hostnamectl set-hostname openstackpoc.local

9. Reboot your system after all above steps are done.

reboot

SETUP SOFTWARE REPOSITORIES
Lets download and install all necessary RDP repository

yum install -y https://rdoproject.org/repos/rdo-release.rpm
yum install -y centos-release-openstack-pike

Enable repositories

Yum install yum-utils
yum-config-manager --enable openstack-pike

Run update on current packages

Yum update -y

Install packstack installer

yum install -y openstack-packstack

RUN PACKSTACK TO INSTALL OPENSTACK

packstack --allinone

Running an instance

. demo-openrc
openstack flavor list
openstack image list
openstack network list
openstack security group list

Create an instance

openstack server create --flavor m1.nano --image cirros \
  --nic net-id=PROVIDER_NET_ID --security-group default \
  --key-name mykey provider-instance

administrator