Sachin Patil | psachin@redhat.com
Emerging Technologies team
Cloud operating system
* 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
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.
Dashboard - Service diagram
Identity management
The Brains of the Operation
Image store Service Diagram
Volume based storage Services
Object Storage Service Diagram
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.
Telemetry Service Diagram
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.
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 | 8 |
Mitaka | 9 |
Newton | 10 (Not yet released) |
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
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 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 |
Deploys, updates, monitors
Production OpenStack Cloud
TripleO based
management application
Deployment workflow overview
Prepare undercloud node
Introspect nodes
Plan deployment
Deployment workflow overview
(ironic-inspector)
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
Cinder
Swift
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 | - |
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 ] }
https://access.redhat.com/documentation/en/red-hat-openstack-platform