Architecture and terminology Guy Carmin RHCE, RHCI, RHCVA, RHCSA Solution Architect IGC, Red Hat Roei Goldenberg RHCE Linux Consultant and Cloud expert, Matrix May 2015
Agenda RHEL-OSP services modules RHEL-OSP terminology
RHEL-OSP Service modules
RHEL-OSP Architecture Overview Modular architecture Designed to easily scale out Based on (growing) set of core services Expose each I.T aspect as a Service
RHEL-OSP Core projects: Keystone Keystone (Identity): A centralized identity service that provides authentication and authorization for other services. Keystone also provides a central catalog of services running in a particular OpenStack cloud. It supports multiple forms of authentication, including username and password credentials, token-based systems, and Amazon Web Services (AWS) logins. Keystone acts as a (SSO) authentication service for users and components.
RHEL-OSP Core projects: Nova Nova (Compute): A service that manages a network of virtual machines running on nodes, providing virtual machines on demand. Nova is a distributed component and interacts with Keystone for authentication, Glance for images, and Horizon for web interface.. Nova is designed to scale horizontally on standard hardware, downloading images to launch instances as required. Nova compute uses libvirtd, qemu, and kvm for hypervisors.
RHEL-OSP Core projects: Glance Glance (image): A service that acts as a registry for virtual machines images, allowing user to copy server images for immediate storage. These images can e used as template when setting up new instaces.
RHEL-OSP Core projects: Swift Swift (object storage): A service providing object storage that allows users to store and retrieve files. Swift architecture is distributed to allow for horizontal scaling and to provide redundancy as failure-proofing. Data replication is managed by software, allowing greater scalability and redundancy than dedicate hardware.
RHEL-OSP Core projects: Neutron Neutron (networking): A service that handles the creation and management of a virtual networking infrastructure in the OpenStack cloud. Elements including network, subnets, and routers; advanced services such as firewalls or virtual private networks (VPN) can also be used. Due to OpenStack networking's pluggable architecture, users can create their own networks, control traffic, and connect server to other networks Various networking technologies are supported.
RHEL-OSP Core projects: Cinder Cinder (block storage): A service that manages storage volumes for virtual machines. This is persistent block storage for instances running in Nova. Snapshots can be taken for backing up data, either for restoring data or to be used to create new block storage volumes. This is often used in instances for storage, such as database files.
RHEL-OSP Core projects: Heat Heat (orchestration): A service to orchestrate multiple composite cloud applications using the Amazon Web Services (AWS) CloudFormation template format, through both a Representational State Transfer (REST) API and a CloudFormationcompatible Query API. The software integrates other core components of OpenStack into a one-file template system. Templates allow creation of most OpenStack resource types (e.g., instances, floating IPs, volumes, security groups, users), plus advanced functionality such as instance high availability, instance autoscaling, and nested stacks.
RHEL-OSP Core projects: Ceilometer Ceilometer (metering): A centralized source for metering and monitoring data. This component provides the capability to meter and bill OpenStack users.
RHEL-OSP Core projects: Horizon Horizon (dashboard): A web-based interface for managing OpenStack services. It provides a graphical user interface for options such as launching instances, managing networking, and setting access controls.
RHEL-OSP terminology
Cloud controller The coordinating manger. All machines in the OpenStack cloud communicate with the cloud controller using the Advanced Message Queuing Protocol (AMQP). In RHEL- OSP, there are two options for AMQP: the apache Qpid messaging daemon (qpidd) and RabbitMQ.
Tenant The term Tenant is use Keystone, and equivalent to a project in Horizon. A tenant or project is a group of items (users, images, netwrok(s), volumes, etc.).
Compute node A hypervisor; any machine running the nova compute service. Often, the machine is running only the Nova compute service.
Volume (block storage) A persistent disk presented and attached to a single instance. Volumes are persistent and can be attached to or deattched form running instances. The Cinder service uses LVM by default. Logical Volumes are created from this volume group. Volume snapshots can be created, similar to normal volume snapshots.
Ephemeral disk A temporary disk used by an instance. When the instance is created, the ephemeral disk is created as a QCOW2 image in /var/lib/nova/instances/instance-00000000x/disk.local on the compute node. When the instance is terminated, the disk is removed, after being ereased by dd. The first ephemeral disk normally appears as /dev/vdb within the instance.
Server or Instance A virtual machine.
Flavor The hardware associated with an instance. This includes RAM, CPU, and disks.
Stack A group of instances built from a template. Template files are written in JavaScript Object Notation (JSON), a data exchange format designed to be simpler alternative to Extensible Markup Language (XML) document encoding. Stacks and the template files are used in the Heat orchestration service.
OpenStack networking (Neutron) terminology Neutron the software defined networking service, includes many plug-ins (e.g., Open Vswitch, Cisco UCS/Nexus) and allows software defined networks (SDN) and quality of service (QoS). The OpenStack networking API uses the following abstractions to describe network resources: Network: An isolated L2 segment, analogous VLAN in the physical networking world. Subnet: A block v4 or v6 IP addresses and associated configuration state.
OpenStack networking (Neutron) terminology cont. Port: A connection point for attaching a single device, such as the NIC of a virtual server, to a virtual network. Also describes the associated network configuration such as the MAC and IP addresses to be used on that port.
Open Vswitch Software that provides a virtual switch. Open Vswitch provides traffic queuing and shaping and automated flow control. The Open Vswitch plug-ins will be used for OpenStack networking.b
Quiz Match the following items to their counterparts in the table. Definition Term This service provides virtualization using libvirtd, qemu, and kvm. This service provides images that are used as templates to build instances. This service provides networking capabilities using a pluggable architecture. This service provides persistent volumes for instances. This service provides object storage.
Quiz Match the following items to their counterparts in the table. Definition This service provides virtualization using libvirtd, qemu, and kvm. This service provides images that are used as templates to build instances. This service provides networking capabilities using a pluggable architecture. This service provides persistent volumes for instances. Term Nova Compute service This service provides object storage.
Quiz Match the following items to their counterparts in the table. Definition This service provides virtualization using libvirtd, qemu, and kvm. This service provides images that are used as templates to build instances. This service provides networking capabilities using a pluggable architecture. This service provides persistent volumes for instances. Term Nova Compute service Glance image service This service provides object storage.
Quiz Match the following items to their counterparts in the table. Definition This service provides virtualization using libvirtd, qemu, and kvm. This service provides images that are used as templates to build instances. This service provides networking capabilities using a pluggable architecture. This service provides persistent volumes for instances. Term Nova Compute service Glance image service OpenStack networking (Neutron) This service provides object storage.
Quiz Match the following items to their counterparts in the table. Definition This service provides virtualization using libvirtd, qemu, and kvm. This service provides images that are used as templates to build instances. This service provides networking capabilities using a pluggable architecture. This service provides persistent volumes for instances. Term Nova Compute service Glance image service OpenStack networking (Neutron) Cinder block storage service This service provides object storage.
Quiz Match the following items to their counterparts in the table. Definition This service provides virtualization using libvirtd, qemu, and kvm. This service provides images that are used as templates to build instances. This service provides networking capabilities using a pluggable architecture. This service provides persistent volumes for instances. This service provides object storage. Term Nova Compute service Glance image service OpenStack networking (Neutron) Cinder block storage service Swift object storage service
Quiz Match the following items to their counterparts in the table. Definition This service provides authentication and authorization. This service provides a web dashboard for managing OpenStack. Term Coordinates the Red Hat OpenStack cloud using the RabbitMQ or Qpid messaging service (AMQP). The names used for a virtual machine in OpenStack.
Quiz Match the following items to their counterparts in the table. Definition This service provides authentication and authorization. This service provides a web dashboard for managing OpenStack. Term Keystone identity service Coordinates the Red Hat OpenStack cloud using the RabbitMQ or Qpid messaging service (AMQP). The names used for a virtual machine in OpenStack.
Quiz Match the following items to their counterparts in the table. Definition This service provides authentication and authorization. This service provides a web dashboard for managing OpenStack. Term Keystone identity service Horizon dashboard service Coordinates the Red Hat OpenStack cloud using the RabbitMQ or Qpid messaging service (AMQP). The names used for a virtual machine in OpenStack.
Quiz Match the following items to their counterparts in the table. Definition This service provides authentication and authorization. This service provides a web dashboard for managing OpenStack. Coordinates the Red Hat OpenStack cloud using the RabbitMQ or Qpid messaging service (AMQP). Term Keystone identity service Horizon dashboard service Cloud controller The names used for a virtual machine in OpenStack.
Quiz Match the following items to their counterparts in the table. Definition This service provides authentication and authorization. This service provides a web dashboard for managing OpenStack. Coordinates the Red Hat OpenStack cloud using the RabbitMQ or Qpid messaging service (AMQP). The names used for a virtual machine in OpenStack. Term Keystone identity service Horizon dashboard service Cloud controller Server or instance
Thank You