Post on 11-Nov-2021
Alfresco Installation & Deployment methods
George ParapadakisGavin Cornwell13 January 2021
22
AgendaACS Installation & Deployment
• Overview of Installation & Deployment strategy• The philosophy behind our strategy• Current deployment methods for containerised and
non-containerised environment• Where we are heading with regard to improving the
installation and deployment experience
• Demo – Ansible installation
• Demo – Helm deployment
• Resources
• What’s coming next
• Q&A
January 2021
33
VisionEnabling organizations to realize value from their most important information
44
Current User Base
Manual(Zip)59%
Installer(5.x)34%
Docker Compose
5%
Kubernetes/ Helm 2%
Deployment Methods O/S WindowsLinux
RHEL Other
22%
78%
69%
31%
5simply a better way
Installation & DeploymentFlexibility to choose the right deployment method for the right environment
Reduce the complexity of deploying our products, for both containerised and non-containerised environments
Simplified Installation & Upgrade experience
• Consistent & repeatable installation results
• Ansible Playbooks for non-containerised deployments
• Support for current versions of Helm & Kubernetes
• “Right-Sized” microservices
• Docker Compose for development & trials
Server LaptopAnsiblePlaybooks
AWS EC2
VMWare
DockerDockerCompose
AWS EKS
HelmChart
Azure AKS
Docker Desktop
6
Deployment
Server Laptop
AnsiblePlaybooks
AWS EC2 Azure VM
VMWare
AWS EKS
HelmChart
DockerDockerCompose
Product Docker Compose
Helm 3 Ansible
ACS 6.x Beta
ACS 7.x In-Progress
ACS Community In-Progress
APS 1.11 (container only)
DBP Alfresco University Sandbox
Backlog Backlog
ACS Trial
APS Trial
Where are we today?
HELM Blog Post: https://hub.alfresco.com/t5/alfresco-content-services-blog/helm-chart-updates-for-alfresco-content-services/ba-p/303559
DockerDesktop
Non
-Con
tain
eris
edC
onta
iner
ised
Ansible Blog Post: https://hub.alfresco.com/t5/alfresco-content-services-blog/ansible-playbooks-for-alfresco-content-services/ba-p/300929
7
…and before you ask• Ansible Playbooks expected to be available GA around mid-March
• Playbooks will support installations of 6.x, 7.x and the latest Community Edition
• Looking at supporting minor upgrades with Ansible in the near future (when original install is with Ansible)
• Ansible Playbooks will be available on a public GitHub repository, and as ZIP download, after GA release
• Supported as reference
88
Where we’re headingGenerateInteract Execute
Azure AKS
AWS EC2 Azure VMTerraformTemplate
AWS EKSHelm ChartInteractive Wizard
Interactive Shell Script
DeploymentGenerator
ConfigurationProtocol
DockerDockerCompose
VMWare
Server LaptopAnsible
Playbooks
DockerDesktop
99
Traditional Installation
10
Ansible Overview• An open-source software provisioning, configuration management and application deployment tool enabling
infrastructure as code• No agents (SSH connection is only requirement)• Playbook• Roles• Tasks (download a file)• Control node• Target host (bare metal/laptop, on-prem VM, Cloud VM)• Inventory file
11
Target Directory Structure
/opt/alfresco Binaries
/etc/opt/alfresco Configuration
/var/opt/alfresco Data
/var/log/alfresco Logs
A consistent and standard folder structure is used, you will find the deployed files in the following locations:
12
Running The PlaybookInventory File Command
all:children:
database:hosts:
database_1:connection: sshansible_host: targetIPansible_private_key_file: "/path/ssh_key.pem"ansible_user: centos
repository:hosts:
repository_1:ansible_host: targetIP
…
export NEXUS_USERNAME=“username”export NEXUS_PASSWORD=“password”
ansible-playbook -i inventory.yml playbooks/acs.yml
1313
Local Installation
1414
Single Remote Machine Installation
1515
Multi Remote Machine Installation
16
• CentOS: 7
• Tomcat: 8.5.56
• Postgres: 11.7
• ActiveMQ: 15.5.13
• LibreOffice: 6.3.5
• ImageMagick: 7.0.10
• Repository: 6.2.2
• Share: 6.2.2
• Search Services: 1.4.2
• ADW: 1.6.0
• Transformation Engine: 2.3.5
• Transformation Router: 1.3.1
• Shared File System: 0.8.0
• Sync Services: 3.3.3.1
Infrastructure Alfresco
Deployed Stack ** At the time of writing
1717
Demo
1818
Containerised Deployment
19
What’s New• GitHub repo consolidation
• github.com/Alfresco/acs-deployment is now the one place to go
• Helm 3 & Kubernetes 1.16+ support
• Simplification
• Improved documentation
• Better structure and all in one location
• More information
• Step by step guide for EKS and Docker for Desktop (Cloud agnostic though)
• Examples
• More checks & tests
• Use Milestone builds from Stable not Incubator
20
• ACS 5.0.0 chart allows deployment of multiple versions
• Reduced dependencies
• Common infrastructure chart has been removed
• Single chart for deploying ADF apps
• Single location for compose files for 6.x, 7.x and
Community
Helm Docker
Simplification
21
Checks & Tests• Travis build runs tests against all versions
• Linting
• Kubepug for checking compatibility against k8s versions
• Checkov rules
• Charts are used by internal CI/CD pipelines
2222
Deployed Alfresco Stack
Chart Version/Tag
Default 6.2.N 6.1.N 6.0.N Community
5.0.0-M2 Repository 7.0.0-M3Share 7.0.0-M3Search 2.0.1ADW 2.0.0T-Engines 2.3.6T-Router 1.3.1SFS 0.10.0Sync 3.4.0-M2
Repository 6.2.2Share 6.2.2Search 1.4.3ADW 1.6.0T-Router 1.3.1SFS 0.8.0T-Engines 2.3.5Sync 3.3.3.1
Repository 6.1.1Share 6.1.1.1Search 1.4.3ADW 1.3.0T-Router 1.0.2SFS 0.5.3T-Engines 2.0.17Sync 3.1.2
Repository 6.0.1Share 6.0.1Search 1.4.3T-Engines 1.3
Repository 7.0.0-A10Share 7.0.0-M3Search 2.0.1T-Engine 2.3.6
2323
Demo
2424
SummaryUpdated capabilities for Installation & Deployment
Majority of our base still uses Linux-based non-containerised environments
Ansible Playbooks for ACS 6.x, 7.x, CommunityHelm 3 Charts for ACS 6.x, 7.x, CommunityConsolidated GitHub repositories
Helm currently available as M2 releaseGA around mid-March
This is available to all ACS customers & Community
We continue to fully support the Docker Containers and provide deployment scripts for Reference
Helm available at:https://github.com/Alfresco/acs-deploymentAnsible Playbooks:Blog post & Docs to follow on release
Why?
What?
When?
Commercial?
Supporting Details?
How?
2525
Resources and LinksHELM Chartshttps://github.com/Alfresco/acs-deployment
Documentation• https://github.com/Alfresco/acs-deployment/blob/master/docs/helm/README.md
• EKS Deployment: https://github.com/Alfresco/acs-deployment/blob/master/docs/helm/eks-deployment.md
• Docker-Desktop Deployment: https://github.com/Alfresco/acs-deployment/blob/master/docs/helm/docker-desktop-deployment.md
Coming Soon!
GA release expected mid-MarchAnsible playbooks will be available to download as ZIP files, and on GitHub
Ansible Playbooks
26Sales Kick-off 2019 / FY20
Questions???
Thank you