Configuring the IBM Aspera NodeD Service
The IBM Aspera NodeD Service handles HTTP/HTTPS requests to HST Server. You can configure server settings including the hostname, HTTP/HTTPS ports, the address and port of the Redis database, and SSL certificates.
Configuration Methods
The server can be configured for the Node API by using the
asconfigurator command-line tool or by editing the
<server>
section of aspera.conf:
- Asconfigurator: Use the following syntax, substituting
option with the option from the following table and
value with the desired
value:
# /opt/aspera/bin/asconfigurator -x "set_server_data;option,value"
To view the current settings, run the following command:
# /opt/aspera/bin/ asuserdata -a
- Aspera.conf: Open it in a text editor with administrative privileges from
the following location:
/opt/aspera/etc/aspera.conf
See the sample aspera.conf following the table.
After manually editing aspera.conf, validate your XML by running the following command:
# /opt/aspera/bin/asuserdata -v
Node API Configuration Options
Important configuration considerations:
- Certain services must be restarted for changes in the settings to take effect, as described in the To Activate Changes column. The commands to restart these services are given following the table.
- In addition to the Aspera server configuration, if you plan to transfer many small files with the Node API, you might need to increase the number of file descriptors available on your system. If too few descriptors are available, the Redis database and the transfer fail. For instructions, see Node API Transfers of Many Small Files Fails.
asconfigurator option |
Description and Values | To Activate Changes... |
---|---|---|
server_name |
Hostname or IP address. Default: hostname |
Restart asperanoded |
http_port |
HTTP service port. Value is an integer 1 - 65535, default 9091. This
setting is overridden by <listen> . |
Restart asperanoded |
https_port |
HTTPS service port. Value is an integer 1 - 65535, default 9092. This
setting is overridden by <listen> . |
Restart asperanoded |
enable_http |
Enable HTTP for the Node API services by setting to
true . Default: false. This setting is
overridden by <listen> . |
Restart asperanoded |
enable_https |
Enable HTTPS for the Node API services by setting to
true (default). This setting is overridden by
<listen> . |
Restart asperanoded |
workers |
Number of worker threads. Default: 20. | Restart asperanoded |
|
Number of ascp workers per transfer. Default: 1. | Restart asperanoded |
transfers_retry_duration |
If a transfer fails, node will try to restart it for the specified time, default 20m. If a transfer restarts and makes some progress, then the retry timer is reset and the next time if fails, it will again try to restart it for 'retry_duration'. The backoff interval for retrying within this duration is internal to the application, and the number of retries may vary depending on the transfer queue. | Restart asperanoded |
transfers_retry_all_failures |
Setting to true will retry all transfers, including
transfers otherwise considered unretriable. Default:
false . |
Restart asperanoded |
listen |
To bind asperanoded on a specific address (or addresses), specify a
comma-delimited list of listening ports. Ports have the format
[ip_address:]port[s] . To specify a secure port, add 's' to the
end of the port number, for example 127.0.0.1:9092s . The IP address is optional; however, if no IP address is specified then the port binds to all network interfaces on the server, rather than to the single address. Setting this option overrides |
Restart asperanoded |
cert_file |
Full pathname of the SSL certificate, which must be in .pem
format. Default: /opt/aspera/etc/aspera_server_cert.pem |
Restart asperanoded |
max_response_entries |
Maximum number of entries to return in a response. Default: 1000. | Reload node configuration. |
max_response_time |
Maximum amount of time to wait for a long-running operation. Default: 10. | Reload node configuration. |
db_dir |
Path to the directory where the database file is saved. Before changing
this value, you should back up your database. See Backing up and Restoring the Node User Database Records. Default: /opt/aspera/var |
Restart asperanoded and the Redis database |
db_port |
Database service port. Value is an integer 1 - 65535, default: 31415. Before changing this value, you should back up your database. See Backing up and Restoring the Node User Database Records. | Restart asperanoded and the Redis database |
ssl_ciphers |
The SSL encryption ciphers that the server will allow, each separated
by a colon (:). Default: all of the following:
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA This option may also be set in the <client> section, in which case, when this machine functions as a client, the specified ciphers are requests to the server. If any of the ciphers in the server's allow list coincide with those in the client's request list, communication is allowed; otherwise it is denied. If you override this setting, the
override is always used. However, if you do not override it, the default
setting depends on the settings for |
Restart asperanoded |
ssl_protocol |
The SSL protocol versions that the server will allow. This option may also be set in
the <client> section, in which case, when this machine is a
client, the specified protocols function as requests to the server. If any
of the protocols in the server's allow list coincide with those in the
client's request list, communication is allowed; otherwise it is
denied. Supported values: tlsv1, tlsv1.1, and tlsv1.2. Default: tlsv1. |
Restart asperanoded |
activity_logging |
If true, enable querying transfers by using GET /ops/transfers or to retrieve usage data by using GET /usage. Default is false. | Restart asperanoded |
activity_event_logging |
If true, allow the Node API to query transfers that are associated with this access key through the /events endpoint. The server configuration can be overridden by the access key configuration. This option must be enabled for event reporting to IBM Aspera on Cloud. Default is false. | Restart asperanoded |
files_recursive_counts_enabled |
If true, enable recursive counts. This option must be enabled for event reporting to IBM Aspera on Cloud. The server configuration can be overridden by the access key configuration. Default is false. | Restart asperanoded |
Example Node API Configuration in aspera.conf
<server>
<server_name>your_hostname</server_name>
<http_port>9091</http_port>
<https_port>9092</https_port>
<enable_http>false</enable_http>
<enable_https>true</enable_https>
<workers>20</workers>
<transfers_multi_session_default>1</transfers_multi_session_default>
<transfers_retry_all_failures>false</transfers_retry_all_failures>
<transfers_retry_duration>20m</transfers_retry_duration>
<listen> </listen>
<cert_file>/opt/aspera/etc/aspera_server_cert.pem</cert_file>
<max_response_entries>1000</max_response_entries>
<max_response_time_sec>10</max_response_time_sec>
<db_dir>/opt/aspera/var</db_dir>
<db_port>31415</db_port> <proxy>
...
</proxy>
<ssl_ciphers>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA:…:RC2-CBC-MD5</ssl_ciphers>
<ssl_protocol>tlsv1</ssl_protocol>
<activity_logging>true</activity_logging>
<activity_event_logging>true</activity_event_logging>
<files_recursive_counts_enabled>true</files_recursive_counts_enabled>
</server>
Restarting and Reloading Services
Restart asperanoded:
# /etc/init.d/asperanoded restart
Reload the Node Configuration:
# sudo /opt/aspera/bin/asnodeadmin --reload
Restart asperanoded and the Redis database:
- Stop asperanoded:
or for Linux systems that use init.d:# systemctl stop asperanoded
# service asperanoded stop
- Shutdown the
database:
# /opt/aspera/bin/asnodeadmin --db-shutdown
- Start asperanoded:
or for Linux systems that use init.d:# systemctl start asperanoded
# service asperanoded start