Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Add a file system to the NEARLINE storage group
    1. Open a web browser, and navigate to the JMX console. e.g. http://localhost:8080/jmx-console
    2. Locate the "dcm4chee.archive" section, and click on "group=NEARLINE_STORAGE,service=FileSystemMgt"
    3. Scroll down to the "List of MBean Operations" section and find the "addRWFileSystem()" operation. Enter in a path for nearline storage. This will not actually be used, since we are going to store the files in S3, but we need to configure something here so that the system knows we are using the NEARLINE storage. I have entered: "tar:/storage/nearline". Note the tar prefix. This tells dcm4chee that all of the files going to this storage group will be tarred up.
    4. Click Invoke to create add the file system record into the database. #Configure
  2. Configure the FileCopy service
    The FileCopy service is responsible for physically copying files to your nearline storage. This is where we configure our particular plugin.
    1. Specify a value for the DestinationFileSystem. This value should equal the value you specified for your nearline storage file system so that dcm4chee knows that this FileCopy service is associated with that file system configuration. e.g. "tar:/storage/nearline"
    2. Specify a value for HSMModulServicename. This should be the JMX ObjectName of our S3 plugin module, and enables it for use within this service when storing and retrieving files. Enter: "dcm4chee.archive:service=FileCopyHSMModule,type=S3"
    3. Leave the FileStatus set to TO_ARCHIVE. This will be the status of files stored in S3. When the SyncFileStatus service runs and verifies that these files are stored properly, it will change the status to ARCHIVED.
    4. Click Apply Changes.
  3. Configure the TarRetriever service
    This service is responsible for fetching and extracting tar files from the nearline storage during retrieve requests.
    1. Specify a value for HSMModulServicename. This should be the JMX ObjectName of our S3 plugin module, and enables it for use within this service when storing and retrieving files. Enter: "dcm4chee.archive:service=FileCopyHSMModule,type=S3"
    2. Click Apply Changes.
  4. Configure the S3 HSMModule (service=FileCopyHSMModule,type=S3)
    Now we are ready to configure the S3 integration. Here are the main things to configure here:
    1. Amazon S3 bucket name
    2. Amazon AWS Access Key
    3. Amazon AWS Secret Key (this is write only, and you will not see a value after clicking Apply Changes)
    4. The Outgoing and Incoming directories in this configuration are temporary storage areas that are used for tarring and untarring files.
    5. Click Apply Changes.
  5. Configure the SyncFileStatus service
    This service will run periodically and verify the files that have been stored to S3. It will fetch the tar files and ensure that the correct files are contained within. Once it verifies the files, it will update the file status in the database to ARCHIVED.
    1. Specify a value for the MonitoredFileSystem. This value should equal the value you specified for your nearline storage file system so that dcm4chee knows that this service is associated with that file system configuration. e.g. "tar:/storage/nearline"
    2. Specify a value for HSMModulServicename. This should be the JMX ObjectName of our S3 plugin module, and enables it for use within this service when fetching tar files. Enter: "dcm4chee.archive:service=FileCopyHSMModule,type=S3"
    3. Specify a TaskInterval. It is set to NEVER by default, so you you should set it to a proper interval that is good for your workflow, preferably not during peak business hours.

...