(Tutorial) What is Nova and how to install & use it? | OpenStack

(Tutorial) What is Nova and how to install & use it? | OpenStack

Nova, OpenStack Compute service is used for hosting and managing cloud computing systems. It is a component based architecture enabling quicker additions of new features. It is fault tolerant, recoverable and provides API-compatibility with systems like Amazon EC2.

Nova is built on a messaging architecture and all of its components can typically be run on several servers. This architecture allows the components to communicate through a message queue. Deferred objects are used to avoid blocking while a component waits in the message queue for a response.

Nova together with its components share a centralized SQL-based database. This is suitable for smaller deployments. However for larger deployments an aggregation system will be in place to manage the data across multiple data stores.

The following are the components of Nova:

DB: SQL database for storing data

Web Dashboard: External component to communicate with the API

API: Component that uses the queue or http to communicate with other components and to receive http requests

Auth Manager: A python class used by all components to communicate with the backend DB or LDAP. Also, this component is responsible for users, projects and roles.

Edit the /etc/nova/nova.conf file and add these lines to the [database] and [keystone_authtoken] sections:

[database]

# The SQLAlchemy connection string used to connect to the database

connection = mysql://novaUser:StrongPass@192.168.100.10/nova

[keystone_authtoken]

auth_host = 192.168.100.10

auth_port = 35357

auth_protocol = http

admin_tenant_name = service

admin_user = nova

admin_password = 90b68569e6da

Configure the Compute Service to use the RabbitMQ message broker, keystone authentication and set the my_ip, vncserver_listen, and vncserver_proxyclient_address configuration options to the internal IP address of the controller node by setting these configuration keys in the [DEFAULT] configuration group of the etc/nova/nova.conf file:

[DEFAULT]

my_ip=192.168.0.10

vncserver_listen=192.168.0.10

vncserver_proxyclient_address=192.168.100.10

rpc_backend = nova.rpc.impl_kombu

rabbit_host = 192.168.100.10

rabbit_password = RABBIT_PASS

auth_strategy=keystone

By default, the Ubuntu packages create an SQLite database. Delete the nova.sqlite file created in the /var/lib/nova/ directory so that it does not get used by mistake.

Create the Compute service tables:

# nova-manage db sync

Add the credentials to the /etc/nova/api-paste.ini file. Add these options to the [filter:authtoken] section:

Restart Compute services:

Configure a Compute node

The Compute node receives requests from the controller node and hosts virtual machine instances. The Compute service relies on a hypervisor to run virtual machine instances. OpenStack can use various hypervisors, but we will use KVM.

Connect With Us

Privacy Policy

Flux7 knows that you care how information about you is used and shared, and we appreciate your trust that we will do so carefully and sensibly. This notice describes our privacy policy. By visiting Flux7.com, you are accepting the practices described in this Privacy Notice. AcceptRead More