PES. High Availability Load Balancing in the Agile Infrastructure. Platform & Engineering Services. HEPiX Bologna, April 2013



Similar documents
PES. Ermis service for DNS Load Balancer configuration. HEPiX Fall Aris Angelogiannopoulos, CERN IT-PES/PS Ignacio Reguero, CERN IT-PES/PS

PES. Creating Load-Balanced Services on top of Cloud Infrastructure and Puppet. Platform & Engineering Services. Vítor Gouveia, vitor.gouveia@cern.

HAProxy. Ryan O'Hara Principal Software Engineer, Red Hat September 17, HAProxy

Guide to the LBaaS plugin ver for Fuel

3/21/2011. Topics. What is load balancing? Load Balancing

BASICS OF SCALING: LOAD BALANCERS

Topics. 1. What is load balancing? 2. Load balancing techniques 3. Load balancing strategies 4. Sessions 5. Elastic load balancing

CS 188/219. Scalable Internet Services Andrew Mutz October 8, 2015

Installation Guide Avi Networks Cloud Application Delivery Platform Integration with Cisco Application Policy Infrastructure

Formación en Tecnologías Avanzadas

SUSE Cloud 2.0. Pete Chadwick. Douglas Jarvis. Senior Product Manager Product Marketing Manager

CS312 Solutions #6. March 13, 2015

Quantum Hyper- V plugin

Architecting ColdFusion For Scalability And High Availability. Ryan Stewart Platform Evangelist

Cisco Prime Network Services Controller. Sonali Kalje Sr. Product Manager Cloud and Virtualization, Cisco Systems

Agile Infrastructure: an updated overview of IaaS at CERN

CERN Cloud Infrastructure. Cloud Networking

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

Availability Digest. Redundant Load Balancing for High Availability July 2013

How To - Configure Virtual Host using FQDN How To Configure Virtual Host using FQDN

CERN Cloud Architecture

Software Defined Networking (SDN) and OpenStack. Christian Koenning

Ranch Networks for Hosted Data Centers

Cisco ACE Application Control Engine: ACEBC Catalyst 6500 and 4710 Applicance Boot Camp

Application Note. Active Directory Federation Services deployment guide

Openstack. Cloud computing with Openstack. Saverio Proto

Using SUSE Cloud to Orchestrate Multiple Hypervisors and Storage at ADP

Building Storage as a Service with OpenStack. Greg Elkinbard Senior Technical Director

Implementing Microsoft Office Communications Server 2007 With Coyote Point Systems Equalizer Load Balancing

High Availability and Clustering

SDN v praxi overlay sítí pro OpenStack Daniel Prchal daniel.prchal@hpe.com

Installation Runbook for F5 Networks BIG-IP LBaaS Plugin for OpenStack Kilo

Federated Application Centric Infrastructure (ACI) Fabrics for Dual Data Center Deployments

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

Microsoft Lync Server 2010

SoftLayer Fundamentals. Load Balancing. July, 2014

CumuLogic Load Balancer Overview Guide. March CumuLogic Load Balancer Overview Guide 1

Deployment Guide. Deploying F5 BIG-IP Global Traffic Manager on VMware vcloud Hybrid Service

Release Notes for Fuel and Fuel Web Version 3.0.1

OpenStack Introduction. November 4, 2015

Web Application Hosting Cloud Architecture

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy

HUAWEI OceanStor Load Balancing Technical White Paper. Issue 01. Date HUAWEI TECHNOLOGIES CO., LTD.

OpenStack/Quantum SDNbased network virtulization with Ryu

Learn Oracle WebLogic Server 12c Administration For Middleware Administrators

WINDOWS AZURE NETWORKING

DevOps in OpenStack Public Cloud 副 标 题 副 标 题 副 标 题 Presented at OpenStack Summit, Fall 2012, San Diego

FortiBalancer: Global Server Load Balancing WHITE PAPER

Deploying the Barracuda Load Balancer with Office Communications Server 2007 R2. Office Communications Server Overview.

How To Use The Cisco Ace Module For A Load Balancing System

Networking and High Availability

Mirantis

Global Service Loadbalancing & DNSSEC. Ralf Brünig Field Systems Engineer r.bruenig@f5.com DNSSEC

Group-Based Policy for OpenStack

Guide to Deploying Microsoft Exchange 2013 with Citrix NetScaler

Design for Failure High Availability Architectures using AWS

Cisco Application Control Engine Appliance

Apache CloudStack 4.x (incubating) Network Setup: excerpt from Installation Guide. Revised February 28, :32 pm Pacific

IERG 4080 Building Scalable Internet-based Services

Appliance Administration Manual. v6.21

Load Balancing Barracuda Web Filter. Deployment Guide

Networking and High Availability

MULTI WAN TECHNICAL OVERVIEW

Load Balancing for Microsoft Office Communication Server 2007 Release 2

Microsoft Lync Server Overview

CloudCIX Bootcamp. The essential IaaS getting started guide.

GRAVITYZONE HERE. Deployment Guide VLE Environment

APPLICATION DELIVERY IN OPENSTACK WITH AVI NETWORKS

Deployment Topologies

Introduction to Cloud Computing

CloudStack Release Notes

Mobile Cloud Computing T Open Source IaaS

How To Build A Software Defined Data Center

Solution Brief. Deliver Production Grade OpenStack LBaaS with Citrix NetScaler. citrix.com

Load Balancing Web Proxies Load Balancing Web Filters Load Balancing Web Gateways. Deployment Guide

How To Make A Vpc More Secure With A Cloud Network Overlay (Network) On A Vlan) On An Openstack Vlan On A Server On A Network On A 2D (Vlan) (Vpn) On Your Vlan

Basic Administration for Citrix NetScaler 9.0

Implementing the Application Control Engine Service Module

How To Manage Dns On An Elfiq Link Load Balancer (Link Balancer) On A Pcode (Networking) On Ipad Or Ipad (Netware) On Your Ipad On A Ipad At A Pc Or Ipa

Software Defined Networking A quantum leap for Devops?

5 Key Reasons to Migrate from Cisco ACE to F5 BIG-IP

Cisco UCS Central Software

SECURE, ENTERPRISE FILE SYNC AND SHARE WITH EMC SYNCPLICITY UTILIZING EMC ISILON, EMC ATMOS, AND EMC VNX

Load Balancing Advanced Operation Manual

Global Server Load Balancing

Virtualization, SDN and NFV

Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION

Load Balancing Microsoft Remote Desktop Services. Deployment Guide

Demystify HLB and DNS Load Balancing - Lync 2013 Topology with High Availability (POOLs, DNS LB vs HLB)

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

Utility Computing and Cloud Networking. Delivering Networking as a Service

Load Balancing Bloxx Web Filter. Deployment Guide

Windows Server 2012 Hyper-V Virtual Switch Extension Software UNIVERGE PF1000 Overview. IT Network Global Solutions Division UNIVERGE Support Center

Chapter 10: Scalability

Transcription:

PES Platform & Engineering Services High Availability Load Balancing in the Agile Infrastructure HEPiX Bologna, April 2013 Vaggelis Atlidakis, -PES/PS Ignacio Reguero, -PES/PS

PES Outline Core Concepts Service Manager's Concerns DNS Load Balancing at CERN HA Services in the AI OpenStack LBaaS within Quantum CERN network restrictions Conclusions High Availability Load Balancing in the Agile Infrastructure 2/22

PES Core Concepts Load Balancing: Scale a single service by spreading it to multiple back end nodes. w1 High Availability: From an end user's perspective, service should be always functional. LB LB LB w1 w2 w3 w2 w2 Service should be available when some back end or front end nodes are unhealthy. High Availability Load Balancing in the Agile Infrastructure 3/22

PES Service Manager Concerns Implement high availability at the application Layer: Service components should interact without any single point of failure. Replicate physical nodes among independent subnets. Replicate VMs in different availability zones. Service components are expected to fail: Hardware failures ( HDD, Switches, NIC, Electricity, etc. ). Software failures ( Bugs ). Human errors. High Availability Load Balancing in the Agile Infrastructure 4/22

PES DNS LB We use a client/server architecture: LBD Master: Server which reports to DNS service. LB Client: Daemon running in the hosts. LB Clients in the hosts provide LBD Master with load metrics as well as availability checks (SNMP communication). LBD Master decides which IP should be pointed by an LB alias. The LBD Master sends Dynamic DNS requests to update the IP address pointed by the LB alias. The LBD Master uses a fail over slave server for high availability (The slave is consistent with the master). High Availability Load Balancing in the Agile Infrastructure 5/22

PES DNS LB aiplus6 LB Alias members User 137.138.241.29 Query for aiplus6 137.138.241.29-1 30 10 SNMP Load Metric DNS Server LBD Master LBD Slave DDNS update aiplus6 points to 137.138.241.29 Gets heartbeat file High Availability Load Balancing in the Agile Infrastructure 6/22

PES DNS LB Able to provide a general service for almost 150 different aliases. It does so without network traffic bottleneck. High Availability Load Balancing in the Agile Infrastructure 7/22

PES DNS LB No session persistence; needed for web applications that are statefull. No virtual IPs supported. Manual action required to define new LB aliases in the DNS service: Network engineer required to define new aliases. Delegation only effective once the LB alias has been created. High Availability Load Balancing in the Agile Infrastructure 8/22

PES HA Services in the Agile Infrastructure Components VMs in our OpenStack private cloud (KVM, HyperV). Configuration Management with puppet. Node Classification with foreman. Monitoring with Lemon. LBD HAProxy (Application Layer Load Balancer) High Availability Load Balancing in the Agile Infrastructure 9/22

PES HAProxy Background HAProxy is a free, very fast and reliable solution offering Load Balancing. It is a layer 7 Load Balancer capable of support proxying for TCP and HTTP based applications. It can operate under a pass through or redirect reverse proxying configuration. High Availability Load Balancing in the Agile Infrastructure 10/22

PES HAProxy Background HAProxy is flexible to configure and supports various Load Balancing policies: round robin weighted round robin leastconn source IP (affinity) rdp cookie (persistence) Availability check. It is the software Load Balancer used in Grizzly release of OpenStack. High Availability Load Balancing in the Agile Infrastructure 11/22

PES HA Services in the Agile Infrastructure Recommended Scenario Service manager deploys and replicates back end nodes in different availability zones. Chooses HAProxy as the actual load balancer for his application. Deploys instances running front end HAProxy balancers in different availability zones. Creates an alias for his service. Frond ends report to LB Master. DNS resolves service IP to a healthy front end, which redirect traffic accordingly. High Availability Load Balancing in the Agile Infrastructure 12/22

PES HA Services in the Agile Infrastructure User Query for aisusie 188.184.132.115 DNS Zone 1 Zone 2 Zone 3 aisusie LB members HAProxy LB2 SNMP Load Metrics DDNS update aisusie to 188.184.132.115 HAProxy LB1 LBD Master LBD Slave Back-end nodes Worker 1 Worker 2 High Availability Load Balancing in the Agile Infrastructure 13/22

PES Intoduction to LBaaS OpenStack user should be able to create Load Balancers from the Dashboard ( Horizon ). Infrastructure should provide API for this functionality. User should be able to configure the Load balancing service from the API. No access to the actual load balancer. High Availability Load Balancing in the Agile Infrastructure 14/22

PES OpenStack LBaaS (Equilibrium) Implemented in Python, from Mirantis, using OpenStack templates. Based on OpenStack common code. Uses OpenStack Services. Integrated with OpenStack Horizon GUI. Referenced by Quantum OpenStack network component. High Availability Load Balancing in the Agile Infrastructure 15/22

PES OpenStack LBaaS (Equilibrium) High Availability Load Balancing in the Agile Infrastructure 16/22

PES OpenStack LBaaS (Equilibrium) Key Features REST API for cloud admins: manage a pool of HW and SW load balancing appliances. REST API for OpenStack tenants: load balancing as a service, multi tenancy support and isolation. Drivers supporting load balancers from different vendors such as HAProxy (sw) and Cisco ACE (hw). High Availability Load Balancing in the Agile Infrastructure 17/22

PES Equilibrium Tenant API (1) Load Balancers API: Get a List of Existing LB. Create Load Balancer Instance. Delete Load Balancer Instance. Update Load Balancer Instance. Get Load Balancer Instance Detailed Information. Get Load Balancer status. Get Load Balancing statistics. Load Balancer Node API: Add Node to Existing LB. Get List of Nodes. Delete Node from Load Balancer. Update Node in Load Balancer. Change state of Node. High Availability Load Balancing in the Agile Infrastructure 18/22

PES Equilibrium Tenant API (2) Health Monitoring API: Get List of Probes Attached to Load Balancer. Add Probe to Load Balancer. Delete Probe from Load Balancer. Session Persistence API: Get a List of Session Persistence Configured for Load Balancer. Add session persistence rule for Load Balancer. Delete Configured Stickiness. Configuration: Get a List of Supported Load Balancing Protocols. Get a List of Supported Load Balancing Algorithms. High Availability Load Balancing in the Agile Infrastructure 19/22

PES LBaaS in our Cloud In our CERN private Cloud we intend to provide LBaaS. We start evaluating Mirantis Equilibrium. Equilibrium meets our needs. High Availability Load Balancing in the Agile Infrastructure 20/22

PES LBaaS in our Cloud Restrictions due to CERN's network structure: Virtual IPs in CERN's network cannot move out of a network service (normally corresponding to a subnet). They should all appear behind the same network box (switch or other). Automatic registration of IP aliases not supported (requires human intervention). High Availability Load Balancing in the Agile Infrastructure 21/22

PES Conclusion Future Plans For LBaaS we need: Back end nodes running equilibrium instances. A pool of sw (or hw) Load Balancers, running HAProxy instances. A service manager maintaining this pool and the puppet modules for equilibrium. LBaaS will support: Session persistence. Virtual IPs. Unified Configuration of LBs with Rest full API. Application Layer LB. Availability check. High Availability Load Balancing in the Agile Infrastructure 22/22

PES Closing Thank you for you attention! Questions??? High Availability Load Balancing in the Agile Infrastructure