SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
From Zero to Hero:
Backing Up Alfresco
Toni de la Fuente
Learn. Connect. Collaborate.
$ whoami
Toni de la Fuente / @ToniBlyx / blyx.com
• Atlanta (GA, US) based, Granada (ESP)
raised
• Lead Security Operations and Cloud Security
Architect
• Former Principal Solutions Engineer / Senior
Solutions Engineer (USA, Spain and Portugal)
• ~8 years as Alfrescan + 3 years as partner
• Prowler, Alfresco BART, Alfresco Security
Best Practices Guide, Alfresco Backup and
Disaster Recovery White Paper, AWS Quick
Start for ACS, Nagios plugin, and more.
Learn. Connect. Collaborate.
A bit of
history on
this
2013: Alfresco Backup and Disaster Recovery
White Paper / Alfresco BART
Learn. Connect. Collaborate.
Learn. Connect. Collaborate.
Backup and Disaster Recovery
– Backup, Archiving, Disaster Recovery
– Why? Business impact
– RPO (Recovery Point Objective): time between backups. Point in time to
which data must be restored. Time between last backup and when “event”
occurred.
– RTO (Recovery Time Objective): time taken to restore the application. How
quickly you need that application to be back available after downtime.
– RPO and RTO should be set based on expected loss to the business objective
and cost of achieving that objective
Last Backup Data RestoredEvent
RPO RTO
Time
Learn. Connect. Collaborate.
Backup strategy decision points
• RPO and RTO
• Cold, Warm or Hot backup
• Methods
– Full, incremental, differential
• Window
• Rotation
• Destination
• Architecture
– Single tier
– Multi tier
• Location
– On-prem
• Bare metal
• Virtual
– In cloud
• Content Store storage
• Database engine
• Index
– version
– storage location
– configuration for ACS index
• standard (single index)
• sharding
– ACL v1 / ACL_ID v2
– DB_ID
– DB_ID_RANGE
– DATE
– PROPERTY
– EXPLICIT
Learn. Connect. Collaborate.
What, when and how
• ACS: DB + Content Store + Indexes + (Installation + Config (keys) +
Custom)
• APS: DB + Content + Indexes + (Installation + Config (keys) + Custom)
• Static vs Dynamic
• Order
• Cold vs Warm vs Hot
Learn. Connect. Collaborate.
Cold Backup ACS
1. Stop all services
2. Copy alf_data (content store, indexes)
3. Backup database
Hot Backup ACS
1. Backup Solr indexes (copy solr4Backup or solr6Backup folders)
2. Backup Database
3. Copy content store (once DB backup is completed)
Warm?
Learn. Connect. Collaborate.
Where?
Once we have backed up assets, where should I copy them?
• TAPE
• Cloud
• Hard Drive
• Locations
• Replicated and keep you backup secure!
Learn. Connect. Collaborate.
Alfresco Backup Overview
• ACS Components:
– Content Store ${dir.root}/contentstore (or S3)
– Solr indexes and Solr caching content store
• APS Components
– contentstorage.fs.rootFolder (or S3)
– ElasticSearch data elastic-search.data.path
$user_home$/activiti-elastic-search-data
• ACS Scheduled jobs:
– system.content.orphanCleanup.cronExpression=0 0 4 * * ?
– system.content.orphanProtectDays=14
– system.content.eagerOrphanCleanup=false
– solr.backup.alfresco.cronExpression=0 0 2 * * ?
– solr.backup.archive.cronExpression=0 0 4 * * ?
Learn. Connect. Collaborate.
Alfresco Server
nginx HTTP 80 TCP
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco Repo
(Tomcat)
8070 TCP
Alfresco
Index Solr
(Jetty) 8090
TCP
Browser Incoming traffic
Traffic through HA
Proxy
ACS Single tier: All-in-one
DB
Alfresco Server
Content Store Index storage
Learn. Connect. Collaborate.
nginx HTTP 80 TCP
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco Repo
(Tomcat)
8070 TCP
Alfresco
Index Solr
(Jetty) 8090
TCP
ACS Two tiers: App + DB
DB
Alfresco Server DB Server
Content Store
Index
storage
Learn. Connect. Collaborate.
nginx HTTP 80 TCP
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco Repo
(Tomcat)
8070 TCP
Alfresco
Index Solr
(Jetty) 8090
TCP
ACS Two tiers: App + DB + External Storage
Alfresco Server
Index
storage
DB
DB Server
Content
Store
Storage Server
Learn. Connect. Collaborate.
nginx HTTP 80 TCP
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
Alfresco
Index Solr
(Jetty)
8090 TCP
ACS Two tiers: Cluster App + DB + Shared Storage
DB
Alfresco Server 1
DB Server
nginx HTTP 80 TCP
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
Alfresco
Index Solr
(Jetty)
8090 TCP
Alfresco Server 2
Index
storage
Index
storage
Content
Store
Storage Server
?
Learn. Connect. Collaborate.
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
Alfresco
Index Solr
(Jetty)
8090 TCP
ACS Multi tier: Frontend + Cluster App + DB + Shared
Storage + Others
DB
Alfresco Server 1
DB Server
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
Alfresco
Index Solr
(Jetty)
8090 TCP
Alfresco Server 2
Index
storage
Index
storage
Content
Store
Storage Server
nginx HTTP 80 TCP nginx HTTP 80 TCP
Frontend 1 Frontend 2
Transformation
server or others
Learn. Connect. Collaborate.
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
ACS Multi tier: Frontend + Cluster App + Index + DB +
Shared Storage + Others
DB
Alfresco Server 1
DB Server
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
Alfresco Server 2
Content
Store
Storage Server
nginx HTTP 80 TCP nginx HTTP 80 TCP
Frontend 1 Frontend 2
Alfresco
Repo
(Tracking)
Alfresco
Index Solr
Index storage
Alfresco
Repo
(Tracking)
Alfresco
Index Solr
Index storage
Index Server 2Index Server 1
Transformation
server or others
Learn. Connect. Collaborate.
HA Proxy 9000 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
All Alfresco Digital Business Platform Components
ACS DB
Alfresco CS Server 1
Content
Store APS
Alfresco
Repo
(Tracking)
Alfresco
Index Solr
Index storage Solr
Alfresco Search Services
ACS
Desktop
Sync DB
HA Proxy 9000 TCP
APS
(Tomcat)
8070 TCP
Alfresco PS Server 1
Content
Store ACS
APS DB
Index storage
ElasticSearch
Learn. Connect. Collaborate.
AWS Region
Availability Zone 1 Availability Zone 2
Internet gateway
Virtual private cloud 10.0.0.0/16
NAT
gateway
NAT
gateway
Public
subnet
10.0.128.0/2
0
Public
subnet
10.0.144.0/2
0
Private
subnet
10.0.0.0/19
Private
subnet
10.0.32.0/19
Elastic Load
Balancing
Elastic IPs (public
route)
Elastic IPs (public
route)
Bastion
host
Bastion
Auto Scaling group
Alfresco Content Services
Auto Scaling group
Alfresco Search Services
Auto Scaling group
Alfresco servers Alfresco servers
Index serversIndex servers
Amazon S3
for shared
content
store
RDS DB
instance
RDS DB
instance
standby
ACS on AWS
(Quick Start)
Learn. Connect. Collaborate.
What if we can deploy an ACS infrastructure 100% redundant,
auto scalable, auto healing, across multiple physical
locations with zero-downtime?
• Real use case
• Zero downtime would depend on major upgrades (database
schema changes)
Learn. Connect. Collaborate.
Requirements
• Zero downtime
• AWS Multi AZ replication
• Auto-scaling out-in for Alfresco Repo tier
• Auto-scaling out-up-down for Index tier
• Self healing infrastructure (Chaos Monkey)
• Solr sharding using DB_ID_RANGE:
ID: 1-10M
Shard 1
Trigger
Auto-scaling out
Event
ID: 10M-20M
Shard 2
ID: 20M-30M
Shard 3
ID: NM-NxM
Shard N
Trigger
Autos-scaling out
Event
Trigger
Auto-scaling out
Event
Learn. Connect. Collaborate.
nginx HTTP 80 TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
Alfresco Instance 2
HA
Proxy
9000
TCP
nginx HTTP 80 TCP
HA
Proxy
9000
TCP
Alfresco
Share
(Tomcat)
8081 TCP
Alfresco
Repo
(Tomcat)
8070 TCP
Alfresco Instance 1
AZ1 AZ2
Hazelcast Share
Hazelcast Repo
ACS and Solr
Separated in Cluster
Mode (Sharding Solr
config DB_ID_RANGE)
* THIS IS NOT AWS
Quick Start Alfresco
tracking repo
(Tomcat) 8070
TCP
Tracking 2
Network
ELB
Alfresco
tracking repo
(Tomcat) 8070
TCP
Tracking 1
Pull tracking
from all Solr
instances
App ELB
NOTES:
• Wide green arrows:
Hazelcast repo cluster
traffic
• Search queries from repos
are dynamic due to
Dynamic Sharding (Not
balancer required)
• Green dotted arrows:
Eventual search queries
after scale out
• Blue doted squares: Auto-
scaling groups
• Scaled Index servers: based
on DB_ID_RANGE sharding
method
• DB Aurora MultiAZ, multi
region capable
• Content Store in a shared
S3 bucket. S3 sync multi
region capable.
• EBS volumes backup logic
underneath
• Ephemeral Alfresco repo-
share nodes
• All instances placed here
are in two private subnets
in the same VPC
Shard1
ID: 1-10M
Shard2
ID: 10M-20M
Shard3
ID: 30M-40M
Shard1R
ID: 1-10M
Shard2R
ID: 10M-20M
Shard3R
ID: 30M-40M
EBS Vol
Index
data
EBS Vol
Index
data
EBS Vol
Index
data
EBS Vol
Index
data
EBS Vol
Index
data
EBS Vol
Index
data
Shard2 UP1
ID: 10M-20M
EBS Vol
Index
data
Multi AZ
DB in
RDS
S3
Content
Store
Learn. Connect. Collaborate.
Solr6 and Sor4 backup trick: locations
• Set a valid solr caching contentstore directory in your solr initd script.
– -Dsolr.content.dir=/solr_data/contentstore
• Set a valid solr data directory in solrcore.properties (template!!!)
– data.dir.root=/solf_data/index
Learn. Connect. Collaborate.
Solr6 and Sor4 backup trick: XFS storage
• Disable Alfresco index side backup cronjob
• Stop index tracking
– curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem 
https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=false&coreNa
me=alfresco
– curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem 
https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=false&coreNa
me=archive
• Freeze XFS file system
– xfs_freeze -f /solr_data/
• Make volume snapshot
– xfsdump / xfsrestore
• Unfreeze XFS file system
– xfs_freeze -u /solr_data/
• Start index tracking
– curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem 
https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=true&coreNam
e=alfresco
– curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem 
https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=true&coreNam
e=archive
Learn. Connect. Collaborate.
Tools
• Alfresco BART https://github.com/toniblyx/alfresco-backup-and-recovery-
tool
– Thanks Douglas C. R. Paes for his contributions!
• ContCentric sample script for Linux http://www.contcentric.com/alfresco-
backup/
• Jolokia for AWS: soon!
Learn. Connect. Collaborate.
Restore Policy: End Users
Learn. Connect. Collaborate.
Restore Policy: System Administrator
1. Installation
2. Configuration
3. Customization
4. DB
5. Content Store
6. Indexes
Learn. Connect. Collaborate.
Road to success backing up Alfresco
1. Make all what you can redundant
2. Plan your storage strategy before hand
3. Break your stuff, all the time
4. Use ephemeral instances –> Move towards a CI/CD Pipeline
5. Monitor everything
6. Save logs of everything
7. Break your stuff again (Game Days!)
From Zero to Hero:
Backing Up Alfresco
Thank
you!Special Thanks to:
Alfresco Search Services Team,
Repo Team, JT Smith and Douglas
C. R. Paes
Questions?

Más contenido relacionado

La actualidad más candente

Bulk Export Tool for Alfresco
Bulk Export Tool for AlfrescoBulk Export Tool for Alfresco
Bulk Export Tool for AlfrescoRichard McKnight
 
Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...konok
 
Alfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfrescoUE
 
Replacing Your Shared Drive with Alfresco - Open Source ECM
Replacing Your Shared Drive with Alfresco - Open Source ECMReplacing Your Shared Drive with Alfresco - Open Source ECM
Replacing Your Shared Drive with Alfresco - Open Source ECMAlfresco Software
 
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたTasuku Otani
 
Alfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transitAlfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transitToni de la Fuente
 
Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介MoritakaSoma
 
IBM Spectrum scale object deep dive training
IBM Spectrum scale object  deep dive trainingIBM Spectrum scale object  deep dive training
IBM Spectrum scale object deep dive trainingSmita Raut
 
Alfresco Content Modelling and Policy Behaviours
Alfresco Content Modelling and Policy BehavioursAlfresco Content Modelling and Policy Behaviours
Alfresco Content Modelling and Policy BehavioursJ V
 
Alfresco Transform Service DevCon 2019
Alfresco Transform Service DevCon 2019Alfresco Transform Service DevCon 2019
Alfresco Transform Service DevCon 2019J V
 
Jose portillo dev con presentation 1138
Jose portillo   dev con presentation 1138Jose portillo   dev con presentation 1138
Jose portillo dev con presentation 1138Jose Portillo
 
Scale your Alfresco Solutions
Scale your Alfresco Solutions Scale your Alfresco Solutions
Scale your Alfresco Solutions Alfresco Software
 
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようAlfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようTasuku Otani
 
Alfresco - You probably didn't know that
Alfresco - You probably didn't know thatAlfresco - You probably didn't know that
Alfresco - You probably didn't know thatDavid Ciamberlano
 
Alfresco in few points - Search Tutorial
Alfresco in few points - Search TutorialAlfresco in few points - Search Tutorial
Alfresco in few points - Search TutorialPASCAL Jean Marie
 
Share UIカスタマイズ Widget編
Share UIカスタマイズ Widget編Share UIカスタマイズ Widget編
Share UIカスタマイズ Widget編MoritakaSoma
 

La actualidad más candente (20)

Upgrading to Alfresco 6
Upgrading to Alfresco 6Upgrading to Alfresco 6
Upgrading to Alfresco 6
 
Bulk Export Tool for Alfresco
Bulk Export Tool for AlfrescoBulk Export Tool for Alfresco
Bulk Export Tool for Alfresco
 
Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...Alfresco devcon 2019: How to track user activities without using the audit fu...
Alfresco devcon 2019: How to track user activities without using the audit fu...
 
Alfresco tuning part1
Alfresco tuning part1Alfresco tuning part1
Alfresco tuning part1
 
Alfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin IdeasAlfresco Share - Recycle Bin Ideas
Alfresco Share - Recycle Bin Ideas
 
Alfresco Certificates
Alfresco Certificates Alfresco Certificates
Alfresco Certificates
 
Replacing Your Shared Drive with Alfresco - Open Source ECM
Replacing Your Shared Drive with Alfresco - Open Source ECMReplacing Your Shared Drive with Alfresco - Open Source ECM
Replacing Your Shared Drive with Alfresco - Open Source ECM
 
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみたAlfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
Alfresco勉強会#33 alfresco 5.1でコンテンツ自動削除を実装してみた
 
Alfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transitAlfresco DevCon 2019: Encryption at-rest and in-transit
Alfresco DevCon 2019: Encryption at-rest and in-transit
 
Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介Alfresco Bulk Import toolのご紹介
Alfresco Bulk Import toolのご紹介
 
IBM Spectrum scale object deep dive training
IBM Spectrum scale object  deep dive trainingIBM Spectrum scale object  deep dive training
IBM Spectrum scale object deep dive training
 
Alfresco Content Modelling and Policy Behaviours
Alfresco Content Modelling and Policy BehavioursAlfresco Content Modelling and Policy Behaviours
Alfresco Content Modelling and Policy Behaviours
 
Alfresco Transform Service DevCon 2019
Alfresco Transform Service DevCon 2019Alfresco Transform Service DevCon 2019
Alfresco Transform Service DevCon 2019
 
Jose portillo dev con presentation 1138
Jose portillo   dev con presentation 1138Jose portillo   dev con presentation 1138
Jose portillo dev con presentation 1138
 
Scale your Alfresco Solutions
Scale your Alfresco Solutions Scale your Alfresco Solutions
Scale your Alfresco Solutions
 
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみようAlfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
Alfresco勉強会#36 alfresco 5でカスタムREST APIを作ってみよう
 
Webscripts
WebscriptsWebscripts
Webscripts
 
Alfresco - You probably didn't know that
Alfresco - You probably didn't know thatAlfresco - You probably didn't know that
Alfresco - You probably didn't know that
 
Alfresco in few points - Search Tutorial
Alfresco in few points - Search TutorialAlfresco in few points - Search Tutorial
Alfresco in few points - Search Tutorial
 
Share UIカスタマイズ Widget編
Share UIカスタマイズ Widget編Share UIカスタマイズ Widget編
Share UIカスタマイズ Widget編
 

Similar a From zero to hero Backing up alfresco

PUT is the new rename()
PUT is the new rename()PUT is the new rename()
PUT is the new rename()Steve Loughran
 
gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”Ruggero Citton
 
Terraform - Taming Modern Clouds
Terraform  - Taming Modern CloudsTerraform  - Taming Modern Clouds
Terraform - Taming Modern CloudsNic Jackson
 
(BDT303) Running Spark and Presto on the Netflix Big Data Platform
(BDT303) Running Spark and Presto on the Netflix Big Data Platform(BDT303) Running Spark and Presto on the Netflix Big Data Platform
(BDT303) Running Spark and Presto on the Netflix Big Data PlatformAmazon Web Services
 
Running Presto and Spark on the Netflix Big Data Platform
Running Presto and Spark on the Netflix Big Data PlatformRunning Presto and Spark on the Netflix Big Data Platform
Running Presto and Spark on the Netflix Big Data PlatformEva Tse
 
Hammock, a Good Place to Rest
Hammock, a Good Place to RestHammock, a Good Place to Rest
Hammock, a Good Place to RestStratoscale
 
040419 san forum
040419 san forum040419 san forum
040419 san forumThiru Raja
 
Data Replication Options in AWS (ARC302) | AWS re:Invent 2013
Data Replication Options in AWS (ARC302) | AWS re:Invent 2013Data Replication Options in AWS (ARC302) | AWS re:Invent 2013
Data Replication Options in AWS (ARC302) | AWS re:Invent 2013Amazon Web Services
 
Emerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big DataEmerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big DataRahul Jain
 
Terraform Q&A - HashiCorp User Group Oslo
Terraform Q&A - HashiCorp User Group OsloTerraform Q&A - HashiCorp User Group Oslo
Terraform Q&A - HashiCorp User Group OsloAnton Babenko
 
Building infrastructure as code using Terraform - DevOps Krakow
Building infrastructure as code using Terraform - DevOps KrakowBuilding infrastructure as code using Terraform - DevOps Krakow
Building infrastructure as code using Terraform - DevOps KrakowAnton Babenko
 
Put is the new rename: San Jose Summit Edition
Put is the new rename: San Jose Summit EditionPut is the new rename: San Jose Summit Edition
Put is the new rename: San Jose Summit EditionSteve Loughran
 
(Re)Indexing Large Repositories in Alfresco
(Re)Indexing Large Repositories in Alfresco(Re)Indexing Large Repositories in Alfresco
(Re)Indexing Large Repositories in AlfrescoAngel Borroy López
 
S3Guard: What's in your consistency model?
S3Guard: What's in your consistency model?S3Guard: What's in your consistency model?
S3Guard: What's in your consistency model?Hortonworks
 
Alfresco Day Roma 2015: Platform Update
Alfresco Day Roma 2015: Platform UpdateAlfresco Day Roma 2015: Platform Update
Alfresco Day Roma 2015: Platform UpdateAlfresco Software
 
Clug 2011 March web server optimisation
Clug 2011 March  web server optimisationClug 2011 March  web server optimisation
Clug 2011 March web server optimisationgrooverdan
 
OSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica SarbuOSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica SarbuNETWAYS
 
OSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica SarbuOSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica SarbuNETWAYS
 
User-space Network Processing
User-space Network ProcessingUser-space Network Processing
User-space Network ProcessingRyousei Takano
 

Similar a From zero to hero Backing up alfresco (20)

PUT is the new rename()
PUT is the new rename()PUT is the new rename()
PUT is the new rename()
 
gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”gDBClone - Database Clone “onecommand Automation Tool”
gDBClone - Database Clone “onecommand Automation Tool”
 
Terraform - Taming Modern Clouds
Terraform  - Taming Modern CloudsTerraform  - Taming Modern Clouds
Terraform - Taming Modern Clouds
 
(BDT303) Running Spark and Presto on the Netflix Big Data Platform
(BDT303) Running Spark and Presto on the Netflix Big Data Platform(BDT303) Running Spark and Presto on the Netflix Big Data Platform
(BDT303) Running Spark and Presto on the Netflix Big Data Platform
 
Running Presto and Spark on the Netflix Big Data Platform
Running Presto and Spark on the Netflix Big Data PlatformRunning Presto and Spark on the Netflix Big Data Platform
Running Presto and Spark on the Netflix Big Data Platform
 
Hammock, a Good Place to Rest
Hammock, a Good Place to RestHammock, a Good Place to Rest
Hammock, a Good Place to Rest
 
040419 san forum
040419 san forum040419 san forum
040419 san forum
 
Data Replication Options in AWS (ARC302) | AWS re:Invent 2013
Data Replication Options in AWS (ARC302) | AWS re:Invent 2013Data Replication Options in AWS (ARC302) | AWS re:Invent 2013
Data Replication Options in AWS (ARC302) | AWS re:Invent 2013
 
Emerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big DataEmerging technologies /frameworks in Big Data
Emerging technologies /frameworks in Big Data
 
Terraform Q&A - HashiCorp User Group Oslo
Terraform Q&A - HashiCorp User Group OsloTerraform Q&A - HashiCorp User Group Oslo
Terraform Q&A - HashiCorp User Group Oslo
 
Building infrastructure as code using Terraform - DevOps Krakow
Building infrastructure as code using Terraform - DevOps KrakowBuilding infrastructure as code using Terraform - DevOps Krakow
Building infrastructure as code using Terraform - DevOps Krakow
 
Put is the new rename: San Jose Summit Edition
Put is the new rename: San Jose Summit EditionPut is the new rename: San Jose Summit Edition
Put is the new rename: San Jose Summit Edition
 
(Re)Indexing Large Repositories in Alfresco
(Re)Indexing Large Repositories in Alfresco(Re)Indexing Large Repositories in Alfresco
(Re)Indexing Large Repositories in Alfresco
 
S3Guard: What's in your consistency model?
S3Guard: What's in your consistency model?S3Guard: What's in your consistency model?
S3Guard: What's in your consistency model?
 
Data Science
Data ScienceData Science
Data Science
 
Alfresco Day Roma 2015: Platform Update
Alfresco Day Roma 2015: Platform UpdateAlfresco Day Roma 2015: Platform Update
Alfresco Day Roma 2015: Platform Update
 
Clug 2011 March web server optimisation
Clug 2011 March  web server optimisationClug 2011 March  web server optimisation
Clug 2011 March web server optimisation
 
OSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica SarbuOSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 | Monitor your Infrastructure with Elastic Beats by Monica Sarbu
 
OSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica SarbuOSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica Sarbu
OSMC 2016 - Monitor your infrastructure with Elastic Beats by Monica Sarbu
 
User-space Network Processing
User-space Network ProcessingUser-space Network Processing
User-space Network Processing
 

Más de Toni de la Fuente

SANS Cloud Security Summit 2018: Forensics as a Service
SANS Cloud Security Summit 2018: Forensics as a ServiceSANS Cloud Security Summit 2018: Forensics as a Service
SANS Cloud Security Summit 2018: Forensics as a ServiceToni de la Fuente
 
OWASP Atlanta 2018: Forensics as a Service
OWASP Atlanta 2018: Forensics as a ServiceOWASP Atlanta 2018: Forensics as a Service
OWASP Atlanta 2018: Forensics as a ServiceToni de la Fuente
 
Alfresco DevCon 2018: From Zero to Hero Backing up Alfresco
Alfresco DevCon 2018: From Zero to Hero Backing up AlfrescoAlfresco DevCon 2018: From Zero to Hero Backing up Alfresco
Alfresco DevCon 2018: From Zero to Hero Backing up AlfrescoToni de la Fuente
 
Alabama CyberNow 2018: Cloud Hardening and Digital Forensics Readiness
Alabama CyberNow 2018: Cloud Hardening and Digital Forensics ReadinessAlabama CyberNow 2018: Cloud Hardening and Digital Forensics Readiness
Alabama CyberNow 2018: Cloud Hardening and Digital Forensics ReadinessToni de la Fuente
 
Prowler: BlackHat Europe Arsenal 2018
Prowler: BlackHat Europe Arsenal 2018Prowler: BlackHat Europe Arsenal 2018
Prowler: BlackHat Europe Arsenal 2018Toni de la Fuente
 
TTL Alfresco Product Security and Best Practices 2017
TTL Alfresco Product Security and Best Practices 2017TTL Alfresco Product Security and Best Practices 2017
TTL Alfresco Product Security and Best Practices 2017Toni de la Fuente
 
Automate or die! Rootedcon 2017
Automate or die! Rootedcon 2017Automate or die! Rootedcon 2017
Automate or die! Rootedcon 2017Toni de la Fuente
 
Seguridad en Internet para todos los públicos
Seguridad en Internet para todos los públicosSeguridad en Internet para todos los públicos
Seguridad en Internet para todos los públicosToni de la Fuente
 
Alfresco security best practices CHECK LIST ONLY
Alfresco security best practices CHECK LIST ONLYAlfresco security best practices CHECK LIST ONLY
Alfresco security best practices CHECK LIST ONLYToni de la Fuente
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Toni de la Fuente
 
Alfresco One (Enterprise) vs Alfresco Community 2014
Alfresco One (Enterprise) vs Alfresco Community 2014Alfresco One (Enterprise) vs Alfresco Community 2014
Alfresco One (Enterprise) vs Alfresco Community 2014Toni de la Fuente
 
Alfresco Backup and Recovery Tool: a real world backup solution for Alfresco
Alfresco Backup and Recovery Tool: a real world backup solution for AlfrescoAlfresco Backup and Recovery Tool: a real world backup solution for Alfresco
Alfresco Backup and Recovery Tool: a real world backup solution for AlfrescoToni de la Fuente
 
Comparativa entre Alfresco Enterprise vs Community
Comparativa entre Alfresco Enterprise vs Community Comparativa entre Alfresco Enterprise vs Community
Comparativa entre Alfresco Enterprise vs Community Toni de la Fuente
 
Alfresco Security Best Practices 2012
Alfresco Security Best Practices 2012Alfresco Security Best Practices 2012
Alfresco Security Best Practices 2012Toni de la Fuente
 
Monitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/IcingaMonitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/IcingaToni de la Fuente
 
Nuevo Alfresco Records Management 2.0
Nuevo Alfresco Records Management 2.0Nuevo Alfresco Records Management 2.0
Nuevo Alfresco Records Management 2.0Toni de la Fuente
 
Consejos de seguridad con Alfresco
Consejos de seguridad con AlfrescoConsejos de seguridad con Alfresco
Consejos de seguridad con AlfrescoToni de la Fuente
 
Alfresco y SOLR, presentación en español
Alfresco y SOLR, presentación en españolAlfresco y SOLR, presentación en español
Alfresco y SOLR, presentación en españolToni de la Fuente
 
Alfresco Day Madrid - Jeff Potts - Community
Alfresco Day Madrid - Jeff Potts - CommunityAlfresco Day Madrid - Jeff Potts - Community
Alfresco Day Madrid - Jeff Potts - CommunityToni de la Fuente
 

Más de Toni de la Fuente (20)

SANS Cloud Security Summit 2018: Forensics as a Service
SANS Cloud Security Summit 2018: Forensics as a ServiceSANS Cloud Security Summit 2018: Forensics as a Service
SANS Cloud Security Summit 2018: Forensics as a Service
 
OWASP Atlanta 2018: Forensics as a Service
OWASP Atlanta 2018: Forensics as a ServiceOWASP Atlanta 2018: Forensics as a Service
OWASP Atlanta 2018: Forensics as a Service
 
Alfresco DevCon 2018: From Zero to Hero Backing up Alfresco
Alfresco DevCon 2018: From Zero to Hero Backing up AlfrescoAlfresco DevCon 2018: From Zero to Hero Backing up Alfresco
Alfresco DevCon 2018: From Zero to Hero Backing up Alfresco
 
Alabama CyberNow 2018: Cloud Hardening and Digital Forensics Readiness
Alabama CyberNow 2018: Cloud Hardening and Digital Forensics ReadinessAlabama CyberNow 2018: Cloud Hardening and Digital Forensics Readiness
Alabama CyberNow 2018: Cloud Hardening and Digital Forensics Readiness
 
Prowler: BlackHat Europe Arsenal 2018
Prowler: BlackHat Europe Arsenal 2018Prowler: BlackHat Europe Arsenal 2018
Prowler: BlackHat Europe Arsenal 2018
 
TTL Alfresco Product Security and Best Practices 2017
TTL Alfresco Product Security and Best Practices 2017TTL Alfresco Product Security and Best Practices 2017
TTL Alfresco Product Security and Best Practices 2017
 
Automate or die! Rootedcon 2017
Automate or die! Rootedcon 2017Automate or die! Rootedcon 2017
Automate or die! Rootedcon 2017
 
Seguridad en Internet para todos los públicos
Seguridad en Internet para todos los públicosSeguridad en Internet para todos los públicos
Seguridad en Internet para todos los públicos
 
Storage and Alfresco
Storage and AlfrescoStorage and Alfresco
Storage and Alfresco
 
Alfresco security best practices CHECK LIST ONLY
Alfresco security best practices CHECK LIST ONLYAlfresco security best practices CHECK LIST ONLY
Alfresco security best practices CHECK LIST ONLY
 
Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014Alfresco Security Best Practices 2014
Alfresco Security Best Practices 2014
 
Alfresco One (Enterprise) vs Alfresco Community 2014
Alfresco One (Enterprise) vs Alfresco Community 2014Alfresco One (Enterprise) vs Alfresco Community 2014
Alfresco One (Enterprise) vs Alfresco Community 2014
 
Alfresco Backup and Recovery Tool: a real world backup solution for Alfresco
Alfresco Backup and Recovery Tool: a real world backup solution for AlfrescoAlfresco Backup and Recovery Tool: a real world backup solution for Alfresco
Alfresco Backup and Recovery Tool: a real world backup solution for Alfresco
 
Comparativa entre Alfresco Enterprise vs Community
Comparativa entre Alfresco Enterprise vs Community Comparativa entre Alfresco Enterprise vs Community
Comparativa entre Alfresco Enterprise vs Community
 
Alfresco Security Best Practices 2012
Alfresco Security Best Practices 2012Alfresco Security Best Practices 2012
Alfresco Security Best Practices 2012
 
Monitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/IcingaMonitoring Alfresco with Nagios/Icinga
Monitoring Alfresco with Nagios/Icinga
 
Nuevo Alfresco Records Management 2.0
Nuevo Alfresco Records Management 2.0Nuevo Alfresco Records Management 2.0
Nuevo Alfresco Records Management 2.0
 
Consejos de seguridad con Alfresco
Consejos de seguridad con AlfrescoConsejos de seguridad con Alfresco
Consejos de seguridad con Alfresco
 
Alfresco y SOLR, presentación en español
Alfresco y SOLR, presentación en españolAlfresco y SOLR, presentación en español
Alfresco y SOLR, presentación en español
 
Alfresco Day Madrid - Jeff Potts - Community
Alfresco Day Madrid - Jeff Potts - CommunityAlfresco Day Madrid - Jeff Potts - Community
Alfresco Day Madrid - Jeff Potts - Community
 

Último

Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-pyJamie (Taka) Wang
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 

Último (20)

Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-py
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 

From zero to hero Backing up alfresco

  • 1. From Zero to Hero: Backing Up Alfresco Toni de la Fuente
  • 2. Learn. Connect. Collaborate. $ whoami Toni de la Fuente / @ToniBlyx / blyx.com • Atlanta (GA, US) based, Granada (ESP) raised • Lead Security Operations and Cloud Security Architect • Former Principal Solutions Engineer / Senior Solutions Engineer (USA, Spain and Portugal) • ~8 years as Alfrescan + 3 years as partner • Prowler, Alfresco BART, Alfresco Security Best Practices Guide, Alfresco Backup and Disaster Recovery White Paper, AWS Quick Start for ACS, Nagios plugin, and more.
  • 3. Learn. Connect. Collaborate. A bit of history on this 2013: Alfresco Backup and Disaster Recovery White Paper / Alfresco BART
  • 5. Learn. Connect. Collaborate. Backup and Disaster Recovery – Backup, Archiving, Disaster Recovery – Why? Business impact – RPO (Recovery Point Objective): time between backups. Point in time to which data must be restored. Time between last backup and when “event” occurred. – RTO (Recovery Time Objective): time taken to restore the application. How quickly you need that application to be back available after downtime. – RPO and RTO should be set based on expected loss to the business objective and cost of achieving that objective Last Backup Data RestoredEvent RPO RTO Time
  • 6. Learn. Connect. Collaborate. Backup strategy decision points • RPO and RTO • Cold, Warm or Hot backup • Methods – Full, incremental, differential • Window • Rotation • Destination • Architecture – Single tier – Multi tier • Location – On-prem • Bare metal • Virtual – In cloud • Content Store storage • Database engine • Index – version – storage location – configuration for ACS index • standard (single index) • sharding – ACL v1 / ACL_ID v2 – DB_ID – DB_ID_RANGE – DATE – PROPERTY – EXPLICIT
  • 7. Learn. Connect. Collaborate. What, when and how • ACS: DB + Content Store + Indexes + (Installation + Config (keys) + Custom) • APS: DB + Content + Indexes + (Installation + Config (keys) + Custom) • Static vs Dynamic • Order • Cold vs Warm vs Hot
  • 8. Learn. Connect. Collaborate. Cold Backup ACS 1. Stop all services 2. Copy alf_data (content store, indexes) 3. Backup database Hot Backup ACS 1. Backup Solr indexes (copy solr4Backup or solr6Backup folders) 2. Backup Database 3. Copy content store (once DB backup is completed) Warm?
  • 9. Learn. Connect. Collaborate. Where? Once we have backed up assets, where should I copy them? • TAPE • Cloud • Hard Drive • Locations • Replicated and keep you backup secure!
  • 10. Learn. Connect. Collaborate. Alfresco Backup Overview • ACS Components: – Content Store ${dir.root}/contentstore (or S3) – Solr indexes and Solr caching content store • APS Components – contentstorage.fs.rootFolder (or S3) – ElasticSearch data elastic-search.data.path $user_home$/activiti-elastic-search-data • ACS Scheduled jobs: – system.content.orphanCleanup.cronExpression=0 0 4 * * ? – system.content.orphanProtectDays=14 – system.content.eagerOrphanCleanup=false – solr.backup.alfresco.cronExpression=0 0 2 * * ? – solr.backup.archive.cronExpression=0 0 4 * * ?
  • 11. Learn. Connect. Collaborate. Alfresco Server nginx HTTP 80 TCP HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Index Solr (Jetty) 8090 TCP Browser Incoming traffic Traffic through HA Proxy ACS Single tier: All-in-one DB Alfresco Server Content Store Index storage
  • 12. Learn. Connect. Collaborate. nginx HTTP 80 TCP HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Index Solr (Jetty) 8090 TCP ACS Two tiers: App + DB DB Alfresco Server DB Server Content Store Index storage
  • 13. Learn. Connect. Collaborate. nginx HTTP 80 TCP HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Index Solr (Jetty) 8090 TCP ACS Two tiers: App + DB + External Storage Alfresco Server Index storage DB DB Server Content Store Storage Server
  • 14. Learn. Connect. Collaborate. nginx HTTP 80 TCP HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Index Solr (Jetty) 8090 TCP ACS Two tiers: Cluster App + DB + Shared Storage DB Alfresco Server 1 DB Server nginx HTTP 80 TCP HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Index Solr (Jetty) 8090 TCP Alfresco Server 2 Index storage Index storage Content Store Storage Server ?
  • 15. Learn. Connect. Collaborate. HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Index Solr (Jetty) 8090 TCP ACS Multi tier: Frontend + Cluster App + DB + Shared Storage + Others DB Alfresco Server 1 DB Server HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Index Solr (Jetty) 8090 TCP Alfresco Server 2 Index storage Index storage Content Store Storage Server nginx HTTP 80 TCP nginx HTTP 80 TCP Frontend 1 Frontend 2 Transformation server or others
  • 16. Learn. Connect. Collaborate. HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP ACS Multi tier: Frontend + Cluster App + Index + DB + Shared Storage + Others DB Alfresco Server 1 DB Server HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Server 2 Content Store Storage Server nginx HTTP 80 TCP nginx HTTP 80 TCP Frontend 1 Frontend 2 Alfresco Repo (Tracking) Alfresco Index Solr Index storage Alfresco Repo (Tracking) Alfresco Index Solr Index storage Index Server 2Index Server 1 Transformation server or others
  • 17. Learn. Connect. Collaborate. HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP All Alfresco Digital Business Platform Components ACS DB Alfresco CS Server 1 Content Store APS Alfresco Repo (Tracking) Alfresco Index Solr Index storage Solr Alfresco Search Services ACS Desktop Sync DB HA Proxy 9000 TCP APS (Tomcat) 8070 TCP Alfresco PS Server 1 Content Store ACS APS DB Index storage ElasticSearch
  • 18. Learn. Connect. Collaborate. AWS Region Availability Zone 1 Availability Zone 2 Internet gateway Virtual private cloud 10.0.0.0/16 NAT gateway NAT gateway Public subnet 10.0.128.0/2 0 Public subnet 10.0.144.0/2 0 Private subnet 10.0.0.0/19 Private subnet 10.0.32.0/19 Elastic Load Balancing Elastic IPs (public route) Elastic IPs (public route) Bastion host Bastion Auto Scaling group Alfresco Content Services Auto Scaling group Alfresco Search Services Auto Scaling group Alfresco servers Alfresco servers Index serversIndex servers Amazon S3 for shared content store RDS DB instance RDS DB instance standby ACS on AWS (Quick Start)
  • 19. Learn. Connect. Collaborate. What if we can deploy an ACS infrastructure 100% redundant, auto scalable, auto healing, across multiple physical locations with zero-downtime? • Real use case • Zero downtime would depend on major upgrades (database schema changes)
  • 20. Learn. Connect. Collaborate. Requirements • Zero downtime • AWS Multi AZ replication • Auto-scaling out-in for Alfresco Repo tier • Auto-scaling out-up-down for Index tier • Self healing infrastructure (Chaos Monkey) • Solr sharding using DB_ID_RANGE: ID: 1-10M Shard 1 Trigger Auto-scaling out Event ID: 10M-20M Shard 2 ID: 20M-30M Shard 3 ID: NM-NxM Shard N Trigger Autos-scaling out Event Trigger Auto-scaling out Event
  • 21. Learn. Connect. Collaborate. nginx HTTP 80 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Instance 2 HA Proxy 9000 TCP nginx HTTP 80 TCP HA Proxy 9000 TCP Alfresco Share (Tomcat) 8081 TCP Alfresco Repo (Tomcat) 8070 TCP Alfresco Instance 1 AZ1 AZ2 Hazelcast Share Hazelcast Repo ACS and Solr Separated in Cluster Mode (Sharding Solr config DB_ID_RANGE) * THIS IS NOT AWS Quick Start Alfresco tracking repo (Tomcat) 8070 TCP Tracking 2 Network ELB Alfresco tracking repo (Tomcat) 8070 TCP Tracking 1 Pull tracking from all Solr instances App ELB NOTES: • Wide green arrows: Hazelcast repo cluster traffic • Search queries from repos are dynamic due to Dynamic Sharding (Not balancer required) • Green dotted arrows: Eventual search queries after scale out • Blue doted squares: Auto- scaling groups • Scaled Index servers: based on DB_ID_RANGE sharding method • DB Aurora MultiAZ, multi region capable • Content Store in a shared S3 bucket. S3 sync multi region capable. • EBS volumes backup logic underneath • Ephemeral Alfresco repo- share nodes • All instances placed here are in two private subnets in the same VPC Shard1 ID: 1-10M Shard2 ID: 10M-20M Shard3 ID: 30M-40M Shard1R ID: 1-10M Shard2R ID: 10M-20M Shard3R ID: 30M-40M EBS Vol Index data EBS Vol Index data EBS Vol Index data EBS Vol Index data EBS Vol Index data EBS Vol Index data Shard2 UP1 ID: 10M-20M EBS Vol Index data Multi AZ DB in RDS S3 Content Store
  • 22. Learn. Connect. Collaborate. Solr6 and Sor4 backup trick: locations • Set a valid solr caching contentstore directory in your solr initd script. – -Dsolr.content.dir=/solr_data/contentstore • Set a valid solr data directory in solrcore.properties (template!!!) – data.dir.root=/solf_data/index
  • 23. Learn. Connect. Collaborate. Solr6 and Sor4 backup trick: XFS storage • Disable Alfresco index side backup cronjob • Stop index tracking – curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=false&coreNa me=alfresco – curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=false&coreNa me=archive • Freeze XFS file system – xfs_freeze -f /solr_data/ • Make volume snapshot – xfsdump / xfsrestore • Unfreeze XFS file system – xfs_freeze -u /solr_data/ • Start index tracking – curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=true&coreNam e=alfresco – curl -s -k --cert-type pem --cert ~/browser.crt.pem --key ~/browser.key.pem https://localhost:8983/solr/admin/cores?action=updateCore&property.enable.alfresco.tracking=true&coreNam e=archive
  • 24. Learn. Connect. Collaborate. Tools • Alfresco BART https://github.com/toniblyx/alfresco-backup-and-recovery- tool – Thanks Douglas C. R. Paes for his contributions! • ContCentric sample script for Linux http://www.contcentric.com/alfresco- backup/ • Jolokia for AWS: soon!
  • 26. Learn. Connect. Collaborate. Restore Policy: System Administrator 1. Installation 2. Configuration 3. Customization 4. DB 5. Content Store 6. Indexes
  • 27. Learn. Connect. Collaborate. Road to success backing up Alfresco 1. Make all what you can redundant 2. Plan your storage strategy before hand 3. Break your stuff, all the time 4. Use ephemeral instances –> Move towards a CI/CD Pipeline 5. Monitor everything 6. Save logs of everything 7. Break your stuff again (Game Days!)
  • 28. From Zero to Hero: Backing Up Alfresco Thank you!Special Thanks to: Alfresco Search Services Team, Repo Team, JT Smith and Douglas C. R. Paes

Notas del editor

  1. Alfresco BART Lucene and Solr1.4
  2. Multiple types of hazards can occur while a system is operating, hardware or software failures, data corruption, natural disasters, human errors, performance issues, etc. Also planned or unplanned interruptions What is? Backup, Archiving, DR Backup: copy of data to restore in case of lose Archiving: moving data to separate storage, no longer used or required DR: process, policies and procedures for recovery or service continuation after a disaster Business continuity. Financial impact to the business when the system is unavailable, performance, corruption A Backup and DR strategy must be design based on these metrics: The time between backups is called Recovery Point Objective (RPO) Time taken to restore the application and make it available is called Recovery Time Objective (RTO) Who need to make that decision?
  3. There are different backup levels: Full backup: when we are doing a complete copy of all of the files. This backup tends to be slow and is typically performed as first backup or at a regular interval of time. Incremental: when only the changes from the last backup are backed up. Faster backup than cumulative; could be slower to restore than cumulative because there could be more files to restore. Cumulative or Differential: only copy changes after the most recent full backup. This method may be slower than incremental but is usually faster to restore. Types of backup techniques depending on the system availability: Cold: a complete backup of all components of Alfresco with the entire system shut down. Warm: backup performed while some services of Alfresco are unavailable, i.e.: set the repository to read only mode. Hot: backup performed while the system is running and potentially being used. Other concepts to take into account: Backup window: time to do it. With Alfresco it depends on the type of backup chosen. Backup rotation: time period while doing incremental backups between periodic and full backups: daily, weekly or monthly are most common. Backup destination: Network device (NAS, Amazon S3, SCP, FTP, etc.), SAN, disk to tape, disk to disk. Each backup method can be oriented for different solutions and depending on the amount of data to backup. For disaster recovery consider using a remote backup method.
  4. Static Data Operating System (not covered by this procedure). Application Server Install and configuration files. Database installation files (if it is in same server, not recommendable). Alfresco extensions (customizations). 3rd Party applications used by Alfresco (Open Office, ImageMagick, SWFTools). Dynamic Data Alfresco Indexes (Solr or Lucene) Database (RDBMS data files, table spaces, archive logs and control files). Alfresco Content Stores – the default and any other additional store used by Content Store Selector. Content Store Deleted is not required. Indexes should be backed up first. If new rows are added in the database after the Lucene/SOLR backup is done, it’s still possible to regenerate the missing Lucene/SOLR indexes from the SQL transaction data. Database backup should be performed next. If you have a SQL node pointing to a missing file, that node will be an orphan. If you have a file without a SQL node data, that file will not be included in the backup. DB tools for backup: talk about
  5. Static Data Operating System (not covered by this procedure). Application Server Install and configuration files. Database installation files (if it is in same server, not recommendable). Alfresco extensions (customizations). 3rd Party applications used by Alfresco (Open Office, ImageMagick, SWFTools). Dynamic Data Alfresco Indexes (Solr or Lucene) Database (RDBMS data files, table spaces, archive logs and control files). Alfresco Content Stores – the default and any other additional store used by Content Store Selector. Content Store Deleted is not required. Indexes should be backed up first. If new rows are added in the database after the Lucene/SOLR backup is done, it’s still possible to regenerate the missing Lucene/SOLR indexes from the SQL transaction data. Database backup should be performed next. If you have a SQL node pointing to a missing file, that node will be an orphan. If you have a file without a SQL node data, that file will not be included in the backup. DB tools for backup: talk about
  6. Static Data Operating System (not covered by this procedure). Application Server Install and configuration files. Database installation files (if it is in same server, not recommendable). Alfresco extensions (customizations). 3rd Party applications used by Alfresco (Open Office, ImageMagick, SWFTools). Dynamic Data Alfresco Indexes (Solr or Lucene) Database (RDBMS data files, table spaces, archive logs and control files). Alfresco Content Stores – the default and any other additional store used by Content Store Selector. Content Store Deleted is not required. Indexes should be backed up first. If new rows are added in the database after the Lucene/SOLR backup is done, it’s still possible to regenerate the missing Lucene/SOLR indexes from the SQL transaction data. Database backup should be performed next. If you have a SQL node pointing to a missing file, that node will be an orphan. If you have a file without a SQL node data, that file will not be included in the backup. DB tools for backup: talk about
  7. Ephemeral instances S3 sync to other AWS region RDS replicate to other AWS region Jolokia logic: each index make backup of its storage and a pool of volumes are always tagged and ready to be used for auto-healing or scaling up purposes All instances bases on AMIs, take 8 seconds to configure + OS start time and EC2 resource availability.