Terrell Russell, Executive Director
Kory Draughn, Chief Technologist
iRODS Consortium
Delay Server Migration
Delay Server Migration
July 5-8, 2022
iRODS User Group Meeting 2022
Leuven, Belgium
iRODS Delay Queue
iRODS Delay Server Architecture
4.2.5
4.2.8
4.2.9
4.3.0
advanced_settings
* delay_server_sleep_time_in_seconds
* maximum_size_of_delay_queue_in_bytes
* number_of_concurrent_delay_rule_executors
* delay_rule_executors
upon complete / error
*
*
*
*
iRODS Delay Server Migration - Design Goals
iRODS Delay Server Migration - Approach
| namespace | option_name | option_value |
|---|---|---|
| delay_server | leader | <hostname> |
| delay_server | successor | <hostname> |
R_GRID_CONFIGURATION Table
iRODS Delay Server - Demo
$ hostname
05f4be918c0f
$ iadmin get_delay_server_info
{
"leader": "other.server.example.org",
"successor": ""
}
$ iadmin set_delay_server $(hostname)
$ iadmin get_delay_server_info
{
"leader": "other.server.example.org",
"successor": "05f4be918c0f"
}
$ iadmin get_delay_server_info
{
"leader": "05f4be918c0f",
"successor": ""
}
iRODS Delay Server Algorithm
if self == leader
if successor defined and not self
gracefully finish and exit
else
if necessary, start irodsDelayServer
else if self == successor
run health check on leader
if leader is not running
promote self to leader in iCAT
else
save health stats
else
if necessary, gracefully finish and exit| namespace | option_name | option_value |
|---|---|---|
| delay_server | leader | <hostname> |
| delay_server | successor | <hostname> |
R_GRID_CONFIGURATION Table
$ iadmin set_delay_server <hostname>
iRODS Delay Server - Dark Alleys and Glory
Dark Alleys
Glory
Future Work
Questions?
Thank you!