Set up Ansible - Alfresco Content Services - 23.4 - 23.4 - Ready - Alfresco - external

Alfresco Content Services

Platform
Alfresco
Product
Alfresco Content Services
Release
23.4
License

Not all distributions of Linux may match the version requirements for Ansible and its dependencies. Below we describe how to configure a control node with one of the many ways to set a Python virtual environment. With Python virtualenvs you can install the exact same versions of Ansible we use when testing without impacting your system installation of Python. By doing so, you’re ensuring the best chances of success.

  1. Download the Ansible playbook by performing the following steps:
    1. Navigate to the Alfresco's Nexus repository by entering the following address in your browser https://nexus.alfresco.com/nexus.
    2. Log on using your credentials.
      Alfresco customers can request Nexus credentials by logging a support ticket via Hyland Community. These credentials are required to access private (Enterprise-only) artifacts from the Nexus repository.
    3. Search for "alfresco-ansible-deployment".
    4. Download the alfresco-ansible-deployment-x.x file, where x.x is the version number.
      For the supported version of the playbook, see Alfresco Ansible Deployment available at https://alfresco.github.io/alfresco-ansible-deployment. It is recommended to use the latest version.

    If you’re not working directly on the control node, transfer the ZIP file to the control node together with the SSH private key required to login to the target machines, and SSH into the control node.

    scp  alfresco-ansible-deployment-<version>.zip user@controlnode:
    ssh-copy-id -i ~/.ssh/ansible_rsa user@controlnode
    ssh  user@controlnode
    unzip alfresco-ansible-deployment-<version>.zip
    cd alfresco-ansible-deployment
    

    You can also use Git to fetch latest sources (or a specific release for example by adding -b v2.1.0) on the control node with:

    git clone https://github.com/Alfresco/alfresco-ansible-deployment.git
    cd alfresco-ansible-deployment
    Note: You may want to generate an SSH key pair locally and use it later for deployment. Whether you use a locally generated key, or copy over a key to the control node, it is your responsibility to deploy it to the target machines so Ansible can use it. Using SSH keys is recommended but not mandatory. If you instead use password, make sure to add the -k switch to the ansible command, so it prompts you for a password.
  2. Check prerequisites and install required tools:
     python --version # must be at least 3.9 in order to use Ansible 2.14
     sudo apt install virtualenvwrapper unzip # Use your distro's package manager instead of apt if it's not Debian based
    
  3. Install Ansible and required dependencies in Python virtualenv:
     unzip alfresco-ansible-deployment-<version>.zip
     cd alfresco-ansible-deployment
     mkvirtualenv alfresco-ansible
     pip install -r requirements.txt
     ansible-galaxy install -r requirements.yml
    
  4. If you intend to deploy an Enterprise system, create environment variables to hold your Nexus credentials as shown below (replacing the values appropriately):
    export NEXUS_USERNAME="<your-username>"
    export NEXUS_PASSWORD="<your-password>"
    
    Note: If your password contains !, then you need to escape it with \, as it’s a special character to bash, and it’s used to refer to previous commands. The same escape method applies for other specials characters.

Without any additional configuration applied, the playbook installs the default Content Services components. See the Configure your installation section below to adjust some of the configurable installation options.

To install everything on the control node, follow the steps in the Local installation section. To install to one or more other machines, follow the steps in the Remote installation section.