Actional Architecture Fundamentals David Bressler Actional Product Evangelist September 2009.

Презентация:



Advertisements
Похожие презентации
Actional Technical Overview David Bressler Actional Product Evangelist Session 101.
Advertisements

Using Actional with OpenEdge The Zen of Business Transaction Assurance David Cleary Principal Software Engineer – Progress Software Session 116.
Designing Network Management Services © 2004 Cisco Systems, Inc. All rights reserved. Designing the Network Management Architecture ARCH v
1 Where is the O(penness) in SaaS? Make sure youre ready for the next wave … Jiri De Jagere Senior Solution Engineer, Progress Software Session 123.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v Route Selection Using Policy Controls Using Multihomed BGP Networks.
How to quickly identify and resolve application bottlenecks Johan Forssblad, G4 IT AB Managing Director / Co founder.
The waterfall model is a popular version of the systems development life cycle model for software engineering. Often considered the classic approach to.
The waterfall model is a popular version of the systems development life cycle model for software engineering. Often considered the classic approach to.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v Route Selection Using Policy Controls Applying Route-Maps as BGP Filters.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary © Wind River Systems, released under EPL 1.0. All logos are TM of their respective.
WEB SERVICES Mr. P. VASANTH SENA. W EB SERVICES The world before Situation Problems Solutions Motiv. for Web Services Probs. with Curr. sols. Web Services.
© 2006 Cisco Systems, Inc. All rights reserved. BCMSN v Introducing Campus Networks Network Requirements.
Loader Design Options Linkage Editors Dynamic Linking Bootstrap Loaders.
Introducing Cisco Network Service Architectures © 2004 Cisco Systems, Inc. All rights reserved. Introducing the Network Design Methodology ARCH v
© 2005 Cisco Systems, Inc. All rights reserved.INTRO v Managing Your Network Environment Managing Cisco Devices.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v Customer-to-Provider Connectivity with BGP Connecting a Multihomed Customer to Multiple Service.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v Route Selection Using Policy Controls Implementing Changes in BGP Policy.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary November 4, 2014 Copyright © 2006 Eclipse Foundation, Inc., Made available.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v Optimizing BGP Scalability Implementing BGP Peer Groups.
© 2006 Cisco Systems, Inc. All rights reserved. BSCI v Implementing BGP Explaining BGP Concepts and Terminology.
Транксрипт:

Actional Architecture Fundamentals David Bressler Actional Product Evangelist September 2009

© 2009 Progress Software Corporation2 Agenda Actional Benefits Management Architecture Patterns Actional Architecture How Actionals Architecture Provides the Benefits We Just Discussed What It Takes To Deploy

© 2009 Progress Software Corporation3 Actional Architecture Benefits Highly Scalable >1,000 nodes per server >50,000 dependencies per SOA No single point of failure Performant CPU use optimized to

© 2009 Progress Software Corporation4 Agenda Actional Benefits Management Architecture Patterns Actional Architecture How Actionals Architecture Provides the Benefits We Just Discussed What It Takes To Deploy

© 2009 Progress Software Corporation5 Management Design Challenges Performance Optimize performance impact of management on applications Minimize latency added by management tool Cost Reduce cost impact on the application Reduce hardware costs associated with management Costs should map to those receiving the benefit Visibility Create a holistic view across teams and applications Broad visibility across protocols Scalability Meet the needs of enterprise scale deployments Realistic scale-to-enterprise through automatic correlation

© 2009 Progress Software Corporation6 Alerts Distribute Processing to the Managed Nodes Pros: Speed – policy evaluation happens right on box Gain scalability by distributing transaction processing Cons: Heavy CPU load on application host Each node manages independently of others; No over-all view of the SOA Application costs increase due to management overhead Performance Scalability Cost Visibility

© 2009 Progress Software Corporation7 Centralize Processing Pros: Application costs are separated from management costs Server can provide SOA overview Cons: Near doubling of network traffic Significant latency added to message flow Explosion of management servers Management becomes a bottleneck to business execution Raw Data Results Performance Scalability Cost Visibility

© 2009 Progress Software Corporation8 Actionals Combined Approach Pros: Analysis is distributed into the network Virtually unlimited scalability Central server is in the know Provides holistic SOA overview Cons: Integration with each platform requires a greater depth of skill Thats our problem, and one were good at solving! Alerts & Stats Policies Performance Scalability Cost Visibility

© 2009 Progress Software Corporation9 Results of this Approach Leverages existing message processing Low CPU utilization without loss of functionality Leverages existing message flows Global visibility without a central bottleneck Leverages the network effect Proactive issue detection and isolation without costly administration Actional Utilizing 1-3% of CPU in usage by F500 financial service firm Managing >35000 interdependencies among >500 machines with a single Actional server at one of worlds largest universities

© 2009 Progress Software Corporation10 Agenda Actional Benefits Management Architecture Patterns Actional Architecture How Actionals Architecture Provides the Benefits We Just Discussed What It Takes To Deploy

© 2009 Progress Software Corporation11 Actional Server-Agent Communication Actional Management Server Policies Created Centrally 1 2 Policies Provisioned for Distributed Execution Statistics reported back on timing interval; Alerts reported asynchronously 3 3 On alert, when needed, Server asks Agent for additional information SOAP over HTTP(S) or JMS Instrumented Platform 4

© 2009 Progress Software Corporation12 Message Traffic HTTP(s) EJB Servlets JMS SOAP RMI ADO.NET Orbix/IIOP ESB JDBC OpenEdge Protocol Specific Instrumentation Instrumented Platform Components HTTP(s) EJB Servlets JMS SOAP RMI ADO.NET 2.0/3.0 Other ESB JDBC SOA Protocols Supported Uplink.cfg Configuration Info Message Activity Alerts and Stats to Server; Policy from Server Analyzer Flight Data Recorder Statistics Aggregation Policy Evaluation Interceptor

© 2009 Progress Software Corporation13 Tracking Message Flows Interceptors Inserted without modifying the application Actional is invisible to developers Run in the platform protocol stack, not on the app server They become a part of the app server Give visibility one-hop away Dont do anything if analyzer not running

© 2009 Progress Software Corporation14 Interceptors Inject Tracers into the Flow Manifest Inserted in the transport header Message is not modified Ignored by un-instrumented nodes Maintained through local processes, and stitched across multiple hops Enables the capture of exact message sequences and both service and business-process level correlation

© 2009 Progress Software Corporation15 Flight Data Recorder Stores Info in Memory Fight Data Recorder Is never persisted Never sent on the network Size is configurable Will recycle storage space as needed

© 2009 Progress Software Corporation16 Policy Evaluation Detects Abnormal Conditions Policy only needs to be checked at the key checkpoints in the process flow (not at every step). Analyzer notifies Actional Management Server. Actional Management Server

© 2009 Progress Software Corporation17 Server Gathers Relevant Information Actional Management Server gathers, correlates, persists, and visualizes relevant records from each related flight data recorder Actional Management Server

© 2009 Progress Software Corporation18 Flow Map Screen Shot: Root Cause Analysis

© 2009 Progress Software Corporation19 Flow Map Detail Screen Shot: Path Explorer

© 2009 Progress Software Corporation20 Finding the Root Cause

© 2009 Progress Software Corporation21 Why Correlation Matters to Product Selection Highly Beneficial (Elegant) Correlation in-bound and out-bound within each node (not just in-bound request with out-bound reply) Correlate across nodes Done across every message and flow –Even when message content inaccessible/encrypted Spans protocols for end-to-end correlation –Across protocol transitions for all protocols supported Virtually no impact on performance Low Cost of Implementation & Ownership (Simple) No up-front configuration necessary –It works from the first message sent, once the agent is installed No need to manage correlation rules –No need to worry about correlation rule errors! No on-going maintenance of correlation rules necessary

© 2009 Progress Software Corporation22 Actional Agent Architecture Correlator Read and embed context in messages Store and retrieve context in container state Reporter Capture details of messages flowing into and out of application Flight Data Recorder High bandwidth fixed size recorder stores rolling buffer of recently observed traffic Statistics Aggregation Accumulate aggregate statistics about messages (segmented appropriately) Policy Evaluation Evaluate policies against message traffic –Instance policies as records of messages arrive –Aggregate policies on a periodic time schedule Trigger actions based on rule match –Alert, audit, flowmap –Compensation or other custom action Reporter Flight Data Recorder Application Platform Correlator … Interceptor Analyzer Statistics Aggregation Policy Evaluation Processing phases

© 2009 Progress Software Corporation23 Correlation Management No manual correlation mapping need to be defined Automatic discovery of relationships No application level modifications required Can be implemented at any stage of a project 1. Read correlation state from incoming transport-level message header 2. Store correlation state in containers processing context e.g. transaction, session, or process context 3. Allow container to transfer and persist correlation state as necessary 4. Read correlation state from containers processing context 5. Embed correlation state in outgoing transport-level message header Reporter Application Platform Correlator … Benefits

© 2009 Progress Software Corporation24 Agenda Actional Benefits Management Architecture Patterns Actional Architecture How Actionals Architecture Provides the Benefits We Just Discussed What It Takes To Deploy

© 2009 Progress Software Corporation25 Highly Scalable BenefitFeature >1,000 Nodes Per ServerCentralized policy administration, distributed execution No Single Point of FailureServer not involved in the flow of messages Single Product UIOne product end-to-end; Tiered administration integrates with existing role-based infrastructure

© 2009 Progress Software Corporation26 Performant BenefitFeature Very low CPU usage (

© 2009 Progress Software Corporation27 Automatic Discovery BenefitFeature No need to know where your services are in order to find and manage them Automatic Service Discovery; As services are used, in real-time, services, the service consumers, and relationships are tracked, persisted, and visualized in the Actional UI. Visually track all service consumers; dynamically discover consumers Automatically track and police the relationship between services and nodes (dependencies) No need to install an agent on every node Sitting in the stack, the Agent Interceptor has access to information about inbound messages that allow us to discover nodes that are communicating with managed points. Can track/monitor services even on machines where you cannot install an agent

© 2009 Progress Software Corporation28 Policy Inheritance Policy can be written so that it is not service specific Therefore, as services are discovered, policy is applied via meta-data correlation (such as service location) This assures you that rogue services are never un- policed; policy can be written without any knowledge of the service and deployed even before the service Since services are discovered, even if an admin forgets to configure the service, Actional discovers the service, and all relevant policies are inherited and immediately applied

© 2009 Progress Software Corporation29 Multi-Protocol Support BenefitFeature Out-of-the-box support for many different protocols SOAP HTTP EJB JMS ESB Servlets RMI JDBC ADO.NET Orbix/CORBA OpenEdge Interceptor-based architecture is technology agnostic; nothing extra is required, like web services, these protocols are automatic and transparent to policies

© 2009 Progress Software Corporation30 No Application Changes Required Correlation information (Manifest) is added to the message flow via a transport header Actional does NOT change the message, or message content, in any way Therefore, the application is never even aware that it is being managed; either Actional or the Application can be deployed first As a side benefit, customers are not locked into Actional

© 2009 Progress Software Corporation31 Correlation is Automatic As an example, one customer is managing >35,000 interdependencies among >500 machines Manual correlation is a non-starter in any enterprise- class environment The whole point of root-cause analysis and learning what the environment is doing is having the infrastructure discovery and report what is actually happening in the environment

© 2009 Progress Software Corporation32 Correlation Specifics Correlation supports both synchronous and asynchronous flows Correlation is independent of finding a common key in the payload (and the related expense of payload processing) Correlation is specific to an individual flow, and root- cause analysis can use actual individual message stats, not just average stats of a flow

© 2009 Progress Software Corporation33 Policy Enforcement Optimization BenefitFeature Easier to manage policy, as its only in one place Optimized use of CPU, since policy does not need to be evaluated on each node Policy can be more meaningful to users; often policy is OK, but users are unhappy because of IT/Business disconnect Apply policy close to the customer; Dependency tracking enables end-to-end policy enforcement, though policy is only applied close to customer Root cause analysisSnapshot individual transactions for later analysis in the context of SLA violations Complex policy supportSingle user interface for policy creation, regardless of metric or message type

© 2009 Progress Software Corporation34 Summary: Key Actional Architecture Points ActionalAlternatives Automatic correlation within & across nodes YesNo Correlation architecture DistributedCentralized Correlation maintenance Automatic or manual Manually administered Architectural model Memory intensive CPU intensive See every transaction Yes No (sampling or synthetic only) Snapshot transactions in production Yes (low overhead FDR) No (too much overhead) Polices need be defined At entryEverywhere Per-hop overhead MicrosecsMillisecs

© 2009 Progress Software Corporation35 Agenda Actional Benefits Management Architecture Patterns Actional Architecture How Actionals Architecture Provides the Benefits We Just Discussed What It Takes To Deploy

© 2009 Progress Software Corporation36 Where To Start? Broad Visibility Supernode Deployment

© 2009 Progress Software Corporation37 Broad Visibility Deploy Agent in Each Container Gives holistic overview Protects from rogue services Rapid root cause analysis Often done as preventative measure in anticipation of SOA More easily done when infrastructure is controlled by one team Broad Visibility

© 2009 Progress Software Corporation38 Supernode Deployment Deploy Agent in Hot Spots As familiarity with tool increases and wins occur, branch out to other servers More easily done when app servers are owned by distributed application teams (no central control) Used to troubleshoot problems with a particular server/application Provides clear ROI since sharing is more easily demonstrated Supernode Deployment

© 2009 Progress Software Corporation39 Whats the Best Way to Install the Agent? Install everywhere, but dont necessarily run Analyzer Interceptor only works when Analyzer is running Install as part of basic build, so its there when you want it Enable it by turning on the Analyzer What if I have multiple application servers on a single host? You need one Analyzer per box, and one Interceptor per protocol for each application server The Interceptors will find uplink.cfg and know how to communicate to the Analyzer

© 2009 Progress Software Corporation40 Whats the Best Place to Run the Analyzer? Multiple application servers on the same host… where do I put the Analyzer? There is only one Analyzer per box The Analyzer can run standalone, and service each application server equally –If the Analyzer runs in one of the application servers, then a container failure will impact other application servers on that same box (not desired behavior) Failure of the standalone Analyzer will not impact message flow on any app server; though management information will be unavailable

© 2009 Progress Software Corporation41 Development, UAT, Production? In Development Actional provides… Constant monitoring of how services are used, so that developers do not need to wait to a check point (after all development is complete) to find and fix problems. Assurance that developers are not using production services Quickly debug interactions between systems –At a Telco, reduced their debug time to 20% of what it had been prior to Actional implementation Policies can be exported and managed via source control as code is moved from development to UAT to production Tracking consumers of development services to assist with migration towards production as appropriate

© 2009 Progress Software Corporation42 Development, UAT, Production? In UAT Actional provides… Validation that services are used as documented Capacity planning for production deployment Assurance that UAT is not depending upon any development services (unless expected) Assurance that UAT is not depending upon production resources (databases or orchestration, for example) Impact analysis understanding for how this new service usage will affect the existing SOA Rapid debugging of interactions between systems

© 2009 Progress Software Corporation43 Summary Architecture requirements of low impact, broad visibility, and high scalability are a good starting point for evaluating a solution Discussed Actional architecture Automatic Discovery of consumers, services & dependencies Multi-Protocol support includes JDBC, ADO.NET, RMI, EJB, + No application changes required Scalable & Performant Policy Inheritance Flow Mapping for root cause analysis High level deployment guidelines and how to get started Where to deploy agents Best practice for getting agents deployed Benefits to Actional in Development and UAT

© 2009 Progress Software Corporation44