sbcli-dev 6.2.6__tar.gz → 6.2.7__tar.gz

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 (153) hide show
  1. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/PKG-INFO +1 -1
  2. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/env_var +1 -1
  3. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/sbcli_dev.egg-info/PKG-INFO +1 -1
  4. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/lvol_controller.py +2 -0
  5. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/storage_node_monitor.py +1 -1
  6. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/storage_node_self_lock.py +22 -17
  7. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/snode_ops.py +0 -2
  8. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/README.md +0 -0
  9. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/pyproject.toml +0 -0
  10. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  11. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  12. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/sbcli_dev.egg-info/entry_points.txt +0 -0
  13. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/sbcli_dev.egg-info/requires.txt +0 -0
  14. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/sbcli_dev.egg-info/top_level.txt +0 -0
  15. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/setup.cfg +0 -0
  16. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/setup.py +0 -0
  17. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_cli/cli.py +0 -0
  18. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_cli/main.py +0 -0
  19. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/__init__.py +0 -0
  20. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/cluster_ops.py +0 -0
  21. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/cnode_client.py +0 -0
  22. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/compute_node_ops.py +0 -0
  23. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/constants.py +0 -0
  24. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/__init__.py +0 -0
  25. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  26. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/cluster_events.py +0 -0
  27. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/device_controller.py +0 -0
  28. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/device_events.py +0 -0
  29. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/events_controller.py +0 -0
  30. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/health_controller.py +0 -0
  31. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/lvol_events.py +0 -0
  32. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/mgmt_events.py +0 -0
  33. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/pool_controller.py +0 -0
  34. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/pool_events.py +0 -0
  35. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  36. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/snapshot_events.py +0 -0
  37. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/storage_events.py +0 -0
  38. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/tasks_controller.py +0 -0
  39. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/controllers/tasks_events.py +0 -0
  40. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/distr_controller.py +0 -0
  41. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/kv_store.py +0 -0
  42. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/mgmt_node_ops.py +0 -0
  43. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/__init__.py +0 -0
  44. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/base_model.py +0 -0
  45. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/caching_node.py +0 -0
  46. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/cluster.py +0 -0
  47. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/compute_node.py +0 -0
  48. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/deployer.py +0 -0
  49. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/events.py +0 -0
  50. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/global_settings.py +0 -0
  51. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/iface.py +0 -0
  52. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/job_schedule.py +0 -0
  53. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/lvol_model.py +0 -0
  54. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/mgmt_node.py +0 -0
  55. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/nvme_device.py +0 -0
  56. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/pool.py +0 -0
  57. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/port_stat.py +0 -0
  58. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/snapshot.py +0 -0
  59. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/stats.py +0 -0
  60. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/models/storage_node.py +0 -0
  61. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/pci_utils.py +0 -0
  62. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/rpc_client.py +0 -0
  63. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/__init__.py +0 -0
  64. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  65. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  66. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  67. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/config_docker.sh +0 -0
  68. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/dashboard.yml +0 -0
  69. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  70. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  71. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  72. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  73. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  74. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  75. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/datasource.yml +0 -0
  76. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/db_config_double.sh +0 -0
  77. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/db_config_single.sh +0 -0
  78. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/deploy_fdb.sh +0 -0
  79. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  80. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  81. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  82. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/foundation.yml +0 -0
  83. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/haproxy.cfg +0 -0
  84. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/install_deps.sh +0 -0
  85. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/objstore.yml +0 -0
  86. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/prepare_fdb.sh +0 -0
  87. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/prometheus.yml +0 -0
  88. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/run_ssh.sh +0 -0
  89. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/set_db_config.sh +0 -0
  90. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  91. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/__init__.py +0 -0
  92. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  93. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/caching_node_monitor.py +0 -0
  94. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/cap_monitor.py +0 -0
  95. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  96. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/device_monitor.py +0 -0
  97. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/health_check_service.py +0 -0
  98. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/install_service.sh +0 -0
  99. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/log_agg_service.py +0 -0
  100. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/lvol_monitor.py +0 -0
  101. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  102. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  103. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  104. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/new_device_discovery.py +0 -0
  105. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/port_stat_collector.py +0 -0
  106. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/remove_service.sh +0 -0
  107. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/service_template.service +0 -0
  108. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
  109. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  110. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  111. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  112. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  113. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  114. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/shell_utils.py +0 -0
  115. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/snode_client.py +0 -0
  116. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/storage_node_ops.py +0 -0
  117. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_core/utils.py +0 -0
  118. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/__init__.py +0 -0
  119. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/app.py +0 -0
  120. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/auth_middleware.py +0 -0
  121. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/__init__.py +0 -0
  122. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  123. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  124. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  125. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  126. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  127. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  128. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  129. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  130. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  131. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_device.py +0 -0
  132. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  133. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  134. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  135. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  136. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  137. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/caching_node_app.py +0 -0
  138. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/caching_node_app_k8s.py +0 -0
  139. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/node_utils.py +0 -0
  140. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/node_webapp.py +0 -0
  141. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/snode_app.py +0 -0
  142. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/snode_app_k8s.py +0 -0
  143. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/delete.py +0 -0
  144. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/deploy.py +0 -0
  145. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  146. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  147. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/is_up.py +0 -0
  148. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/list_deps.py +0 -0
  149. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/rpac.yaml +0 -0
  150. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/static/tst.py +0 -0
  151. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  152. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  153. {sbcli_dev-6.2.6 → sbcli_dev-6.2.7}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 6.2.6
3
+ Version: 6.2.7
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=6.2.6
2
+ SIMPLY_BLOCK_VERSION=6.2.7
3
3
 
4
4
  SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:main
5
5
  DOCKER_USER=hamdysimplyblock
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 6.2.6
3
+ Version: 6.2.7
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -1097,6 +1097,8 @@ def connect_lvol(uuid):
1097
1097
  "ip": ip,
1098
1098
  "port": port,
1099
1099
  "nqn": lvol.nqn,
1100
+ "reconnect-delay": constants.LVOL_NVME_CONNECT_RECONNECT_DELAY,
1101
+ "ctrl-loss-tmo": constants.LVOL_NVME_CONNECT_CTRL_LOSS_TMO,
1100
1102
  "connect": f"sudo nvme connect --reconnect-delay={constants.LVOL_NVME_CONNECT_RECONNECT_DELAY} "
1101
1103
  f"--ctrl-loss-tmo={constants.LVOL_NVME_CONNECT_CTRL_LOSS_TMO} --transport={transport} "
1102
1104
  f"--traddr={ip} --trsvcid={port} --nqn={lvol.nqn}",
@@ -279,7 +279,7 @@ while True:
279
279
 
280
280
  if ping_check and node_api_check and (not spdk_process or not node_rpc_check):
281
281
  # add node to auto restart
282
- if cluster.status == Cluster.STATUS_ACTIVE:
282
+ if cluster.status in [Cluster.STATUS_ACTIVE, Cluster.STATUS_DEGRADED, Cluster.STATUS_SUSPENDED]:
283
283
  tasks_controller.add_node_to_auto_restart(snode)
284
284
 
285
285
  update_cluster_status(cluster_id)
@@ -1,41 +1,46 @@
1
1
  # coding=utf-8
2
+ import json
3
+ import os
2
4
  import time
3
5
 
4
- import fdb
5
-
6
- from simplyblock_core import constants, utils
6
+ from simplyblock_core import utils
7
7
  from simplyblock_core.snode_client import SNodeClient
8
8
 
9
9
  logger = utils.get_logger(__name__)
10
10
 
11
11
  logger.info("Starting node monitor")
12
+
13
+ snode_api = SNodeClient("0.0.0.0:5000")
12
14
  MAX_RETRY = 6
13
15
  retry = MAX_RETRY
14
- error_open = False
15
- snode_api = SNodeClient("0.0.0.0:5000")
16
-
16
+ db_available = True
17
17
 
18
18
  while True:
19
19
 
20
- is_up, _ = snode_api.spdk_process_is_up()
20
+ try:
21
+ is_up, _ = snode_api.spdk_process_is_up()
22
+ except:
23
+ is_up = False
24
+
21
25
  if is_up:
22
- if error_open is True and retry <= 0:
26
+ if db_available is False and retry <= 0:
23
27
  snode_api.spdk_process_kill()
24
- error_open = False
25
28
  retry = MAX_RETRY
29
+
26
30
  else:
27
31
  try:
28
- fdb.api_version(constants.KVD_DB_VERSION)
29
- db = fdb.open(constants.KVD_DB_FILE_PATH)
30
- db.options.set_transaction_timeout(5)
31
- d = db.get_range_startswith(b"/", limit=1)
32
- logger.info("Open db ok")
33
- error_open = False
34
- retry = MAX_RETRY
32
+ data = os.popen("fdbcli --exec \"status json\"").read().strip()
33
+ data = json.loads(data)
34
+ db_available = data["client"]['database_status']['available']
35
35
  except Exception as e:
36
36
  logger.error(e)
37
+ db_available = False
38
+
39
+ if db_available:
40
+ logger.info("Open db ok")
41
+ retry = MAX_RETRY
42
+ else:
37
43
  logger.info("Open db error")
38
- error_open = True
39
44
  retry -= 1
40
45
 
41
46
  time.sleep(10)
@@ -217,7 +217,6 @@ def spdk_process_start():
217
217
  def spdk_process_kill():
218
218
  node_docker = get_docker_client()
219
219
  for cont in node_docker.containers.list(all=True):
220
- logger.debug(cont.attrs)
221
220
  if cont.attrs['Name'] == "/spdk" or cont.attrs['Name'] == "/spdk_proxy":
222
221
  cont.stop(timeout=5)
223
222
  cont.remove(force=True)
@@ -228,7 +227,6 @@ def spdk_process_kill():
228
227
  def spdk_process_is_up():
229
228
  node_docker = get_docker_client()
230
229
  for cont in node_docker.containers.list(all=True):
231
- logger.debug(cont.attrs)
232
230
  if cont.attrs['Name'] == "/spdk":
233
231
  status = cont.attrs['State']["Status"]
234
232
  is_running = cont.attrs['State']["Running"]
File without changes
File without changes
File without changes
File without changes