... | ... | @@ -69,6 +69,8 @@ The simplest setup uses a single node for all components. For example purposes |
|
|
5. A diskcacheapi server
|
|
|
* Listening on port :20222
|
|
|
|
|
|
It is assumed also that frames are made available under /frames (it may be a local disk or a network mount), and that the available frame types are X_X1-R.
|
|
|
|
|
|
### Create the nds account
|
|
|
|
|
|
<pre>
|
... | ... | @@ -169,6 +171,73 @@ systemctl enable nds-ha-proxy |
|
|
systemctl start nds-ha-proxy
|
|
|
</pre>
|
|
|
|
|
|
### Install of the diskcacheapi server
|
|
|
|
|
|
Diskcache tracks the location of frames on disk (local or remote). As such we need this to know where the frames are.
|
|
|
|
|
|
Install diskcache and create a data directory
|
|
|
<pre>
|
|
|
apt-get install ldas-tools-diskcacheapi
|
|
|
mkdir /var/lib/diskcache
|
|
|
mkdir /var/log/diskcache
|
|
|
chown nds:nds /var/lib/diskcache
|
|
|
chown nds:nds /var/log/diskcache
|
|
|
</pre>
|
|
|
|
|
|
Create a config file /etc/diskcache.rsc
|
|
|
<pre>
|
|
|
SERVER_PORT=20222
|
|
|
CONCURRENCY=1
|
|
|
HOT_DIRECTORY_AGE_SEC=4200
|
|
|
HOT_DIRECTORY_SCAN_INTERVAL_SEC=80
|
|
|
LOG=diskcache_sample.log
|
|
|
LOG_DIRECTORY=/var/log/diskcache
|
|
|
LOG_ROTATE_ENTRY_COUNT=10000
|
|
|
OUTPUT_ASCII=/var/lib/diskcache/frame_cache_dump
|
|
|
OUTPUT_ASCII_VERSION=0x00FF
|
|
|
OUTPUT_BINARY=/var/lib/diskcache/frame_cache_dump.dat
|
|
|
OUTPUT_BINARY_VERSION=0x0101
|
|
|
RWLOCK_INTERVAL_MS=2000
|
|
|
RWLOCK_TIMEOUT_MS=0
|
|
|
|
|
|
SCAN_INTERVAL=16000
|
|
|
STAT_TIMEOUT=5
|
|
|
[EXTENSIONS]
|
|
|
.gwf
|
|
|
|
|
|
[EXCLUDED_PATTERN]
|
|
|
.*[.]tmp
|
|
|
.*[.]_COPYING_
|
|
|
|
|
|
[EXCLUDED_DIRECTORIES]
|
|
|
lost+found
|
|
|
|
|
|
[MOUNT_POINTS]
|
|
|
/frames
|
|
|
</pre>
|
|
|
|
|
|
Create a systemd unit file /etc/systemctl/system/diskcache.service
|
|
|
<pre>
|
|
|
[Unit]
|
|
|
Description=Frame lookup service
|
|
|
After=network.target
|
|
|
|
|
|
[Service]
|
|
|
User=nds
|
|
|
ExecStart=/usr/bin/diskcache --host localhost daemon --configuration-file /etc/diskcache.rsc
|
|
|
Restart=always
|
|
|
|
|
|
[Install]
|
|
|
WantedBy=multi-user.target
|
|
|
</pre>
|
|
|
|
|
|
|
|
|
<pre>
|
|
|
systemctl daemon-reload
|
|
|
systemctl enable diskcache
|
|
|
systemctl start diskcache
|
|
|
</pre>
|
|
|
|
|
|
### Install of the metadata server
|
|
|
|
|
|
The metadata server tracks the channel history over time. This tracks the channels when channels exist and what frame types they exist in.
|
... | ... | @@ -184,12 +253,45 @@ Description=NDS metadata server |
|
|
After=remote-fs.target network-online.target
|
|
|
|
|
|
[Service]
|
|
|
# note the diskcache and channel-lists will need some better defining
|
|
|
# and do not yet work in this example.
|
|
|
ExecStart=/usr/bin/nds_metadata_server -listen 127.0.0.1:31202 -diskcache nds.dcs:11300 -channel-lists /var/lib/ndsmetadata/channel-lists.txt
|
|
|
# note need to get the channel lists and indexing done
|
|
|
ExecStart=/usr/bin/nds_metadata_server -listen 127.0.0.1:31202 -diskcache localhost:20222 -channel-lists /var/lib/ndsmetadata/channel-lists.txt
|
|
|
User=nds
|
|
|
LimitNOFILE=40000:40000
|
|
|
|
|
|
[Install]
|
|
|
WantedBy=multi-user.target
|
|
|
</pre>
|
|
|
|
|
|
__Note__ this really work work until the frames are indexed.
|
|
|
|
|
|
### Install an IO node
|
|
|
|
|
|
<pre>
|
|
|
apt-get install nds2-io-node
|
|
|
</pre>
|
|
|
_Note_ nds-metadata-server pulls in nds2-io-node, so this for documentation only.
|
|
|
|
|
|
Add a systemd service file /etc/systemd/system/nds2-io-node.service.
|
|
|
<pre>
|
|
|
[Unit]
|
|
|
Description=NDS2 io node
|
|
|
After=remote-fs.target network-online.target
|
|
|
|
|
|
[Service]
|
|
|
ExecStart=/usr/bin/nds2-io-node --remote-config localhost:31205:default
|
|
|
User=nds
|
|
|
LimitNOFILE=40000:40000
|
|
|
|
|
|
[Install]
|
|
|
WantedBy=multi-user.target
|
|
|
</pre>
|
|
|
|
|
|
This requires the nds-proxy to be running as it gets config from the proxy's admin interface.
|
|
|
|
|
|
### Configuring memchached
|
|
|
|
|
|
TODO, things will work, just slower until this is turned on
|
|
|
|
|
|
### Indexing frames
|
|
|
|
|
|
TODO |
|
|
\ No newline at end of file |