Integrating HA Legacy Products into OpenSAF based system

Slides:



Advertisements
Similar presentations
Distributed Processing, Client/Server and Clusters
Advertisements

Database Architectures and the Web
Adding scalability to legacy PHP web applications Overview Mario A. Valdez-Ramirez.
Approaches to EJB Replication. Overview J2EE architecture –EJB, components, services Replication –Clustering, container, application Conclusions –Advantages.
Distributed components
Hands-On Microsoft Windows Server 2003 Administration Chapter 5 Administering File Resources.
©Silberschatz, Korth and Sudarshan19.1Database System Concepts Lecture-10 Distributed Database System A distributed database system consists of loosely.
16: Distributed Systems1 DISTRIBUTED SYSTEM STRUCTURES NETWORK OPERATING SYSTEMS The users are aware of the physical structure of the network. Each site.
©Silberschatz, Korth and Sudarshan18.1Database System Concepts Centralized Systems Run on a single computer system and do not interact with other computer.
SIMULATING ERRORS IN WEB SERVICES International Journal of Simulation: Systems, Sciences and Technology 2004 Nik Looker, Malcolm Munro and Jie Xu.
Tiered architectures 1 to N tiers. 2 An architectural history of computing 1 tier architecture – monolithic Information Systems – Presentation / frontend,
Distributed Databases
11 SERVER CLUSTERING Chapter 6. Chapter 6: SERVER CLUSTERING2 OVERVIEW  List the types of server clusters.  Determine which type of cluster to use for.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
ADVANCED MICROSOFT ACTIVE DIRECTORY CONCEPTS
CH2 System models.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
2Object-Oriented Analysis and Design with the Unified Process Objectives  Describe the differences and similarities between relational and object-oriented.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
MapReduce and GFS. Introduction r To understand Google’s file system let us look at the sort of processing that needs to be done r We will look at MapReduce.
VICTORIA UNIVERSITY OF WELLINGTON Te Whare Wananga o te Upoko o te Ika a Maui SWEN 432 Advanced Database Design and Implementation MongoDB Architecture.
GFS. Google r Servers are a mix of commodity machines and machines specifically designed for Google m Not necessarily the fastest m Purchases are based.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
VCS Building Blocks. Topic 1: Cluster Terminology After completing this topic, you will be able to define clustering terminology.
1 Murthy Esakonu June 3rd, 2009 Shenzhen China OpenSAF Developer Days 2009 Writing First OpenSAF Application Session OpenSAF.
OpenSAF Technical Overview Mario Angelic Technical Co-Chair OpenSAF Project June 4 th, 2009.
Building Systems with OpenSAF Mario Angelic Expert Hans Feldt OpenSAF Technical Co-Chair
Ingvar Bergström Senior Designer Developer Days June 2009 SMF in OpenSAF.
Seminar On Rain Technology
SEMINAR TOPIC ON “RAIN TECHNOLOGY”
The Concept of Universal Service
rain technology (redundant array of independent nodes)
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Business System Development
Migrating a Legacy Application to OpenSAF Experience and Findings Using OpenSAF Ana Sanz Merino SAPC System Architect Ericsson.
Introduction to OpenSAF
CIIT-Human Computer Interaction-CSC456-Fall-2015-Mr
Distributed Cache Technology in Cloud Computing and its Application in the GIS Software Wang Qi Zhu Yitong Peng Cheng
Transforming VLC into an SA-Aware Application
Automatic Generation of AMF Compliant Configuration
Database Architectures and the Web
High Availability Linux (HA Linux)
Operating Systems : Overview
N-Tier Architecture.
The Client/Server Database Environment
OpenSAF Wanted Architecture TLC view
Distribution and components
Chapter 9: The Client/Server Database Environment
Processes The most important processes used in Web-based systems and their internal organization.
CHAPTER 3 Architectures for Distributed Systems
Database Architectures and the Web
Oracle Solaris Zones Study Purpose Only
#01 Client/Server Computing
RAID RAID Mukesh N Tekwani
Elements of Database System
Operating Systems : Overview
Enterprise Service Bus (ESB) (Chapter 9)
Lecture 1: Multi-tier Architecture Overview
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Operating Systems : Overview
Operating Systems : Overview
An Introduction to Software Architecture
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
Operating Systems : Overview
RAID RAID Mukesh N Tekwani April 23, 2019
Database System Architectures
#01 Client/Server Computing
Presentation transcript:

Integrating HA Legacy Products into OpenSAF based system Mario Angelic Ericsson mario.angelic@ericsson.com June 4th, 2009

Presentation Outline AMF support for integrating of legacy products Type of legacy products Approaches for integrating HA legacy products

AMF Support AMF different concepts to support legacy application From availability integration: Concept of wrapper process The wrapper process typically consists of one processes that interacts with the AMF on the one hand and with the legacy software (hardware) on the other hand. The wrapper and the legacy software together constitute a single component. Concept of non-SA-aware component Node code modification required. AMF just manages lifecycle. Still component can be monitored using concepts like External Active Monitor and Passive Monitoring Concept of proxy-proxied component In this case legacy software can be considered to be a separate component managed by the proxy component. Appropriate in cases when either redundancy model of proxied component is different then redundancy model of proxy component or the failure zone of proxied components is different between proxy and proxied component.

Type of legacy products “Simple” legacy products (daemons), not containing any HA functionality Example: snmp daemon Legacy products with own HA, controlling only own availability Example: HA Database, HA SS7 stack Legacy products with own HA, controlling lifecycle of whole execution environment Example: Legacy middleware

“Simple” Legacy products (daemons) Easy to make HA using these alternatives: Wrapper Process To AMF it will look as normal sa-aware component Modeling as non-sa-aware component No need for any code, just configuration Use External Active Monitor for monitoring state of component

Legacy products with own HA We take a DBMS as example of such product Scope is integration of such product into OpenSAF/SAF based system Integration can be divided in two areas: High-Availability Integration (Integration with AMF) Managebility integration (Integration with NTF, IMM, SMF, LOG)

High-Availability Integration There are different ways to model availability and depending on existing DBMS architecture some are more appropriate then others One of AMF integration examples: Model DB functionality per node as sa-aware local component Can be done by: Adapting DB process to handle life cycle and workload management API Adding wrapper process which toward SAF implements life cyle and workload management API and toward DBMS adapts to DBMS specific API (Note: Important to correlate life cycle of registered process and DB process/es on that node.)

High-Availability Integration, cont. Component will be part of specific Service Unit containing just that component. Service unit will be part of own Service Group that will use one of AMF specified redundancy models (corresponding to existing redundancy model (if existing) in DBMS solution). Common redundancy models are N-way active and 2N. For specific DBMS architectures other redundancy models could be more appropriate. Shared library with DBMS API shall be provided (Connector) Communication mechanism between Shared library and database component must be based on reliable protocol (For example SAF MSG service or another commonlly available protocol (for example TCP)). Failover&Swicover of DBMS nodes should be done as transparentlly as possible toward users (Application).

Example 1 DBMS using 2N redundancy model Application using N-way active redundancy model Node U Node V Node W Node X Service Group Service Unit Service Unit Service Group Component Component Service Unit Service Unit DBMS DBMS Component Component proprietary App App RegP RegP DB API DB API AIS AIS AIS AIS SAF MW

Example 2 DBMS using N-way active redundancy model Mgmt part using 2N redundancy model Application using N-way active redundancy model Modelling DBMS component as proxied (Mgmt component is proxy) or sa-aware. Node 1 Node 2 Node 3 Node 4 Node 5 Node 6 Node 7 SG SG SU SU SU SU SU SG Component Component Component Component Component SU SU DBMS DBMS DBMS Mgmt Mgmt Component Component proprietary App App RegP RegP DBMS specific HA DB API DB API AIS AIS AIS AIS AIS AIS AIS SAF MW

Management Integration Fault Management integration Alarms & Alerts are sent/received using Notification service Configuration Management integration Configuration done by Information Management Model service Provide Information Model describing configuration and runtime objects and attributes of a DB (model whole/most_commonlly_used configuration capabilities of a specific DB solution) Adapt DB solution to use IMM OI API, eiher nativelly integrating or adapting proprietary configuration API to IMM API.

Management Integration, cont. SMF Packaged as SW Bundle Log integration DBMS should use SAF Log for logging

Shared-disk databases DBMS architectures Shared-disk databases Using shared storage for storing state Shared-nothing databases Data stored in memory, typically partitioned and replicated for availability reasons

Shared-disk DBMS Wrapper method used Node W Node X Node 1 Node 2 DBMS SAF MW Component proprietary SU SG AIS Node 3 RegP Apps DB API (Connector) DBMS Load Balancing Shared Storage Wrapper method used Each DBMS component is sharing workload N-way active could be appropriate redundancy model to use for modeling DBMS in this case

Shared-nothing DBMS architecture In a shared-nothing cluster database all nodes are independent, and neither disk nor memory is shared between them. Each server in the cluster has its own independent subset of the data which it can work on without risk for contention (i.e. data is partitioned) and one or more replica of partitioned data is created for high-availability purposes. The clustered processors communicate by passing messages through a network. Database access from clients is automatically routed to the correct server.

Shared-nothing DBMS, total replication use-case Number of replicas are same as number of Database Servers (total replication of all data). This use case could be attractive for smaller amount of data that are seldom written but often read; for example configuration data. In this use case each Database server has full copy of database and that means that availability characteristics are same as for Shared-Disk solution. After failure of some Database Servers remaining once will be able to serve the traffic since they have full copy of database. So this case can be modeled with N-way active redundancy model.

Shared-nothing DBMS, data segmentation use-case Number of replica is larger then one, and smaller then number of nodes. Specifically we will discuss case when there exists two replicas of each data partition. Following figure illustrates such case. P1 P2 P3 P4 Database X DB Server 1 P2’ DB Server 2 P1’ P4’ P3’ DBMS Partition Group

“Black-box” approach Using N-way active Node W Node X “Black-box” approach Apps Apps DB API (Connector) DB API (Connector) Using N-way active Database connector sharing workload and routing database requests to DBMS instance holding requested data DBMS Load Balancing Node 1 Node 2 Node 3 Node 4 SG SU 1 SU 2 SU 3 SU 4 Component Component Component Component Component DBMS DBMS DBMS DBMS proprietary proprietary proprietary RegP RegP RegP RegP AIS AIS AIS AIS SAF MW active active active active SI CSI

“Black-box” approach Failure of Node 4 SI is still assigned Apps Apps Node W Node X “Black-box” approach Apps Apps DB API (Connector) DB API (Connector) Failure of Node 4 SI is still assigned DBMS Load Balancing Node 1 Node 2 Node 3 Node 4 SG SU 1 SU 2 SU 3 SU 4 Component Component Component Component Component DBMS DBMS DBMS DBMS proprietary proprietary proprietary RegP RegP RegP RegP AIS AIS AIS AIS SAF MW active active active active SI CSI

“Black-box” approach Failure of Node 4 Failure of Node 3 Node W Node X “Black-box” approach Apps Apps DB API (Connector) DB API (Connector) Failure of Node 4 Failure of Node 3 SI is still assigned But data partition located n Node 3 and Node 4 is lost N-way active is not appropriate for this DBMS solution “Improvement” to N-way active by specifying minimum number of assigned SI could solve this problem DBMS Load Balancing Node 1 Node 2 Node 3 Node 4 SG SU 1 SU 2 SU 3 SU 4 Component Component Component Component Component DBMS DBMS DBMS DBMS proprietary proprietary proprietary RegP RegP RegP RegP AIS AIS AIS AIS SAF MW active active active active SI CSI

Using SI –SI dependency feature Node W Node X Node 1 Node 2 DBMS SAF MW Component proprietary SU 1 SU 2 SG 1 AIS Node 3 SU 4 RegP Apps DB API (Connector) DBMS Load Balancing Node 4 SU 3 SG 2 SIPG1 CSI SIPG2 SIPG1’ SIPG2’ depends active Using SI –SI dependency feature Exploring SI dependency approach to try to model exact data partitioning Note: This is just suggestion (do not try it at home ;-)) Component providing service when both CSIs are assigned

Using SI –SI dependency feature Node W Node X Node 1 Node 2 DBMS SAF MW Component proprietary SU 1 SU 2 SG 1 AIS Node 3 SU 4 RegP Apps DB API (Connector) DBMS Load Balancing Node 4 SU 3 SG 2 SIPG1 CSI SIPG2 SIPG1’ SIPG2’ depends active Using SI –SI dependency feature Failure of Node 4

Using SI –SI dependency feature Node W Node X Node 1 Node 2 DBMS SAF MW Component proprietary SU 1 SU 2 SG 1 AIS Node 3 SU 4 RegP Apps DB API (Connector) DBMS Load Balancing Node 4 SU 3 SG 2 SIPG1 CSI SIPG2 SIPG1’ SIPG2’ depends active Using SI –SI dependency feature Failure of Node 4 & Node 3 DBMS does not provide

Using SI –SI dependency feature Node W Node X Using SI –SI dependency feature Apps Apps DB API (Connector) DB API (Connector) DBMS Load Balancing Failure of Node 4 & Node 1 DBMS still provides service Node 1 Node 2 Node 3 Node 4 SG 1 SG 2 SU 4 SU 1 SU 2 SU 3 Component Component Component Component Component DBMS DBMS DBMS DBMS proprietary proprietary proprietary RegP RegP RegP RegP AIS AIS AIS AIS SAF MW active active SIPG1 SIPG2 CSI CSI depends depends SIPG1’ SIPG2’ CSI CSI

Summary “Integrating” Legacy products Integration approach: Availability integration Manageability integration Integration approach: “Hook up” to SAF/OpenSAF environment; not requiring rewrite and you still get SAF look and feel There is no One approach how to model solution in AMF; will depend on DBMS architecture and requirements put on DBMS integration

Questions ?

Thank You! For more information: http://devel.opensaf.org