sbcli-dev 3.8.57__zip → 3.8.58__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.
Files changed (150) hide show
  1. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/PKG-INFO +1 -1
  2. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/env_var +1 -1
  3. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/sbcli_dev.egg-info/PKG-INFO +1 -1
  4. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/health_controller.py +22 -9
  5. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/health_check_service.py +21 -1
  6. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/storage_node_ops.py +8 -6
  7. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/README.md +0 -0
  8. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/pyproject.toml +0 -0
  9. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  10. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  11. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/sbcli_dev.egg-info/entry_points.txt +0 -0
  12. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/sbcli_dev.egg-info/requires.txt +0 -0
  13. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/sbcli_dev.egg-info/top_level.txt +0 -0
  14. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/setup.cfg +0 -0
  15. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/setup.py +0 -0
  16. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_cli/cli.py +0 -0
  17. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_cli/main.py +0 -0
  18. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/__init__.py +0 -0
  19. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/cluster_ops.py +0 -0
  20. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/cnode_client.py +0 -0
  21. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/compute_node_ops.py +0 -0
  22. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/constants.py +0 -0
  23. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/__init__.py +0 -0
  24. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  25. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/cluster_events.py +0 -0
  26. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/device_controller.py +0 -0
  27. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/device_events.py +0 -0
  28. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/events_controller.py +0 -0
  29. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/lvol_controller.py +0 -0
  30. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/lvol_events.py +0 -0
  31. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/mgmt_events.py +0 -0
  32. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/pool_controller.py +0 -0
  33. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/pool_events.py +0 -0
  34. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  35. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/snapshot_events.py +0 -0
  36. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/storage_events.py +0 -0
  37. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/tasks_controller.py +0 -0
  38. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/controllers/tasks_events.py +0 -0
  39. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/distr_controller.py +0 -0
  40. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/kv_store.py +0 -0
  41. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/mgmt_node_ops.py +0 -0
  42. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/__init__.py +0 -0
  43. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/base_model.py +0 -0
  44. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/caching_node.py +0 -0
  45. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/cluster.py +0 -0
  46. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/compute_node.py +0 -0
  47. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/deployer.py +0 -0
  48. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/events.py +0 -0
  49. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/global_settings.py +0 -0
  50. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/iface.py +0 -0
  51. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/job_schedule.py +0 -0
  52. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/lvol_model.py +0 -0
  53. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/mgmt_node.py +0 -0
  54. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/nvme_device.py +0 -0
  55. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/pool.py +0 -0
  56. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/port_stat.py +0 -0
  57. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/snapshot.py +0 -0
  58. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/stats.py +0 -0
  59. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/models/storage_node.py +0 -0
  60. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/pci_utils.py +0 -0
  61. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/rpc_client.py +0 -0
  62. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/__init__.py +0 -0
  63. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  64. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  65. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  66. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/config_docker.sh +0 -0
  67. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/dashboard.yml +0 -0
  68. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  69. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  70. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  71. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  72. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  73. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  74. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/datasource.yml +0 -0
  75. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/db_config_double.sh +0 -0
  76. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/db_config_single.sh +0 -0
  77. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  78. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  79. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  80. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/haproxy.cfg +0 -0
  81. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/install_deps.sh +0 -0
  82. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/objstore.yml +0 -0
  83. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/prometheus.yml +0 -0
  84. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/run_ssh.sh +0 -0
  85. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/set_db_config.sh +0 -0
  86. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  87. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/__init__.py +0 -0
  88. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  89. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/caching_node_monitor.py +0 -0
  90. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/cap_monitor.py +0 -0
  91. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  92. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/device_monitor.py +0 -0
  93. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/distr_event_collector.py +0 -0
  94. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/install_service.sh +0 -0
  95. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/log_agg_service.py +0 -0
  96. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/lvol_monitor.py +0 -0
  97. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  98. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  99. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  100. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/new_device_discovery.py +0 -0
  101. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/port_stat_collector.py +0 -0
  102. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/remove_service.sh +0 -0
  103. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/service_template.service +0 -0
  104. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
  105. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/storage_node_monitor.py +0 -0
  106. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  107. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  108. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  109. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  110. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  111. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/shell_utils.py +0 -0
  112. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/snode_client.py +0 -0
  113. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_core/utils.py +0 -0
  114. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/__init__.py +0 -0
  115. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/app.py +0 -0
  116. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/auth_middleware.py +0 -0
  117. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/__init__.py +0 -0
  118. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  119. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  120. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  121. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  122. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  123. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/snode_ops.py +0 -0
  124. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  125. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  126. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  127. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  128. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_device.py +0 -0
  129. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  130. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  131. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  132. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  133. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  134. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/caching_node_app.py +0 -0
  135. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/caching_node_app_k8s.py +0 -0
  136. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/node_utils.py +0 -0
  137. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/node_webapp.py +0 -0
  138. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/snode_app.py +0 -0
  139. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/snode_app_k8s.py +0 -0
  140. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/delete.py +0 -0
  141. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/deploy.py +0 -0
  142. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  143. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  144. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/is_up.py +0 -0
  145. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/list_deps.py +0 -0
  146. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/rpac.yaml +0 -0
  147. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/static/tst.py +0 -0
  148. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  149. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  150. {sbcli_dev-3.8.57 → sbcli_dev-3.8.58}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 3.8.57
3
+ Version: 3.8.58
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=3.8.57
2
+ SIMPLY_BLOCK_VERSION=3.8.58
3
3
 
4
4
 
5
5
  SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:main
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 3.8.57
3
+ Version: 3.8.58
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -160,13 +160,12 @@ def check_node(node_id, with_devices=True):
160
160
  else:
161
161
  logger.info(f"Node device count: {len(snode.nvme_devices)}")
162
162
  for dev in snode.nvme_devices:
163
- ret = check_device(dev.get_id())
164
163
  if dev.status in [NVMeDevice.STATUS_ONLINE, NVMeDevice.STATUS_UNAVAILABLE]:
164
+ ret = check_device(dev.get_id())
165
165
  node_devices_check &= ret
166
166
  print("*" * 100)
167
167
 
168
168
  logger.info(f"Node remote device: {len(snode.remote_devices)}")
169
-
170
169
  rpc_client = RPCClient(
171
170
  snode.mgmt_ip, snode.rpc_port,
172
171
  snode.rpc_username, snode.rpc_password,
@@ -177,14 +176,28 @@ def check_node(node_id, with_devices=True):
177
176
  logger.info(f"Checking bdev: {remote_device.remote_bdev} ... ok")
178
177
  else:
179
178
  logger.info(f"Checking bdev: {remote_device.remote_bdev} ... not found")
180
- # node_remote_devices_check &= bool(ret)
179
+ node_remote_devices_check &= bool(ret)
180
+
181
181
  if snode.jm_device:
182
182
  jm_device = snode.jm_device
183
+ logger.info(f"Node node jm: {jm_device}")
183
184
  ret = check_jm_device(jm_device.get_id())
184
185
  if ret:
185
186
  logger.info(f"Checking jm bdev: {jm_device.jm_bdev} ... ok")
186
187
  else:
187
188
  logger.info(f"Checking jm bdev: {jm_device.jm_bdev} ... not found")
189
+ node_devices_check &= ret
190
+
191
+ if snode.enable_ha_jm:
192
+ logger.info(f"Node remote JMs: {len(snode.remote_jm_devices)}")
193
+ for remote_device in snode.remote_jm_devices:
194
+ ret = rpc_client.get_bdevs(remote_device.remote_bdev)
195
+ if ret:
196
+ logger.info(f"Checking bdev: {remote_device.remote_bdev} ... ok")
197
+ else:
198
+ logger.info(f"Checking bdev: {remote_device.remote_bdev} ... not found")
199
+ node_remote_devices_check &= bool(ret)
200
+
188
201
  lvstore_check = True
189
202
  if snode.lvstore and snode.lvstore_stack:
190
203
  distribs_list = []
@@ -196,7 +209,7 @@ def check_node(node_id, with_devices=True):
196
209
  for distr in distribs_list:
197
210
  ret = rpc_client.get_bdevs(distr)
198
211
  if ret:
199
- logger.info("Checking distr bdev : {distr} ... ok")
212
+ logger.info(f"Checking distr bdev : {distr} ... ok")
200
213
  logger.info("Checking Distr map ...")
201
214
  ret = rpc_client.distr_get_cluster_map(distr)
202
215
  if not ret:
@@ -211,19 +224,19 @@ def check_node(node_id, with_devices=True):
211
224
  logger.error("Failed to parse distr cluster map")
212
225
  lvstore_check &= is_passed
213
226
  else:
214
- logger.info("Checking distr bdev : {distr} ... not found")
227
+ logger.info(f"Checking distr bdev : {distr} ... not found")
215
228
  lvstore_check = False
216
229
  ret = rpc_client.get_bdevs(snode.raid)
217
230
  if ret:
218
- logger.info("Checking raid bdev: {snode.raid} ... ok")
231
+ logger.info(f"Checking raid bdev: {snode.raid} ... ok")
219
232
  else:
220
- logger.info("Checking raid bdev: {snode.raid} ... not found")
233
+ logger.info(f"Checking raid bdev: {snode.raid} ... not found")
221
234
  lvstore_check = False
222
235
  ret = rpc_client.bdev_lvol_get_lvstores(snode.lvstore)
223
236
  if ret:
224
- logger.info("Checking lvstore: {snode.lvstore} ... ok")
237
+ logger.info(f"Checking lvstore: {snode.lvstore} ... ok")
225
238
  else:
226
- logger.info("Checking lvstore: {snode.lvstore} ... not found")
239
+ logger.info(f"Checking lvstore: {snode.lvstore} ... not found")
227
240
  lvstore_check = False
228
241
 
229
242
  return is_node_online and node_devices_check and node_remote_devices_check and lvstore_check
@@ -114,7 +114,27 @@ while True:
114
114
  logger.info(f"Checking bdev: {remote_device.remote_bdev} ... ok")
115
115
  else:
116
116
  logger.info(f"Checking bdev: {remote_device.remote_bdev} ... not found")
117
- # node_remote_devices_check &= bool(ret)
117
+ node_remote_devices_check &= bool(ret)
118
+
119
+ if snode.jm_device:
120
+ jm_device = snode.jm_device
121
+ logger.info(f"Node node jm: {jm_device}")
122
+ ret = health_controller.check_jm_device(jm_device.get_id())
123
+ if ret:
124
+ logger.info(f"Checking jm bdev: {jm_device.jm_bdev} ... ok")
125
+ else:
126
+ logger.info(f"Checking jm bdev: {jm_device.jm_bdev} ... not found")
127
+ node_devices_check &= ret
128
+
129
+ if snode.enable_ha_jm:
130
+ logger.info(f"Node remote JMs: {len(snode.remote_jm_devices)}")
131
+ for remote_device in snode.remote_jm_devices:
132
+ ret = rpc_client.get_bdevs(remote_device.remote_bdev)
133
+ if ret:
134
+ logger.info(f"Checking bdev: {remote_device.remote_bdev} ... ok")
135
+ else:
136
+ logger.info(f"Checking bdev: {remote_device.remote_bdev} ... not found")
137
+ node_remote_devices_check &= bool(ret)
118
138
 
119
139
  health_check_status = is_node_online and node_devices_check and node_remote_devices_check
120
140
  set_node_health_check(snode, health_check_status)
@@ -244,13 +244,15 @@ def _search_for_partitions(rpc_client, nvme_device):
244
244
 
245
245
  def _create_jm_stack_on_raid(rpc_client, jm_nvme_bdevs, snode, after_restart):
246
246
  raid_bdev = f"raid_jm_{snode.get_id()}"
247
- raid_level = "0"
248
247
  if len(jm_nvme_bdevs) > 1:
249
248
  raid_level = "1"
250
- ret = rpc_client.bdev_raid_create(raid_bdev, jm_nvme_bdevs, raid_level)
251
- if not ret:
252
- logger.error(f"Failed to create raid_jm_{snode.get_id()}")
253
- return False
249
+ ret = rpc_client.bdev_raid_create(raid_bdev, jm_nvme_bdevs, raid_level)
250
+ if not ret:
251
+ logger.error(f"Failed to create raid_jm_{snode.get_id()}")
252
+ return False
253
+ else:
254
+ raid_bdev = jm_nvme_bdevs[0]
255
+
254
256
  alceml_name = f"alceml_jm_{snode.get_id()}"
255
257
 
256
258
  nvme_bdev = raid_bdev
@@ -323,7 +325,7 @@ def _create_jm_stack_on_raid(rpc_client, jm_nvme_bdevs, snode, after_restart):
323
325
  logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
324
326
  return False
325
327
 
326
- ret = rpc_client.get_bdevs(raid_bdev)
328
+ ret = rpc_client.get_bdevs(jm_bdev)
327
329
 
328
330
  return JMDevice({
329
331
  'uuid': alceml_id,
File without changes
File without changes
File without changes
File without changes