sbcli-dev 4.0.12__zip → 4.0.14__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of sbcli-dev might be problematic. Click here for more details.

Files changed (149) hide show
  1. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/PKG-INFO +1 -1
  2. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/env_var +1 -1
  3. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/sbcli_dev.egg-info/PKG-INFO +1 -1
  4. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_cli/cli.py +0 -1
  5. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/main_distr_event_collector.py +6 -36
  6. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/storage_node_monitor.py +12 -1
  7. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/tasks_runner_restart.py +5 -2
  8. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_storage_node.py +2 -1
  9. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/README.md +0 -0
  10. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/pyproject.toml +0 -0
  11. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  12. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  13. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/sbcli_dev.egg-info/entry_points.txt +0 -0
  14. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/sbcli_dev.egg-info/requires.txt +0 -0
  15. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/sbcli_dev.egg-info/top_level.txt +0 -0
  16. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/setup.cfg +0 -0
  17. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/setup.py +0 -0
  18. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_cli/main.py +0 -0
  19. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/__init__.py +0 -0
  20. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/cluster_ops.py +0 -0
  21. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/cnode_client.py +0 -0
  22. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/compute_node_ops.py +0 -0
  23. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/constants.py +0 -0
  24. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/__init__.py +0 -0
  25. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  26. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/cluster_events.py +0 -0
  27. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/device_controller.py +0 -0
  28. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/device_events.py +0 -0
  29. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/events_controller.py +0 -0
  30. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/health_controller.py +0 -0
  31. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/lvol_controller.py +0 -0
  32. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/lvol_events.py +0 -0
  33. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/mgmt_events.py +0 -0
  34. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/pool_controller.py +0 -0
  35. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/pool_events.py +0 -0
  36. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  37. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/snapshot_events.py +0 -0
  38. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/storage_events.py +0 -0
  39. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/tasks_controller.py +0 -0
  40. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/controllers/tasks_events.py +0 -0
  41. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/distr_controller.py +0 -0
  42. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/kv_store.py +0 -0
  43. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/mgmt_node_ops.py +0 -0
  44. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/__init__.py +0 -0
  45. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/base_model.py +0 -0
  46. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/caching_node.py +0 -0
  47. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/cluster.py +0 -0
  48. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/compute_node.py +0 -0
  49. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/deployer.py +0 -0
  50. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/events.py +0 -0
  51. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/global_settings.py +0 -0
  52. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/iface.py +0 -0
  53. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/job_schedule.py +0 -0
  54. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/lvol_model.py +0 -0
  55. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/mgmt_node.py +0 -0
  56. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/nvme_device.py +0 -0
  57. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/pool.py +0 -0
  58. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/port_stat.py +0 -0
  59. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/snapshot.py +0 -0
  60. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/stats.py +0 -0
  61. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/models/storage_node.py +0 -0
  62. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/pci_utils.py +0 -0
  63. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/rpc_client.py +0 -0
  64. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/__init__.py +0 -0
  65. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  66. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  67. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  68. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/config_docker.sh +0 -0
  69. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/dashboard.yml +0 -0
  70. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  71. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  72. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  73. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  74. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  75. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  76. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/datasource.yml +0 -0
  77. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/db_config_double.sh +0 -0
  78. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/db_config_single.sh +0 -0
  79. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  80. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  81. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  82. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/haproxy.cfg +0 -0
  83. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/install_deps.sh +0 -0
  84. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/objstore.yml +0 -0
  85. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/prometheus.yml +0 -0
  86. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/run_ssh.sh +0 -0
  87. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/set_db_config.sh +0 -0
  88. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  89. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/__init__.py +0 -0
  90. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  91. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/caching_node_monitor.py +0 -0
  92. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/cap_monitor.py +0 -0
  93. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  94. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/device_monitor.py +0 -0
  95. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/health_check_service.py +0 -0
  96. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/install_service.sh +0 -0
  97. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/log_agg_service.py +0 -0
  98. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/lvol_monitor.py +0 -0
  99. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  100. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  101. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/new_device_discovery.py +0 -0
  102. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/port_stat_collector.py +0 -0
  103. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/remove_service.sh +0 -0
  104. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/service_template.service +0 -0
  105. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
  106. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  107. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  108. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  109. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  110. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/shell_utils.py +0 -0
  111. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/snode_client.py +0 -0
  112. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/storage_node_ops.py +0 -0
  113. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_core/utils.py +0 -0
  114. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/__init__.py +0 -0
  115. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/app.py +0 -0
  116. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/auth_middleware.py +0 -0
  117. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/__init__.py +0 -0
  118. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  119. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  120. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  121. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  122. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  123. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/snode_ops.py +0 -0
  124. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  125. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  126. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  127. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  128. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_device.py +0 -0
  129. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  130. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  131. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  132. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  133. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/caching_node_app.py +0 -0
  134. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/caching_node_app_k8s.py +0 -0
  135. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/node_utils.py +0 -0
  136. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/node_webapp.py +0 -0
  137. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/snode_app.py +0 -0
  138. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/snode_app_k8s.py +0 -0
  139. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/delete.py +0 -0
  140. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/deploy.py +0 -0
  141. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  142. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  143. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/is_up.py +0 -0
  144. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/list_deps.py +0 -0
  145. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/rpac.yaml +0 -0
  146. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/static/tst.py +0 -0
  147. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  148. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  149. {sbcli_dev-4.0.12 → sbcli_dev-4.0.14}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 4.0.12
3
+ Version: 4.0.14
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -1,5 +1,5 @@
1
1
  SIMPLY_BLOCK_COMMAND_NAME=sbcli-dev
2
- SIMPLY_BLOCK_VERSION=4.0.12
2
+ SIMPLY_BLOCK_VERSION=4.0.14
3
3
 
4
4
 
5
5
  SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:main-dev
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 4.0.12
3
+ Version: 4.0.14
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -1264,7 +1264,6 @@ class CLIWrapper:
1264
1264
  contact_point = args.contact_point
1265
1265
  grafana_endpoint = args.grafana_endpoint
1266
1266
  enable_node_affinity = args.enable_node_affinity
1267
- enable_node_affinity = True
1268
1267
 
1269
1268
  return cluster_ops.create_cluster(
1270
1269
  blk_size, page_size_in_blocks,
@@ -33,17 +33,8 @@ def process_device_event(event):
33
33
  if dev.status not in [NVMeDevice.STATUS_ONLINE, NVMeDevice.STATUS_READONLY]:
34
34
  logger.info(f"The storage device is not online, skipping. status: {dev.status}")
35
35
  event.status = 'skipped'
36
- node_status_event = {
37
- "timestamp": datetime.datetime.now().isoformat("T", "seconds") + 'Z',
38
- "event_type": "device_status",
39
- "storage_ID": storage_id,
40
- "status": dev.status}
41
- events = {"events": [node_status_event]}
42
- snode = db_controller.get_storage_node_by_id(node_id)
43
- rpc_client = RPCClient(snode.mgmt_ip, snode.rpc_port, snode.rpc_username, snode.rpc_password)
44
- ret = rpc_client.distr_status_events_update(events)
45
- if not ret:
46
- logger.warning("Failed to send event update")
36
+ n = db_controller.get_storage_node_by_id(node_id)
37
+ distr_controller.send_dev_status_event(dev, NVMeDevice.STATUS_UNAVAILABLE, n)
47
38
  return
48
39
 
49
40
  device = dev
@@ -57,30 +48,9 @@ def process_device_event(event):
57
48
  device_id = device.get_id()
58
49
  node = db_controller.get_storage_node_by_id(node_id)
59
50
  if device.node_id != node_id:
60
- logger.info(f"Removing remote storage id: {storage_id} from node: {node_id}")
61
- new_remote_devices = []
62
- rpc_client = RPCClient(node.mgmt_ip, node.rpc_port,
63
- node.rpc_username, node.rpc_password)
64
- for rem_dev in node.remote_devices:
65
- if rem_dev.get_id() == device.get_id():
66
- ctrl_name = rem_dev.remote_bdev[:-2]
67
- rpc_client.bdev_nvme_detach_controller(ctrl_name)
68
- else:
69
- new_remote_devices.append(rem_dev)
70
- node.remote_devices = new_remote_devices
71
- node.write_to_db(db_controller.kv_store)
72
- node_status_event = {
73
- "timestamp": datetime.datetime.now().isoformat("T", "seconds") + 'Z',
74
- "event_type": "device_status",
75
- "storage_ID": storage_id,
76
- "status": NVMeDevice.STATUS_UNAVAILABLE}
77
- events = {"events": [node_status_event]}
78
- ret = rpc_client.distr_status_events_update(events)
79
- if not ret:
80
- logger.warning("Failed to send event update")
81
-
82
- dev_node = db_controller.get_storage_node_by_id(device.node_id)
83
- if dev_node.status == StorageNode.STATUS_ONLINE:
51
+ logger.info(f"Setting storage id: {storage_id} unavailable")
52
+ distr_controller.send_dev_status_event(device, NVMeDevice.STATUS_UNAVAILABLE, node)
53
+ if device.status == NVMeDevice.STATUS_ONLINE:
84
54
  device_controller.device_set_io_error(device_id, True)
85
55
  device_controller.device_set_unavailable(device_id)
86
56
 
@@ -156,7 +126,7 @@ def start_event_collector_on_node(node_id):
156
126
  snode.rpc_port,
157
127
  snode.rpc_username,
158
128
  snode.rpc_password,
159
- timeout=10, retry=2)
129
+ timeout=5, retry=2)
160
130
 
161
131
  while True:
162
132
  page = 1
@@ -100,6 +100,16 @@ def update_cluster_status(cluster_id):
100
100
 
101
101
  def set_node_online(node):
102
102
  if node.status != StorageNode.STATUS_ONLINE:
103
+ # set devices online
104
+ for dev in node.nvme_devices:
105
+ if dev.status == NVMeDevice.STATUS_UNAVAILABLE:
106
+ device_controller.device_set_online(dev.get_id())
107
+
108
+ # set jm dev online
109
+ if snode.jm_device.status == JMDevice.STATUS_UNAVAILABLE:
110
+ device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_ONLINE)
111
+
112
+ # set node online
103
113
  storage_node_ops.set_node_status(node.get_id(), StorageNode.STATUS_ONLINE)
104
114
 
105
115
 
@@ -110,7 +120,8 @@ def set_node_offline(node):
110
120
 
111
121
  # set devices unavailable
112
122
  for dev in node.nvme_devices:
113
- device_controller.device_set_unavailable(dev.get_id())
123
+ if dev.status == NVMeDevice.STATUS_ONLINE:
124
+ device_controller.device_set_unavailable(dev.get_id())
114
125
 
115
126
  # set jm dev offline
116
127
  if snode.jm_device.status != JMDevice.STATUS_UNAVAILABLE:
@@ -178,7 +178,7 @@ def task_runner_node(task):
178
178
  ret = storage_node_ops.shutdown_storage_node(node.get_id(), force=True)
179
179
  if ret:
180
180
  logger.info(f"Node shutdown succeeded")
181
- time.sleep(60)
181
+ time.sleep(3)
182
182
 
183
183
  # resetting node
184
184
  logger.info(f"Restart node {node.get_id()}")
@@ -219,4 +219,7 @@ while True:
219
219
  tasks_events.task_updated(task)
220
220
  else:
221
221
  time.sleep(delay_seconds)
222
- delay_seconds *= 2
222
+ if task.retry <= 3 and task.function_name == JobSchedule.FN_DEV_RESTART:
223
+ delay_seconds *= 1
224
+ else:
225
+ delay_seconds *= 2
@@ -197,6 +197,7 @@ def storage_node_add():
197
197
  max_prov = req_data['max_prov']
198
198
  number_of_distribs = int(req_data.get('number_of_distribs', 4))
199
199
  disable_ha_jm = bool(req_data.get('disable_ha_jm', False))
200
+ enable_test_device = bool(req_data.get('enable_test_device', False))
200
201
 
201
202
  spdk_image = None
202
203
  if 'spdk_image' in req_data:
@@ -259,7 +260,7 @@ def storage_node_add():
259
260
  "num_partitions_per_dev": partitions,
260
261
  "jm_percent": jm_percent,
261
262
  "number_of_devices": number_of_devices,
262
- "enable_test_device": False,
263
+ "enable_test_device": enable_test_device,
263
264
  "number_of_distribs": number_of_distribs,
264
265
  "namespace": namespace,
265
266
  "enable_ha_jm": not disable_ha_jm})
File without changes
File without changes
File without changes
File without changes