sbcli-dev 3.8.49__zip → 3.8.51__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.49 → sbcli_dev-3.8.51}/PKG-INFO +1 -1
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/env_var +1 -1
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/PKG-INFO +1 -1
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/health_controller.py +2 -2
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/distr_controller.py +5 -2
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/storage_node.py +2 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/storage_node_monitor.py +40 -36
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/utils.py +1 -1
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/README.md +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/pyproject.toml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/SOURCES.txt +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/dependency_links.txt +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/entry_points.txt +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/requires.txt +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/sbcli_dev.egg-info/top_level.txt +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/setup.cfg +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/setup.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_cli/cli.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_cli/main.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/__init__.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/cluster_ops.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/cnode_client.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/compute_node_ops.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/constants.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/__init__.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/caching_node_controller.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/cluster_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/device_controller.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/device_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/events_controller.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/lvol_controller.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/lvol_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/mgmt_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/pool_controller.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/pool_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/snapshot_controller.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/snapshot_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/storage_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/tasks_controller.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/controllers/tasks_events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/kv_store.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/mgmt_node_ops.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/__init__.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/base_model.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/caching_node.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/cluster.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/compute_node.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/deployer.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/events.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/global_settings.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/iface.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/job_schedule.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/lvol_model.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/mgmt_node.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/nvme_device.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/pool.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/port_stat.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/snapshot.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/models/stats.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/pci_utils.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/rpc_client.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/__init__.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/config_docker.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboard.yml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/devices.json +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/dashboards/pools.json +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/datasource.yml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/db_config_double.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/db_config_single.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/deploy_stack.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/haproxy.cfg +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/install_deps.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/objstore.yml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/prometheus.yml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/run_ssh.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/set_db_config.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/__init__.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/caching_node_monitor.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/cap_monitor.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/device_monitor.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/distr_event_collector.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/health_check_service.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/install_service.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/log_agg_service.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/lvol_monitor.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/lvol_stat_collector.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/main_distr_event_collector.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/new_device_discovery.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/port_stat_collector.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/remove_service.sh +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/service_template.service +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_migration.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_restart.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/shell_utils.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/snode_client.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/storage_node_ops.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/__init__.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/app.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/auth_middleware.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/__init__.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/node_api_basic.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/snode_ops.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_device.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_pool.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/caching_node_app.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/caching_node_app_k8s.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/node_utils.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/node_webapp.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/snode_app.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/snode_app_k8s.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/delete.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/deploy.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/deploy_cnode.yaml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/deploy_spdk.yaml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/is_up.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/list_deps.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/rpac.yaml +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/static/tst.py +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_web/utils.py +0 -0
|
@@ -82,7 +82,7 @@ def _check_node_rpc(rpc_ip, rpc_port, rpc_username, rpc_password, timeout=60, re
|
|
|
82
82
|
|
|
83
83
|
def _check_node_api(ip):
|
|
84
84
|
try:
|
|
85
|
-
snode_api = SNodeClient(f"{ip}:5000", timeout=
|
|
85
|
+
snode_api = SNodeClient(f"{ip}:5000", timeout=10, retry=2)
|
|
86
86
|
logger.debug(f"Node API={ip}:5000")
|
|
87
87
|
info, _ = snode_api.info()
|
|
88
88
|
if info:
|
|
@@ -95,7 +95,7 @@ def _check_node_api(ip):
|
|
|
95
95
|
|
|
96
96
|
def _check_spdk_process_up(ip):
|
|
97
97
|
try:
|
|
98
|
-
snode_api = SNodeClient(f"{ip}:5000", timeout=
|
|
98
|
+
snode_api = SNodeClient(f"{ip}:5000", timeout=10, retry=2)
|
|
99
99
|
logger.debug(f"Node API={ip}:5000")
|
|
100
100
|
is_up, _ = snode_api.spdk_process_is_up()
|
|
101
101
|
logger.debug(f"SPDK is {is_up}")
|
|
@@ -151,8 +151,11 @@ def parse_distr_cluster_map(map_string):
|
|
|
151
151
|
}
|
|
152
152
|
nd = db_controller.get_storage_node_by_id(node_id)
|
|
153
153
|
if nd:
|
|
154
|
-
|
|
155
|
-
if
|
|
154
|
+
node_status = nd.status
|
|
155
|
+
if node_status == StorageNode.STATUS_SCHEDULABLE:
|
|
156
|
+
node_status = StorageNode.STATUS_UNREACHABLE
|
|
157
|
+
data["Actual Status"] = node_status
|
|
158
|
+
if node_status == status:
|
|
156
159
|
data["Results"] = "ok"
|
|
157
160
|
else:
|
|
158
161
|
data["Results"] = "failed"
|
|
@@ -130,52 +130,56 @@ while True:
|
|
|
130
130
|
# 1- check node ping
|
|
131
131
|
ping_check = health_controller._check_node_ping(snode.mgmt_ip)
|
|
132
132
|
logger.info(f"Check: ping mgmt ip {snode.mgmt_ip} ... {ping_check}")
|
|
133
|
+
if not ping_check:
|
|
134
|
+
time.sleep(1)
|
|
135
|
+
ping_check = health_controller._check_node_ping(snode.mgmt_ip)
|
|
136
|
+
logger.info(f"Check 2: ping mgmt ip {snode.mgmt_ip} ... {ping_check}")
|
|
133
137
|
|
|
134
138
|
# 2- check node API
|
|
135
|
-
node_api_check =
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
139
|
+
node_api_check = False
|
|
140
|
+
spdk_process = False
|
|
141
|
+
node_rpc_check = False
|
|
142
|
+
if ping_check:
|
|
143
|
+
node_api_check = health_controller._check_node_api(snode.mgmt_ip)
|
|
144
|
+
logger.info(f"Check: node API {snode.mgmt_ip}:5000 ... {node_api_check}")
|
|
145
|
+
|
|
146
|
+
# 3- check spdk_process
|
|
147
|
+
spdk_process = health_controller._check_spdk_process_up(snode.mgmt_ip)
|
|
148
|
+
logger.info(f"Check: spdk process {snode.mgmt_ip}:5000 ... {spdk_process}")
|
|
149
|
+
|
|
150
|
+
# node_rpc_check = True
|
|
151
|
+
# 3- check node RPC
|
|
152
|
+
node_rpc_check = health_controller._check_node_rpc(
|
|
153
|
+
snode.mgmt_ip, snode.rpc_port, snode.rpc_username, snode.rpc_password, timeout=5, retry=1)
|
|
154
|
+
logger.info(f"Check: node RPC {snode.mgmt_ip}:{snode.rpc_port} ... {node_rpc_check}")
|
|
155
|
+
|
|
156
|
+
# check JM device
|
|
157
|
+
if snode.jm_device:
|
|
158
|
+
if snode.jm_device.status in [JMDevice.STATUS_ONLINE, JMDevice.STATUS_UNAVAILABLE]:
|
|
159
|
+
ret = health_controller.check_jm_device(snode.jm_device.get_id())
|
|
160
|
+
if ret:
|
|
161
|
+
logger.info(f"JM bdev is online: {snode.jm_device.get_id()}")
|
|
162
|
+
if snode.jm_device.status != JMDevice.STATUS_ONLINE:
|
|
163
|
+
device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_ONLINE)
|
|
164
|
+
else:
|
|
165
|
+
logger.error(f"JM bdev is offline: {snode.jm_device.get_id()}")
|
|
166
|
+
if snode.jm_device.status != JMDevice.STATUS_UNAVAILABLE:
|
|
167
|
+
device_controller.set_jm_device_state(snode.jm_device.get_id(),
|
|
168
|
+
JMDevice.STATUS_UNAVAILABLE)
|
|
169
|
+
|
|
170
|
+
is_node_online = ping_check and node_api_check and node_rpc_check and spdk_process
|
|
153
171
|
if is_node_online:
|
|
154
172
|
set_node_online(snode)
|
|
155
173
|
else:
|
|
156
174
|
set_node_offline(snode)
|
|
157
|
-
if ping_check and node_api_check and not spdk_process:
|
|
158
|
-
# add node to auto restart
|
|
159
|
-
if cluster.status != Cluster.STATUS_UNREADY:
|
|
160
|
-
tasks_controller.add_node_to_auto_restart(snode)
|
|
161
|
-
|
|
162
175
|
if not ping_check and not node_api_check and not spdk_process:
|
|
163
176
|
# restart on new node
|
|
164
177
|
storage_node_ops.set_node_status(snode.get_id(), StorageNode.STATUS_SCHEDULABLE)
|
|
165
|
-
continue
|
|
166
178
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
if ret:
|
|
172
|
-
logger.info(f"JM bdev is online: {snode.jm_device.get_id()}")
|
|
173
|
-
if snode.jm_device.status != JMDevice.STATUS_ONLINE:
|
|
174
|
-
device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_ONLINE)
|
|
175
|
-
else:
|
|
176
|
-
logger.error(f"JM bdev is offline: {snode.jm_device.get_id()}")
|
|
177
|
-
if snode.jm_device.status != JMDevice.STATUS_UNAVAILABLE:
|
|
178
|
-
device_controller.set_jm_device_state(snode.jm_device.get_id(), JMDevice.STATUS_UNAVAILABLE)
|
|
179
|
+
elif ping_check and node_api_check and not spdk_process:
|
|
180
|
+
# add node to auto restart
|
|
181
|
+
if cluster.status != Cluster.STATUS_UNREADY:
|
|
182
|
+
tasks_controller.add_node_to_auto_restart(snode)
|
|
179
183
|
|
|
180
184
|
update_cluster_status(cluster_id)
|
|
181
185
|
|
|
@@ -261,7 +261,7 @@ def process_records(records, records_count):
|
|
|
261
261
|
|
|
262
262
|
def ping_host(ip):
|
|
263
263
|
logger.debug(f"Pinging ip ... {ip}")
|
|
264
|
-
response = os.system(f"ping -c
|
|
264
|
+
response = os.system(f"ping -c 3 -W 3 {ip} > /dev/null")
|
|
265
265
|
if response == 0:
|
|
266
266
|
logger.debug(f"{ip} is UP")
|
|
267
267
|
return True
|
|
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.49 → sbcli_dev-3.8.51}/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-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/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.49 → sbcli_dev-3.8.51}/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.49 → sbcli_dev-3.8.51}/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.49 → sbcli_dev-3.8.51}/simplyblock_core/services/cached_lvol_stat_collector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/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.49 → sbcli_dev-3.8.51}/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
|
{sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/simplyblock_core/services/tasks_runner_failed_migration.py
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-3.8.49 → sbcli_dev-3.8.51}/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
|