sbcli-dev 10.4.1__tar.gz → 10.4.3__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 (154) hide show
  1. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/PKG-INFO +1 -1
  2. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/sbcli_dev.egg-info/PKG-INFO +1 -1
  3. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/constants.py +1 -1
  4. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/caching_node_controller.py +75 -45
  5. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/env_var +1 -1
  6. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/caching_node.py +4 -0
  7. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/caching_node_ops.py +9 -6
  8. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/README.md +0 -0
  9. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/pyproject.toml +0 -0
  10. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/requirements.txt +0 -0
  11. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/sbcli_dev.egg-info/SOURCES.txt +0 -0
  12. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/sbcli_dev.egg-info/dependency_links.txt +0 -0
  13. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/sbcli_dev.egg-info/entry_points.txt +0 -0
  14. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/sbcli_dev.egg-info/requires.txt +0 -0
  15. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/sbcli_dev.egg-info/top_level.txt +0 -0
  16. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/setup.cfg +0 -0
  17. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/setup.py +0 -0
  18. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_cli/__init__.py +0 -0
  19. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_cli/cli.py +0 -0
  20. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_cli/main.py +0 -0
  21. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/__init__.py +0 -0
  22. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/cluster_ops.py +0 -0
  23. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/cnode_client.py +0 -0
  24. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/__init__.py +0 -0
  25. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/cluster_events.py +0 -0
  26. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/device_controller.py +0 -0
  27. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/device_events.py +0 -0
  28. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/events_controller.py +0 -0
  29. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/health_controller.py +0 -0
  30. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/lvol_controller.py +0 -0
  31. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/lvol_events.py +0 -0
  32. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/mgmt_events.py +0 -0
  33. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/pool_controller.py +0 -0
  34. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/pool_events.py +0 -0
  35. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/snapshot_controller.py +0 -0
  36. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/snapshot_events.py +0 -0
  37. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/storage_events.py +0 -0
  38. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/tasks_controller.py +0 -0
  39. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/controllers/tasks_events.py +0 -0
  40. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/db_controller.py +0 -0
  41. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/distr_controller.py +0 -0
  42. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/mgmt_node_ops.py +0 -0
  43. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/__init__.py +0 -0
  44. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/base_model.py +0 -0
  45. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/cluster.py +0 -0
  46. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/deployer.py +0 -0
  47. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/events.py +0 -0
  48. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/iface.py +0 -0
  49. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/job_schedule.py +0 -0
  50. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/lvol_model.py +0 -0
  51. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/mgmt_node.py +0 -0
  52. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/nvme_device.py +0 -0
  53. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/pool.py +0 -0
  54. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/port_stat.py +0 -0
  55. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/snapshot.py +0 -0
  56. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/stats.py +0 -0
  57. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/models/storage_node.py +0 -0
  58. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/pci_utils.py +0 -0
  59. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/rpc_client.py +0 -0
  60. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/__init__.py +0 -0
  61. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
  62. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
  63. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
  64. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/config_docker.sh +0 -0
  65. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/dashboard.yml +0 -0
  66. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
  67. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/dashboards/devices.json +0 -0
  68. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
  69. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
  70. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
  71. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/dashboards/pools.json +0 -0
  72. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/datasource.yml +0 -0
  73. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/db_config_double.sh +0 -0
  74. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/db_config_single.sh +0 -0
  75. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/deploy_fdb.sh +0 -0
  76. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/deploy_stack.sh +0 -0
  77. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
  78. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
  79. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/foundation.yml +0 -0
  80. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/haproxy.cfg +0 -0
  81. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/install_deps.sh +0 -0
  82. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/objstore.yml +0 -0
  83. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/prepare_fdb.sh +0 -0
  84. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/prometheus.yml +0 -0
  85. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/run_ssh.sh +0 -0
  86. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/set_db_config.sh +0 -0
  87. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
  88. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/__init__.py +0 -0
  89. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
  90. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/caching_node_monitor.py +0 -0
  91. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/cap_monitor.py +0 -0
  92. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
  93. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/device_monitor.py +0 -0
  94. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/health_check_service.py +0 -0
  95. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/install_service.sh +0 -0
  96. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/log_agg_service.py +0 -0
  97. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/lvol_monitor.py +0 -0
  98. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/lvol_stat_collector.py +0 -0
  99. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/main_distr_event_collector.py +0 -0
  100. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
  101. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/new_device_discovery.py +0 -0
  102. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/port_stat_collector.py +0 -0
  103. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/remove_service.sh +0 -0
  104. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/service_template.service +0 -0
  105. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
  106. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/storage_node_monitor.py +0 -0
  107. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
  108. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/tasks_runner_migration.py +0 -0
  109. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
  110. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
  111. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/services/tasks_runner_restart.py +0 -0
  112. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/shell_utils.py +0 -0
  113. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/snode_client.py +0 -0
  114. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/storage_node_ops.py +0 -0
  115. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/utils.py +0 -0
  116. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_core/workers/cleanup_foundationdb.py +0 -0
  117. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/README.md +0 -0
  118. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/__init__.py +0 -0
  119. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/app.py +0 -0
  120. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/auth_middleware.py +0 -0
  121. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/__init__.py +0 -0
  122. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
  123. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/node_api_basic.py +0 -0
  124. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
  125. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
  126. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/snode_ops.py +0 -0
  127. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
  128. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
  129. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
  130. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
  131. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_device.py +0 -0
  132. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
  133. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
  134. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_pool.py +0 -0
  135. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
  136. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
  137. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/caching_node_app.py +0 -0
  138. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/caching_node_app_k8s.py +0 -0
  139. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/node_utils.py +0 -0
  140. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/node_webapp.py +0 -0
  141. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/requirements.txt +0 -0
  142. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/snode_app.py +0 -0
  143. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/snode_app_k8s.py +0 -0
  144. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/delete.py +0 -0
  145. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/deploy.py +0 -0
  146. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/deploy_cnode.yaml +0 -0
  147. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/deploy_spdk.yaml +0 -0
  148. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/is_up.py +0 -0
  149. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/list_deps.py +0 -0
  150. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/rpac.yaml +0 -0
  151. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/static/tst.py +0 -0
  152. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
  153. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
  154. {sbcli_dev-10.4.1 → sbcli_dev-10.4.3}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sbcli-dev
3
- Version: 10.4.1
3
+ Version: 10.4.3
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: sbcli-dev
3
- Version: 10.4.1
3
+ Version: 10.4.3
4
4
  Summary: CLI for managing SimplyBlock cluster
5
5
  Home-page: https://www.simplyblock.io/
6
6
  Author: Hamdy
@@ -73,7 +73,7 @@ SIMPLY_BLOCK_CLI_NAME = get_from_env_var_file(
73
73
  "SIMPLY_BLOCK_COMMAND_NAME", "sbcli")
74
74
  TASK_EXEC_INTERVAL_SEC = 10
75
75
  TASK_EXEC_RETRY_COUNT = 8
76
- SIMPLY_BLOCK_SPDK_CORE_IMAGE = "simplyblock/spdk-core:v24.05.x-latest"
76
+ SIMPLY_BLOCK_SPDK_CORE_IMAGE = "simplyblock/spdk-core:v24.05-tag-latest"
77
77
 
78
78
 
79
79
  SIMPLY_BLOCK_SPDK_ULTRA_IMAGE = "simplyblock/spdk:lvolstore-ha-snapshot-latest"
@@ -176,7 +176,12 @@ def add_node(cluster_id, node_ip, iface_name, data_nics_list, spdk_cpu_mask, spd
176
176
  logger.error("Pod is not running, exiting")
177
177
  return False
178
178
 
179
- time.sleep(20)
179
+ time.sleep(3)
180
+
181
+ snode.namespace = namespace
182
+ snode.spdk_cpu_mask = spdk_cpu_mask
183
+ snode.spdk_mem = spdk_mem
184
+ snode.spdk_image = spdk_image
180
185
 
181
186
  # creating RPCClient instance
182
187
  rpc_client = RPCClient(
@@ -216,50 +221,50 @@ def add_node(cluster_id, node_ip, iface_name, data_nics_list, spdk_cpu_mask, spd
216
221
 
217
222
  cache_size = 0
218
223
  cache_bdev = None
219
- if supported_ssd_size < ssd_size:
220
- logger.info(f"SSD size is bigger than the supported size, will use split bdev: {split_factor}")
221
- ret = rpc_client.bdev_split(ssd_dev.nvme_bdev, split_factor)
222
- cache_bdev = ret[0]
223
- cache_size = int(ssd_dev.size/split_factor)
224
- snode.cache_split_factor = split_factor
225
- else:
226
- snode.cache_split_factor = 0
227
- cache_bdev = ssd_dev.nvme_bdev
228
- cache_size = ssd_dev.size
229
-
230
224
  # if supported_ssd_size < ssd_size:
231
- # logger.info(f"SSD size is bigger than the supported size, creating partition")
232
- #
233
- # nbd_device = rpc_client.nbd_start_disk(ssd_dev.nvme_bdev)
234
- # time.sleep(3)
235
- # if not nbd_device:
236
- # logger.error(f"Failed to start nbd dev")
237
- # return False
238
- #
239
- # jm_percent = int((supported_ssd_size/ssd_size) * 100)
240
- # result, error = cnode_api.make_gpt_partitions(nbd_device, jm_percent)
241
- # if error:
242
- # logger.error(f"Failed to make partitions")
243
- # logger.error(error)
244
- # return False
245
- # time.sleep(3)
246
- # rpc_client.nbd_stop_disk(nbd_device)
247
- # time.sleep(1)
248
- # rpc_client.bdev_nvme_detach_controller(ssd_dev.nvme_controller)
249
- # time.sleep(1)
250
- # rpc_client.bdev_nvme_controller_attach(ssd_dev.nvme_controller, ssd_dev.pcie_address)
251
- # time.sleep(1)
252
- # rpc_client.bdev_examine(ssd_dev.nvme_bdev)
253
- # time.sleep(1)
254
- #
255
- # cache_bdev = f"{ssd_dev.nvme_bdev}p1"
256
- # cache_size = int(supported_ssd_size)
257
- #
225
+ # logger.info(f"SSD size is bigger than the supported size, will use split bdev: {split_factor}")
226
+ # ret = rpc_client.bdev_split(ssd_dev.nvme_bdev, split_factor)
227
+ # cache_bdev = ret[0]
228
+ # cache_size = int(ssd_dev.size/split_factor)
229
+ # snode.cache_split_factor = split_factor
258
230
  # else:
259
- #
231
+ # snode.cache_split_factor = 0
260
232
  # cache_bdev = ssd_dev.nvme_bdev
261
233
  # cache_size = ssd_dev.size
262
234
 
235
+ if supported_ssd_size < ssd_size:
236
+ logger.info(f"SSD size is bigger than the supported size, creating partition")
237
+
238
+ nbd_device = rpc_client.nbd_start_disk(ssd_dev.nvme_bdev)
239
+ time.sleep(3)
240
+ if not nbd_device:
241
+ logger.error(f"Failed to start nbd dev")
242
+ return False
243
+
244
+ jm_percent = int((supported_ssd_size/ssd_size) * 100)
245
+ result, error = cnode_api.make_gpt_partitions(nbd_device, jm_percent)
246
+ if error:
247
+ logger.error(f"Failed to make partitions")
248
+ logger.error(error)
249
+ return False
250
+ time.sleep(3)
251
+ rpc_client.nbd_stop_disk(nbd_device)
252
+ time.sleep(1)
253
+ rpc_client.bdev_nvme_detach_controller(ssd_dev.nvme_controller)
254
+ time.sleep(1)
255
+ rpc_client.bdev_nvme_controller_attach(ssd_dev.nvme_controller, ssd_dev.pcie_address)
256
+ time.sleep(1)
257
+ rpc_client.bdev_examine(ssd_dev.nvme_bdev)
258
+ time.sleep(1)
259
+
260
+ cache_bdev = f"{ssd_dev.nvme_bdev}p1"
261
+ cache_size = int(supported_ssd_size)
262
+
263
+ else:
264
+
265
+ cache_bdev = ssd_dev.nvme_bdev
266
+ cache_size = ssd_dev.size
267
+
263
268
  logger.info(f"Cache size: {utils.humanbytes(cache_size)}")
264
269
 
265
270
  snode.cache_bdev = cache_bdev
@@ -297,7 +302,32 @@ def recreate(node_id):
297
302
  return False
298
303
 
299
304
  logger.info(f"Recreating caching node: {node_id}, status: {snode.status}")
300
- snode_api = CNodeClient(f"{snode.mgmt_ip}:5000")
305
+ cnode_api = CNodeClient(f"{snode.mgmt_ip}:5000")
306
+
307
+ if not cnode_api.spdk_process_is_up():
308
+ results, err = cnode_api.spdk_process_start(
309
+ snode.spdk_cpu_mask, snode.spdk_mem, snode.spdk_image, snode.mgmt_ip,
310
+ snode.rpc_port, snode.rpc_username, snode.rpc_password, snode.namespace)
311
+ if not results:
312
+ logger.error(f"Failed to start spdk: {err}")
313
+ return False
314
+
315
+ retries = 20
316
+ while retries > 0:
317
+ resp, _ = cnode_api.spdk_process_is_up()
318
+ if resp:
319
+ logger.info(f"Pod is up")
320
+ break
321
+ else:
322
+ logger.info("Pod is not running, waiting...")
323
+ time.sleep(3)
324
+ retries -= 1
325
+
326
+ if retries == 0:
327
+ logger.error("Pod is not running, exiting")
328
+ return False
329
+
330
+ time.sleep(5)
301
331
 
302
332
  # creating RPCClient instance
303
333
  rpc_client = RPCClient(
@@ -306,7 +336,7 @@ def recreate(node_id):
306
336
  timeout=60*5, retry=5)
307
337
 
308
338
  # get new node info after starting spdk
309
- node_info, _ = snode_api.info()
339
+ node_info, _ = cnode_api.info()
310
340
  # adding devices
311
341
  nvme_devs = addNvmeDevices(rpc_client, node_info['spdk_pcie_list'], snode)
312
342
  if not nvme_devs:
@@ -460,7 +490,7 @@ def connect(caching_node_id, lvol_id):
460
490
  ret, _ = cnode_client.connect_nvme(ip, "4420", subsystem_nqn)
461
491
  break
462
492
 
463
- time.sleep(5)
493
+ time.sleep(3)
464
494
  cnode_info, _ = cnode_client.info()
465
495
  nvme_devs = cnode_info['nvme_devices']
466
496
  dev_path = None
@@ -625,8 +655,8 @@ def deploy(ifname):
625
655
  f"DOCKER_IP={dev_ip}"
626
656
  ]
627
657
  )
628
- logger.info("Pulling SPDK images")
629
- node_docker.images.pull(constants.SIMPLY_BLOCK_DOCKER_IMAGE)
658
+ logger.info(f"Pulling SPDK image {constants.SIMPLY_BLOCK_SPDK_CORE_IMAGE}")
659
+ node_docker.images.pull(constants.SIMPLY_BLOCK_SPDK_CORE_IMAGE)
630
660
  return f"{dev_ip}:5000"
631
661
 
632
662
 
@@ -1,5 +1,5 @@
1
1
  SIMPLY_BLOCK_COMMAND_NAME=sbcli-dev
2
- SIMPLY_BLOCK_VERSION=10.4.1
2
+ SIMPLY_BLOCK_VERSION=10.4.3
3
3
 
4
4
  SIMPLY_BLOCK_DOCKER_IMAGE=simplyblock/simplyblock:main
5
5
  DOCKER_USER=hamdysimplyblock
@@ -50,3 +50,7 @@ class CachingNode(BaseNodeObject):
50
50
  services: List[str] = []
51
51
  subsystem: str = ""
52
52
  system_uuid: str = ""
53
+ namespace: str = ""
54
+ spdk_cpu_mask: str = ""
55
+ spdk_mem: int = ""
56
+ spdk_image: str = ""
@@ -295,17 +295,20 @@ def get_huge_memory():
295
295
  return 0
296
296
 
297
297
 
298
+ CPU_INFO = cpuinfo.get_cpu_info()
299
+ HOSTNAME, _, _ = node_utils.run_command("hostname -s")
300
+ SYSTEM_ID, _, _ = node_utils.run_command("dmidecode -s system-uuid")
301
+
302
+
298
303
  @bp.route('/info', methods=['GET'])
299
304
  def get_info():
300
- hostname, _, _ = run_command("hostname -s")
301
- system_id, _, _ = run_command("dmidecode -s system-uuid")
302
305
 
303
306
  out = {
304
- "hostname": hostname,
305
- "system_id": system_id,
307
+ "hostname": HOSTNAME,
308
+ "system_id": SYSTEM_ID,
306
309
 
307
- "cpu_count": cpuinfo.get_cpu_info()['count'],
308
- "cpu_hz": cpuinfo.get_cpu_info()['hz_advertised'][0] if 'hz_advertised' in cpuinfo.get_cpu_info() else 1,
310
+ "cpu_count": CPU_INFO['count'],
311
+ "cpu_hz": CPU_INFO['hz_advertised'][0] if 'hz_advertised' in CPU_INFO else 1,
309
312
 
310
313
  "memory": get_memory(),
311
314
  "hugepages": get_huge_memory(),
File without changes
File without changes
File without changes
File without changes
File without changes