This article describes the necessary steps for configuring and running the DuraCloud Management Console. The Management Console is a web application that enables users to manage DuraCloud account and user information as well as global configuration settings for a DuraCloud installation. More information about the capabilities of the DuraCloud Management Console is available here.
If you are not yet familiar with the DuraCloud Management Console please refer to the DuraCloud Architecture document, which describes how the Management Console fits into the DuraCloud ecosystem.
- Java: Version 8 required
- The Oracle JDK is recommended for building DuraCloud, as this is the JDK used for DuraCloud testing.
- Maven 3.x
- Tomcat 8.x
- MySQL database
- AWS account and credentials (allowing use of SES and SNS for notifications)
Download, Build, Configure
To start, clone and build the latest release of the management console
git clone https://github.com/duracloud/management-console.git
git checkout duracloud-mc-3.0.0
mvn clean install
- Create the empty management console database, add credentials and than create the schema using management-console/resources/schema.sql (found in the management-console code baseline.)
- Create a configuration file.
- Now that you've built the management console and created the database, we need to set up a configuration file that can be used by the various components of the system. A template of this configuration file can be found in the code at account-management-app/src/main/webapp/WEB-INF/config/mc-config.properties
- Copy the file to a permanent location
Configure the connections to the management console database and AWS (for notifications):
# MC DATABASE
# Config for the management console database - used to retrieve accounts and storage provider credentials
# User must have read permission
mc.context=<e.g. /ama> # leave blank if the mc is deployed in the root context.
notification.user=<aws access key id>
notification.pass=<aws secret key>
notification.admin-address=<admin email address>
Create an SNS topic
Log into the AWS account associated with the Management Console application.
- In SNS add a topic.
- Ensure that the AWS credentials associated with the Management Console has permission to publish to that topic.
In a web browser, go to https://<yourhost>/<context>
- Click on "Create New User" under the login form.
- Create a new user (this will be your root user).
- Verify that you can log in with your new user. You will not have access to any accounts yet.
- Edit management-console/resources/sql/make-user-root.sql by replacing the text 'your-root-username-here' with the username you just created.
- Login with the user you created
- Click on Root Console link in the upper right corner.
- Click on Global Properties
- Click Edit, enter the ARN of the topic you created above as well as the CloudFront settings and click save.
- NB: the CloudFront key path can refer to an s3 url: ie s3://<bucket>/path/to/item.
- Also be sure that the AWS credentials have access to the specified bucket.
- Click DuraCloud Mill tab and enter the appropriate settings.
- Create an account via the Accounts tab.