Design your private cloud with

red hat OPENSTACK PLATFORM

Sachin Patil | psachin@redhat.com

Emerging Technologies team

What is Openstack?

Cloud operating system

What is Red Hat Openstack Platform?

INFRASTRUCTURE AS A SERVICE

STABLE

TRUSTED

aLWAYS UP TO DATE

Devstack

packstack

Director

TRIPLEO

* Friendly name for "OpenStack On OpenStack"

* Allows you to deploy production cloud on bare-metal hardware

* Undercloud: Subset of existing OpenStack components

* Overcloud: Production OpenStack cloud

Architecture

Openstack architecture

OpenStack is built out from a group of services that split up the work that has to happen to create a true cloud environment.

Each service implements a portion of the OpenStack API.  In the above diagram, the top word (e.g. Nova) is the implementation name.  The bottom word is the project/API name. 

Horizon

Dashboard - Service diagram

Keystone

Identity management

nova

The Brains of the Operation

glance

Image store Service Diagram

cinder

Volume based storage Services

swift

Object Storage Service Diagram

neutron

Software-Defined Networking

The OpenStack Networking service handles the creation and management of a virtual networking infrastructure in the OpenStack cloud. Elements include networks, subnets, and routers; advanced services such as firewalls or virtual private networks (VPN) can also be used.  

Because the OpenStack network is software-defined, it can easily and quickly react to changing network needs

Network agent(controllers): Service that runs on each OpenStack
node to perform local networking configuration for the node
virtual machines and for networking services such as Open vSwitch.

neutron-dhcp-agent: Agent that provides DHCP services to tenant
networks.

neutron-server: Python daemon that manages user requests and
exposes the Networking API.

neutron-metadata-agent: Provides the web service proxy used by VMs to get VM metadata from the nova metadata service.

neutron-l3-agent: Provides L3 tenant routers. By using Linux
network namespaces many independent routers can be deployed on a
network node.

 

ceilometer

Telemetry Service Diagram

aN api for everything

and for every service a RESTful API

Each core service within OpenStack provides RESTful APIs for external use.  Internally, a combination of these RESTful APIs and AMQP messages is used for IPC.

 

A positive is that any service can be located just about anywhere as long as it can communicate via HTTPS to the other services it needs to make OpenStack functional.

A negative is that OpenStack can be deployed in a large number of permutations. 

Kilo?  Liberty? MITAKA? ...

Major versions of upstream OpenStack are released by code name.  Currently, the code names are voted on by the community, and follow alphabetical order.

OpenStack Code Name RH OSP Release
Havana 4
Icehouse 5
Juno 6
Kilo 7
Liberty
Mitaka 9
Newton 10 (Not yet released)

hypervisor support

Red Hat Enterprise Linux OpenStack Platform supports multiple hypervisors.

lightweight / small footprint

low overhead

small attack surface

cost-effective

massive scale-out

co-exist with existing stuff

seamless migration

use Neutron with NSX

ESXi not supported

Complementary Products

CloudForms provides a management tools for multiple cloud platforms, including OpenStack.

OpenShift is a Platform-as-a-Service platform. It can be run on top of bare metal systems or IaaS platforms like OpenStack

OpenStack vS Amazon

OpenStack is not feature complete with AWS.  However, most of the

core functionality is available in OpenStack equivalents.

 

Compatibility with some AWS service APIs is available.

* This table is incomplete.

OpenStack AWS
Nova EC2
Cinder EBS
Swift/Ceph S3
Heat Cloudformation

Deploy

TRIPLEO OVERVIEW

Deploys, updates, monitors

Production OpenStack Cloud

TripleO based

management application

TRipleo physical view

TRiple0

Deployment workflow overview

Prepare undercloud node

Introspect nodes

Plan deployment

Tripleo

Deployment workflow overview

  1. Introspect nodes
  2. Profile matching

         (ironic-inspector)

  1. Plan deployment
  2. Deploy overcloud
  1. Install undercloud node
  2. Register nodes(Ironic)
  3. Create images (build/download)

Overcloud

Requirments

value
Processor 64-bit x86 (Intel 64 or AMD64)
Memory min. 32 GB RAM, 64 GB recommended
value
Processor 64-bit x86 (Intel 64 or AMD64)
Memory minimum 6 GB of RAM
Disk Space 40 GB available
NICs min. 1 Gbps, at-least 2 in production
IPMI IPMI functionality in motherboard

COMPUTE

Controller

Planning your overcloud

Compute

Controller

Cinder

Swift

Planning your overcloud

Overcloud Controller Compute Ceph Swift
Small 1 1 - -
Medium 1 3 - -
Medium with object storage 1 3 - 1
Medium(HA) 3 3 - -
Medium(HA) with Ceph 3 3 3 -

Planning networks

heat_template_version: 2013-05-23

description: > A very basic Heat template.

parameters:
  key_name:
    type: string
    default: lars
    description: Name of an existing key pair to use for the instance
  flavor:
    type: string
    description: Instance type for the instance to be created
    default: m1.small
  image:
    type: string
    default: cirros
    description: ID or name of the image to use for the instance

resources:
  my_instance:
    type: OS::Nova::Server
    properties:
      name: My Cirros Instance
      image: { get_param: image }
      flavor: { get_param: flavor }
      key_name: { get_param: key_name }

output:
  instance_name:
    description: Get the instance's name
    value: { get_attr: [ my_instance, name ] }

Heat template

topology

https://access.redhat.com/documentation/en/red-hat-openstack-platform

Design your private cloud with Red Hat OpenStack Platform

By Sachin Patil

Design your private cloud with Red Hat OpenStack Platform

Red Hat forum 2016

  • 987

More from Sachin Patil