Loading...
Flash Player 9 (or above) is needed to view slideshows. We have detected that you do not have it on your computer.To install it, go here
High Availability Clustering With Alfresco
http://tinyurl.com/689svq <-- View the recorded webinar. Alfresco has been designed from the ground up to support enterprise scale, mission critical applications.
In this Webinar we will cover how Alfresco can be deployed to deliver high-availability applications within your organization.
1282 views | comments | 2 favorites | 72 downloads | 0 embeds (Stats)
More Info
This slideshow is Public
Total Views: 1282 on Slideshare: 1282 from embeds: 0
Slideshow Transcript
- Slide 1: Clustering Alfresco
Michael Farman
Director of Product Management
www.alfresco.com
View the recorded webinar here:
http://tinyurl.com/alfresco-cluster
- Slide 2: Alfresco Server Components
H P/CIFS/NFS/W
TT ebDAV/FTP ● Vertical Scalability
Clients
● Note: 1.5GB JVM Limit on 32 bit
Alfresco Server ● Multiple Points of Failure
● Application Server
Tomcat
● Content and Index Storage
EHCache ● Database
Database
Index &
Content MySQL
Store
View the recorded webinar here:
http://tinyurl.com/alfresco-cluster
- Slide 3: What needs to be clustered?
HTTP/CIFS/NFS/WebDAV/FTP ● EHCache
Clients
● Single Configuration File Rename
Production A
● Index
● Note: Each server must have its
Tomcat own index
● Single Configuration File
EHCache
● Only for recovery
● Content
● 2 Config Files
• Define Content Store Locations
Database
• Declare the Stores
Index &
Content MySQL • Set Replication Type
Store
● Database
● Native Database Clustering
View the recorded webinar here:
http://tinyurl.com/alfresco-cluster
- Slide 4: Content Clustering
Replicating Content Stores
● Used to synchronise content
between content stores
● Inbound ● Outbound
● On Read ● On Write
● ‘Pulls’ content from secondary ● ‘Push’ content from primary
store to primary store store to secondary store
● Synchronous (Transactional)
or Asynchronous
A Primary Primary A
Content Content
Secondary A
Replicating
Content Store
A Content
Store
Replicating
Content Store
View the recorded webinar here:
http://tinyurl.com/alfresco-cluster
- Slide 5: Replicating Content Stores
In Action
Inbound Outbound
4. Request Content ‘A’ A
1. Write A A 8. ‘A’ Delivered
Subsequent Requests
Served from B Primary
Production B Store
Production A
A Primary Primary A
5. Not Found in Primary
Content Content
2. ‘A’ written to Primary 7. Copy stored in Primary
Secondary A
Replicating
Content Store
A Content
Store
Replicating
Content Store
3. ‘A’ copied to secondary 6. Requested from Secondary
(sync/async)
Note: Production A and B Do not know
anything about each other
Allows additional servers to be added without
reconfiguring A or B
- Slide 6: Clustered Server -
Shared DB and Content
HT
T P/CIFS/WebDAV/FTP
Clients √ Horizontal Scalability
Load Balancer X Multiple Points of Failure
● Content Storage*
Production A Production B
● Database
Tomcat Tomcat
EHCache EHCache
● Note: Each server needs
it’s own local index
Index Database Index
MySQL
* Could be on highly available disk
such a SAN storage
Content
Store
View the recorded webinar here:
http://tinyurl.com/alfresco-cluster
- Slide 7: Clustered Server -
Shared Database
HT
T P/CIFS/WebDAV/FTP
Clients √ Horizontal Scalability
Load Balancer X Single Point of Failure
● Database
Production A Production B
● Replicating Content
Tomcat Tomcat
Store
● In and Outbound
EHCache EHCache
Replication
● No need to change
config for existing
Primary
Index* Database Index*
Primary servers when adding
Content
MySQL
Content
additional servers
• Index recovery component not shown
Secondary Us e d to s ync h ronis e inde xe s wh e n
Replicating Content Replicating ne c e s s a ry e .g . Afte r s e rve r re s ta rt
Content Store Store Content Store
- Slide 8: 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
JDBC master failure
• Scripts
• O/S Level Clustering
DB Master DB Slave
MySQL MySQL ● Note: Use DB connection
<- Failover -> pool to avoid Alfresco
server restarts
Database Clustering
View the recorded webinar here:
http://tinyurl.com/alfresco-cluster
- Slide 9: Database Clustering
Master - Master
● Use Native DB
Clustering Capabilities
● Specifics Database (and
O/S) Dependent
● Master – Master
● Can be used for
distributed
deployment
● Network
JDBC JDBC performance may be
a factor
DB Master DB Master
MySQL MySQL
<- Replication ->
Database Clustering
View the recorded webinar here:
http://tinyurl.com/alfresco-cluster
- Slide 10: Configuring a 2 Server Cluster
Quick Start Guide
● Server A
1. Standard Install
2. Configure A’s Primary and the Secondary Store Locations
● custom-repository.properties
3. Enable Index Tracking
● index.tracking.cronExpression in custom-repository.properties
4. Enable Content Replication between these locations
● replicating-content-services-context.xml
● Define the Shared Content Store
● Define in/outbound replication between the stores
5. Enable Index Tracking
1. custom-repository.properties
2. index.tracking.cronExpression=0/2 * * * * ? (default entry is 2099 i.e. never)
6. Enable
● ehcache-custom.xml - Rename the sample
7. Startup
● Server B
1. Copy A’s Install
2. Configure B’s Primary Content Store – Only required if stores path different
● repository.properties
● Note: Secondary Store Location – Same as A
3. Startup with Full Index Recovery – custom-repository.properties
- Slide 11: 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
- Slide 12: 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
- Slide 13: View the recorded webinar:
http://tinyurl.com/alfresco-cluster