Alfresco installation and deployment is always a hot topic, and this Tech Talk Live proved no exception. Over 700 people registered for the presentation by George Parapadakis & Gavin Cornwell on, 'Alfresco Installation and Deployment Methods', and over 300 tuned-in live on January 13th, 2021. As we ran out of time to answer all the questions, George and Gavin have followed up and here is the complete Q&A.
General Questions About Deployment
Question |
Answer |
Where can I find the latest blog posts on deployment methods? |
Ansible blog post: https://hub.alfresco.com/t5/alfresco-content-services-blog/Ansible-playbooks-for-alfresco-content-se... |
Will the latest Community Edition release have regular installation, or will it only be on Docker containers? |
There will be new Ansible Playbooks for the Community Edition. Manual (zip) installation is still supported and there are Helm reference charts for Kubernetes deployment. |
Will there be any improvement for the zip installation? |
Ansible is the preferred method that replaces the manual Zip installation for standard (i.e. non-containerised) deployment. Helm and Docker are still available for containerised deployments. The end result of an Ansible installation is very similar to a manual zip installation. The project is based on the zip installation course in Alfresco University: https://university.alfresco.com/acs-deploy-zip |
How are the installers distributed and how is it licensed? |
Helm charts are distributed via our Helm chart repository (https://kubernetes-charts.alfresco.com) see the EKS deployment guide for instructions (https://github.com/Alfresco/acs-deployment/blob/master/docs/helm/eks-deployment.md). Docker compose files are available from the GitHub repository. The Ansible playbooks will be available via the GitHub repo and a ZIP file. They are/will all under the Apache 2 License. |
Do the Ansible playbooks and helm charts have ways to include plugins for ACS and APS when deploying? |
For Helm and docker compose you'll need to create custom docker images and override the default images used, see https://github.com/Alfresco/acs-deployment/blob/master/docs/helm/examples/customisation-guidelines.m... for an example. The Ansible playbooks will provide a mechanism to include your AMPs, how to do this will be documented. |
Did you still support AMP deployment or just Jar archives ? |
We still support both AMP and JAR modules. Look out for future TTL sessions on this subject of designing and deploying extensions and customisations. |
Where can I find the component versions for 6.2.x? |
For Helm & Docker these will be documented on GitHub documentation. They will be present in the Ansible documentation from day one. For now, the easiest way is to look at the container versions used in https://github.com/Alfresco/acs-deployment/blob/master/docker-compose/6.2.N-docker-compose.yml |
Is there a guide for migrating Alfresco 5.x to Alfresco 6.2.2? |
Please see: https://docs.alfresco.com/6.2/concepts/upgrade-path.html |
Is there support for AWS ECS? |
We are focusing on Kubernetes deployments and specifically EKS and Docker for Desktop. The helm charts should be portable to other Kubernetes environments too as they do not use AWS specific services |
Any update on Fargate support? |
We do not have any plans for now to offer a reference deployment with Fargate. We have tried it and partially works, biggest issue we had was multi pod storage. |
Is there any documentation available around Helm Charts for best practices to be followed for SOLR Sharding |
No, currently there isn't. We are looking into that. |
Do you have a recommended tool to cluster Alfresco Postgres database?? |
We have not tested any Postgres standalone clustering tool. We recommend using a cloud provided database that has backup and clustering available. |
The issue with current docker compose is that data backup can't be done, please explain how to proceed? |
This is one of the reasons we don't recommend the current docker compose file we provide, for production deployments. You'll need to use docker volumes (https://docs.docker.com/storage) to externalise the folders you need to backup and ideally use an external database rather than the Postgres container. |
We are preparing to go into production with docker swarm infrastructure (APS 1.11, and ACS 6.2)? is it recommended to do so? |
We have never tested our deployments with docker swarm so our knowledge is limited about the platform. There is no plan currently to support Docker Swarm |
Any plans to deploy ACA with Community? |
We're currently discussing this internally, but there is no firm decision yet. |
Where does Alfresco publish artefact versions for each release? |
All artefacts now go to an internal S3 bucket which is fronted by the download manager. Access to these is granted via the customer support portal. Many artefacts are also still published to Nexus and we use this location for the Ansible playbooks. |
Questions specific to Ansible
Question |
Answer |
Will the Ansible Playbooks support updates? |
Yes, minor upgrades will be added to the Ansible playbooks in future releases. We are also looking into possible solutions to help customers for major upgrades, but there is no definite solution defined at the moment. |
Is AMP deployment supported with Ansible? |
We will offer the possibility to add amps to your deployment by providing the amp URL, in the playbook configuration. |
Does the Ansible Playbook require a SSH connection to Alfresco? We don't allow port 22 through the firewall externally. |
The only connection from your local network instances to the outside world when you deploy to Ansible would be for pulling Nexus artifacts or third party artifacts. That will be https (443) however you can choose to host those artifacts internally to remove external connection entirely. |
I'm interested in how you solved the initial solr core creation with Ansible. |
So far we haven't done anything specific to handle this in our playbook as it's not a problem we've run into. We do however have tasks that wait for services to become available so it's possible it's handled through this mechanism. |
On what Ansible Version are the playbooks based on? What Ansible Version is needed on the control host to execute the playbooks? Where can I find the information when Ansible version or pyhton version changes for the alfresco provided playbooks? |
Ansible 2.9 is the base version. The information about the prerequisite versions will be found on the main Readme page of the tagged release in github. |
Will the Ansible Installation be described on the official documentation at docs.alfresco.com? |
Ansible documentation will be available on GitHub when released, and soon after in the official docs site |
Will the Ansible playbooks also install JDK, LibreOffice, ImageMagic on target node? |
The playbooks do install all prerequisites. Example: if you choose to spread the deployment on multiple machines, you'll get Java installed on every node that needs java |
How are the keystores (for SSL/Solr/encryption/metadata) managed? |
At the time of writing we are just using the default keystores that have always been shipped, we do however have some stories on the backlog to investigate generating these as part of the playbook execution. |
Are Ansible Playbooks available for Windows or just Linux? |
Currently only Linux as this forms the vast majority of Alfresco’s customer base. We will look into Windows once the current Ansible Playbooks for Linux are live and complete. The standard Zip distribution is still available for both Linux and Windows. |
Does this Ansible playbook support SOLR sharding deployment? |
Not yet. It's in our backlog for a future release. |
Is there a plan for installation and management of Alfresco in Rancher (orchestration)? |
We have no current plans of releasing a reference architecture to use with rancher. We currently use rancher internally for multiple Kubernetes cluster management and deployment of the whole digital business platform. We just link the EKS cluster to the rancher interface and add rancher tags to the namespaces where we have deployments. |
Speaker slide deck.
There were several resources mentioned in the slide deck, which are included below:
Ansible Blog Post: https://hub.alfresco.com/t5/alfresco-content-services-blog/ansible-playbooks-for-alfresco-content-se...
HELM Blog Post https://hub.alfresco.com/t5/alfresco-content-services-blog/helm-chart-updates-for-alfresco-content-s...
Helm available at: https://github.com/Alfresco/acs-deployment
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