The buzzwords Neutron, Heat, and TOSCA are spoken about quite often when it comes to the OpenStack - and many of us are still trying to make sense of the terminology and its place in the OpenStack world.
Where OpenStack Neutron provides APIs for creating network elements, OpenStack Heat provides an orchestration engine for automating the setup and configuration of OpenStack infrastructure, while TOSCA is a standard for templating and defining application topology and policies (that form the basis for Heat). In this context, it really makes sense to put these all together to achieve application and network automation for OpenStack on steroids.
In this session we will learn how we can use the robust combination of Heat and TOSCA to configure and control resources on Nova and Neutron in order to automate the network configuration as part of the application deployment.
The session will include a demo and code examples that show how you can configure virtual networks, attach public IPs, set up security groups, set up load balancing and automatically scale up/down and more. You will leave this session understanding where Neutron meets Heat and TOSCA.
This talk was delivered as part of OpenStack Paris summit - 2014 - http://openstacksummitnovember2014paris.sched.org/event/2b85b682ccaf3a5961e463b61e2403f8#.VFeuG_TF8mc
Six Myths about Ontologies: The Basics of Formal Ontology
Application and Network Orchestration using Heat & Tosca
1. Application and Network
Orchestration Using
HEAT & TOSCA
Nati Shalom
@natishalom
Samuel Bercovici
@samuelbercovici
2. Agenda
Introduction
Introduction to Networking & Neutron
Introduction to Orchestration with HEAT & TOSCA
Orchestrating Network & Applications by Example
Heat + Ceilometer Auto-Scaling Demo
Portable Version using TOSCA
Real World (NFV) Example –
Creating “Your own Skype” On-demand.
Summary
4. Apache Server DB Server
Apache
Wordpress
MySQL
Networking & Application
• App Network
• App Subnet
• App Port
• Security Group
• Data Network
• Data Subnet
• Data Port
• Security Group
Router
• Apache Floating IP
• Router Gateway
Data
VLAN
Public
VLAN
Layer 3
Layer 2
Layer 2
Layer 4-7
5. What is Neutron?
Tenant Facing API to manage L2-L7 network logical
elements
.• Layer 2 networks
• Layer 3 subnets
– IP address management – DHCP based
– Router / gateway / NAT
– Port (Security groups, Floating IP)
• Layer 4-7 Services - Load balancing, VPN, Firewall
10. What is TOSCA?
TOSCA defines the
interoperable description
of applications; including
their components,
relationships,
dependencies,
requirements, and
capabilities….
11. TOSCA in a Nutshell
Mapping of application logic
through plans (workflows),
policies, relationships,
actions
12. TOSCA State of the Union
Top four cloud open standard (Forrester)
5000+ participants
65+ countries
TOSCA Parser Integrated into the
Heat Project
The focus
of this session
13. Comparing TOSCA & Heat
Heat – Automate the
configuration and
setup of OpenStack
resources
Specific to OpenStack
TOSCA – Automation
of the application
deployment and
management lifecycle
Portable
Merging Concepts
14. Heat/HOT vs TOSCA Syntax
New
`
Focus on Application
Components and
Lifecycle not
Infrastructure Resources
15. Orchestrating Networks &
Applications by Example...
• Define Networks as Parameters
• Create a New WordPress Stack
• WordPress Scale-out
• WordPress Scale-in
Reference Hot Templates: autoscaling.yaml and lb_server.yaml
16. Demo Scenario
Router
L3
Network
Demo Project
Management Network
VIP1
Alteon VA Project
VM
3
VM
VM
2
VM
DB 1
Web 4
22. Portable TOSCA Alternative
Software components
are defined just like any
other resource
Infrastructure resource
matched by their properties
23. Portable Auto-Scaling
Agent
Monitoring
Agent
Application
Stack
App VM
Monitoring
Policy DB
Engine
Cloudify Manager
Third party
monitoring
tool
Using Industry Best Practices - Open Source Frameworks
Diamond
30. Summary
Putting networks & apps together enables:
• Simplify the deployment of complex apps
• Tighten the security
• Increase the agility
Available Today: Heat & Neutron, Ceilometer
TOSCA makes it portable
31. References
• Auto-Scaling WordPress Example (by
Radware)
• ClearWater (NFV) Example (by Cloudify)
• Heat on DevStack
• Putting Heat & TOSCA Together
• Heat Technical Overview
• TOSCA Overview
• TOSCA Translator Project on StackForge