You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Repairing is a process which allows for node to node resolution of corrupt files in Chronopolis. Currently a node administrator must choose which files to repair and which node to repair from. This is to prevent unnecessary repairs (e.g. in the event of a filesystem being offline), and also to allow for discussion around the collection before it is repaired.

Links

Installation

Download and install the rpm

Installation Notes

The rpm creates a chronopolis user if it does not exist, and creates the following files/directories:

/etc/chronopolis
/etc/chronopolis/repair.yml
/etc/init.d/chron-repair
/usr/lib/chronopolis
/usr/lib/chronopolis/chron-repair.jar
/var/log/chronopoli

Configuration

The configuration for the repair service is done in the repair.yml under /etc/chronopolis

repair.yml
# cron timers for the scheduled jobs; see http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/crontrigger.html for documentation
cron:
  repair: 0 0 * * * *
  fulfillment: 0 0 * * * *

# storage locations for the repair to know where to stage data (for pulling without overwriting),
# as well as where to write data in when it has been validated
repair:
  stage: /data/chronopolis/backup
  preservation: /data/chronopolis/perservation

# ingest server configuration for communication
ingest:
  endpoint: http://localhost:8000
  username: my-user
  password: my-pass

# rsync fulfillment configuration
#   path: the path to substitute in when creating the rsync link. e.x. ucsd@test-server.umiacs.umd.edu:bags/...
#   stage: the storage area to stage bags to
#   server: the server to rsync from. e.x. ucsd@test-server.umiacs.umd.edu:bags/...
# note that the username for the rsync is determined by whoever requested the repair
rsync:
  path: bags/
  stage: /export/outgoing/bags
  server: test-server.umiacs.umd.edu

# ace configuration
# am: the local ace-am endpoint to connect to for communication with ace
ace:
  am: http://localhost:8080/ace-am/
  user: ace
  password: ace

# the active profiles to use
# develop|default : if running in development mode or production
# rsync : if fulfilling with rsync or ace
spring.profiles.active: default, rsync

# the location of the main repair log
logging.file: /var/log/chronopolis/repair.log

Running

The Repair Service ships with a SysV style init script and has the basic start/stop/restart options. Customization of the script may be necessary if your java location needs to be specified.

  • service chron-repair start|stop|restart

Release Notes

Release 1.5.0

26 June, 2017

Initial release for the Chronopolis Medic (Repair) software to process Repair requests on the Chronopolis Ingest Server

  • Repairs have namespaced areas when staging as to not interfere with other ongoing Repairs
  • Staging files done via symbolic links (other staging options supported later)
  • Rsync support for the main protocol for distributing files (other protocols supported later)
  • Comparison with a nodes ACE-AM before files are moved into production storage
  • Staging areas for both repairing and fulfilling nodes cleaned upon completion of a Repair
  • No labels