Whattothinkabout whenyou’replanning toinstallAlfresco AngelBorroy developer@keensoft Disclaimer “Nosourcecode weredevelopedduring themakingofthispresentation. Infact,nocodingabilitiesarerequiredatall. ThinkingofinstallingAlfresco CONCEPTS Beforeinstalling Components Catalog Extensions Technology Stack Sizing Subsystems Admin Installing Validating Afterinstalling Importing Training Supporting Auditing “Wecanthinkaboutthislater, neverthelessit’salsoamatterofthinking Beforeinstalling COMPONENTSCATALOG Componentscatalog- Programs Program Defaultlocation (wizard) Java Repo tomcat/alfresco.war Activiti tomcat/alfresco.war Share tomcat/share.war SOLR tomcat/solr4.war solr4 AOS LibreOffice Components Catalog java tomcat/vti_bin.war tomcat/ROOT.war libreoffice ImageMagick common/bin GhostScript common/bin pdf2swf common/bin PostgreSQL postgresql Componentscatalog- Protocols Protocol Defaultport Components Catalog HTTP(s) 8080 (8443) WebDAV 8080 (8443) SPP 8080 (8443) AJP 8009 CIFS SMB 445 NetBIOS 137, 138, 139 NFS 2049 FTP 21 IMAP 143 SMTP 25 LibreOffice JMX 8100 50500 Web Server 80 443 Componentscatalog- APIs API Type Components Catalog Use CMIS Remote HTTP (REST / SOAP) Alfresco Repository REST Remote HTTP (JSON / HTML) Alfresco Repository JavaScript Embedded Server JavaScript (Rhino) Alfresco Repository Freemarker Template Embedded Freemarker (FTL) Alfresco ShareJavaScript Embedded Client JavaScript (Aikau / YUI) Alfresco SurfPlatform Embedded Server Java (Spring Surf) Alfresco JavaPublic Embedded Server Java (Spring) Beforeinstalling TECHNOLOGYSTACK Technologystack- Server Element Alternatives OS Linux,MacOS, Windows JDK OracleJDK, OpenJDK Application Server ApacheTomcat Jboss,WebLogic,WebSphere WebServer ApacheHTTP, NGINX AmazonELB Database PostgreSQL,MariaDB, MySQL Storage NAS/NFS ContentTransformer LibreOffice Technology Stack Image Transformer ImageMagick GhostScript GS Alfresco Enterprise Supported Platforms X Technologystack- Client Element Alternatives OS Linux,MacOS,Windows Browser Chrome,Firefox,Safari Explorer,Edge Opera Alfresco Enterprise Supported Platforms Office LibreOffice 4,5 MicrosoftOffice2016,2013,2011,2010 Mobile iOS,Android Technology Stack Beforeinstalling SUBSYSTEMS Subsystems Subsystem Config location Activities Feed Audit Authentication Email FileServers Transformers Search Subsystems activities-jobs.properties repository.properties NTLM LDAP AD EXT KERB PASS GoogleDocs AOS (audit.*) alfresco-authentication.properties ldap-authentication.properties ldap-ad-authentication.properties external-authentication.properties kerberos-authentication.properties passthru-authentication-context.properties inboundSMTP.properties outboundSMTP.properties imap-server.properties file-servers.properties transformers.properties openoffice-transform.properties imagemagick-transform.properties common-search.properties solr-search.properties Subsystems- Authentication http://docs.alfresco.com/community/concepts/auth-subsystem-types.html Subsystems Beforeinstalling 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-constraints Alfresco 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-constraints Alfresco JSConsole https://github.com/share-extras/js-console ShareSiteCreators https://github.com/jpotts/share-site-creators UploaderPlus https://github.com/softwareloop/uploader-plus ShareSiteLogoCustomize https://github.com/douglascrp/alfresco-share-site-logocustomization AlfrescoAuditAnalysisandReporting http://sourceforge.net/projects/aaar/files/ JavaMelody https://github.com/javamelody/javamelody Extensions Makeyourownlist Extensions Extensions https://github.com/OrderOfTheBee/addons/wiki https://github.com/OrderOfTheBee/addons/wiki/Technical-inclusion-criteria Extensions- Development • ContentModel – Searching • Customactions – Archiving – Publishing • Custom(simple)workflows • Sharethemecustomization Extensions Document Centric vs HumanCentric Beforeinstalling SIZING Sizing • Numberofusers – 10%canbeconsideredasconcurrent • Storagevolumeestimation – 2xcontent – 0,2xsearchindexes • Identifyingrequirementsbyelement Sizing Sizing Component WebServer ApacheTomcatAlfresco ApacheTomcatShare ApacheTomcatSOLR4 LibreOffice Database Sizing Storage Requirements RAM Threadpool RAM CPU Threadpool RAM CPU Threadpool RAM CPU RAM Threadpool HD Sizing- Scaling Sizing Beforeinstalling ADMIN Admin • Testing(anddocumenting)everyrequired operation* – – – – – – – Admin StartingandstoppingAlfresco Monitoring Tuningadjustments Backupandrestoring Upgrading Logfilesmanagement WorkingwithAlfrescomodules *YES:youhavetotestalltheseoperationsBEFORE installinginaproduction environment Duringinstalling INSTALLATIONPROCESS 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 Installing Thefewerconfiguration filesmodified, theeasier upgrading andmaintaining willbe Duringinstalling VALIDATING Validating • Testingservicesavailability – – – – – – Repository Share Adminconsole Monitoring SOLR CMIS https://server.org/alfresco https://server.org/share https://server.org/alfresco/s/admin https://server.org/alfresco/monitoring https://server.org/solr4 • https://server.org/alfresco/api/-default/public/cmis/versions/1.1/atom – SPP – WebDAV – CIFS Validating https://server.org/alfresco/aos https://server.org/alfresco/webdav smb://server.org/alfresco 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:niceforenormous installationsbutoversizedforsmallerone Validating • Functional validation – Customizationsmanual – Usingrealdata – Identifyingcircuitsofuse – Execution • Handmade • Automating – SeleniumWebdriver enhancedbyLeadFoot Validating UseCase CROPTRUST Usecase– CropTrust SOLR 4 REQUIRED LibreOffice REQUIRED ImageMagick REQUIRED GhostScript REQUIRED pdf2swf UNNEEDED Usecase– CropTrust Element Adaptation Share REQUIRED REQUIRED CIFS REQUIRED REQUIRED OPTIONAL REQUIRED Comments WebDAV Main user web interface, used for Edit FTP Online Office documents and also useful for system and diagnostic IMAP operations Repo REQUIRED Main Alfresco functionality SMTP SOLR 4 REQUIRED Required for searching and indexing SPP LibreOffice REQUIRED Recommended as Share is installed Subsystems ImageMagick REQUIRED Recommended as Share is installed GhostScript REQUIRED Recommended as Share is installed pdf2swf UNNEEDED Not required if any organization Activities Feed browser support HTML 5 Activiti REQUIRED Main Alfresco functionality CIFS WebDAV FTP IMAP Components Catalog Activiti SMTP SPP REQUIRED REQUIRED Required for se Recommended Recommended Recommended Not required browser suppo Main Alfresco f Main use case r Alternative to Useful for large Useful for or attachments Useful to notify As a second al for Edit Online REQUIRED Alfresco Share enabled/disable Audit UNNEEDED Low impact wi REQUIRED Main use case requirement Authentication REQUIRED Based on ld REQUIRED Alternative to CIFS Kerberos OPTIONAL Useful for large volume loads Email REQUIRED Useful to notify REQUIRED Useful for organizing emails and File Servers REQUIRED CIFS attachments REQUIRED Useful to notify Alfresco users Transformers REQUIRED Recommended REQUIRED As a second alternative to CIFS and Google Docs OPTIONAL Google Docs A for Edit Online from web browser be patched bef sending oA REQUIRED REQUIRED Alfresco Share functionality, it can be 1 alfresco.com OPTIONAL enabled/disabled by user Activities CMIS Feed Alfresco Repository REST Alfresco Repository JavaScript UNNEEDED Audit UNNEEDED Low impact without an analytics app Alfresco Repository Freemarker UNNEEDED Authentication REQUIRED Based on ldap-ad, passthru and CMIS REQUIRED Template Kerberos Alfresco Share JavaScript UNNEEDED Email REQUIRED Useful to notify Alfresco users Alfresco Surf Platform UNNEEDED 1 File Servers CIFS https://github.com/Alfresco/google-docs/issues/7 Alfresco Java Public REQUIRED UNNEEDED Transformers REQUIRED Recommended as Share is installed Google Docs OPTIONAL Google Docs Alfresco addon must to CMS integratio Usecase– CropTrust Addon Adaptation Comments Site Home Page OPTIONAL A simpler version is available: Document Plus Library as home page for every Site Technology (fixed and non configurable). Stack Alfresco Firma OPTIONAL User certificates allows signature Element operations, but there are some doubts about legal concernments. OS Alfresco Site UNNEEDED OOTB group management is enough. JDK Groups Application Alfresco My Files UNNEEDED OOTB quota control is enough. Server Quota Web Server Alfresco UNNEEDED No legal concernments have been identified on using Alfresco inside the Database Agreement Filter organization. Alfresco Datalist OPTIONAL Users will be able to maintain their own Constraints lists, but is left for future analysis to Storage Extensions determine how often are these values Content changing. Transformer Alfresco OCR REQUIRED Some documents are incorporated from a scanner and even some other are only Image paper based, so OCR should be aTransformer must. Share Site REQUIRED No everyone in the organization should SWF Creators create sites. Previewer Uploader Plus OPTIONAL Based on classification policy (restrictive Ghostscript or allowable). Finder Share Site Logo UNNEEDED No so deeper visual customization is Customize required. Alfresco Unzip UNNEEDED No ZIP documents are managed by Action users. Alfresco Audit UNNEEDED Not by now. Analysis and Reporting EML previewer REQUIRED On using IMAP, EML pre-visualization is a must. Supported version (or upper) Ubuntu 14.04.1 LTS x64 Oracle JDK 8 U31 x64 Apache Tomcat 7.0.59 Apache HTTP server 2.21 PostgreSQL 9.3.5 MySQL 5.6.19a / MariaDB 10.0.14 Amazon Aurora NAS / NFS2 LibreOffice 4.2.5.2 ImageMagick 6.8.6-6 SWFTools 0.9.2 GS 8.7.0 10.9.1 Usecase– CropTrust Sizing Component Requirements Web Server 512 Kb RAM Default thread pool Apache Tomcat 3 GB RAM Alfresco 2x server CPU >= 2.0 GHz Default thread pool Apache Tomcat 3 GB RAM SOLR4 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 Usecase– CropTrust Validating Installing Admin Afterinstalling HAVEWEFINISHEDYET? Afterinstalling Importing Training Supporting Auditing “Whattothinkaboutonceyou’ve installedAlfresco” Maybenextyear Whattothinkabout whenyou’replanning toinstallAlfresco AngelBorroy developer@keensoft