sbcli-dev 4.0.17__zip → 4.0.18__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.
Potentially problematic release.
This version of sbcli-dev might be problematic. Click here for more details.
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/PKG-INFO +1 -1
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/env_var +1 -1
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/sbcli_dev.egg-info/PKG-INFO +1 -1
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/health_controller.py +1 -1
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/tasks_controller.py +18 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/rpc_client.py +5 -4
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/health_check_service.py +4 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/storage_node_monitor.py +6 -2
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/storage_node_ops.py +8 -2
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/README.md +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/pyproject.toml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/sbcli_dev.egg-info/SOURCES.txt +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/sbcli_dev.egg-info/dependency_links.txt +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/sbcli_dev.egg-info/entry_points.txt +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/sbcli_dev.egg-info/requires.txt +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/sbcli_dev.egg-info/top_level.txt +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/setup.cfg +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/setup.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_cli/cli.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_cli/main.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/__init__.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/cluster_ops.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/cnode_client.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/compute_node_ops.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/constants.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/__init__.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/caching_node_controller.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/cluster_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/device_controller.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/device_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/events_controller.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/lvol_controller.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/lvol_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/mgmt_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/pool_controller.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/pool_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/snapshot_controller.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/snapshot_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/storage_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/controllers/tasks_events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/distr_controller.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/kv_store.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/mgmt_node_ops.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/__init__.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/base_model.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/caching_node.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/cluster.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/compute_node.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/deployer.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/events.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/global_settings.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/iface.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/job_schedule.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/lvol_model.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/mgmt_node.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/nvme_device.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/pool.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/port_stat.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/snapshot.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/stats.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/models/storage_node.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/pci_utils.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/__init__.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/config_docker.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/dashboard.yml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/dashboards/devices.json +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/dashboards/pools.json +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/datasource.yml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/db_config_double.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/db_config_single.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/deploy_stack.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/haproxy.cfg +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/install_deps.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/objstore.yml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/prometheus.yml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/run_ssh.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/set_db_config.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/__init__.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/caching_node_monitor.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/cap_monitor.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/device_monitor.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/install_service.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/log_agg_service.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/lvol_monitor.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/lvol_stat_collector.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/main_distr_event_collector.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/new_device_discovery.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/port_stat_collector.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/remove_service.sh +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/service_template.service +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/tasks_runner_migration.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/tasks_runner_restart.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/shell_utils.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/snode_client.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/utils.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/__init__.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/app.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/auth_middleware.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/__init__.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/node_api_basic.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/snode_ops.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_device.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_pool.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/caching_node_app.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/caching_node_app_k8s.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/node_utils.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/node_webapp.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/snode_app.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/snode_app_k8s.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/delete.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/deploy.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/deploy_cnode.yaml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/deploy_spdk.yaml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/is_up.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/list_deps.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/rpac.yaml +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/static/tst.py +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_web/utils.py +0 -0
|
@@ -446,7 +446,7 @@ def check_jm_device(device_id):
|
|
|
446
446
|
try:
|
|
447
447
|
rpc_client = RPCClient(
|
|
448
448
|
snode.mgmt_ip, snode.rpc_port,
|
|
449
|
-
snode.rpc_username, snode.rpc_password)
|
|
449
|
+
snode.rpc_username, snode.rpc_password, timeout=3, retry=2)
|
|
450
450
|
|
|
451
451
|
ret = rpc_client.get_bdevs(jm_device.jm_bdev)
|
|
452
452
|
if ret:
|
|
@@ -52,6 +52,11 @@ def _add_task(function_name, cluster_id, node_id, device_id,
|
|
|
52
52
|
if task_id:
|
|
53
53
|
logger.info(f"Task found, skip adding new task: {task_id}")
|
|
54
54
|
return False
|
|
55
|
+
elif function_name == JobSchedule.FN_DEV_MIG:
|
|
56
|
+
task_id = get_device_mig_task(cluster_id, node_id, function_params['distr_name'])
|
|
57
|
+
if task_id:
|
|
58
|
+
logger.info(f"Task found, skip adding new task: {task_id}")
|
|
59
|
+
return False
|
|
55
60
|
|
|
56
61
|
task_obj = JobSchedule()
|
|
57
62
|
task_obj.uuid = str(uuid.uuid4())
|
|
@@ -72,6 +77,8 @@ def _add_task(function_name, cluster_id, node_id, device_id,
|
|
|
72
77
|
def add_device_mig_task(device_id):
|
|
73
78
|
device = db_controller.get_storage_devices(device_id)
|
|
74
79
|
for node in db_controller.get_storage_nodes_by_cluster_id(device.cluster_id):
|
|
80
|
+
if not node.lvols:
|
|
81
|
+
continue
|
|
75
82
|
for bdev in node.lvstore_stack:
|
|
76
83
|
if bdev['type'] == "bdev_distr":
|
|
77
84
|
_add_task(JobSchedule.FN_DEV_MIG, device.cluster_id, node.get_id(), device.get_id(),
|
|
@@ -190,6 +197,7 @@ def get_active_node_task(cluster_id, node_id):
|
|
|
190
197
|
return task.uuid
|
|
191
198
|
return False
|
|
192
199
|
|
|
200
|
+
|
|
193
201
|
def get_new_device_mig_task(cluster_id, node_id, distr_name):
|
|
194
202
|
tasks = db_controller.get_job_tasks(cluster_id)
|
|
195
203
|
for task in tasks:
|
|
@@ -198,3 +206,13 @@ def get_new_device_mig_task(cluster_id, node_id, distr_name):
|
|
|
198
206
|
and "distr_name" in task.function_params and task.function_params["distr_name"] == distr_name:
|
|
199
207
|
return task.uuid
|
|
200
208
|
return False
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
def get_device_mig_task(cluster_id, node_id, distr_name):
|
|
212
|
+
tasks = db_controller.get_job_tasks(cluster_id)
|
|
213
|
+
for task in tasks:
|
|
214
|
+
if task.function_name == JobSchedule.FN_DEV_MIG and task.node_id == node_id:
|
|
215
|
+
if task.status != JobSchedule.STATUS_DONE and task.canceled is False \
|
|
216
|
+
and "distr_name" in task.function_params and task.function_params["distr_name"] == distr_name:
|
|
217
|
+
return task.uuid
|
|
218
|
+
return False
|
|
@@ -482,11 +482,11 @@ class RPCClient:
|
|
|
482
482
|
"trsvcid": str(port),
|
|
483
483
|
"subnqn": nqn,
|
|
484
484
|
"fabrics_connect_timeout_us": 100000,
|
|
485
|
-
"fast_io_fail_timeout_sec": 1,
|
|
485
|
+
# "fast_io_fail_timeout_sec": 1,
|
|
486
486
|
"num_io_queues": 16384,
|
|
487
|
-
"ctrlr_loss_timeout_sec": 1,
|
|
487
|
+
# "ctrlr_loss_timeout_sec": 1,
|
|
488
488
|
"multipath":"disable",
|
|
489
|
-
"reconnect_delay_sec":1
|
|
489
|
+
# "reconnect_delay_sec":1
|
|
490
490
|
}
|
|
491
491
|
return self._request("bdev_nvme_attach_controller", params)
|
|
492
492
|
|
|
@@ -499,7 +499,7 @@ class RPCClient:
|
|
|
499
499
|
"trsvcid": str(port),
|
|
500
500
|
"subnqn": nqn,
|
|
501
501
|
"fast_io_fail_timeout_sec": 1,
|
|
502
|
-
"ctrlr_loss_timeout_sec":
|
|
502
|
+
"ctrlr_loss_timeout_sec": 1,
|
|
503
503
|
"reconnect_delay_sec": 1,
|
|
504
504
|
"fabrics_connect_timeout_us": 100000,
|
|
505
505
|
"multipath":"disable"
|
|
@@ -559,6 +559,7 @@ class RPCClient:
|
|
|
559
559
|
|
|
560
560
|
def bdev_nvme_set_options(self):
|
|
561
561
|
params = {
|
|
562
|
+
# "action_on_timeout": "abort",
|
|
562
563
|
"bdev_retry_count": 0,
|
|
563
564
|
"transport_retry_count": 0,
|
|
564
565
|
"ctrlr_loss_timeout_sec": 2,
|
|
@@ -115,6 +115,8 @@ while True:
|
|
|
115
115
|
connected_devices.append(remote_device.get_id())
|
|
116
116
|
else:
|
|
117
117
|
logger.info(f"Checking bdev: {remote_device.remote_bdev} ... not found")
|
|
118
|
+
ret = rpc_client.bdev_nvme_detach_controller(remote_device.remote_bdev)
|
|
119
|
+
time.sleep(1)
|
|
118
120
|
ret = rpc_client.bdev_nvme_attach_controller_tcp(
|
|
119
121
|
remote_device.remote_bdev, remote_device.nvmf_nqn, remote_device.nvmf_ip, remote_device.nvmf_port)
|
|
120
122
|
if ret:
|
|
@@ -135,6 +137,8 @@ while True:
|
|
|
135
137
|
logger.info(f"connecting to online device: {dev.get_id()}")
|
|
136
138
|
name = f"remote_{dev.alceml_bdev}"
|
|
137
139
|
bdev_name = f"{name}n1"
|
|
140
|
+
ret = rpc_client.bdev_nvme_detach_controller(name)
|
|
141
|
+
time.sleep(1)
|
|
138
142
|
ret = rpc_client.bdev_nvme_attach_controller_tcp(
|
|
139
143
|
name, dev.nvmf_nqn, dev.nvmf_ip,
|
|
140
144
|
dev.nvmf_port)
|
|
@@ -154,7 +154,6 @@ while True:
|
|
|
154
154
|
logger.info(f"Check 2: ping mgmt ip {snode.mgmt_ip} ... {ping_check}")
|
|
155
155
|
|
|
156
156
|
# 2- check node API
|
|
157
|
-
|
|
158
157
|
node_api_check = health_controller._check_node_api(snode.mgmt_ip)
|
|
159
158
|
logger.info(f"Check: node API {snode.mgmt_ip}:5000 ... {node_api_check}")
|
|
160
159
|
|
|
@@ -162,7 +161,12 @@ while True:
|
|
|
162
161
|
spdk_process = health_controller._check_spdk_process_up(snode.mgmt_ip)
|
|
163
162
|
logger.info(f"Check: spdk process {snode.mgmt_ip}:5000 ... {spdk_process}")
|
|
164
163
|
|
|
165
|
-
|
|
164
|
+
# 4- check rpc
|
|
165
|
+
node_rpc_check = health_controller._check_node_rpc(
|
|
166
|
+
snode.mgmt_ip, snode.rpc_port, snode.rpc_username, snode.rpc_password)
|
|
167
|
+
logger.info(f"Check: node RPC {snode.mgmt_ip}:{snode.rpc_port} ... {node_rpc_check}")
|
|
168
|
+
|
|
169
|
+
is_node_online = ping_check and node_api_check and spdk_process and node_rpc_check
|
|
166
170
|
if is_node_online:
|
|
167
171
|
set_node_online(snode)
|
|
168
172
|
|
|
@@ -751,7 +751,7 @@ def _connect_to_remote_devs(this_node):
|
|
|
751
751
|
|
|
752
752
|
rpc_client = RPCClient(
|
|
753
753
|
this_node.mgmt_ip, this_node.rpc_port,
|
|
754
|
-
this_node.rpc_username, this_node.rpc_password, timeout=
|
|
754
|
+
this_node.rpc_username, this_node.rpc_password, timeout=5, retry=2)
|
|
755
755
|
|
|
756
756
|
remote_devices = []
|
|
757
757
|
# connect to remote devs
|
|
@@ -771,6 +771,8 @@ def _connect_to_remote_devs(this_node):
|
|
|
771
771
|
if ret:
|
|
772
772
|
logger.info(f"bdev found {bdev_name}")
|
|
773
773
|
else:
|
|
774
|
+
ret = rpc_client.bdev_nvme_detach_controller(name)
|
|
775
|
+
time.sleep(1)
|
|
774
776
|
ret = rpc_client.bdev_nvme_attach_controller_tcp(name, dev.nvmf_nqn, dev.nvmf_ip, dev.nvmf_port)
|
|
775
777
|
if not ret:
|
|
776
778
|
logger.error(f"Failed to connect to device: {dev.get_id()}")
|
|
@@ -786,7 +788,7 @@ def _connect_to_remote_jm_devs(this_node, jm_ids=[]):
|
|
|
786
788
|
|
|
787
789
|
rpc_client = RPCClient(
|
|
788
790
|
this_node.mgmt_ip, this_node.rpc_port,
|
|
789
|
-
this_node.rpc_username, this_node.rpc_password, timeout=
|
|
791
|
+
this_node.rpc_username, this_node.rpc_password, timeout=5, retry=2)
|
|
790
792
|
|
|
791
793
|
node_bdevs = rpc_client.get_bdevs()
|
|
792
794
|
if node_bdevs:
|
|
@@ -2029,6 +2031,10 @@ def resume_storage_node(node_id):
|
|
|
2029
2031
|
if snode.jm_device and snode.jm_device.status == JMDevice.STATUS_UNAVAILABLE:
|
|
2030
2032
|
device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_ONLINE)
|
|
2031
2033
|
|
|
2034
|
+
logger.info("Connecting to remote devices")
|
|
2035
|
+
snode.remote_devices = _connect_to_remote_devs(snode)
|
|
2036
|
+
snode.write_to_db(db_controller.kv_store)
|
|
2037
|
+
|
|
2032
2038
|
rpc_client = RPCClient(
|
|
2033
2039
|
snode.mgmt_ip, snode.rpc_port,
|
|
2034
2040
|
snode.rpc_username, snode.rpc_password)
|
|
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-4.0.17 → sbcli_dev-4.0.18}/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
|
{sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/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-4.0.17 → sbcli_dev-4.0.18}/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-4.0.17 → sbcli_dev-4.0.18}/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-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/cached_lvol_stat_collector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/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
|
{sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/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
|
{sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/tasks_runner_failed_migration.py
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-4.0.17 → sbcli_dev-4.0.18}/simplyblock_core/services/tasks_runner_new_dev_migration.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
|