University of Southern California Shibboleth High Availability with Terracotta



Similar documents
Implementing a Well- Performing and Reliable Portal

KillTest. 半 年 免 费 更 新 服 务

MID-TIER DEPLOYMENT KB

Hardware Recommendations

Enterprise Manager Performance Tips

Java Monitoring. Stuff You Can Get For Free (And Stuff You Can t) Paul Jasek Sales Engineer

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

Oracle WebLogic Server 11g Administration

Load Testing with JMeter

VMware vrealize Automation

VMware vrealize Automation

Introduction 1 Performance on Hosted Server 1. Benchmarks 2. System Requirements 7 Load Balancing 7

VMware vcloud Automation Center 6.1

Code:1Z Titre: Oracle WebLogic. Version: Demo. Server 12c Essentials.

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers

Cognos8 Deployment Best Practices for Performance/Scalability. Barnaby Cole Practice Lead, Technical Services

Scaling out a SharePoint Farm and Configuring Network Load Balancing on the Web Servers. Steve Smith Combined Knowledge MVP SharePoint Server

McAfee Enterprise Mobility Management Performance and Scalability Guide

WebSphere Server Administration Course

IBM WebSphere Server Administration

Tuning Tableau Server for High Performance

msuite5 & mdesign Installation Prerequisites

COMPARING NETWORK AND SERVER MONITORING TOOLS

Managing your Domino Clusters

ProSystem fx Engagement. Deployment Planning Guide

Blackboard Learn TM, Release 9 Technology Architecture. John Fontaine

System Requirements Table of contents

Chapter 1 - Web Server Management and Cluster Topology

NetIQ Access Manager 4.1

CITRIX 1Y0-A14 EXAM QUESTIONS & ANSWERS

ITG Software Engineering

VMware vcloud Automation Center 6.0

Applications Manager Best Practices document

EWeb: Highly Scalable Client Transparent Fault Tolerant System for Cloud based Web Applications

Active Directory Integration

Explain how to prepare the hardware and other resources necessary to install SQL Server. Install SQL Server. Manage and configure SQL Server.

pc resource monitoring and performance advisor

Monitoring IBM HMC Server. eg Enterprise v6

Installation and Configuration Guide for Windows and Linux

WebSphere Performance Monitoring & Tuning For Webtop Version 5.3 on WebSphere 5.1.x

High Availability of the Polarion Server

Installation and Configuration Guide for Windows and Linux

OBSERVEIT DEPLOYMENT SIZING GUIDE

Deployment Planning Guide

Using AppMetrics to Handle Hung Components and Applications

MySQL Enterprise Monitor

PTC System Monitor Solution Training

FileMaker Server 7. Administrator s Guide. For Windows and Mac OS

HRG Assessment: Stratus everrun Enterprise

Install guide for Websphere 7.0

Advanced Performance Forensics

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

Maintaining a Microsoft SQL Server 2008 Database

GLOBAL DIGITAL ENTERTAINMENT CONTENT AND SERVICES PROVIDER JESTA DIGITAL MIGRATES TO THE ULTRAESB

TSM Studio Server User Guide

Sitecore Health. Christopher Wojciech. netzkern AG. Sitecore User Group Conference 2015

MAGENTO HOSTING Progressive Server Performance Improvements

HelpSystems Web Server User Guide

Liferay Portal Performance. Benchmark Study of Liferay Portal Enterprise Edition

Monitoring Traffic manager

An Oracle White Paper March Load Testing Best Practices for Oracle E- Business Suite using Oracle Application Testing Suite

Enterprise Remote Control 5.6 Manual

Web Performance, Inc. Testing Services Sample Performance Analysis

FioranoMQ 9. High Availability Guide

Bigdata High Availability (HA) Architecture

Pearl Echo Installation Checklist

Hardware/Software Guidelines

High-Availability. Configurations for Liferay Portal. James Min. Senior Consultant / Sales Engineer, Liferay, Inc.

BLACKBOARD LEARN TM AND VIRTUALIZATION Anand Gopinath, Software Performance Engineer, Blackboard Inc. Nakisa Shafiee, Senior Software Performance

K1000: Advanced Topics

The safer, easier way to help you pass any IT exams. Exam : C_HANASUP_1. SAP Certified Support Associate - SAP HANA 1.0.

Monitoring HP OO 10. Overview. Available Tools. HP OO Community Guides

Identikey Server Performance and Deployment Guide 3.1

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

This chapter includes the following topics: User's and Administrator's Guides. Symantec Workspace Virtualization build:

HYPERION SYSTEM 9 N-TIER INSTALLATION GUIDE MASTER DATA MANAGEMENT RELEASE 9.2

An Oracle White Paper July Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide

Smart Business Architecture for Midsize Networks Network Management Deployment Guide

WebLogic on Oracle Database Appliance: Combining High Availability and Simplicity

XenDesktop 7 Database Sizing

Server Manager Performance Monitor. Server Manager Diagnostics Page. . Information. . Audit Success. . Audit Failure

Content Distribution Management

AppSense Environment Manager. Enterprise Design Guide

How To Monitor A Server With Zabbix

MONITORING PERFORMANCE IN WINDOWS 7

Uptime Infrastructure Monitor. Installation Guide

Course. Overview. Length: 5 Day(s) Published: English. IT Professionals. Level: Type: Method: Delivery. Enroll now (CAL)

White Paper. The Ten Features Your Web Application Monitoring Software Must Have. Executive Summary

SOLUTION BRIEF: SLCM R12.7 PERFORMANCE TEST RESULTS JANUARY, Load Test Results for Submit and Approval Phases of Request Life Cycle

McAfee Agent Handler

Tomcat Tuning. Mark Thomas April 2009

MEGA Web Application Architecture Overview MEGA 2009 SP4

Online Transaction Processing in SQL Server 2008

Managing and Maintaining a Windows Server 2003 Network Environment

PATROL From a Database Administrator s Perspective

JBoss Data Grid Performance Study Comparing Java HotSpot to Azul Zing

Transcription:

University of Southern California Shibboleth High Availability with Terracotta

Overview Intro to HA architecture with Terracotta Benefits Drawbacks Shibboleth and Terracotta at USC Monitoring Issues Resolved Tracking Down Issues 2

Introduction to HA with Terracotta Terracotta is designed to assist: High availability with failure protection Distribution of client load amongst several machines Sharing of session data between clients as needed Preserving session data on disk (can survive clusterwide full restarts if done right) Automatic failover in the event of node failure 3

Terracotta Basics Web user A Multiple clients coordinate with one active TC server Web user C Web user E Web user D Loadbalancer Web user F Shib Server/ TC Client Session A,B Shib Server/ TC Client Session C,D Shib Server/ TC Client Session E,F,G Active TC Passive TC Passive TC Session A,B,C,D,E,F,G 4

Terracotta Basics Active server distributes session data to passive Active TC Session A,B,C,D,E,F,G Passive TC Session A,B,C,D,E,F,G Passive TC Session A,B,C,D,E,F,G 5

Terracotta Basics In the event of failure, a new Active server is automatically selected. Clients automatically fail over. Loadbalancer Shib Server/ TC Client Session A,B Shib Server/ TC Client Session C,D Shib Server/ TC Client Session E,F,G Active TC Session A,B,C,D,E,F,G Active TC Session A,B,C,D,E,F,G Passive TC Session A,B,C,D,E,F,G 6

Terracotta Basics Terracotta servers can reside on hardware independent of the clients recommended by Terracotta docs good when many smaller machines are available Terracotta servers can also reside on the same hardware recommended by Shibboleth docs good where fewer, but larger machines, with more cores and more memory are available 7

Terracotta Basics Proper application failover requires: Load balancing software or hardware with failure detection Redundant nodes (the more the merrier) Sized to handle the load on a subset of nodes Users should not notice that one or perhaps multiple nodes break (ideally) 8

Benefits Automatic failover and retention of services, with the help of a loadbalancer, in the event of service failure Enables services to be taken down and restarted as needed without affecting users Preserves session data on restarts Additional clients are easily configured and added And more 9

Benefits Decreased memory requirements for application server (Tomcat/JBoss) on each machine: session data will be split between multiple boxes and will not be loaded on another box unless the user is re-routed or an attribute query hits a different box session objects which otherwise might have pushed memory limits to the max will be shunted off by the LFU algorithm when memory usage exceeds configurable thresholds client shunts to TC service, TC service shunts to disk 10

Drawbacks Increased processing overhead Active TC server consumes nearly as much CPU time as the Tomcat server on that box Increased memory requirements to run TC server on each box somewhat balanced by decreased memory for tomcat Garbage collection in TC server may produce delays in addition to client JVM GC (subject to tuning) Potential issues on network disconnects requiring manual service restarts 11

Drawbacks Authentication modules other than LDAP JAAS may require significant Terracotta configuration to enable. Benefits are questionable if not using AttributeQuery or other data services requiring session objects to be accessible from each server. If TC goes down, all clients block, even the stop/start scripts for the Tomcat servers will block. 12

Benefit/Drawback Comparison Drawbacks boil down mainly to increased overhead Easily solved by adding a bit of hardware. Persistence of user sessions with transparency through restarts is very desirable and facilitates configuration changes. Terracotta will be required for redundancy where session sharing is used. Setup of Terracotta has proven easy enough and reliable enough to justify its use. 13

Shibboleth and Terracotta at USC Current configuration Two Sun v240s 2 core, 8 GB ram (soon to be retired) Processes 30K+ logins per day on each machine Load average is regularly 4 or greater during peak times If one were to fail, the other could get overloaded Not much room to grow Easily handles IdP traffic without TC, but can get rather loaded when TC server also competes Citrix NetScaler loadbalancing Distributes load evenly Maintains client affinity 14

Shibboleth and Terracotta at USC Future configuration Two Sun v440s 4 cores, 16 GB ram Additional memory for increased heap sizes increased time between garbage collection cycles decrease or eliminate the occasional failure to promote from the New Generation when using the Concurrent Mark Sweep collector (results in a stop-the-world RAM defrag, 10-20 seconds). Enough CPU (hopefully) to turn AttributeQuery back on for 1.3 SPs and Encryption for 2.x SPs Extra processors will reduce contention, especially GC * 15

Monitoring https://shibboleth.usc.edu/idp/profile/status Standard monitoring profile handler not used Returns the string ok https://shibboleth.usc.edu/shibboleth-idp/status Custom jsp script monitors Tomcat only (for now) Returns the string AVAILABLE Used by loadbalancer and Nagios ok was considered too common and likely to occur in web communication even potentially in an error case 16

Monitoring Orca https://gds-admin.usc.edu/orca/ example: 17

Monitoring shlook.pl custom plugin to Orca to monitor Shibboleth specific stats available on same page as CPU stats example: 18

Terracotta admin console: Monitoring 19

Monitoring Unix Terminal (I tend to watch behaviors with these): top follow the idp-process.log catalina.out for garbage collector stats while [[ true ]]; do ps -auwwx grep -c httpd; sleep 5; done; Other logs: terracotta-server.log terracotta-client.log 20

Disk Garbage Collector Issues Resolved By default, runs every hour Should be turned off and triggered by script at night Log space Many unimportant warnings printed to catalina.out Remedied by cronolog rolling the catalina.out file swallowoutput tomcat option plus logging.xml config May not be an issue with recently released TC 3.0 21

Memory Management Issues Resolved With TC, memory turnover is high May be remedied by ConcurrentMarkSweep collector (if you have enough heap space) Network Connectivity Network hiccups may disconnect servers TC servers auto-recover, clients do not May be remedied by configuring reconnect windows 22

idp-process.log Tracking Down Issues Where access messages build up but no authentication messages resolve the request, TC service may be down terracotta-client.log/terracotta-server.log Indicates when connectivity is available or in error Shows heap usage stats TC memory monitor messages and alerts, e.g.: long garbage collection cycles long times spent on LFU to shunt active objects out of memory 23

(Zen and the art of) Tracking Down Issues Just look Examine logs Get a feel for normal behavior to then be able to spot the abnormal Trace time stamps and correlate between logs Research Persist Learn the meanings of log messages and configuration options Read the documentation of the products Open source opens opportunities you can look at the code 24

Links USC: http://www.usc.edu Terracotta Integration and Streamlining https://spaces.internet2.edu/display/shib2/idpcluster This presentation http://its.usc.edu/~beall/shibboleth-terracotta-spring09i2.ppt Russell Beall beall@usc.edu 25