sbcli-dev 10.9.1__tar.gz → 10.9.2__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.
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/PKG-INFO +1 -1
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/sbcli_dev.egg-info/PKG-INFO +1 -1
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/cluster_ops.py +1 -2
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/env_var +1 -1
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/storage_node_ops.py +41 -20
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/README.md +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/pyproject.toml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/requirements.txt +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/sbcli_dev.egg-info/SOURCES.txt +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/sbcli_dev.egg-info/dependency_links.txt +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/sbcli_dev.egg-info/entry_points.txt +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/sbcli_dev.egg-info/requires.txt +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/sbcli_dev.egg-info/top_level.txt +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/setup.cfg +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/setup.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_cli/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_cli/cli.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_cli/main.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/cnode_client.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/constants.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/caching_node_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/cluster_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/device_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/device_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/events_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/health_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/lvol_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/lvol_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/mgmt_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/pool_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/pool_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/snapshot_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/snapshot_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/storage_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/tasks_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/controllers/tasks_events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/db_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/distr_controller.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/mgmt_node_ops.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/base_model.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/caching_node.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/cluster.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/deployer.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/events.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/iface.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/job_schedule.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/lvol_model.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/mgmt_node.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/nvme_device.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/pool.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/port_stat.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/snapshot.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/stats.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/models/storage_node.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/pci_utils.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/rpc_client.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/config_docker.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/dashboard.yml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/dashboards/devices.json +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/dashboards/pools.json +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/datasource.yml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/db_config_double.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/db_config_single.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/deploy_fdb.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/deploy_stack.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/foundation.yml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/haproxy.cfg +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/install_deps.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/objstore.yml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/prepare_fdb.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/prometheus.yml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/run_ssh.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/set_db_config.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/caching_node_monitor.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/cap_monitor.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/device_monitor.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/health_check_service.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/install_service.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/log_agg_service.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/lvol_monitor.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/lvol_stat_collector.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/main_distr_event_collector.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/new_device_discovery.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/port_stat_collector.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/remove_service.sh +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/service_template.service +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/storage_node_monitor.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/tasks_runner_migration.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/tasks_runner_restart.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/shell_utils.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/snode_client.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/utils.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/workers/cleanup_foundationdb.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/README.md +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/app.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/auth_middleware.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/__init__.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/node_api_basic.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/snode_ops.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_device.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_pool.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/caching_node_app.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/caching_node_app_k8s.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/node_utils.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/node_webapp.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/requirements.txt +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/snode_app.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/snode_app_k8s.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/delete.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/deploy.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/deploy_cnode.yaml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/deploy_spdk.yaml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/is_up.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/list_deps.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/rpac.yaml +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/static/tst.py +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_web/utils.py +0 -0
|
@@ -718,8 +718,7 @@ def list_all_info(cluster_id):
|
|
|
718
718
|
rec = StatsObject()
|
|
719
719
|
|
|
720
720
|
lvol_data.append({
|
|
721
|
-
"UUID": lvol.uuid,
|
|
722
|
-
"Type": "LVol",
|
|
721
|
+
"LVol UUID": lvol.uuid,
|
|
723
722
|
|
|
724
723
|
"Size prov": f"{utils.humanbytes(rec.size_total)}",
|
|
725
724
|
"Size Used": f"{utils.humanbytes(rec.size_used)}",
|
|
@@ -2319,18 +2319,23 @@ def resume_storage_node(node_id):
|
|
|
2319
2319
|
else:
|
|
2320
2320
|
|
|
2321
2321
|
sec_node = db_controller.get_storage_node_by_id(snode.secondary_node_id)
|
|
2322
|
-
if sec_node
|
|
2323
|
-
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
|
|
2322
|
+
if sec_node :
|
|
2323
|
+
if sec_node.status == StorageNode.STATUS_UNREACHABLE:
|
|
2324
|
+
logger.error("Secondary node is unreachable, cannot resume primary node")
|
|
2325
|
+
return False
|
|
2326
|
+
|
|
2327
|
+
elif sec_node.status == StorageNode.STATUS_ONLINE:
|
|
2328
|
+
sec_node_client = RPCClient(
|
|
2329
|
+
sec_node.mgmt_ip, sec_node.rpc_port, sec_node.rpc_username, sec_node.rpc_password, timeout=5, retry=1)
|
|
2330
|
+
for lvol in db_controller.get_lvols_by_node_id(snode.get_id()):
|
|
2331
|
+
for iface in sec_node.data_nics:
|
|
2332
|
+
if iface.ip4_address:
|
|
2333
|
+
ret = sec_node_client.nvmf_subsystem_listener_set_ana_state(
|
|
2334
|
+
lvol.nqn, iface.ip4_address, "4420", False, ana="inaccessible")
|
|
2335
|
+
time.sleep(1)
|
|
2336
|
+
sec_node_client.bdev_lvol_set_leader(False, lvs_name=snode.lvstore)
|
|
2337
|
+
sec_node_client.bdev_distrib_force_to_non_leader(snode.jm_vuid)
|
|
2338
|
+
time.sleep(1)
|
|
2334
2339
|
|
|
2335
2340
|
for lvol in db_controller.get_lvols_by_node_id(snode.get_id()):
|
|
2336
2341
|
for iface in snode.data_nics:
|
|
@@ -2823,11 +2828,13 @@ def recreate_lvstore(snode):
|
|
|
2823
2828
|
if snode.is_secondary_node:
|
|
2824
2829
|
return recreate_lvstore_on_sec(snode)
|
|
2825
2830
|
|
|
2826
|
-
sec_node =
|
|
2831
|
+
sec_node = db_controller.get_storage_node_by_id(snode.secondary_node_id)
|
|
2832
|
+
prim_node_suspend = False
|
|
2827
2833
|
lvol_list = db_controller.get_lvols_by_node_id(snode.get_id())
|
|
2828
|
-
if
|
|
2829
|
-
sec_node
|
|
2830
|
-
|
|
2834
|
+
if sec_node:
|
|
2835
|
+
if sec_node.status == StorageNode.STATUS_UNREACHABLE:
|
|
2836
|
+
prim_node_suspend = True
|
|
2837
|
+
elif sec_node.status == StorageNode.STATUS_ONLINE:
|
|
2831
2838
|
sec_rpc_client = RPCClient(sec_node.mgmt_ip, sec_node.rpc_port, sec_node.rpc_username, sec_node.rpc_password)
|
|
2832
2839
|
|
|
2833
2840
|
for lvol in lvol_list:
|
|
@@ -2868,6 +2875,9 @@ def recreate_lvstore(snode):
|
|
|
2868
2875
|
|
|
2869
2876
|
time.sleep(2)
|
|
2870
2877
|
|
|
2878
|
+
if not lvol_list:
|
|
2879
|
+
prim_node_suspend = False
|
|
2880
|
+
|
|
2871
2881
|
ret, err = _create_bdev_stack(snode, [], primary_node=snode)
|
|
2872
2882
|
|
|
2873
2883
|
if err:
|
|
@@ -2879,13 +2889,18 @@ def recreate_lvstore(snode):
|
|
|
2879
2889
|
ret = rpc_client.bdev_wait_for_examine()
|
|
2880
2890
|
ret = rpc_client.bdev_lvol_set_lvs_groupid(snode.lvstore, snode.jm_vuid)
|
|
2881
2891
|
|
|
2882
|
-
if
|
|
2883
|
-
|
|
2884
|
-
|
|
2892
|
+
if not prim_node_suspend:
|
|
2893
|
+
if snode.jm_vuid:
|
|
2894
|
+
ret = rpc_client.jc_explicit_synchronization(snode.jm_vuid)
|
|
2895
|
+
logger.info(f"JM Sync res: {ret}")
|
|
2896
|
+
|
|
2897
|
+
lvol_ana_state = "optimized"
|
|
2898
|
+
if prim_node_suspend:
|
|
2899
|
+
lvol_ana_state = "inaccessible"
|
|
2885
2900
|
|
|
2886
2901
|
for lvol in lvol_list:
|
|
2887
2902
|
lvol_obj = db_controller.get_lvol_by_id(lvol.get_id())
|
|
2888
|
-
is_created, error = lvol_controller.recreate_lvol_on_node(lvol_obj, snode)
|
|
2903
|
+
is_created, error = lvol_controller.recreate_lvol_on_node(lvol_obj, snode, ana_state=lvol_ana_state)
|
|
2889
2904
|
if error:
|
|
2890
2905
|
logger.error(f"Failed to recreate LVol: {lvol_obj.get_id()} on node: {snode.get_id()}")
|
|
2891
2906
|
lvol_obj.status = LVol.STATUS_OFFLINE
|
|
@@ -2895,6 +2910,12 @@ def recreate_lvstore(snode):
|
|
|
2895
2910
|
lvol_obj.health_check = True
|
|
2896
2911
|
lvol_obj.write_to_db()
|
|
2897
2912
|
|
|
2913
|
+
if prim_node_suspend:
|
|
2914
|
+
set_node_status(snode.get_id(), StorageNode.STATUS_SUSPENDED)
|
|
2915
|
+
logger.info("Node restart interrupted because secondary node is unreachable")
|
|
2916
|
+
logger.info("Node status changed to suspended")
|
|
2917
|
+
return False
|
|
2918
|
+
|
|
2898
2919
|
if sec_node and sec_node.status == StorageNode.STATUS_ONLINE:
|
|
2899
2920
|
time.sleep(10)
|
|
2900
2921
|
sec_rpc_client = RPCClient(sec_node.mgmt_ip, sec_node.rpc_port, sec_node.rpc_username, sec_node.rpc_password, timeout=3, retry=2)
|
|
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-10.9.1 → sbcli_dev-10.9.2}/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
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/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-10.9.1 → sbcli_dev-10.9.2}/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
|
|
File without changes
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/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
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/cached_lvol_stat_collector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/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
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/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
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/simplyblock_core/services/tasks_runner_failed_migration.py
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-10.9.1 → sbcli_dev-10.9.2}/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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|