best practices for implementing high availability for sas ® 9.4 cheryl doninger, sas zhiyong li,...

29
Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

Upload: riley-southam

Post on 29-Mar-2015

235 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

Best Practices for Implementing High Availability for SAS® 9.4Cheryl Doninger, SASZhiyong Li, SASBryan Wolfe, SAS

Page 2: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

2

What is HA and Why is it Important for SAS? Analytics are mission critical to organizations

More and more SAS deployments are operational systems

Large user populations depend on these systems

SAS is mission critical to organizations

Analysts must be able to access the SAS environment at all times

Page 3: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

3

The Goals of this HA Best Practice Consistent HA strategy for all components

Minimize the number of technologies used for HA SAS Grid Manager Clustering

Start with smallest scenario and build to most scalable

Page 4: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

4

SAS Deployment Tiers SAS Metadata Server Tier

SAS Application Server Tier

SAS Web or Middle Tier

SAS Client Tier

Page 5: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

5

Critical Components SAS® Metadata Server (Metadata Server)

SAS Web Server (Web Server)

SAS Web Application Server (Web Application Server)

SAS Web Infrastructure Platform Data Server (WIP Data Server)

SAS JMS Broker (JMS Broker)

SAS Cache Locator (Cache Locator)

SAS Object Spawner (Object Spawner)

SAS OLAP Server (OLAP Server)

SAS Environment Manager Server (EV Server)

SAS Environment Manager Agent (EV Agent)

SAS Deployment Agent (Deployment Agent)

Page 6: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

6

Some Terminology

Page 7: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

7

Bad Things Happen When a Service Goes Down

Page 8: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

8

Active-Passive Mode

Primary Node

Cold Standby Node

Page 9: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

9

Master-Slave Mode

Primary Node

Warm Standby Node

Page 10: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

10

Active-Active Mode

Cluster

Page 11: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

11

SAS Grid Manager Monitor any/all critical services

Restart on the same node if the service fails Failover to a standby node if the primary node fails

Page 12: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

12

SAS Grid Manager: Active-Passive

Page 13: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

13

SAS Grid Manager: Active-Active

Page 14: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

14

SAS Metadata Server Cluster A cluster is three or more metadata server nodes

Each node is a full server with a complete copy of all metadata

One node is designated the master to coordinate the cluster

All other nodes are slave nodes

Clients connect to slave nodes

Once connected the cluster behaves like a normal server

Page 15: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

15

Three Node SAS Metadata Server Cluster

SHARED BACKUP

MASTER

NODE2

SLAVE

NODE1

SLAVE

NODE3

Page 16: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

16

SAS Web Application Server Cluster

SAS Web Server (Load-balance / reverse-proxy)

Web Applications*

Web Services

SAS Web Infrastructure Platform Data Server

SAS Web Application Server

Cache LocatorJMS

Broker

Web Applications*

Web Services

SAS Web Infrastructure Platform Data Server

SAS Web Application Server

Cache LocatorJMS

Broker

Web Applications*

Web Services

SAS Web Infrastructure Platform Data Server

SAS Web Application Server

Cache LocatorJMS

Broker

* Not all SAS Web Applications support clustering due to technical limitations.

Page 17: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

17

Legend “SGM restart/cold failover”

SAS Grid Manager monitors active service instance and restarts on same machine or starts a new instance on a cold standby machine if the original machine dies

Requires a failover machine Can apply to both active/passive and active/active Parentheses ( ) denote cold standby for failover

“Warm failover” Master-slave mode Chevrons < > denote warm standby, the slave node of master/slave

cluster

Page 18: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

18

Legend (continued) “Clustered and SGM Restart”

Clustering capability native to the service will be used SAS Grid Manager monitors active service instance and restarts on

same machine

» There is no standby machine if the original machine dies Services on multiple machines without ( ) indicate clustering

“SGM restart” SAS Grid manager monitors a service instance and restarts the

service on the same machine These services have 1-1 mapping per node

Page 19: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

Company Confidential - For Internal Use OnlyCopyright © 2012, SAS Institute Inc. All r ights reserved.

Metadata and Mid Tier Application Server and Mid Tier

EV Server

Web Application Server

SAS Grid Manager

Metadata Server

Web Server

< WIP Data Server >

( Object Spawner )

( OLAP Server )

Cache Locator

JMS Broker

EV Agent

Deployment Agent

SAS Grid Manager

( Metadata Server )

( Web Server )

WIP Data Server

Object Spawner

OLAP Server

EV Agent

Deployment Agent

SGM Restart / Cold Failover Clustered and SGM Restart SGM Restart

< EV Server >

Web Application Server

Cache Locator

< JMS Broker>

Warm Failover

Page 20: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

20

Talking Points...Component Shared

ConfigPer-node

ConfigMode

Metadata Server X active-passive

Object Spawner X active-passive

OLAP Server X active-passive

Web Server X active-passive

EV Agent X n/a

WIP Data Server X master-slave

EV Server X master-slave

JMS Broker X master-slave

Web Application Server X active-active

Cache Locator X active-active

Page 21: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

Company Confidential - For Internal Use OnlyCopyright © 2012, SAS Institute Inc. All r ights reserved.

Metadata and Mid Tier Metadata and Application Server

Web Application Server

SAS Grid Manager

Metadata Server

Web Server

Cache Locator

EV Agent

Deployment Agent

SAS Grid Manager

Object Spawner

OLAP Server

EV Agent

Deployment Agent

Web Application Server

Cache Locator

Metadata and Mid Tier

<EV Server>

Web Application Server

SAS Grid Manager

Metadata Server

( Web Server )

< WIP Data Server >

( Object Spawner )

( OLAP Server )

Cache Locator

<JMS Broker>

EV Agent

Deployment Agent

Metadata Server

SGM Restart / Cold Failover Clustered and SGM Restart SGM RestartWarm Failover

EV Server

JMS Broker

WIP Data Server

Page 22: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

22

Talking Points...Component Shared

ConfigPer-node

ConfigMode

Metadata Server X active-active

Object Spawner X active-passive

OLAP Server X active-passive

Web Server X active-passive

EV Agent X n/a

WIP Data Server X master-slave

EV Server X master-slave

JMS Broker X master-slave

Web Application Server X active-active

Cache Locator X active-active

Page 23: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

Company Confidential - For Internal Use OnlyCopyright © 2012, SAS Institute Inc. All r ights reserved.

Metadata and Mid TierMetadata and

Application Server

EV Server

Web Application Server

SAS Grid Manager

Metadata Server

Web Server

Cache Locator

JMS Broker

EV Agent

Deployment Agent

SAS Grid Manager

( Object Spawner )

( OLAP Server )

EV Agent

Deployment Agent

OLAP Server

Object Spawner

Application Server

SAS Grid Manager

Metadata Server

< WIP Data Server >

Object Spawner

OLAP Server

EV Agent

Deployment Agent

Metadata and Mid Tier

< EV Server >

Web Application Server

SAS Grid Manager

Metadata Server

( Web Server )

Cache Locator

< JMS Broker >

EV Agent

Deployment Agent

OLAP Server

Object Spawner

SGM Restart / Cold Failover Clustered and SGM Restart SGM RestartWarm Failover

WIP Data Server

Page 24: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

24

Talking Points...Component Shared

ConfigPer-node

ConfigMode

Metadata Server X active-active

Object Spawner X active-passive *

OLAP Server X active-passive *

Web Server X active-passive

EV Agent X n/a

WIP Data Server X master-slave

EV Server X master-slave

JMS Broker X master-slave

Web Application Server X active-active

Cache Locator X active-active

* active-active w/ proper licensing

Page 25: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

Company Confidential - For Internal Use OnlyCopyright © 2012, SAS Institute Inc. All r ights reserved.

Metadata – n nodes

SAS Grid Manager

Metadata Server

EV Agent

Deployment Agent

Application Server – n nodes

SAS Grid Manager

( Object Spawner )

( OLAP Server )

EV Agent

Deployment Agent

Mid Tier – n nodes

Web Application Server

SAS Grid Manager

Web Server

Cache Locator

EV Agent

Deployment Agent

OLAP Server

Object Spawner

SAS Grid Manager

Object Spawner

OLAP Server

EV Agent

Deployment Agent

OLAP Server

Object SpawnerWeb Application Server

SAS Grid Manager

( Web Server )

Cache Locator

EV Agent

Deployment Agent

SGM Restart / Cold Failover Clustered and SGM Restart SGM RestartWarm Failover

WIP Data Server< WIP Data Server >EV Server

JMS Broker

< EV Server >

< JMS Broker >

Page 26: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

26

Talking Points...Component Shared

ConfigPer-node

ConfigMode

Metadata Server X active-active

Object Spawner X active-passive *

OLAP Server X active-passive *

Web Server X active-passive

EV Agent X n/a

WIP Data Server X master-slave

EV Server X master-slave

JMS Broker X master-slave

Web Application Server X active-active

Cache Locator X active-active

* active-active w/ proper licensing

Page 27: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

27

Summary SAS is mission critical and, therefore, must be highly

available

SAS Grid Manager + Clustering HA across entire software stack with most functionality

SAS Grid Manager – Clustering No load balancing capabilities

Clustering – SAS Grid Manager No automatic restart and failover capabilities

Page 28: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

28

More Information... http://support.sas.com/rnd/scalability/grid/gridpapers.html

http://support.sas.com/rnd/scalability/grid/HA/gridha.html

SAS 9.4 Intelligence Platform: Middle-Tier Administration Guide, Second Edition.

“Using Metadata Server Clustering.” In SAS 9.4 Intelligence Platform: System Administration Guide

“Understanding Server Load Balancing.” In SAS 9.4 Intelligence Platform: Application Server Administration Guide.

Page 29: Best Practices for Implementing High Availability for SAS ® 9.4 Cheryl Doninger, SAS Zhiyong Li, SAS Bryan Wolfe, SAS

29

??? Questions ???