sbcli-dev 3.8.44__zip → 3.8.46__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.
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/PKG-INFO +1 -1
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/env_var +1 -1
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/PKG-INFO +1 -1
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/tasks_controller.py +12 -9
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_failed_migration.py +3 -9
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_migration.py +3 -9
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_new_dev_migration.py +3 -9
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/storage_node_ops.py +99 -93
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/README.md +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/pyproject.toml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/SOURCES.txt +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/dependency_links.txt +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/entry_points.txt +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/requires.txt +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/sbcli_dev.egg-info/top_level.txt +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/setup.cfg +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/setup.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_cli/cli.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_cli/main.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/__init__.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/cluster_ops.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/cnode_client.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/compute_node_ops.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/constants.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/__init__.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/caching_node_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/cluster_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/device_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/device_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/events_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/health_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/lvol_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/lvol_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/mgmt_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/pool_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/pool_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/snapshot_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/snapshot_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/storage_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/tasks_events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/distr_controller.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/kv_store.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/mgmt_node_ops.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/__init__.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/base_model.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/caching_node.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/cluster.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/compute_node.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/deployer.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/events.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/global_settings.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/iface.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/job_schedule.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/lvol_model.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/mgmt_node.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/nvme_device.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/pool.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/port_stat.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/snapshot.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/stats.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/models/storage_node.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/pci_utils.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/rpc_client.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/__init__.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/config_docker.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboard.yml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/devices.json +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/pools.json +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/datasource.yml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/db_config_double.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/db_config_single.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/deploy_stack.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/haproxy.cfg +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/install_deps.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/objstore.yml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/prometheus.yml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/run_ssh.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/set_db_config.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/__init__.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/caching_node_monitor.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/cap_monitor.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/device_monitor.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/distr_event_collector.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/health_check_service.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/install_service.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/log_agg_service.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/lvol_monitor.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/lvol_stat_collector.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/main_distr_event_collector.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/new_device_discovery.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/port_stat_collector.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/remove_service.sh +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/service_template.service +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/storage_node_monitor.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_restart.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/shell_utils.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/snode_client.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/utils.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/__init__.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/app.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/auth_middleware.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/__init__.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/node_api_basic.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/snode_ops.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_device.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_pool.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/caching_node_app.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/caching_node_app_k8s.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/node_utils.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/node_webapp.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/snode_app.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/snode_app_k8s.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/delete.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/deploy.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/deploy_cnode.yaml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/deploy_spdk.yaml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/is_up.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/list_deps.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/rpac.yaml +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/static/tst.py +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_web/utils.py +0 -0
|
@@ -56,9 +56,10 @@ def _add_task(function_name, cluster_id, node_id, device_id,
|
|
|
56
56
|
def add_device_mig_task(device_id):
|
|
57
57
|
device = db_controller.get_storage_devices(device_id)
|
|
58
58
|
for node in db_controller.get_storage_nodes_by_cluster_id(device.cluster_id):
|
|
59
|
-
for
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
for bdev in node.lvstore_stack:
|
|
60
|
+
if bdev['type'] == "bdev_distr":
|
|
61
|
+
_add_task(JobSchedule.FN_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
|
|
62
|
+
max_retry=0, function_params={'distr_name': bdev['name']})
|
|
62
63
|
return True
|
|
63
64
|
|
|
64
65
|
|
|
@@ -137,18 +138,20 @@ def get_active_node_mig_task(cluster_id, node_id):
|
|
|
137
138
|
def add_device_failed_mig_task(device_id):
|
|
138
139
|
device = db_controller.get_storage_devices(device_id)
|
|
139
140
|
for node in db_controller.get_storage_nodes_by_cluster_id(device.cluster_id):
|
|
140
|
-
for
|
|
141
|
-
|
|
142
|
-
|
|
141
|
+
for bdev in node.lvstore_stack:
|
|
142
|
+
if bdev['type'] == "bdev_distr":
|
|
143
|
+
_add_task(JobSchedule.FN_FAILED_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
|
|
144
|
+
max_retry=0, function_params={'distr_name': bdev['name']})
|
|
143
145
|
return True
|
|
144
146
|
|
|
145
147
|
|
|
146
148
|
def add_new_device_mig_task(device_id):
|
|
147
149
|
device = db_controller.get_storage_devices(device_id)
|
|
148
150
|
for node in db_controller.get_storage_nodes_by_cluster_id(device.cluster_id):
|
|
149
|
-
for
|
|
150
|
-
|
|
151
|
-
|
|
151
|
+
for bdev in node.lvstore_stack:
|
|
152
|
+
if bdev['type'] == "bdev_distr":
|
|
153
|
+
_add_task(JobSchedule.FN_NEW_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
|
|
154
|
+
max_retry=0, function_params={'distr_name': bdev['name']})
|
|
152
155
|
return True
|
|
153
156
|
|
|
154
157
|
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_failed_migration.py
RENAMED
|
@@ -42,13 +42,7 @@ def task_runner(task):
|
|
|
42
42
|
|
|
43
43
|
if "migration" not in task.function_params:
|
|
44
44
|
device = db_controller.get_storage_devices(task.device_id)
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if not lvol:
|
|
48
|
-
task.status = JobSchedule.STATUS_DONE
|
|
49
|
-
task.function_result = "LVol not found"
|
|
50
|
-
task.write_to_db(db_controller.kv_store)
|
|
51
|
-
return True
|
|
45
|
+
distr_name = task.function_params["distr_name"]
|
|
52
46
|
|
|
53
47
|
if not device:
|
|
54
48
|
task.status = JobSchedule.STATUS_DONE
|
|
@@ -56,7 +50,7 @@ def task_runner(task):
|
|
|
56
50
|
task.write_to_db(db_controller.kv_store)
|
|
57
51
|
return True
|
|
58
52
|
|
|
59
|
-
rsp = rpc_client.distr_migration_failure_start(
|
|
53
|
+
rsp = rpc_client.distr_migration_failure_start(distr_name, device.cluster_device_order)
|
|
60
54
|
if not rsp:
|
|
61
55
|
logger.error(f"Failed to start device migration task, storage_ID: {device.cluster_device_order}")
|
|
62
56
|
task.function_result = "Failed to start device migration task"
|
|
@@ -66,7 +60,7 @@ def task_runner(task):
|
|
|
66
60
|
|
|
67
61
|
task.function_params = {
|
|
68
62
|
"migration": {
|
|
69
|
-
"name":
|
|
63
|
+
"name": distr_name}
|
|
70
64
|
}
|
|
71
65
|
task.write_to_db(db_controller.kv_store)
|
|
72
66
|
time.sleep(3)
|
|
@@ -53,13 +53,7 @@ def task_runner(task):
|
|
|
53
53
|
return False
|
|
54
54
|
|
|
55
55
|
device = db_controller.get_storage_devices(task.device_id)
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
if not lvol:
|
|
59
|
-
task.status = JobSchedule.STATUS_DONE
|
|
60
|
-
task.function_result = "LVol not found"
|
|
61
|
-
task.write_to_db(db_controller.kv_store)
|
|
62
|
-
return True
|
|
56
|
+
distr_name = task.function_params["distr_name"]
|
|
63
57
|
|
|
64
58
|
if not device:
|
|
65
59
|
task.status = JobSchedule.STATUS_DONE
|
|
@@ -67,7 +61,7 @@ def task_runner(task):
|
|
|
67
61
|
task.write_to_db(db_controller.kv_store)
|
|
68
62
|
return True
|
|
69
63
|
|
|
70
|
-
rsp = rpc_client.distr_migration_to_primary_start(device.cluster_device_order,
|
|
64
|
+
rsp = rpc_client.distr_migration_to_primary_start(device.cluster_device_order, distr_name)
|
|
71
65
|
if not rsp:
|
|
72
66
|
logger.error(f"Failed to start device migration task, storage_ID: {device.cluster_device_order}")
|
|
73
67
|
task.function_result = "Failed to start device migration task"
|
|
@@ -75,7 +69,7 @@ def task_runner(task):
|
|
|
75
69
|
task.write_to_db(db_controller.kv_store)
|
|
76
70
|
return False
|
|
77
71
|
task.function_params['migration'] = {
|
|
78
|
-
"name":
|
|
72
|
+
"name": distr_name}
|
|
79
73
|
task.write_to_db(db_controller.kv_store)
|
|
80
74
|
time.sleep(3)
|
|
81
75
|
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/tasks_runner_new_dev_migration.py
RENAMED
|
@@ -56,13 +56,7 @@ def task_runner(task):
|
|
|
56
56
|
return False
|
|
57
57
|
|
|
58
58
|
device = db_controller.get_storage_devices(task.device_id)
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if not lvol:
|
|
62
|
-
task.status = JobSchedule.STATUS_DONE
|
|
63
|
-
task.function_result = "LVol not found"
|
|
64
|
-
task.write_to_db(db_controller.kv_store)
|
|
65
|
-
return True
|
|
59
|
+
distr_name = task.function_params["distr_name"]
|
|
66
60
|
|
|
67
61
|
if not device:
|
|
68
62
|
task.status = JobSchedule.STATUS_DONE
|
|
@@ -70,7 +64,7 @@ def task_runner(task):
|
|
|
70
64
|
task.write_to_db(db_controller.kv_store)
|
|
71
65
|
return True
|
|
72
66
|
|
|
73
|
-
rsp = rpc_client.distr_migration_expansion_start(
|
|
67
|
+
rsp = rpc_client.distr_migration_expansion_start(distr_name)
|
|
74
68
|
if not rsp:
|
|
75
69
|
logger.error(f"Failed to start device migration task, storage_ID: {device.cluster_device_order}")
|
|
76
70
|
task.function_result = "Failed to start device migration task"
|
|
@@ -79,7 +73,7 @@ def task_runner(task):
|
|
|
79
73
|
return False
|
|
80
74
|
|
|
81
75
|
task.function_params['migration'] = {
|
|
82
|
-
"name":
|
|
76
|
+
"name": distr_name
|
|
83
77
|
}
|
|
84
78
|
task.write_to_db(db_controller.kv_store)
|
|
85
79
|
time.sleep(3)
|
|
@@ -286,40 +286,42 @@ def _create_jm_stack_on_raid(rpc_client, jm_nvme_bdevs, snode, after_restart):
|
|
|
286
286
|
logger.error(f"Failed to create {jm_bdev}")
|
|
287
287
|
return False
|
|
288
288
|
|
|
289
|
-
|
|
290
289
|
alceml_id = str(uuid.uuid4())
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
if
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
IP = None
|
|
302
|
-
for iface in snode.data_nics:
|
|
303
|
-
if iface.ip4_address:
|
|
304
|
-
tr_type = iface.get_transport_type()
|
|
305
|
-
ret = rpc_client.transport_list()
|
|
306
|
-
found = False
|
|
307
|
-
if ret:
|
|
308
|
-
for ty in ret:
|
|
309
|
-
if ty['trtype'] == tr_type:
|
|
310
|
-
found = True
|
|
311
|
-
if found is False:
|
|
312
|
-
ret = rpc_client.transport_create(tr_type)
|
|
313
|
-
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
314
|
-
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
315
|
-
IP = iface.ip4_address
|
|
316
|
-
break
|
|
317
|
-
logger.info(f"add {pt_name} to subsystem")
|
|
318
|
-
ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
|
|
319
|
-
if not ret:
|
|
320
|
-
logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
|
|
321
|
-
return False
|
|
290
|
+
pt_name = ""
|
|
291
|
+
subsystem_nqn = ""
|
|
292
|
+
IP = ""
|
|
293
|
+
if snode.enable_ha_jm:
|
|
294
|
+
# add pass through
|
|
295
|
+
pt_name = f"{jm_bdev}_PT"
|
|
296
|
+
ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
|
|
297
|
+
if not ret:
|
|
298
|
+
logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
|
|
299
|
+
return False
|
|
322
300
|
|
|
301
|
+
subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
|
|
302
|
+
logger.info("creating subsystem %s", subsystem_nqn)
|
|
303
|
+
ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
|
|
304
|
+
IP = None
|
|
305
|
+
for iface in snode.data_nics:
|
|
306
|
+
if iface.ip4_address:
|
|
307
|
+
tr_type = iface.get_transport_type()
|
|
308
|
+
ret = rpc_client.transport_list()
|
|
309
|
+
found = False
|
|
310
|
+
if ret:
|
|
311
|
+
for ty in ret:
|
|
312
|
+
if ty['trtype'] == tr_type:
|
|
313
|
+
found = True
|
|
314
|
+
if found is False:
|
|
315
|
+
ret = rpc_client.transport_create(tr_type)
|
|
316
|
+
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
317
|
+
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
318
|
+
IP = iface.ip4_address
|
|
319
|
+
break
|
|
320
|
+
logger.info(f"add {pt_name} to subsystem")
|
|
321
|
+
ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
|
|
322
|
+
if not ret:
|
|
323
|
+
logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
|
|
324
|
+
return False
|
|
323
325
|
|
|
324
326
|
ret = rpc_client.get_bdevs(raid_bdev)
|
|
325
327
|
|
|
@@ -380,38 +382,41 @@ def _create_jm_stack_on_device(rpc_client, nvme, snode, after_restart):
|
|
|
380
382
|
logger.error(f"Failed to create {jm_bdev}")
|
|
381
383
|
return False
|
|
382
384
|
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
if
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
IP = None
|
|
394
|
-
for iface in snode.data_nics:
|
|
395
|
-
if iface.ip4_address:
|
|
396
|
-
tr_type = iface.get_transport_type()
|
|
397
|
-
ret = rpc_client.transport_list()
|
|
398
|
-
found = False
|
|
399
|
-
if ret:
|
|
400
|
-
for ty in ret:
|
|
401
|
-
if ty['trtype'] == tr_type:
|
|
402
|
-
found = True
|
|
403
|
-
if found is False:
|
|
404
|
-
ret = rpc_client.transport_create(tr_type)
|
|
405
|
-
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
406
|
-
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
407
|
-
IP = iface.ip4_address
|
|
408
|
-
break
|
|
409
|
-
logger.info(f"add {pt_name} to subsystem")
|
|
410
|
-
ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
|
|
411
|
-
if not ret:
|
|
412
|
-
logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
|
|
413
|
-
return False
|
|
385
|
+
pt_name = ""
|
|
386
|
+
subsystem_nqn = ""
|
|
387
|
+
IP = ""
|
|
388
|
+
if snode.enable_ha_jm:
|
|
389
|
+
# add pass through
|
|
390
|
+
pt_name = f"{jm_bdev}_PT"
|
|
391
|
+
ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
|
|
392
|
+
if not ret:
|
|
393
|
+
logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
|
|
394
|
+
return False
|
|
414
395
|
|
|
396
|
+
subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
|
|
397
|
+
logger.info("creating subsystem %s", subsystem_nqn)
|
|
398
|
+
ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
|
|
399
|
+
IP = None
|
|
400
|
+
for iface in snode.data_nics:
|
|
401
|
+
if iface.ip4_address:
|
|
402
|
+
tr_type = iface.get_transport_type()
|
|
403
|
+
ret = rpc_client.transport_list()
|
|
404
|
+
found = False
|
|
405
|
+
if ret:
|
|
406
|
+
for ty in ret:
|
|
407
|
+
if ty['trtype'] == tr_type:
|
|
408
|
+
found = True
|
|
409
|
+
if found is False:
|
|
410
|
+
ret = rpc_client.transport_create(tr_type)
|
|
411
|
+
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
412
|
+
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
413
|
+
IP = iface.ip4_address
|
|
414
|
+
break
|
|
415
|
+
logger.info(f"add {pt_name} to subsystem")
|
|
416
|
+
ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
|
|
417
|
+
if not ret:
|
|
418
|
+
logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
|
|
419
|
+
return False
|
|
415
420
|
|
|
416
421
|
return JMDevice({
|
|
417
422
|
'uuid': alceml_id,
|
|
@@ -701,37 +706,38 @@ def _prepare_cluster_devices_on_restart(snode):
|
|
|
701
706
|
logger.error(f"Failed to create {jm_bdev}")
|
|
702
707
|
return False
|
|
703
708
|
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
709
|
+
if snode.enable_ha_jm:
|
|
710
|
+
# add pass through
|
|
711
|
+
pt_name = f"{jm_bdev}_PT"
|
|
712
|
+
ret = rpc_client.bdev_PT_NoExcl_create(pt_name, jm_bdev)
|
|
713
|
+
if not ret:
|
|
714
|
+
logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
|
|
715
|
+
return False
|
|
710
716
|
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
717
|
+
subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
|
|
718
|
+
logger.info("creating subsystem %s", subsystem_nqn)
|
|
719
|
+
ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
|
|
720
|
+
IP = None
|
|
721
|
+
for iface in snode.data_nics:
|
|
722
|
+
if iface.ip4_address:
|
|
723
|
+
tr_type = iface.get_transport_type()
|
|
724
|
+
ret = rpc_client.transport_list()
|
|
725
|
+
found = False
|
|
726
|
+
if ret:
|
|
727
|
+
for ty in ret:
|
|
728
|
+
if ty['trtype'] == tr_type:
|
|
729
|
+
found = True
|
|
730
|
+
if found is False:
|
|
731
|
+
ret = rpc_client.transport_create(tr_type)
|
|
732
|
+
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
733
|
+
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
734
|
+
IP = iface.ip4_address
|
|
735
|
+
break
|
|
736
|
+
logger.info(f"add {pt_name} to subsystem")
|
|
737
|
+
ret = rpc_client.nvmf_subsystem_add_ns(subsystem_nqn, pt_name)
|
|
738
|
+
if not ret:
|
|
739
|
+
logger.error(f"Failed to add: {pt_name} to the subsystem: {subsystem_nqn}")
|
|
740
|
+
return False
|
|
735
741
|
|
|
736
742
|
return True
|
|
737
743
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/controllers/caching_node_controller.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/clean_local_storage_deploy.sh
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/dashboards/node-exporter.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/cached_lvol_stat_collector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/capacity_and_stats_collector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.44 → sbcli_dev-3.8.46}/simplyblock_core/services/main_distr_event_collector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|