Skelta BPM and High Availability Introduction Companies are now adopting cloud for hosting their business process management (BPM) tools. BPM on cloud can help control costs, optimize business processes and improve organizational agility all while achieving a high level of service availability. This whitepaper discusses High Availability (HA) in conjunction with BPM and cloud computing; benefits of highly available BPM solutions; and examines how Skelta BPM enables high availability. 1
Contents High Availability: An Overview 3 BPM and High Availability 3 Benefits of a Highly Available BPM Solution 3 How to Achieve High Availability 4 How Skelta BPM Enables High Availability 4 Software Features That Enable High Availability 5 BPM and high availability using a virtualized or cloud environment 5 Why BPM on Cloud? 6 Conclusion 6 2013 Invensys Systems, Inc. All rights reserved. No part of the material protected by this copyright may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying, recording, broadcasting, or by any information storage and retrieval system, without permission in writing from Invensys Systems, Inc. Invensys, the Invensys logo, ArchestrA, Avantis, Eurotherm, Foxboro, IMServ, InFusion, SimSci-Esscor, Skelta, Triconex, and Wonderware are trademarks of Invensys plc, its subsidiaries or affiliates. All other brands and product names may be the trademarks or service marks of their representative owners. 2
High Availability - An Overview High Availability is a system design approach for analyzing and managing the impact of planned and unplanned outages. It is one of the most important issues for organizations today. High availability solutions provide a robust backup capability so that applications keep running without disruption, even during system outages. An organization that is planning to implement a high availability strategy must perform a thorough analysis of its business processes to clearly identify the processes that require high availability. However, there are certain prerequisites that must be considered before implementing high availability, such as: Restructuring the overall IT architecture so that it can easily adapt to the high availability model Getting rid of legacy systems or outdated software and hardware Streamlining all important business processes Training and skill development Investments in more advanced and robust systems Highly available systems or solutions can reduce service interruptions, freeing IT staff to focus more on performance or capacity management of services. They also provide disaster recovery capability while significantly reducing downtime BPM and High Availability With increasing process complexity and rising compliance costs, the need is more than ever for implementing a secure, highly scalable solution. Organizations are looking for ways to minimize downtime by deploying systems or solutions which are specially designed for failover or redundancy. management. BPM systems must evolve along with the company. As the company grows so do its business processes and data, which ultimately increases the demand for: More computing power (since process automation increases) More data storage capacity Secure backup plan to maintain long-term availability of data Improved and highly available services A robust BPM solution, which is agile as well as responsive to changing business needs, is very much required to deliver reliable and highly available services. Benefits of a Highly Available BPM Solution Following are the reasons why high availability and business process management must go hand in hand: A highly available BPM solution can help minimize the impact of planned outages (when systems or data are temporarily taken offline to perform necessary maintenance tasks) Unplanned outages can be managed more efficiently with high availability solutions In the event of a disaster, all missioncritical data and applications can easily be recovered and resumed to the normal state within minutes High availability solutions can help with backup window reduction, which means you can minimize the time your services remain unavailable during backups Load balancing can be achieved more efficiently in an IT environment, which is based on a high availability approach and has a place for an advanced BPM solution Business Process Management (BPM) applications are at the core of a company, and are designed to support enterprisewide processes, such as finance, project management and human resource 3
How to Achieve High Availability In today s competitive business environment an unscheduled downtime can seriously affect a company s business as well as its profitability. Avoiding unplanned outages or IT systems failures is one of the key concerns for companies across the globe. Therefore, systems and applications must be designed, deployed and maintained in a way that ensures their high availability while reducing the risks associated with unstable platforms. Below are two important scenarios; they differ dependent on the unique needs related to system load and usage patterns. 1. High Availability and Load of Web Servers This scenario requires the Web Farm to be installed on multiple web servers. Databases and services should be installed on different machines. This is more appropriate for situations which demand quick response from web servers under heavy load situations. 2. High Availability and Load on Services or High Availability and Load on Services and Web Servers or High Availability of Services and High Load on Web Servers There are two ways of achieving this: Place application services and databases on different machines. Make sure that the services reside as a cluster on a Web Farm. Maintain a Web Farm with Web Servers and application services cluster on separate machines. The application databases should be installed on a different machine. These two deployment techniques ensure high availability and scalability by enabling the load to be equally distributed among all the machines in the cluster and the Web Farm. Failure of one server does not impact other servers. In case a server goes offline, the service is maintained by other servers. This provides failover capabilities to your IT environment, allowing you to easily add or remove machines from the Web Farm or from the cluster. How Skelta BPM Enables High Availability Skelta BPM offers a range of deployment scenarios that are in line with the deployment methodologies discussed above. Shown below are the two deployment scenarios, which can help organizations achieve a highly available Skelta BPM solution. Scenario 1: Addressing High Availability of Web Servers In this scenario, the Web Server and Skelta Services are installed on the same machine, while Databases are installed on a separate machine. By hosting this set up on multiple computers, a Web Farm with clustered Skelta Services can easily be created. Client Installation Web Server Skelta Server Share Point Client Machine 1 Web Farm Machine 2 Server 2 Server N *Skelta Services (including Skelta Advanced Server Service) Skelta Services (including Skelta Advanced Server Service) Skelta Services (including Skelta Advanced Server Service) Skelta Farm database Skelta Repository database Scenario 2: Addressing High Availability on Services In this scenario, Skelta Services and Skelta Databases are installed on different machines, and the Web Farm is installed on multiple web servers. Web Servers in the Web Farm will have Skelta Central Configuration Site and Skelta Enterprise Console installed. All the processing requests received by a Web Farm are directed to 4
different hosts in the Web Farm, which results in low response time and high application throughput. Web Farm Machine 3 Server 2 Server N Scalability Depending on the number of workflow execution requests, the number of servers running the Skelta Workflow Engine in a cluster can be increased or decreased. Once the configuration is done and the Skelta Workflow Engine is started, it automatically joins the cluster and starts sharing the load immediately. Client Installation Web Server Skelta Server Share Point Client Machine 2 Machine 2 Skelta Services Skelta Farm database Skelta Repository database Skelta Server Failover: This feature of Skelta BPM supports safe shutdown or restart of any server running the Skelta Workflow Engine in the cluster, without affecting the execution of workflows running on that server. In cases of shutdown or restart, the other Skelta Workflow Engine services in the cluster resume all pending tasks of the server that was shutdown. Software Features That Enable High Availability The Skelta BPM software is specifically designed to support failover and clustering capabilities. It comes equipped with the following features: Active-Active load balancing Scalability Failover capabilities Active-Active Load Balancing A true Active-Active load balancing can be achieved only when the load is shared uniformly by all the servers in the cluster. The Skelta Workflow Engine and the Skelta Task Scheduler services on different servers form a cluster to share the load. The workflow client always requests the least used server in the cluster for workflow execution. The Skelta Workflow Engine, during the execution of a workflow, identifies the least used server and then forwards the workflow execution to this server thereby enabling workload distribution across the servers. In addition to the deployment scenarios described above, below are few capabilities that you must consider while planning for a High Availability Solution: Backup plan for server data supporting critical services to ensure recovery from hardware failure and disaster Centralized monitoring of essential processes for availability and performance across platforms and physical and virtual environments More efficient server, networking, and storage to provide maximum availability and cost-effectiveness Consistency and ease deployment of well-defined configurations Real-time visibility into hardware and software assets across the enterprise BPM and high availability using a virtualized or cloud environment Virtualization and cloud computing can enable organizations to rapidly create and deploy applications while saving infrastructure, application, support and deployment costs. For these reasons, it is not surprising that BPM systems are increasingly being virtualized and hosted in cloud environments, rather than being deployed on physical hardware. In fact many BPM solution providers are already into the Cloud, offering BPM software as a service. 5
Why BPM on Cloud? Conclusion Business Process as a Service (BPaaS) is basically cloud-based business process management that delivers business processes through BPM tools or applications hosted on the cloud, in a pay-per-use pricing model. The benefits of using BPM services on cloud are just like any other cloud service. BPaaS eliminates the need for upfront capital investments while reducing operational expenditure. It reduces the efforts required to upgrade operations and systems, and improves organization s capability to scale up its services. An organization that is planning to implement a high availability strategy must perform a thorough analysis of its business processes to clearly identify the processes that require high availability. BPM solutions that provide for high availability ensure mission critical processes are always running. Unplanned outages can therefore be managed efficiently. BPM suites, such as Skelta BPM, ensure that the backup window is significantly reduced and enterprises focus on core business needs rather than challenges in the availability of its critical processes. Some of the key benefits of hosting BPM services or solutions on cloud are as follows: Cloud provides a secure, scalable and robust platform which ensures high availability of services Using BPM on cloud means no upfront capital investment in machinery and software Software upgrade requirements are taken care of by the cloud service provider, which saves time and money both It reduces operational expenditure and increases business agility and consistency of application services Cloud-based BPM services reduce dependency on IT and enable IT resources to focus on key business needs Resources are available on demand, which means you can scale up your business as and when required Increased availability and data security to ensure fast recovery of data 6
About Invensys Skelta BPM Invensys Skelta is the recognized industry leader in.net based BPM technology through its product Skelta BPM which offers 100% embeddable, Enterprise class, BPM solutions to help organizations achieve operational agility. Skelta BPM enables easy to deploy, web based process workflows across the business latitude and puts the control directly in the hands of the users. Skelta BPM, through its web based graphical user interface enables business users, analysts, managers and other stakeholders to collaborate with developers in: Process Definition and Design Process Execution Process Monitoring and Optimization Our BPM approach empowers organizations to achieve Operational resilience through process agility. We have consistently helped our customers achieve their BPM objectives and enhance operational efficiency through: Our strong product line Mature solutions framework (Accounts Payable, Leave Management, Document Management System and solutions for any business area) Evolved Professional Services for a seamless post sale experience Evaluate Skelta BPM Request Demo skelta.com/eval Corporate Address: 10900 Equity Drive, Houston, TX 77041 USA www.skelta.com sales@skelta.com USA Tel: +1 678 306 4110 India Tel: +91 80 4060 2600 Copyright 2013 Invensys Systems, Inc. All rights reserved. All other names and product names may be trademarks or registered trademarks of their respective companies or owners. 8