Installation guides for three GNU/Linux distributions: SUSE Linux, CentOS/RHEL, and Ubuntu Linux
Deployment guides categorized by deployment tools: Charms (Canonical’s stack), TripleO (Tool driven by Red Hat), and Ansible
Administrator guide
Operations guide
Security guide
Virtual machine image guide
Architecture guide
Configuration reference
API complete references
In the GNU/Linux world, there’s the Linux From Scratch (LFS) project. It is the guide on how to build your own GNU/Linux installation from nothing to a working instance. Generally, it is not suitable for production and used for learning purposes only. Installation guides at the OpenStack website are like “OpenStack from scratch.” These materials are very useful for learning. You will build your own cloud step by step, configuration file by configuration file. I highly recommend you follow these guides at least once without any automation tools.
The next valuable source of information is mailing lists. Check out https://wiki.openstack.org/wiki/Mailing_Lists. This archive engine for mailing lists has internal searchability, so before asking a question, check previous conversations. Most of the interesting lists are called operators, which are for cloud operator discussions and announcements and project announcements.
I also recommend Superuser, an online magazine by the OpenStack marketing team, available at http://superuser.openstack.org. The OpenInfra Foundation created the publication to facilitate knowledge sharing and collaborative problem solving among individuals who are running OpenStack clouds and the cloud-based infrastructure across all industries.
More documentation is produced by specific OpenStack vendors, which is vendor specific and describes a particular distribution.
The complete Red Hat documentation, including the knowledge base and reference architectures, is available only to customers, but the basic product documentation can be downloaded from https://access.redhat.com/products. Select the Red Hat OpenStack Platform documentation on the landing page. You can access it online or download it in EPUB or PDF format.
OpenStack and Supporting Services
Service | Description |
---|---|
rabbitmq-server | RabbitMQ: AMQP message broker. |
mariadb | MariaDB: One of the most popular database servers. Used by most OpenStack services. |
glance-api | Glance API: Gives access to image service REST API. |
cinder-api | Cinder API: Gives access to block storage service REST API. |
cinder-scheduler | Cinder scheduler: Selects the optimal storage provider node on which to create the volume. |
cinder-volume | Cinder volumes: Responds to read and write requests sent to the block storage service to maintain a state. Interacts with a variety of storage providers through a driver architecture. |
cinder-backup | Cinder backup: Provides backup volumes of any type to a backup storage provider. |
nova-api | Nova API: Accepts and responds to end-user compute API calls. |
nova-scheduler | Nova scheduler: Takes a virtual machine instance request from the queue and determines on which compute server host it runs. |
nova-conductor | Nova conductor: Mediates interactions between the nova-compute service and the database. |
nova-consoleauth | Nova console authorization: Authorizes tokens for users that console proxies provide. |
nova-novncproxy | Nova noVNC proxy: Provides a proxy for accessing running instances through a VNC connection. |
nova-compute | Nova compute: A worker daemon that creates and terminates virtual machine instances through hypervisor APIs. |
mongodb | NoSQL database used for the Ceilometer service. |
ceilometer-central | Ceilometer central: Runs on a central management server to poll for resource utilization statistics for resources not tied to instances or compute nodes. |
httpd | Apache web server: Used for Horizon and Keystone. |
heat-engine | Heat engine: Orchestrates the launching of templates and provides events back to the API consumer. |
heat-api | Heat API: An OpenStack-native REST API that processes API requests by sending them to the Heat engine over the Remote Procedure Call (RPC). |
heat-api-cfn | Heat API for cloud formation: An AWS Query API compatible with AWS CloudFormation. It processes API requests by sending them to the Heat engine over RPC. |
neutron-server | Neutron server: Accepts and routes API requests to the appropriate OpenStack networking plug-in for action. |
neutron-l3-agent | Neutron l3 Agent: Agent for routing and NAT service. |
neutron-dhcp-agent | Neutron DHCP agent: With the help of dnsmasq processes, it provides DHCP service for instances. |
neutron-metadata-agent | Neutron metadata agent: Works with Nova to provide metadata information into running instances. |
openvswitch | Open vSwitch: An open source implementation of a distributed virtual multilayer switch. |
neutron-openvswitch-agent | Neutron Open vSwitch agent: Works with neutron-server and sends through message broker commands to OVS. |
openstack-swift-proxy | OpenStack Swift proxy: Accepts the OpenStack Object Storage API and raw HTTP requests to upload files, modifies metadata, and creates containers. |
openstack-swift-account | OpenStack Swift account: Manages accounts defined with Object Storage. |
openstack-swift-container | OpenStack Swift container: Manages the mapping of containers or folders within Object Storage. |
openstack-swift-object | OpenStack Swift object: Manages actual objects, such as files, on the storage nodes. |
Network Ports Used by OpenStack
Service | Port Number |
---|---|
Keystone admins API endpoint | 35357 |
Keystone public API endpoint | 5000 |
Glance API endpoint | 9292 |
Cinder block storage and iSCSI target | 8776, 3260 |
Nova compute service | 8774 |
Nova API | 8773, 8775 |
Access to instances by VNC protocol | 5900–5999 |
VNC proxy for browser access | 6080 |
HTML5 proxy for browser access | 6082 |
Swift object storage and rsync | 8080, 6000, 6001, 6002, 873 |
Heat orchestration service | 8004 |
Neutron network service | 9696 |
RabbitMQ AMQP message broker | 5672 |
MariaDB database | 3306 |
I want to thank all of you readers. I hope you have found this book interesting and useful and enjoyed the reading as much as I enjoyed writing it.