Openstack installation guide for red hat enterprise linux,
centos –icehouse(One-node)
1、 Architecture
1.1、 Overview
The OpenStack project is an open source cloud computing platform that supports all types of cloud environments. The project aims for simple implementation, massive scalability, and a rich set of features. Cloud computing experts from around the world contribute to the project.
OpenStack provides an Infrastructure-as-a-Service (IaaS) solution through a variety of complemental services. Each service offers an application programming interface (API) that facilitates this integration. The following table provides a list of OpenStack services:
Service Dashboard Project name Horizon Description Provides a web-based self-service portal to interact with underlying OpenStack services, such as launching an instance, assigning IP addresses and configuring access controls. Manages the lifecycle of compute instances in an OpenStack environment. Responsibilities include spawning, scheduling and decommissioning of virtual machines on demand. Enables network connectivity as a service for other OpenStack services, such as OpenStack Compute. Provides an API for users to define networks and the attachments into them. Has a pluggable architecture that supports many popular networking vendors and technologies. Storage Object Storage Swift Stores and retrieves arbitrary unstructured data objects via a RESTful, HTTP based API. It is highly fault tolerant with its data replication and scale out architecture. Its implementation is not like a file server with mountable directories. Provides persistent block storage to running instances. Its pluggable driver architecture facilitates the creation and management of block storage devices. Shared services Compute Networking Nova Neutron Block Storage Cinder Identity service Image Service Telemetry keystone Glance Ceilometer Provides an authentication and authorization service for other OpenStack services. Provides a catalog of endpoints for all OpenStack services. Stores and retrieves virtual machine disk images. OpenStack Compute makes use of this during instance provisioning. Monitors and meters the OpenStack cloud for billing, benchmarking, scalability, and statistical purposes. Higher-level services Orchestrates multiple composite cloud applications by using either the native HOT template format or the AWS CloudFormation template format, through both an OpenStack-native rest api and a CloudFormation-compatible Query API. Provides scalable and reliable Cloud Database-as-a-Service functionality for both relational and non-relational database engines. Orchestration Heat Database service
Trove 2、 Basic environment configuration
2.1、OpenStack Networking(Neutron)
1、Set the hostname of the node to controller: 第一步:#hostname controller
第二步:修改/etc/sysconfig/network中的hostname 为controller(vim /etc/sysconfig/network)
第三步:编辑/etc/hosts 添加IP address.(以我的ip为例) 172.16.1.107 controller
第四步:重启主机 reboot 完成!
3、 配置网络接口 第一步:Edit the /etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME to contain the following:, Replace INTERFACE_NAME with the actual interface name. For example, eth0; DEVICE=eth0 TYPE=Ethernet ONBOOT=\
BOOTPROTO=\
第二步:# service network restart
2.2、Network Time Protocol (NTP)
1、Install the ntp package on each system running OpenStack services: # yum install ntp
2、Set up the NTP server on your controller node so that it receives data by modifying the ntp.conf file and restarting the service: # service ntpd start # chkconfig ntpd on
2.3、Database
1、install the MySQL client and server packages, and the Python library.
# yum install mysql mysql-server MySQL-python
2、The MySQL configuration requires some changes to work with OpenStack. Edit the /etc/my.cnf file:
a.Under the [mysqld] section, set the bind-address key to the management IP address of the controller node to enable access by other nodes via the management network:
[mysqld] ...
bind-address = 172.16.1.107
b. Under the [mysqld] section, set the following keys to enable InnoDB, UTF-8 character set, and UTF-8 collation by default:
[mysqld] ...
default-storage-engine = innodb innodb_file_per_table
collation-server = utf8_general_ci init-connect = 'SET NAMES utf8' character-set-server = utf8
3、Start the MySQL database server and set it to start automatically when the system boots:
# service mysqld start # chkconfig mysqld on
4、Finally, you should set a root password for your MySQL database. Delete the anonymous users that are created when the database is first started.
# mysql_install_db
# mysql_secure_installation press ENTER when you are prompted for the password,Respond yes to all prompts.
2.4、OpenStack packages
The examples in this guide use the OpenStack packages from the RDO repository. These packages work on Red Hat Enterprise Linux 6, compatible versions of CentOS, and Fedora 20.