39
When Network Meets Apps! Putting networking and application together Nati Shalom GigaSpaces @natishalom Samuel Bercovici Radware @samuelbercovici

When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Embed Size (px)

DESCRIPTION

When Network Meets Apps: Recent advancements in OpenStack capabilities have made the cloud better tuned to enterprise needs by introducing much more flexible network designs and networking services, with the tradeoff of making the cloud more complex. In this session we will describe how we can leverage the power of the new networking advancement without exposing the complexity to the end user. We will present alternative approaches and their tradeoffs for automating the deployment of a typical n-tier enterprise application that include multi-tenant environment, separate network for admin and applications, cross region network, attach a floating IP, setup security groups etc. all through a combination of Heat, TOSCA, Chef, Puppet, and more.

Citation preview

Page 1: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

When Network Meets Apps!Putting networking and application

together

Nati ShalomGigaSpaces @natishalom

Samuel BercoviciRadware@samuelbercovici

Page 2: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Agenda

• Overview of Networking and Apps• What’s Changed?• Putting Networking and Apps by

Example• Future Work

Page 3: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Let’s Start With Some

Basic Definitions..

Page 4: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Application

Application & Tiers

WebTier

MiddleTier

DBTier

Page 5: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Zoom into a Tier

Server (Physical/VM)

Operating System (RHEL 6.5 64bits)

Database System (MySQL)

Schema (Word-press)

IP Address

IP Address

TCP Port

Page 6: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Logical Connectivity

WebTier

MiddleTier

DBTier

Internet

Page 7: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Where is the network?

Page 8: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Backend ZoneDMZ

WebTier

MiddleTier

DBTier

Multicast/Broadcast, Isolation

Page 9: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Personal DataBusiness centerDMZ

WebTier

MiddleTier

DBTier

Multicast/Broadcast, Isolation

Page 10: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

WebTier

MiddleTier

DBTier

Layer 3 Services

• Subnet• GW• IPAM – DHCP• DNS

• Subnet• GW• IPAM – DHCP• DNS

• Subnet• GW• IPAM – DHCP• DNS

Page 11: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

WebTier

MiddleTier

DBTier

Availability

SLB

Page 12: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

WebTier

MiddleTier

DBTier

Availability & Scalability

SLB

SLB

SLB

Page 13: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

WebTier

MiddleTier

DBTier

Security, Availability & Scalability

SLB

SLB

SLB

FW

Page 14: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

WebTier

MiddleTier

DBTier

Management

SLB

SLB

SLB

FW

VPN Monitoring, CI

Page 15: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Expertise & Responsibilities

• Network / Security Manager– Network (L2, L3)– Network Services (Router, NAT, DHCP, DNS, LB)– Network Security (FW, VPN)

• IT / Application Manager– Server– Operating System– Software Stack– Application Artifacts– Server’s Security

Page 16: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Load Balancer - Management

• Network based– L2 and L3– L4 Load balancing

• Application based– Cookie based, L7 Content

Switching, L7 Content Modifications, etc.

Network Manager

Network Manager ? Application Manager ?

Page 17: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

What’s Changed?

Everything is Software Defined

Page 18: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

We Can Automate Everything..

Orchestration Networking

Compute

Page 19: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Neutron/Nova APIs

• 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

Page 20: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Putting Network and Apps Together by Example

HEAT

• OpenStack Orchestration

TOSCA

• Topology• Orchestration• Specification of• Cloud• Application

Page 21: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Apache Server DB Server

Apache

WordpressMySQL

WordPress Simple Example• App Network• App Subnet• App Port• Security Group• Apache Floating IP• Router Gateway

• Data Network• Data Subnet• Data Port• Security Group

Router

Page 22: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Network Topology View

Page 23: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Heat Topology View

Page 24: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Heat Template

Page 25: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Apache Server DB Server

NodeJS

NodeCellerMongoDB

TOSCA (Like) Example• App Network• App Subnet• App Port• Security Group• Apache Floating IP• Router Gateway

• Data Network• Data Subnet• Data Port• Security Group

Router

Monitoring, Logging CI

Page 26: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Network View

Page 27: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Topology View

Page 28: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

TOSCA (Like) Blueprint

Page 29: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Adding AutoScaling & Avaliability..

Page 30: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Scalability & AvailabilityRouter

L3

Tenant1 Network

Tenant1 Project

VIP1

Management Network

Web VM3

VIP1VIP1

Alteon VA Project

VM4

VM5

Page 31: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

AutoScaling - Heat Template

• web_server_group - OS::Heat::AutoScalingGroup• web_server_scaleup_policy - OS::Heat::ScalingPolicy• web_server_scaledown_policy - OS::Heat::ScalingPolicy• cpu_alarm_high - OS::Ceilometer::Alarm• cpu_alarm_low - OS::Ceilometer::Alarm• monitor - OS::Neutron::HealthMonitor• pool - OS::Neutron::Pool• lb - OS::Neutron::LoadBalancer

Page 32: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

So far so good, but...

Page 33: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Considering Real Life Scenarios

Continuous Availability Across AZ’s and Regions– Adding Affinity Rules for Compute,

Storage– Auto-Scaling, etc.

Continuous Deployment – Updating policies and workflow– Creating new deployments every day

Page 34: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Real Life Example

(HP Print)

• 30 HP Helion Public Cloud accounts

• 500+ compute instances

• 1400 Peak deployments per day

• 100+ compute instances per management cluster

• 100x developers doing deployments in a consistent fashion

• <2H Move from HP Helion Public Cloud tenant to a fully provisioned and deployed service

Page 35: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Networking and Apps in Real Life...

Page 36: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Future work..

Page 37: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Putting TOSCA and

HEAT Closer..

• TOSCA HEAT Translator Project (IBM, GigaSpaces, Huawei, Vnomic ..)

• TOSCA enablement in Heat Juno• Integrating

Cloudify and Heat

Page 38: When Networks Meet Apps, Samuel Bercovici & Nati Shalom

Group Based Policies

• Addressing Network Requirements from the application perspective• Delegation of

Responsibilities