Date post: | 11-Apr-2017 |
Category: |
Software |
Upload: | angel-borroy-lopez |
View: | 113 times |
Download: | 0 times |
Whattothinkaboutwhenyou’replanningtoinstallAlfresco
AngelBorroydeveloper@keensoft
Disclaimer
“Nosourcecode weredevelopedduringthemakingofthispresentation.
Infact,nocodingabilitiesarerequiredatall.
CONCEPTSThinkingofinstallingAlfresco
BeforeinstallingComponents
Catalog
TechnologyStack
Subsystems
Extensions
Sizing
Admin
Installing Validating
Afterinstalling
Training Supporting
“Wecanthinkaboutthislater,neverthelessit’salsoamatterofthinking
AuditingImporting
COMPONENTSCATALOGBeforeinstalling
Componentscatalog- Programs
ComponentsCatalog
Program Defaultlocation (wizard)
Java java
Repo tomcat/alfresco.war
Activiti tomcat/alfresco.war
Share tomcat/share.war
SOLR tomcat/solr4.warsolr4
AOS tomcat/vti_bin.wartomcat/ROOT.war
LibreOffice libreoffice
ImageMagick common/bin
GhostScript common/bin
pdf2swf common/bin
PostgreSQL postgresql
Componentscatalog- Protocols
ComponentsCatalog
Protocol Defaultport
HTTP(s) 8080 (8443)
WebDAV 8080 (8443)
SPP 8080 (8443)
AJP 8009
CIFS SMB 445NetBIOS 137, 138, 139
NFS 2049
FTP 21
IMAP 143
SMTP 25
LibreOffice 8100
JMX 50500
WebServer80443
Componentscatalog- APIs
ComponentsCatalog
API Type Use
CMIS Remote HTTP (REST / SOAP)
Alfresco Repository REST Remote HTTP (JSON / HTML)
Alfresco RepositoryJavaScript
EmbeddedServer JavaScript(Rhino)
Alfresco RepositoryFreemarker Template
Embedded Freemarker (FTL)
Alfresco ShareJavaScript EmbeddedClient JavaScript (Aikau / YUI)
Alfresco SurfPlatform EmbeddedServer Java (SpringSurf)
Alfresco JavaPublic Embedded Server Java (Spring)
TECHNOLOGYSTACKBeforeinstalling
Technologystack- Server
TechnologyStack
Element Alternatives
OS Linux,MacOS, WindowsJDK OracleJDK, OpenJDK
Application Server ApacheTomcatJboss,WebLogic,WebSphere
WebServer ApacheHTTP, NGINXAmazonELB
Database PostgreSQL,MariaDB,MySQL
Storage NAS/NFSContentTransformer LibreOfficeImage Transformer ImageMagick
GhostScript GS
AlfrescoEnterprise
SupportedPlatforms
X
Technologystack- Client
TechnologyStack
Element Alternatives
OS Linux,MacOS,WindowsBrowser Chrome,Firefox,Safari
Explorer,EdgeOpera
Office LibreOffice 4,5MicrosoftOffice2016,2013,2011,2010
Mobile iOS,Android
AlfrescoEnterprise
SupportedPlatforms
SUBSYSTEMSBeforeinstalling
Subsystems
SubsystemsSubsystem Config location
Activities Feed activities-jobs.properties
Audit repository.properties (audit.*)
Authentication NTLM alfresco-authentication.propertiesLDAP ldap-authentication.propertiesAD ldap-ad-authentication.propertiesEXT external-authentication.propertiesKERB kerberos-authentication.propertiesPASS passthru-authentication-context.properties
Email inboundSMTP.propertiesoutboundSMTP.propertiesimap-server.properties
FileServers file-servers.properties
Transformers transformers.propertiesopenoffice-transform.propertiesimagemagick-transform.properties
Search common-search.propertiessolr-search.properties
GoogleDocsAOS
Subsystems
Subsystems- Authentication
http://docs.alfresco.com/community/concepts/auth-subsystem-types.html
EXTENSIONSBeforeinstalling
Extensions
Extensions
Addon URL
SiteHomePagePlus https://github.com/keensoft/alfresco-site-home-page-plus
AlfrescoESign Cert https://github.com/keensoft/alfresco-esign-cert
AlfrescoMyFilesQuota https://github.com/keensoft/alfresco-myfiles-quota
AlfrescoDatalist Constraints https://github.com/keensoft/alfresco-datalist-constraintsAlfresco Site HomePage https://github.com/keensoft/alfresco-site-home-page-plus
AlfrescoOCR https://github.com/keensoft/simple-ocr-action
Alfresco Datalist Constraints https://github.com/keensoft/alfresco-datalist-constraintsAlfresco JSConsole https://github.com/share-extras/js-console
ShareSiteCreators https://github.com/jpotts/share-site-creatorsUploaderPlus https://github.com/softwareloop/uploader-plus
ShareSiteLogoCustomize https://github.com/douglascrp/alfresco-share-site-logo-customization
AlfrescoAuditAnalysisandReporting http://sourceforge.net/projects/aaar/files/
JavaMelody https://github.com/javamelody/javamelody
Makeyourownlist
Extensions
Extensions
https://github.com/OrderOfTheBee/addons/wikihttps://github.com/OrderOfTheBee/addons/wiki/Technical-inclusion-criteria
Extensions- Development• ContentModel– Searching
• Customactions– Archiving– Publishing
• Custom(simple)workflows• Sharethemecustomization
Extensions
DocumentCentricvs
HumanCentric
SIZINGBeforeinstalling
Sizing• Numberofusers– 10%canbeconsideredasconcurrent
• Storagevolumeestimation– 2xcontent– 0,2xsearchindexes
• Identifyingrequirementsbyelement
Sizing
Sizing
Sizing
Component RequirementsWebServer RAM
ThreadpoolApacheTomcatAlfrescoApacheTomcatShare
RAMCPUThreadpool
ApacheTomcatSOLR4 RAMCPUThreadpool
LibreOffice RAMCPU
Database RAMThreadpool
Storage HD
Sizing- Scaling
Sizing
ADMINBeforeinstalling
Admin• Testing(anddocumenting)everyrequiredoperation*– StartingandstoppingAlfresco– Monitoring– Tuningadjustments– Backupandrestoring– Upgrading– Logfilesmanagement– WorkingwithAlfrescomodules
Admin*YES:youhavetotestalltheseoperationsBEFORE
installinginaproductionenvironment
INSTALLATIONPROCESSDuringinstalling
Installing• Wizardinstaller– https://www.alfresco.com/alfresco-community-download
• Installingfromscratch– https://wiki.alfresco.com/wiki/Community_file_list_201602-GA
• Thirdpartydistros– OrderoftheBee,Lotfux
• AmazonAWS(marketplace)• AlfrescoSPK
Installing
Installing• Documentingeverystep– Basesoftwareinstallation• Frontend,database,requiredprograms…
– Alfrescoinstallation– Configuration• SOLR,IMAP,SMTP,LDAPAD,CIFS,Kerberos,SPP…
– Extension– Tuning
InstallingThefewerconfiguration filesmodified, theeasier
upgradingandmaintainingwillbe
VALIDATINGDuringinstalling
Validating• Testingservicesavailability
– Repository https://server.org/alfresco– Share https://server.org/share– Adminconsole https://server.org/alfresco/s/admin– Monitoring https://server.org/alfresco/monitoring– SOLR https://server.org/solr4– CMIS
• https://server.org/alfresco/api/-default-/public/cmis/versions/1.1/atom
– SPP https://server.org/alfresco/aos– WebDAV https://server.org/alfresco/webdav– CIFS smb://server.org/alfresco
Validating
Validating• Capacity planning– AlfrescoBenchmarkFramework*– Customdeveloped
• CMISclient https://chemistry.apache.org/
– AlfrescoRepo
• SeleniumWebDriver http://www.seleniumhq.org/projects/webdriver/
– AlfrescoShare
• ApacheJmeter http://jmeter.apache.org/
– AlfrescoRepo– AlfrescoShare
Validating*Useitatyourownrisk:niceforenormousinstallationsbutoversizedforsmallerone
Validating• Functional validation– Customizationsmanual– Usingrealdata– Identifyingcircuitsofuse– Execution• Handmade• Automating
– SeleniumWebdriver enhancedbyLeadFoot
Validating
CROPTRUSTUseCase
Usecase– CropTrust
Usecase– CropTrustElement Adaptation Comments
Share REQUIRED Main user web interface, used for Edit Online Office documents and also useful for system and diagnostic operations
Repo REQUIRED Main Alfresco functionality SOLR 4 REQUIRED Required for searching and indexing
LibreOffice REQUIRED Recommended as Share is installed ImageMagick REQUIRED Recommended as Share is installed
GhostScript REQUIRED Recommended as Share is installed pdf2swf UNNEEDED Not required if any organization
browser support HTML 5 Activiti REQUIRED Main Alfresco functionality
CIFS REQUIRED Main use case requirement
WebDAV REQUIRED Alternative to CIFS FTP OPTIONAL Useful for large volume loads
IMAP REQUIRED Useful for organizing emails and attachments
SMTP REQUIRED Useful to notify Alfresco users SPP REQUIRED As a second alternative to CIFS and
for Edit Online from web browser
Activities Feed REQUIRED Alfresco Share functionality, it can be enabled/disabled by user
Audit UNNEEDED Low impact without an analytics app Authentication REQUIRED Based on ldap-ad, passthru and
Kerberos Email REQUIRED Useful to notify Alfresco users
File Servers REQUIRED CIFS Transformers REQUIRED Recommended as Share is installed
Google Docs OPTIONAL Google Docs Alfresco addon must to be patched before in order to avoid sending oAuth tokens to alfresco.com1
CMIS REQUIRED CMS integration (WordPress)
1 https://github.com/Alfresco/google-docs/issues/7
CMIS REQUIRED Alfresco Repository REST OPTIONAL
Alfresco Repository JavaScript UNNEEDED Alfresco Repository Freemarker
Template UNNEEDED
Alfresco Share JavaScript UNNEEDED Alfresco Surf Platform UNNEEDED
Alfresco Java Public UNNEEDED
ComponentsCatalog
Element Adaptation Comments Share REQUIRED Main user web interface, used for Edit
Online Office documents and also useful for system and diagnostic operations
Repo REQUIRED Main Alfresco functionality SOLR 4 REQUIRED Required for searching and indexing
LibreOffice REQUIRED Recommended as Share is installed ImageMagick REQUIRED Recommended as Share is installed
GhostScript REQUIRED Recommended as Share is installed pdf2swf UNNEEDED Not required if any organization
browser support HTML 5 Activiti REQUIRED Main Alfresco functionality
CIFS REQUIRED Main use case requirement
WebDAV REQUIRED Alternative to CIFS FTP OPTIONAL Useful for large volume loads
IMAP REQUIRED Useful for organizing emails and attachments
SMTP REQUIRED Useful to notify Alfresco users SPP REQUIRED As a second alternative to CIFS and
for Edit Online from web browser
Activities Feed REQUIRED Alfresco Share functionality, it can be enabled/disabled by user
Audit UNNEEDED Low impact without an analytics app Authentication REQUIRED Based on ldap-ad, passthru and
Kerberos Email REQUIRED Useful to notify Alfresco users
File Servers REQUIRED CIFS Transformers REQUIRED Recommended as Share is installed
Google Docs OPTIONAL Google Docs Alfresco addon must to be patched before in order to avoid sending oAuth tokens to alfresco.com1
CMIS REQUIRED CMS integration (WordPress)
1 https://github.com/Alfresco/google-docs/issues/7
Subsystems
Usecase– CropTrust
Element Supported version (or upper) OS Ubuntu 14.04.1 LTS x64
JDK Oracle JDK 8 U31 x64 Application
Server Apache Tomcat 7.0.59
Web Server Apache HTTP server 2.21 Database PostgreSQL 9.3.5
MySQL 5.6.19a / MariaDB 10.0.14 Amazon Aurora
Storage NAS / NFS2 Content
Transformer LibreOffice 4.2.5.2
Image Transformer
ImageMagick 6.8.6-6
SWF Previewer
SWFTools 0.9.2
Ghostscript GS 8.7.0 Finder 10.9.1
1 Amazon ELB or NGINX should work but are not on Alfresco official specifications 2 Amazon S3 storage only supported by Alfresco Enterprise Edition
Addon Adaptation Comments Site Home Page
Plus OPTIONAL A simpler version is available: Document
Library as home page for every Site (fixed and non configurable).
Alfresco Firma OPTIONAL User certificates allows signature operations, but there are some doubts about legal concernments.
Alfresco Site Groups
UNNEEDED OOTB group management is enough.
Alfresco My Files Quota
UNNEEDED OOTB quota control is enough.
Alfresco Agreement Filter
UNNEEDED No legal concernments have been identified on using Alfresco inside the organization.
Alfresco Datalist Constraints
OPTIONAL Users will be able to maintain their own lists, but is left for future analysis to determine how often are these values changing.
Alfresco OCR REQUIRED Some documents are incorporated from a scanner and even some other are only paper based, so OCR should be a must.
Share Site Creators
REQUIRED No everyone in the organization should create sites.
Uploader Plus OPTIONAL Based on classification policy (restrictive or allowable).
Share Site Logo Customize
UNNEEDED No so deeper visual customization is required.
Alfresco Unzip Action
UNNEEDED No ZIP documents are managed by users.
Alfresco Audit Analysis and
Reporting
UNNEEDED Not by now.
EML previewer REQUIRED On using IMAP, EML pre-visualization is a must.
Extensions
TechnologyStack
Usecase– CropTrust
Component Requirements Web Server 512 Kb RAM
Default thread pool Apache Tomcat
Alfresco 3 GB RAM 2x server CPU >= 2.0 GHz Default thread pool
Apache Tomcat SOLR4
3 GB RAM 2x server CPU >= 2.0 GHz Default thread pool
LibreOffice 2 GB RAM Database 1 GB RAM
Default thread pool Storage 120 GB
200 MB/s or higher
Sizing
Usecase– CropTrust
Validating
Installing Admin
HAVEWEFINISHEDYET?Afterinstalling
Afterinstalling
Training Supporting AuditingImporting
“Whattothinkaboutonceyou’veinstalledAlfresco”
Maybenextyear
Whattothinkaboutwhenyou’replanningtoinstallAlfresco
AngelBorroydeveloper@keensoft