How to install Archivematica
Minimum for testing
- Processor: 2 CPU cores
- Memory: 2GB+
- Disk space: 7GB plus two to three times the disk space required for the collection being processed (e.g., 3GB to process a 1GB transfer)
Minimum for production
- Processor: 2 CPU cores
- Memory: 4GB+
- Disk space: 20GB plus three to four times the disk space required for the collection being processed (e.g., 200GB to process a 50GB transfer)
Physical, virtual or Docker?
Note that the automated install using Ansible involves using Vagrant and VirtualBox, which uses virtualisation, and subsequently can only be performed on physical hardware. I will ultimately use Docker on AWS for my installation of Archivematica, and so the Ansible method won't work for me, as AWS is already a virtualised platform. However to get started we will go through a manual install on Ubuntu and this will inform how to install with Docker on AWS.
Start with a clean build of Ubuntu 18.04 LTS.
- During the Ubuntu install, make sure you install OpenSSH server.
- You do not need to include any snaps.
Once Ubuntu is installed, you can access the server using SSH. Installing Archivematica involves running the following collections of commands:
Add required repositories
sudo wget -O - https://packages.archivematica.org/1.11.x/key.asc | sudo apt-key add - sudo sh -c 'echo "deb [arch=amd64] https://packages.archivematica.org/1.11.x/ubuntu bionic main" >> /etc/apt/sources.list' sudo sh -c 'echo "deb [arch=amd64] https://packages.archivematica.org/1.11.x/ubuntu-externals bionic main" >> /etc/apt/sources.list'
Add Elasticsearch package source (optional)
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
Update to the latest version
sudo apt-get update sudo apt-get -y upgrade
Install some needed packages
sudo apt-get install -y htop ntp apt-transport-https unzip openjdk-8-jre-headless
Install Elasticsearch (optional)
sudo apt-get install -y elasticsearch
Install the Storage Service package
sudo apt-get install -y archivematica-storage-service
Configure the Storage Service
sudo rm -f /etc/nginx/sites-enabled/default sudo ln -sf /etc/nginx/sites-available/storage /etc/nginx/sites-enabled/storage
wget -O - https://bootstrap.pypa.io/get-pip.py | sudo python -
Install the Archivematica packages
When you are prompted for a MySQL password, use demo. This password can be changed after the install is complete. When asked to configure Postfix (mail server), choose No configuration.
sudo apt-get install -y archivematica-mcp-server sudo apt-get install -y archivematica-dashboard sudo apt-get install -y archivematica-mcp-client
Configure the Dashboard
sudo ln -sf /etc/nginx/sites-available/dashboard.conf /etc/nginx/sites-enabled/dashboard.conf
Start Elasticsearch (optional)
sudo systemctl daemon-reload sudo service elasticsearch restart sudo systemctl enable elasticsearch
Start the remaining services
sudo service clamav-freshclam restart sleep 120s sudo service clamav-daemon start sudo service gearman-job-server restart sudo service archivematica-mcp-server start sudo service archivematica-mcp-client restart sudo service archivematica-storage-service start sudo service archivematica-dashboard restart sudo service nginx restart sudo systemctl enable fits-nailgun sudo service fits-nailgun start
If you have trouble with gearman or clamav, try restarting these services.
sudo service gearman-job-server restart sudo service clamav-daemon restart
Configure the firewall (if required)
Start by checking firewall status.
sudo ufw status
If ufw is running, you must ensure that the following ports are not blocked.
sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 8000/tcp sudo ufw reload
Post install configuration
Add at least one administrative user
Run the following command to add an admin user.
sudo -u archivematica bash -c " \ set -a -e -x source /etc/default/archivematica-storage-service || \ source /etc/sysconfig/archivematica-storage-service \ || (echo 'Environment file not found'; exit 1) cd /usr/lib/archivematica/storage-service /usr/share/archivematica/virtualenvs/archivematica-storage-service/bin/python manage.py createsuperuser ";
- Leave blank to use 'archivematica'.
- Enter your admin email address.
- Enter a password.
You will now be able to use these credentials to log on to the Storage service.
Access the Storage service by browsing to https://<IP_ADDRESS>:8000.
- Go to Administration > Users.
- Click Edit for the archivematica user account.
- Copy the API key (for use shortly).
Access the dashboard by browsing to the following address:
On the welcome screen, add the following information:
- Organization name (e.g. Your School)
- Organization identifier (e.g. an abbreviation)
- First name
- Last name
- Email (can be the same email as Storage service)
- Site URL (e.g. https://archive.myschool.org, but can be IP address for test purposes)
On the resulting Register this pipeline screen, enter the following information:
- Storage Service User: (e.g. archivematica)
- Paste the API key previously copied.
- Click Register.
Congratulations, you should now have a working instance of Archivematica!
Thanks for visiting.