... | ... | @@ -5,55 +5,69 @@ In this section we illustrate typical system usage via the DM Station GUI (see t |
|
|
1. Setup environment by sourcing setup file.
|
|
|
`$ # After sourcing setup file, all DM commands will be in your path`
|
|
|
`$ source /opt/dm/etc/dm.setup.csh`
|
|
|
2. Create DM experiment, and upload data to the GPFS DDN storage:
|
|
|
`truffle1> # Experiment name must be unique and start with a letter.`
|
|
|
`truffle1> dm-5idd-upload --experiment=s5test-01 --data-directory=/data/2017-1/bedzyk`
|
|
|
`EXPERIMENT INFO`
|
|
|
`id=284 name=s5test-01`
|
|
|
`...`
|
|
|
3. Check status of your uploads:
|
|
|
`truffle1> # Use dm-list-uploads to get status of all uploads`
|
|
|
`truffle1> dm-list-uploads`
|
|
|
`id=50392f24-e7e9-4122-b94d-d7662c6c0ab9 experimentName=s5test-01`
|
|
|
`...`
|
|
|
4. Start monitoring directory for new files (DAQ mode):
|
|
|
`truffle1> # Any files already present in the specified data directory will be ignored. `
|
|
|
`truffle1> # The --dest-directory option indicates directory path relative to experiment root directory in storage`
|
|
|
`truffle1> dm-5idd-daq --data-directory=/opt/dm/test --experiment=s5test-01 --dest-directory=daqdata --duration=1h`
|
|
|
`id=ac392f24-e7e9-3712-b94d-d7662c6c0ab9 experimentName=s5test-01`
|
|
|
`...`
|
|
|
5. Check status of your DAQs:
|
|
|
`truffle1> # Use dm-list-daqs to get status of all DAQs`
|
|
|
`truffle1> dm-list-daqs`
|
|
|
`id=ac392f24-e7e9-3712-b94d-d7662c6c0ab9 experimentName=s5test-01`
|
|
|
`...`
|
|
|
6. Retrieve list of your cataloged file metadata, etc. Alternative way of viewing metadata catalog is via Mongo Express application (https://truffle1.dnd.aps.anl.gov:8182/db/dm):
|
|
|
`truffle1> dm-list-experiment-files --experiment=s5test-01`
|
|
|
`id=591f359171913f50b4df5f6d fileName=`
|
|
|
`...`
|
|
|
7. Check that you can see your files using Globus Online. Note that experiment files can be read only by those DM usernames that have been assigned a role within a given experiment.
|
|
|
a. Using your browser, open https://www.globus.org/
|
|
|
b. Sign in with your Globus username
|
|
|
c. Click on "Transfer Files"
|
|
|
d. Chose "aps#xstor" endpoint and click "Continue" in order to authenticate.
|
|
|
e. Authenticate with your DM username (typically "d<badge number>"). Use the same password that you use to access APS Beamline User Portal.
|
|
|
f. Navigate to experiment folder ("/gdata/dm/<experiment type>/<experiment name>", for the above example "/gdata/dm/5IDD/s5-test01".
|
|
|
2. Run the "dm-station-gui" command. This will allow you to create an experiment, upload data to the central storage system, see experiment files, etc.
|
|
|
`$ dm-station-gui`
|
|
|
3. Access files using Globus Online (see the [Getting Data From Globus](https://git.aps.anl.gov/DM/dm-docs/-/blob/master/getting_started/gettingDataFromGlobus.md) guide for more details). Note that experiment files can be read only by those DM usernames that have been assigned a role within a given experiment.
|
|
|
a. Using your browser, open https://www.globus.org/
|
|
|
b. Sign in with your Globus username
|
|
|
c. Under File Manager, chose "aps#data" as Collection and click "Continue" in order to authenticate.
|
|
|
d. Authenticate with your DM username (typically "d<badge number>"). Use the same password (APS Web Password) that you use to access APS Beamline User Portal.
|
|
|
e. Navigate to experiment folder. All experiments will be under the "/gdata/dm/DNDCAT" directory (e.g. "/gdata/dm/DNDCAT/test-5id-01)".
|
|
|
f. At this point you should be able to transfer files to any Globus endpoint that you have access to. Note that downloading files to your desktop or laptop requires installing [Globus Connect Personal](https://www.globus.org/globus-connect-personal) endpoint.
|
|
|
|
|
|
## Command Lines
|
|
|
|
|
|
In this section we list few most important DM commands that can be used from a terminal session or in scripts.
|
|
|
|
|
|
1. Create an experiment and upload data to the central storage system:
|
|
|
```
|
|
|
$ # Experiment name must be unique and start with a letter.
|
|
|
$ # Users can be added to experiment by specifying Beamline Scheduling System proposal id (--proposal-id option),
|
|
|
$ # or a list of users directly (--users option)
|
|
|
$ dm-dndcat-upload --experiment=test-dndcat-01 --data-directory=/opt/dm/test
|
|
|
```
|
|
|
2. Check status of your uploads:
|
|
|
```
|
|
|
$ dm-list-uploads
|
|
|
```
|
|
|
3. Start monitoring directory for new files (DAQ mode):
|
|
|
```
|
|
|
$ # Any files already present in the specified data directory will be ignored.
|
|
|
$ # The --dest-directory option indicates directory path relative to experiment root directory in storage
|
|
|
$ # Users can be added to experiment by specifying Beamline Scheduling System proposal id (--proposal-id option)
|
|
|
$ # or a list of users directly (--users option)
|
|
|
$ dm-dndcat-daq --data-directory=/opt/dm/test --experiment=test-dndcat-01 --dest-directory=daqdata --duration=1h
|
|
|
```
|
|
|
4. Check status of your DAQs:
|
|
|
```
|
|
|
$ dm-list-daqs
|
|
|
```
|
|
|
5. Retrieve list of your cataloged file metadata, etc. Alternative way of viewing metadata catalog is via Mongo Express application ([https://s5dm.xray.aps.anl.gov:8182/db/dm](https://s5dm.xray.aps.anl.gov:8182/db/dm)).
|
|
|
```
|
|
|
$ dm-list-experiment-files --experiment=test-dndcat-01
|
|
|
```
|
|
|
6. Add or remove users associated with your experiment.
|
|
|
```
|
|
|
$ # Use d<badge> when specifying usernames
|
|
|
$ dm-add-user-experiment-role --username=d225159 --experiment=test-dndcat-01 --role=User
|
|
|
$ dm-delete-user-experiment-role --username=d225159 --experiment=test-dndcat-01 --role=User
|
|
|
```
|
|
|
|
|
|
## System Administration
|
|
|
|
|
|
DM services are controlled using standard RHEL daemon scripts located under the /opt/dm/production/etc/init.d directory. Relevant scripts are:
|
|
|
|
|
|
* dm-daq-web-service (DAQ web service)
|
|
|
* dm-cat-web-service (Cataloging web service)
|
|
|
* dm-proc-web-service (Processing web service)
|
|
|
* dm-mongodb (MongoDB server)
|
|
|
* dm-mongo-express (Mongo Express web application)
|
|
|
* dm-nginx (Nginx server)
|
|
|
* dm-daq-services (controls all DAQ services)
|
|
|
- dm-daq-web-service (DAQ web service)
|
|
|
- dm-cat-web-service (Cataloging web service)
|
|
|
- dm-proc-web-service (Processing web service)
|
|
|
- dm-mongodb (MongoDB server)
|
|
|
- dm-mongo-express (Mongo Express web application)
|
|
|
- dm-nginx (Nginx server)
|
|
|
- dm-daq-services (controls all DAQ services)
|
|
|
|
|
|
Shown below is an example of DAQ Web Service restart:
|
|
|
|
|
|
`
|
|
|
```
|
|
|
truffle1> # Control scripts can be found in /opt/dm/production/etc/init.d directory.
|
|
|
truffle1> # Usage:
|
|
|
truffle1> /opt/dm/production/etc/init.d/dm-daq-web-service
|
... | ... | @@ -65,7 +79,7 @@ Stopping dm.DaqWebService daemon: [ OK ] |
|
|
Starting dm.DaqWebService daemon: [ OK ]
|
|
|
truffle1> /opt/dm/production/etc/init.d/dm-daq-web-service status
|
|
|
dm.DaqWebService (pid 29314) is running...
|
|
|
`
|
|
|
```
|
|
|
|
|
|
## Deployment Details
|
|
|
|
... | ... | |