sbcli-dev 3.8.49__zip → 3.8.51__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 (149) hide show
  1. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/PKG-INFO +1 -1
  2. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/env_var +1 -1
  3. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/PKG-INFO +1 -1
  4. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/health_controller.py +2 -2
  5. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/distr_controller.py +5 -2
  6. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/storage_node.py +2 -0
  7. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/storage_node_monitor.py +40 -36
  8. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/utils.py +1 -1
  9. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/README.md +0 -0
  10. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/pyproject.toml +0 -0
  11. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  12. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  13. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/entry_points.txt +0 -0
  14. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/requires.txt +0 -0
  15. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/top_level.txt +0 -0
  16. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/setup.cfg +0 -0
  17. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/setup.py +0 -0
  18. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_cli/cli.py +0 -0
  19. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_cli/main.py +0 -0
  20. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/__init__.py +0 -0
  21. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/cluster_ops.py +0 -0
  22. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/cnode_client.py +0 -0
  23. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/compute_node_ops.py +0 -0
  24. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/constants.py +0 -0
  25. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/__init__.py +0 -0
  26. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  27. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/cluster_events.py +0 -0
  28. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/device_controller.py +0 -0
  29. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/device_events.py +0 -0
  30. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/events_controller.py +0 -0
  31. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/lvol_controller.py +0 -0
  32. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/lvol_events.py +0 -0
  33. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/mgmt_events.py +0 -0
  34. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/pool_controller.py +0 -0
  35. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/pool_events.py +0 -0
  36. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  37. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/snapshot_events.py +0 -0
  38. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/storage_events.py +0 -0
  39. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/tasks_controller.py +0 -0
  40. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/tasks_events.py +0 -0
  41. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/kv_store.py +0 -0
  42. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/mgmt_node_ops.py +0 -0
  43. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/__init__.py +0 -0
  44. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/base_model.py +0 -0
  45. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/caching_node.py +0 -0
  46. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/cluster.py +0 -0
  47. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/compute_node.py +0 -0
  48. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/deployer.py +0 -0
  49. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/events.py +0 -0
  50. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/global_settings.py +0 -0
  51. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/iface.py +0 -0
  52. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/job_schedule.py +0 -0
  53. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/lvol_model.py +0 -0
  54. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/mgmt_node.py +0 -0
  55. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/nvme_device.py +0 -0
  56. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/pool.py +0 -0
  57. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/port_stat.py +0 -0
  58. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/snapshot.py +0 -0
  59. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/stats.py +0 -0
  60. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/pci_utils.py +0 -0
  61. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/rpc_client.py +0 -0
  62. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/__init__.py +0 -0
  63. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  64. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  65. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  66. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/config_docker.sh +0 -0
  67. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboard.yml +0 -0
  68. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  69. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  70. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  71. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  72. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  73. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  74. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/datasource.yml +0 -0
  75. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/db_config_double.sh +0 -0
  76. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/db_config_single.sh +0 -0
  77. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  78. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  79. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  80. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/haproxy.cfg +0 -0
  81. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/install_deps.sh +0 -0
  82. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/objstore.yml +0 -0
  83. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/prometheus.yml +0 -0
  84. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/run_ssh.sh +0 -0
  85. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/set_db_config.sh +0 -0
  86. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  87. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/__init__.py +0 -0
  88. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  89. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/caching_node_monitor.py +0 -0
  90. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/cap_monitor.py +0 -0
  91. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  92. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/device_monitor.py +0 -0
  93. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/distr_event_collector.py +0 -0
  94. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/health_check_service.py +0 -0
  95. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/install_service.sh +0 -0
  96. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/log_agg_service.py +0 -0
  97. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/lvol_monitor.py +0 -0
  98. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  99. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  100. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  101. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/new_device_discovery.py +0 -0
  102. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/port_stat_collector.py +0 -0
  103. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/remove_service.sh +0 -0
  104. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/service_template.service +0 -0
  105. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  106. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  107. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  108. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  109. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  110. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/shell_utils.py +0 -0
  111. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/snode_client.py +0 -0
  112. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/storage_node_ops.py +0 -0
  113. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/__init__.py +0 -0
  114. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/app.py +0 -0
  115. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/auth_middleware.py +0 -0
  116. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/__init__.py +0 -0
  117. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  118. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  119. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  120. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  121. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  122. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/snode_ops.py +0 -0
  123. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  124. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  125. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  126. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  127. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_device.py +0 -0
  128. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  129. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  130. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  131. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  132. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  133. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/caching_node_app.py +0 -0
  134. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/caching_node_app_k8s.py +0 -0
  135. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/node_utils.py +0 -0
  136. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/node_webapp.py +0 -0
  137. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/snode_app.py +0 -0
  138. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/snode_app_k8s.py +0 -0
  139. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/delete.py +0 -0
  140. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/deploy.py +0 -0
  141. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  142. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  143. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/is_up.py +0 -0
  144. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/list_deps.py +0 -0
  145. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/rpac.yaml +0 -0
  146. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/tst.py +0 -0
  147. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  148. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  149. {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/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.49
3
+ Version: 3.8.51
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.49
2
+ SIMPLY_BLOCK_VERSION=3.8.51
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.49
3
+ Version: 3.8.51
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -82,7 +82,7 @@ def _check_node_rpc(rpc_ip, rpc_port, rpc_username, rpc_password, timeout=60, re
82
82
 
83
83
  def _check_node_api(ip):
84
84
  try:
85
- snode_api = SNodeClient(f"{ip}:5000", timeout=3, retry=1)
85
+ snode_api = SNodeClient(f"{ip}:5000", timeout=10, retry=2)
86
86
  logger.debug(f"Node API={ip}:5000")
87
87
  info, _ = snode_api.info()
88
88
  if info:
@@ -95,7 +95,7 @@ def _check_node_api(ip):
95
95
 
96
96
  def _check_spdk_process_up(ip):
97
97
  try:
98
- snode_api = SNodeClient(f"{ip}:5000", timeout=3, retry=1)
98
+ snode_api = SNodeClient(f"{ip}:5000", timeout=10, retry=2)
99
99
  logger.debug(f"Node API={ip}:5000")
100
100
  is_up, _ = snode_api.spdk_process_is_up()
101
101
  logger.debug(f"SPDK is {is_up}")
@@ -151,8 +151,11 @@ def parse_distr_cluster_map(map_string):
151
151
  }
152
152
  nd = db_controller.get_storage_node_by_id(node_id)
153
153
  if nd:
154
- data["Actual Status"] = nd.status
155
- if nd.status == status:
154
+ node_status = nd.status
155
+ if node_status == StorageNode.STATUS_SCHEDULABLE:
156
+ node_status = StorageNode.STATUS_UNREACHABLE
157
+ data["Actual Status"] = node_status
158
+ if node_status == status:
156
159
  data["Results"] = "ok"
157
160
  else:
158
161
  data["Results"] = "failed"
@@ -32,6 +32,8 @@ class StorageNode(BaseModel):
32
32
  STATUS_RESTARTING: 12,
33
33
 
34
34
  STATUS_UNREACHABLE: 20,
35
+
36
+ STATUS_SCHEDULABLE: 30,
35
37
  }
36
38
 
37
39
  attributes = {
@@ -130,52 +130,56 @@ while True:
130
130
  # 1- check node ping
131
131
  ping_check = health_controller._check_node_ping(snode.mgmt_ip)
132
132
  logger.info(f"Check: ping mgmt ip {snode.mgmt_ip} ... {ping_check}")
133
+ if not ping_check:
134
+ time.sleep(1)
135
+ ping_check = health_controller._check_node_ping(snode.mgmt_ip)
136
+ logger.info(f"Check 2: ping mgmt ip {snode.mgmt_ip} ... {ping_check}")
133
137
 
134
138
  # 2- check node API
135
- node_api_check = health_controller._check_node_api(snode.mgmt_ip)
136
- logger.info(f"Check: node API {snode.mgmt_ip}:5000 ... {node_api_check}")
137
-
138
- # 3- check spdk_process
139
- spdk_process = health_controller._check_spdk_process_up(snode.mgmt_ip)
140
- logger.info(f"Check: spdk process {snode.mgmt_ip}:5000 ... {spdk_process}")
141
-
142
- # node_rpc_check = True
143
- # 3- check node RPC
144
- node_rpc_check = health_controller._check_node_rpc(
145
- snode.mgmt_ip, snode.rpc_port, snode.rpc_username, snode.rpc_password, timeout=5, retry=1)
146
- logger.info(f"Check: node RPC {snode.mgmt_ip}:{snode.rpc_port} ... {node_rpc_check}")
147
-
148
- # 4- docker API
149
- node_docker_check = health_controller._check_node_docker_api(snode.mgmt_ip)
150
- logger.info(f"Check: node docker API {snode.mgmt_ip}:2375 ... {node_docker_check}")
151
-
152
- is_node_online = ping_check and node_api_check and node_rpc_check and node_docker_check and spdk_process
139
+ node_api_check = False
140
+ spdk_process = False
141
+ node_rpc_check = False
142
+ if ping_check:
143
+ node_api_check = health_controller._check_node_api(snode.mgmt_ip)
144
+ logger.info(f"Check: node API {snode.mgmt_ip}:5000 ... {node_api_check}")
145
+
146
+ # 3- check spdk_process
147
+ spdk_process = health_controller._check_spdk_process_up(snode.mgmt_ip)
148
+ logger.info(f"Check: spdk process {snode.mgmt_ip}:5000 ... {spdk_process}")
149
+
150
+ # node_rpc_check = True
151
+ # 3- check node RPC
152
+ node_rpc_check = health_controller._check_node_rpc(
153
+ snode.mgmt_ip, snode.rpc_port, snode.rpc_username, snode.rpc_password, timeout=5, retry=1)
154
+ logger.info(f"Check: node RPC {snode.mgmt_ip}:{snode.rpc_port} ... {node_rpc_check}")
155
+
156
+ # check JM device
157
+ if snode.jm_device:
158
+ if snode.jm_device.status in [JMDevice.STATUS_ONLINE, JMDevice.STATUS_UNAVAILABLE]:
159
+ ret = health_controller.check_jm_device(snode.jm_device.get_id())
160
+ if ret:
161
+ logger.info(f"JM bdev is online: {snode.jm_device.get_id()}")
162
+ if snode.jm_device.status != JMDevice.STATUS_ONLINE:
163
+ device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_ONLINE)
164
+ else:
165
+ logger.error(f"JM bdev is offline: {snode.jm_device.get_id()}")
166
+ if snode.jm_device.status != JMDevice.STATUS_UNAVAILABLE:
167
+ device_controller.set_jm_device_state(snode.jm_device.get_id(),
168
+ JMDevice.STATUS_UNAVAILABLE)
169
+
170
+ is_node_online = ping_check and node_api_check and node_rpc_check and spdk_process
153
171
  if is_node_online:
154
172
  set_node_online(snode)
155
173
  else:
156
174
  set_node_offline(snode)
157
- if ping_check and node_api_check and not spdk_process:
158
- # add node to auto restart
159
- if cluster.status != Cluster.STATUS_UNREADY:
160
- tasks_controller.add_node_to_auto_restart(snode)
161
-
162
175
  if not ping_check and not node_api_check and not spdk_process:
163
176
  # restart on new node
164
177
  storage_node_ops.set_node_status(snode.get_id(), StorageNode.STATUS_SCHEDULABLE)
165
- continue
166
178
 
167
- # check JM device
168
- if snode.jm_device:
169
- if snode.jm_device.status in [JMDevice.STATUS_ONLINE, JMDevice.STATUS_UNAVAILABLE]:
170
- ret = health_controller.check_jm_device(snode.jm_device.get_id())
171
- if ret:
172
- logger.info(f"JM bdev is online: {snode.jm_device.get_id()}")
173
- if snode.jm_device.status != JMDevice.STATUS_ONLINE:
174
- device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_ONLINE)
175
- else:
176
- logger.error(f"JM bdev is offline: {snode.jm_device.get_id()}")
177
- if snode.jm_device.status != JMDevice.STATUS_UNAVAILABLE:
178
- device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_UNAVAILABLE)
179
+ elif ping_check and node_api_check and not spdk_process:
180
+ # add node to auto restart
181
+ if cluster.status != Cluster.STATUS_UNREADY:
182
+ tasks_controller.add_node_to_auto_restart(snode)
179
183
 
180
184
  update_cluster_status(cluster_id)
181
185
 
@@ -261,7 +261,7 @@ def process_records(records, records_count):
261
261
 
262
262
  def ping_host(ip):
263
263
  logger.debug(f"Pinging ip ... {ip}")
264
- response = os.system(f"ping -c 1 -W 3 {ip} > /dev/null")
264
+ response = os.system(f"ping -c 3 -W 3 {ip} > /dev/null")
265
265
  if response == 0:
266
266
  logger.debug(f"{ip} is UP")
267
267
  return True
File without changes
File without changes
File without changes
File without changes