sbcli-dev 6.3.4__tar.gz → 6.4.0__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.3.4 → sbcli_dev-6.4.0}/PKG-INFO +1 -1
  2. sbcli_dev-6.4.0/env_var +5 -0
  3. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/sbcli_dev.egg-info/PKG-INFO +1 -1
  4. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/constants.py +1 -1
  5. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/device_controller.py +5 -0
  6. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/new_device_discovery.py +12 -17
  7. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/storage_node_monitor.py +4 -4
  8. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/storage_node_ops.py +14 -11
  9. sbcli_dev-6.3.4/env_var +0 -5
  10. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/README.md +0 -0
  11. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/pyproject.toml +0 -0
  12. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  13. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  14. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/sbcli_dev.egg-info/entry_points.txt +0 -0
  15. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/sbcli_dev.egg-info/requires.txt +0 -0
  16. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/sbcli_dev.egg-info/top_level.txt +0 -0
  17. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/setup.cfg +0 -0
  18. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/setup.py +0 -0
  19. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_cli/cli.py +0 -0
  20. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_cli/main.py +0 -0
  21. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/__init__.py +0 -0
  22. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/cluster_ops.py +0 -0
  23. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/cnode_client.py +0 -0
  24. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/compute_node_ops.py +0 -0
  25. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/__init__.py +0 -0
  26. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/caching_node_controller.py +0 -0
  27. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/cluster_events.py +0 -0
  28. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/device_events.py +0 -0
  29. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/events_controller.py +0 -0
  30. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/health_controller.py +0 -0
  31. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/lvol_controller.py +0 -0
  32. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/lvol_events.py +0 -0
  33. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/mgmt_events.py +0 -0
  34. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/pool_controller.py +0 -0
  35. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/pool_events.py +0 -0
  36. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  37. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/snapshot_events.py +0 -0
  38. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/storage_events.py +0 -0
  39. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/tasks_controller.py +0 -0
  40. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/controllers/tasks_events.py +0 -0
  41. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/distr_controller.py +0 -0
  42. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/kv_store.py +0 -0
  43. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/mgmt_node_ops.py +0 -0
  44. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/__init__.py +0 -0
  45. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/base_model.py +0 -0
  46. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/caching_node.py +0 -0
  47. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/cluster.py +0 -0
  48. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/compute_node.py +0 -0
  49. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/deployer.py +0 -0
  50. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/events.py +0 -0
  51. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/global_settings.py +0 -0
  52. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/iface.py +0 -0
  53. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/job_schedule.py +0 -0
  54. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/lvol_model.py +0 -0
  55. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/mgmt_node.py +0 -0
  56. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/nvme_device.py +0 -0
  57. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/pool.py +0 -0
  58. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/port_stat.py +0 -0
  59. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/snapshot.py +0 -0
  60. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/stats.py +0 -0
  61. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/models/storage_node.py +0 -0
  62. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/pci_utils.py +0 -0
  63. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/rpc_client.py +0 -0
  64. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/__init__.py +0 -0
  65. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  66. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  67. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  68. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/config_docker.sh +0 -0
  69. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/dashboard.yml +0 -0
  70. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  71. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  72. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  73. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  74. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  75. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  76. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/datasource.yml +0 -0
  77. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/db_config_double.sh +0 -0
  78. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/db_config_single.sh +0 -0
  79. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/deploy_fdb.sh +0 -0
  80. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  81. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  82. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  83. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/foundation.yml +0 -0
  84. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/haproxy.cfg +0 -0
  85. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/install_deps.sh +0 -0
  86. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/objstore.yml +0 -0
  87. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/prepare_fdb.sh +0 -0
  88. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/prometheus.yml +0 -0
  89. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/run_ssh.sh +0 -0
  90. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/set_db_config.sh +0 -0
  91. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  92. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/__init__.py +0 -0
  93. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  94. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/caching_node_monitor.py +0 -0
  95. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/cap_monitor.py +0 -0
  96. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  97. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/device_monitor.py +0 -0
  98. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/health_check_service.py +0 -0
  99. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/install_service.sh +0 -0
  100. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/log_agg_service.py +0 -0
  101. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/lvol_monitor.py +0 -0
  102. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  103. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  104. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  105. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/port_stat_collector.py +0 -0
  106. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/remove_service.sh +0 -0
  107. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/service_template.service +0 -0
  108. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
  109. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  110. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  111. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  112. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  113. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  114. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/shell_utils.py +0 -0
  115. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/snode_client.py +0 -0
  116. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_core/utils.py +0 -0
  117. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/__init__.py +0 -0
  118. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/app.py +0 -0
  119. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/auth_middleware.py +0 -0
  120. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/__init__.py +0 -0
  121. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
  122. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  123. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  124. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  125. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  126. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/snode_ops.py +0 -0
  127. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  128. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  129. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  130. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  131. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_device.py +0 -0
  132. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  133. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  134. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  135. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  136. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  137. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/caching_node_app.py +0 -0
  138. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/caching_node_app_k8s.py +0 -0
  139. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/node_utils.py +0 -0
  140. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/node_webapp.py +0 -0
  141. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/snode_app.py +0 -0
  142. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/snode_app_k8s.py +0 -0
  143. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/delete.py +0 -0
  144. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/deploy.py +0 -0
  145. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  146. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  147. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/is_up.py +0 -0
  148. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/list_deps.py +0 -0
  149. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/rpac.yaml +0 -0
  150. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/static/tst.py +0 -0
  151. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  152. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  153. {sbcli_dev-6.3.4 → sbcli_dev-6.4.0}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 6.3.4
3
+ Version: 6.4.0
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -0,0 +1,5 @@
1
+ SIMPLY_BLOCK_COMMAND_NAME=sbcli-dev
2
+ SIMPLY_BLOCK_VERSION=6.4.0
3
+
4
+ SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:dev
5
+ DOCKER_USER=hamdysimplyblock
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sbcli-dev
3
- Version: 6.3.4
3
+ Version: 6.4.0
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -54,7 +54,7 @@ FDB_CHECK_INTERVAL_SEC = 60
54
54
 
55
55
 
56
56
 
57
- SIMPLY_BLOCK_DOCKER_IMAGE = "simplyblock/simplyblock:main"
57
+ SIMPLY_BLOCK_DOCKER_IMAGE = "simplyblock/simplyblock:dev"
58
58
  SIMPLY_BLOCK_CLI_NAME = "sbcli-dev"
59
59
  TASK_EXEC_INTERVAL_SEC = 10
60
60
  TASK_EXEC_RETRY_COUNT = 8
@@ -632,6 +632,7 @@ def add_device(device_id):
632
632
  device_obj.status = NVMeDevice.STATUS_ONLINE
633
633
  snode.write_to_db(db_controller.kv_store)
634
634
  device_events.device_create(device_obj)
635
+ distr_controller.send_cluster_map_to_node(snode)
635
636
 
636
637
  logger.info("Make other nodes connect to the node devices")
637
638
  snodes = db_controller.get_storage_nodes_by_cluster_id(snode.cluster_id)
@@ -641,6 +642,8 @@ def add_device(device_id):
641
642
  node.remote_devices = storage_node_ops._connect_to_remote_devs(node)
642
643
  node.write_to_db()
643
644
 
645
+ distr_controller.send_cluster_map_to_node(node)
646
+
644
647
  tasks_controller.add_new_device_mig_task(device_id)
645
648
  return device_id
646
649
 
@@ -686,6 +689,7 @@ def add_device(device_id):
686
689
  logger.error("failed to create devices")
687
690
  return False
688
691
 
692
+ distr_controller.send_cluster_map_to_node(snode)
689
693
  logger.info("Make other nodes connect to the node devices")
690
694
  snodes = db_controller.get_storage_nodes_by_cluster_id(snode.cluster_id)
691
695
  for node in snodes:
@@ -693,6 +697,7 @@ def add_device(device_id):
693
697
  continue
694
698
  node.remote_devices = storage_node_ops._connect_to_remote_devs(node)
695
699
  node.write_to_db()
700
+ distr_controller.send_cluster_map_to_node(node)
696
701
 
697
702
  for dev in new_devices:
698
703
  tasks_controller.add_new_device_mig_task(dev.get_id())
@@ -24,18 +24,19 @@ while True:
24
24
  logger.warning(f"Skipping node, id: {node.get_id()}, status: {node.status}")
25
25
  continue
26
26
 
27
- known_pcie = [dev.pcie_address for dev in node.nvme_devices]
28
- if node.jm_device and 'pcie_address' in node.jm_device.device_data_dict:
29
- known_pcie.append(node.jm_device.device_data_dict['pcie_address'])
27
+ known_sn = [dev.serial_number for dev in node.nvme_devices]
28
+ if node.jm_device and 'serial_number' in node.jm_device.device_data_dict:
29
+ known_sn.append(node.jm_device.device_data_dict['serial_number'])
30
30
 
31
31
  snode_api = SNodeClient(node.api_endpoint)
32
32
  node_info, _ = snode_api.info()
33
33
 
34
- node_pcie = node_info['spdk_pcie_list']
35
34
 
36
35
  # check for unused nvme devices
37
36
  if "lsblk" in node_info:
38
37
  for dev in node_info['nvme_devices']:
38
+ if dev['serial_number'] in known_sn:
39
+ continue
39
40
  for block_dev in node_info['lsblk']['blockdevices']:
40
41
  if block_dev['name'] == dev['device_name']:
41
42
  if 'children' not in block_dev:
@@ -43,18 +44,12 @@ while True:
43
44
  # try mount to spdk driver
44
45
  snode_api.bind_device_to_spdk(dev['address'])
45
46
  time.sleep(3)
46
-
47
- # check for dev again
48
- node_info, _ = snode_api.info()
49
- node_pcie = node_info['spdk_pcie_list']
50
- for pc in node_pcie:
51
- if pc not in known_pcie:
52
- logger.info(f"New ssd found: {pc}")
53
- devs = storage_node_ops.addNvmeDevices(node, [pc])
54
- if devs:
55
- new_dev = devs[0]
56
- new_dev.status = NVMeDevice.STATUS_NEW
57
- node.nvme_devices.append(new_dev)
58
- node.write_to_db(db_controller.kv_store)
47
+ devs = storage_node_ops.addNvmeDevices(node, [dev['address']])
48
+ if devs:
49
+ logger.info(f"New ssd found: {dev['address']}")
50
+ new_dev = devs[0]
51
+ new_dev.status = NVMeDevice.STATUS_NEW
52
+ node.nvme_devices.append(new_dev)
53
+ node.write_to_db(db_controller.kv_store)
59
54
 
60
55
  time.sleep(constants.DEV_DISCOVERY_INTERVAL_SEC)
@@ -296,11 +296,11 @@ while True:
296
296
  else:
297
297
  set_node_offline(snode)
298
298
 
299
- # if not ping_check and not node_api_check and not spdk_process:
300
- # # restart on new node
301
- # storage_node_ops.set_node_status(snode.get_id(), StorageNode.STATUS_SCHEDULABLE)
299
+ if not ping_check and not node_api_check and not spdk_process:
300
+ # restart on new node
301
+ storage_node_ops.set_node_status(snode.get_id(), StorageNode.STATUS_SCHEDULABLE)
302
302
 
303
- if ping_check and node_api_check and (not spdk_process or not node_rpc_check):
303
+ elif ping_check and node_api_check and (not spdk_process or not node_rpc_check):
304
304
  # add node to auto restart
305
305
  if cluster.status in [Cluster.STATUS_ACTIVE, Cluster.STATUS_DEGRADED, Cluster.STATUS_SUSPENDED]:
306
306
  tasks_controller.add_node_to_auto_restart(snode)
@@ -446,7 +446,7 @@ def _create_storage_device_stack(rpc_client, nvme, snode, after_restart):
446
446
  alceml_name = device_controller.get_alceml_name(alceml_id)
447
447
  logger.info(f"adding {alceml_name}")
448
448
  pba_init_mode = 3
449
- if after_restart:
449
+ if after_restart and nvme.status != NVMeDevice.STATUS_NEW:
450
450
  pba_init_mode = 1
451
451
  alceml_cpu_mask = ""
452
452
  alceml_worker_cpu_mask = ""
@@ -875,15 +875,15 @@ def _connect_to_remote_jm_devs(this_node, jm_ids=[]):
875
875
  if not org_dev:
876
876
  continue
877
877
 
878
- name = f"remote_{jm_dev.jm_bdev}"
878
+ name = f"remote_{org_dev.jm_bdev}"
879
879
  bdev_name = f"{name}n1"
880
- jm_dev.remote_bdev = bdev_name
880
+ org_dev.remote_bdev = bdev_name
881
881
 
882
882
  if org_dev.status == NVMeDevice.STATUS_ONLINE:
883
883
  if bdev_name in node_bdev_names:
884
884
  logger.debug(f"bdev found {bdev_name}")
885
- jm_dev.status = JMDevice.STATUS_ONLINE
886
- new_devs.append(jm_dev)
885
+ org_dev.status = JMDevice.STATUS_ONLINE
886
+ new_devs.append(org_dev)
887
887
  else:
888
888
  if rpc_client.bdev_nvme_controller_list(name):
889
889
  logger.info(f"detaching {name} from {this_node.get_id()}")
@@ -892,21 +892,21 @@ def _connect_to_remote_jm_devs(this_node, jm_ids=[]):
892
892
 
893
893
  logger.info(f"Connecting {name} to {this_node.get_id()}")
894
894
  ret = rpc_client.bdev_nvme_attach_controller_tcp_JM(
895
- name, jm_dev.nvmf_nqn, jm_dev.nvmf_ip, jm_dev.nvmf_port)
895
+ name, org_dev.nvmf_nqn, org_dev.nvmf_ip, org_dev.nvmf_port)
896
896
  if ret:
897
- jm_dev.status = JMDevice.STATUS_ONLINE
897
+ org_dev.status = JMDevice.STATUS_ONLINE
898
898
  else:
899
899
  logger.error(f"failed to connect to remote JM {name}")
900
- jm_dev.status = JMDevice.STATUS_UNAVAILABLE
901
- new_devs.append(jm_dev)
900
+ org_dev.status = JMDevice.STATUS_UNAVAILABLE
901
+ new_devs.append(org_dev)
902
902
 
903
903
  else:
904
904
  # if bdev_name in node_bdev_names:
905
905
  # logger.debug(f"bdev found {bdev_name}")
906
906
  # rpc_client.bdev_nvme_detach_controller(name)
907
907
 
908
- jm_dev.status = JMDevice.STATUS_UNAVAILABLE
909
- new_devs.append(jm_dev)
908
+ org_dev.status = JMDevice.STATUS_UNAVAILABLE
909
+ new_devs.append(org_dev)
910
910
 
911
911
  return new_devs
912
912
 
@@ -1829,6 +1829,9 @@ def restart_storage_node(
1829
1829
  jm_device = nvme
1830
1830
  jm_device.status = NVMeDevice.STATUS_JM
1831
1831
 
1832
+ if snode.jm_device and snode.jm_device.get_id():
1833
+ jm_device.uuid = snode.jm_device.get_id()
1834
+
1832
1835
  ret = _prepare_cluster_devices_jm_on_dev(snode, nvme_devs)
1833
1836
  else:
1834
1837
  ret = _prepare_cluster_devices_partitions(snode, nvme_devs)
sbcli_dev-6.3.4/env_var DELETED
@@ -1,5 +0,0 @@
1
- SIMPLY_BLOCK_COMMAND_NAME=sbcli-dev
2
- SIMPLY_BLOCK_VERSION=6.3.4
3
-
4
- SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:main
5
- DOCKER_USER=hamdysimplyblock
File without changes
File without changes
File without changes
File without changes