High Availability Clustering With Alfresco

40 %
60 %
Information about High Availability Clustering With Alfresco

Published on June 22, 2008

Author: alfresco

Source: slideshare.net

Description

http://tinyurl.com/689svq In this Webinar we will cover how Alfresco can be deployed to deliver high-availability applications within your organization.

Clustering Alfresco Michael Farman Director of Product Management www.alfresco.com View the recorded webinar here: http:// tinyurl .com/alfresco-cluster

Alfresco Server Components Vertical Scalability Note: 1.5GB JVM Limit on 32 bit Multiple Points of Failure Application Server Content and Index Storage Database Index & Content Store HTTP/CIFS/NFS/WebDAV/FTP Clients View the recorded webinar here: http:// tinyurl .com/alfresco-cluster Database MySQL Alfresco Server Tomcat EHCache

Vertical Scalability

Note: 1.5GB JVM Limit on 32 bit

Multiple Points of Failure

Application Server

Content and Index Storage

Database

What needs to be clustered? EHCache Single Configuration File Rename Index Note: Each server must have its own index Single Configuration File Only for recovery Content 2 Config Files Define Content Store Locations Declare the Stores Set Replication Type Database Native Database Clustering Index & Content Store HTTP/CIFS/NFS/WebDAV/FTP Clients View the recorded webinar here: http:// tinyurl .com/alfresco-cluster Database MySQL Production A Tomcat EHCache

EHCache

Single Configuration File Rename

Index

Note: Each server must have its own index

Single Configuration File

Only for recovery

Content

2 Config Files

Define Content Store Locations

Declare the Stores

Set Replication Type

Database

Native Database Clustering

Content Clustering Replicating Content Stores Used to synchronise content between content stores Inbound On Read ‘ Pulls’ content from secondary store to primary store Outbound On Write ‘ Push’ content from primary store to secondary store Synchronous (Transactional) or Asynchronous Secondary Content Store Primary Content Primary Content Replicating Content Store Replicating Content Store A View the recorded webinar here: http:// tinyurl .com/alfresco-cluster A A A

Used to synchronise content between content stores

Inbound

On Read

‘ Pulls’ content from secondary store to primary store

Outbound

On Write

‘ Push’ content from primary store to secondary store

Synchronous (Transactional) or Asynchronous

Replicating Content Stores In Action Secondary Content Store Primary Content Primary Content Production A Production B Replicating Content Store Replicating Content Store Note: Production A and B Do not know anything about each other Allows additional servers to be added without reconfiguring A or B Inbound Outbound A 1. Write A 4. Request Content ‘A’ 5. Not Found in Primary 6. Requested from Secondary A 7. Copy stored in Primary A A 2. ‘A’ written to Primary A 3. ‘A’ copied to secondary (sync/async) 8. ‘A’ Delivered Subsequent Requests Served from B Primary Store A

Clustered Server - Shared DB and Content √ Horizontal Scalability X Multiple Points of Failure Content Storage* Database Note: Each server needs it’s own local index Production A Tomcat EHCache Production B Tomcat EHCache Content Store Index Index * Could be on highly available disk such a SAN storage View the recorded webinar here: http:// tinyurl .com/alfresco-cluster Database MySQL HTTP/CIFS/WebDAV/FTP Clients Load Balancer

√ Horizontal Scalability

X Multiple Points of Failure

Content Storage*

Database

Note: Each server needs it’s own local index

Clustered Server - Shared Database √ Horizontal Scalability X Single Point of Failure Database Replicating Content Store In and Outbound Replication No need to change config for existing servers when adding additional servers Production B Tomcat EHCache Secondary Content Store Index* Index* Primary Content Primary Content Production A Tomcat EHCache Replicating Content Store Replicating Content Store Index recovery component not shown Used to synchronise indexes when necessary e.g. After server restart Database MySQL HTTP/CIFS/WebDAV/FTP Clients Load Balancer

√ Horizontal Scalability

X Single Point of Failure

Database

Replicating Content Store

In and Outbound Replication

No need to change config for existing servers when adding additional servers

Index recovery component not shown

Used to synchronise indexes when necessary e.g. After server restart

Database Clustering Master - Slave Use Native DB Clustering Capabilities Specifics Database (and O/S) Dependent Master – Slave Master acts as primary Slave as backup Bring slave online on master failure Scripts O/S Level Clustering Note: Use DB connection pool to avoid Alfresco server restarts Database Clustering <- Failover -> DB Slave MySQL JDBC View the recorded webinar here: http:// tinyurl .com/alfresco-cluster DB Master MySQL

Use Native DB Clustering Capabilities

Specifics Database (and O/S) Dependent

Master – Slave

Master acts as primary

Slave as backup

Bring slave online on master failure

Scripts

O/S Level Clustering

Note: Use DB connection pool to avoid Alfresco server restarts

Database Clustering Master - Master Use Native DB Clustering Capabilities Specifics Database (and O/S) Dependent Master – Master Can be used for distributed deployment Network performance may be a factor Database Clustering <- Replication -> DB Master MySQL JDBC JDBC View the recorded webinar here: http:// tinyurl .com/alfresco-cluster DB Master MySQL

Use Native DB Clustering Capabilities

Specifics Database (and O/S) Dependent

Master – Master

Can be used for distributed deployment

Network performance may be a factor

Configuring a 2 Server Cluster Quick Start Guide Server A Standard Install Configure A’s Primary and the Secondary Store Locations custom-repository.properties Enable Index Tracking index.tracking.cronExpression in custom-repository.properties Enable Content Replication between these locations replicating-content-services-context.xml Define the Shared Content Store Define in/outbound replication between the stores Enable Index Tracking custom-repository.properties index.tracking.cronExpression=0/2 * * * * ? (default entry is 2099 i.e. never) Enable ehcache-custom.xml - Rename the sample Startup Server B Copy A’s Install Configure B’s Primary Content Store – Only required if stores path different repository.properties Note: Secondary Store Location – Same as A Startup with Full Index Recovery – custom-repository.properties

Server A

Standard Install

Configure A’s Primary and the Secondary Store Locations

custom-repository.properties

Enable Index Tracking

index.tracking.cronExpression in custom-repository.properties

Enable Content Replication between these locations

replicating-content-services-context.xml

Define the Shared Content Store

Define in/outbound replication between the stores

Enable Index Tracking

custom-repository.properties

index.tracking.cronExpression=0/2 * * * * ? (default entry is 2099 i.e. never)

Enable

ehcache-custom.xml - Rename the sample

Startup

Server B

Copy A’s Install

Configure B’s Primary Content Store – Only required if stores path different

repository.properties

Note: Secondary Store Location – Same as A

Startup with Full Index Recovery – custom-repository.properties

Tips & Troubleshooting Starting the server without an index: custom-repository.properties system.bootstrap.config_check.strict=false Always use a fully qualified path to your content and index store locations custom-repository.properties dir.root=c:mystorage Rebuilding indexes You cannot copy indexes from a running server Shutdown and copy or use server generated backup copy System Clocks must be in sync on all servers 1 second by default View the recorded webinar here: http:// tinyurl .com/alfresco-cluster

Starting the server without an index:

custom-repository.properties

system.bootstrap.config_check.strict=false

Always use a fully qualified path to your content and index store locations

custom-repository.properties

dir.root=c:mystorage

Rebuilding indexes

You cannot copy indexes from a running server

Shutdown and copy or use server generated backup copy

System Clocks must be in sync on all servers

1 second by default

More Information Content Community – www.alfresco.com Alfresco High Availability and Clustering Guide http:// wiki .alfresco.com/ wiki / High_Availability_Configuration View the recorded webinar here: http:// tinyurl .com/alfresco-cluster

Content Community – www.alfresco.com

Alfresco High Availability and Clustering Guide

http:// wiki .alfresco.com/ wiki / High_Availability_Configuration

View the recorded webinar: http:// tinyurl .com/alfresco-cluster

Add a comment

Related presentations

Related pages

High Availability On Linux - alfrescowiki

... Enterprise Content Management application in Linux. The deployment supports high availability and is thus considered an Alfresco cluster. Environment.
Read more

Cluster Configuration V2.1.3 to 4.1 - alfrescowiki

High availability components. NB: ... A common situation is where you have a Testing/Validation Alfresco cluster environment and a production Alfresco ...
Read more

Setting up high availability systems | Alfresco Documentation

This section describes how to implement multiple Alfresco instances in a high availability ... track issues with clustering in a high availability ...
Read more

Active-active Alfresco cluster with MySQL Galera and ...

Alfresco is a popular collaboration tool available on the open-source market. It is Java based, and has a content repository, web application framework and ...
Read more

Initiating clustering | Alfresco Documentation

Alfresco Enterprise 4.0.2 » Administering » Setting up high availability ... of initiating clustering and the ... alfresco.cluster.name=cluster1 ...
Read more

Clustering and High-availability | Alfresco & Share Blog

As mentioned in my previous post , the purpose of this series of articles is to provide some recommendations to help you build your own alfresco high ...
Read more

Enterprise Content Management | Alfresco

Enterprise Content Management. ... and management of Alfresco sub-system and clustering with ... Clustering for high availability — Simple UI ...
Read more

Alfresco Clustering | Alfresco Forums

Alfresco Clustering . We are running alfresco on Redhat AS3 (2 ... http://wiki.alfresco.com/wiki/High_Availability_Configuration_V1.4. Hope this helps.
Read more

Alfresco high availability infrastructure in real life ...

This entry was posted on Saturday, December 12th, 2009 at 4:53 pm and is filed under Alfresco DM, Backup and Restore, Clustering and High ...
Read more