sbcli-hmdi 0.0.50__tar.gz → 0.0.51__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/PKG-INFO +2 -1
- sbcli_hmdi-0.0.50/sbcli_hmdi.egg-info/requires.txt → sbcli_hmdi-0.0.51/requirements.txt +1 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/sbcli_hmdi.egg-info/PKG-INFO +2 -1
- sbcli_hmdi-0.0.50/requirements.txt → sbcli_hmdi-0.0.51/sbcli_hmdi.egg-info/requires.txt +2 -1
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/health_controller.py +20 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/env_var +1 -1
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/health_check_service.py +27 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/README.md +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/pyproject.toml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/sbcli_hmdi.egg-info/SOURCES.txt +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/sbcli_hmdi.egg-info/dependency_links.txt +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/sbcli_hmdi.egg-info/entry_points.txt +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/sbcli_hmdi.egg-info/top_level.txt +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/setup.cfg +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/setup.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_cli/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_cli/cli.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_cli/main.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/cluster_ops.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/cnode_client.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/constants.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/caching_node_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/cluster_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/device_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/device_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/events_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/lvol_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/lvol_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/mgmt_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/pool_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/pool_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/snapshot_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/snapshot_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/storage_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/tasks_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/controllers/tasks_events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/db_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/distr_controller.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/mgmt_node_ops.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/base_model.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/caching_node.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/cluster.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/deployer.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/events.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/iface.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/job_schedule.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/lvol_model.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/mgmt_node.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/nvme_device.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/pool.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/port_stat.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/snapshot.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/stats.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/models/storage_node.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/pci_utils.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/rpc_client.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/config_docker.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/dashboard.yml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/dashboards/devices.json +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/dashboards/pools.json +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/datasource.yml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/db_config_double.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/db_config_single.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/deploy_fdb.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/deploy_stack.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/foundation.yml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/haproxy.cfg +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/install_deps.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/objstore.yml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/prepare_fdb.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/prometheus.yml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/run_ssh.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/set_db_config.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/caching_node_monitor.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/cap_monitor.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/device_monitor.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/install_service.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/log_agg_service.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/lvol_monitor.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/lvol_stat_collector.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/main_distr_event_collector.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/new_device_discovery.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/port_stat_collector.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/remove_service.sh +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/service_template.service +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/spdk/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/spdk/client.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/spdk_stats_collector.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/storage_node_monitor.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/tasks_runner_migration.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/tasks_runner_restart.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/shell_utils.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/snode_client.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/storage_node_ops.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/utils.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/workers/cleanup_foundationdb.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/README.md +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/app.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/auth_middleware.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/__init__.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/node_api_basic.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/snode_ops.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_cluster.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_device.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_pool.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/caching_node_app.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/caching_node_app_k8s.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/node_utils.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/node_webapp.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/requirements.txt +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/snode_app.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/snode_app_k8s.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/delete.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/deploy.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/deploy_cnode.yaml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/deploy_spdk.yaml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/is_up.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/list_deps.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/rpac.yaml +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/static/tst.py +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +0 -0
- {sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/utils.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: sbcli-hmdi
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.51
|
4
4
|
Summary: CLI for managing SimplyBlock cluster
|
5
5
|
Home-page: https://www.simplyblock.io/
|
6
6
|
Author: Hamdy
|
@@ -24,6 +24,7 @@ Requires-Dist: graypy==2.1.0
|
|
24
24
|
Requires-Dist: boto3
|
25
25
|
Requires-Dist: jinja2
|
26
26
|
Requires-Dist: argcomplete
|
27
|
+
Requires-Dist: jc
|
27
28
|
Dynamic: author
|
28
29
|
Dynamic: author-email
|
29
30
|
Dynamic: description
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: sbcli-hmdi
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.51
|
4
4
|
Summary: CLI for managing SimplyBlock cluster
|
5
5
|
Home-page: https://www.simplyblock.io/
|
6
6
|
Author: Hamdy
|
@@ -24,6 +24,7 @@ Requires-Dist: graypy==2.1.0
|
|
24
24
|
Requires-Dist: boto3
|
25
25
|
Requires-Dist: jinja2
|
26
26
|
Requires-Dist: argcomplete
|
27
|
+
Requires-Dist: jc
|
27
28
|
Dynamic: author
|
28
29
|
Dynamic: author-email
|
29
30
|
Dynamic: description
|
@@ -1,4 +1,5 @@
|
|
1
1
|
# coding=utf-8
|
2
|
+
import jc
|
2
3
|
|
3
4
|
from simplyblock_core import utils, distr_controller, storage_node_ops
|
4
5
|
from simplyblock_core.db_controller import DBController
|
@@ -102,6 +103,25 @@ def _check_spdk_process_up(ip):
|
|
102
103
|
return False
|
103
104
|
|
104
105
|
|
106
|
+
def _check_port_on_node(snode, port_id):
|
107
|
+
try:
|
108
|
+
snode_api = SNodeClient(f"{snode.mgmt_ip}:5000", timeout=3, retry=2)
|
109
|
+
iptables_command_output = snode_api.get_firewall()
|
110
|
+
result = jc.parse('iptables', iptables_command_output)
|
111
|
+
for chain in result:
|
112
|
+
if chain['chain'] in ["INPUT", "OUTPUT"]:
|
113
|
+
for rule in chain['rules']:
|
114
|
+
if str(port_id) in rule['options']:
|
115
|
+
action = rule['target']
|
116
|
+
if action == "DROP":
|
117
|
+
return False
|
118
|
+
|
119
|
+
return True
|
120
|
+
except Exception as e:
|
121
|
+
logger.debug(e)
|
122
|
+
return True
|
123
|
+
|
124
|
+
|
105
125
|
def _check_node_ping(ip):
|
106
126
|
res = utils.ping_host(ip)
|
107
127
|
if res:
|
@@ -9,6 +9,7 @@ from simplyblock_core.models.nvme_device import NVMeDevice
|
|
9
9
|
from simplyblock_core.models.storage_node import StorageNode
|
10
10
|
from simplyblock_core.rpc_client import RPCClient
|
11
11
|
from simplyblock_core import constants, db_controller, utils, distr_controller
|
12
|
+
from simplyblock_core.snode_client import SNodeClient
|
12
13
|
|
13
14
|
logger = utils.get_logger(__name__)
|
14
15
|
|
@@ -43,6 +44,8 @@ def set_device_health_check(cluster_id, device, health_check_status):
|
|
43
44
|
# get DB controller
|
44
45
|
db_controller = db_controller.DBController()
|
45
46
|
|
47
|
+
nodes_ports_blocked = {}
|
48
|
+
|
46
49
|
logger.info("Starting health check service")
|
47
50
|
while True:
|
48
51
|
clusters = db_controller.get_clusters()
|
@@ -286,14 +289,38 @@ while True:
|
|
286
289
|
if second_node_1 and second_node_1.status == StorageNode.STATUS_ONLINE:
|
287
290
|
lvstore_check &= health_controller._check_node_lvstore(lvstore_stack, second_node_1, auto_fix=True)
|
288
291
|
|
292
|
+
lvol_port_check = False
|
293
|
+
if node_api_check:
|
294
|
+
lvol_port_check = health_controller._check_port_on_node(snode, snode.lvol_subsys_port)
|
295
|
+
logger.info(
|
296
|
+
f"Check: node {snode.mgmt_ip}:{snode.rpc_port}, port: {snode.lvol_subsys_port} ... {lvol_port_check}")
|
297
|
+
if not lvol_port_check:
|
298
|
+
nodes_ports_blocked[snode.get_id()] = nodes_ports_blocked.get(snode.get_id(), []).append(
|
299
|
+
snode.lvol_subsys_port)
|
300
|
+
|
289
301
|
if snode.is_secondary_node:
|
290
302
|
for node in db_controller.get_storage_nodes():
|
291
303
|
if node.secondary_node_id == snode.get_id() and node.status == StorageNode.STATUS_ONLINE:
|
292
304
|
logger.info(f"Checking stack from node : {node.get_id()}")
|
293
305
|
lvstore_check &= health_controller._check_node_lvstore(node.lvstore_stack, snode, auto_fix=True)
|
306
|
+
lvol_port_check = False
|
307
|
+
if node_api_check:
|
308
|
+
lvol_port_check = health_controller._check_port_on_node(snode, node.lvol_subsys_port)
|
309
|
+
logger.info(
|
310
|
+
f"Check: node {snode.mgmt_ip}:{snode.rpc_port}, port: {node.lvol_subsys_port} ... {lvol_port_check}")
|
311
|
+
if not lvol_port_check:
|
312
|
+
nodes_ports_blocked[snode.get_id()] = nodes_ports_blocked.get(snode.get_id(), []).append(node.lvol_subsys_port)
|
294
313
|
|
295
314
|
health_check_status = is_node_online and node_devices_check and node_remote_devices_check and lvstore_check
|
296
315
|
set_node_health_check(snode, health_check_status)
|
297
316
|
|
298
317
|
time.sleep(constants.HEALTH_CHECK_INTERVAL_SEC)
|
299
318
|
|
319
|
+
for node_id, port_lst in nodes_ports_blocked.items():
|
320
|
+
snode = db_controller.get_storage_node_by_id(node_id)
|
321
|
+
snode_api = SNodeClient(f"{snode.mgmt_ip}:5000", timeout=3, retry=2)
|
322
|
+
for port in port_lst:
|
323
|
+
iptables_command_output = snode_api.firewall_set_port(port, "tcp", "allow")
|
324
|
+
|
325
|
+
nodes_ports_blocked = {}
|
326
|
+
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
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_hmdi-0.0.50 → sbcli_hmdi-0.0.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_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2
RENAMED
File without changes
|
File without changes
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.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_hmdi-0.0.50 → sbcli_hmdi-0.0.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
|
File without changes
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.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
|
File without changes
|
File without changes
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/cached_lvol_stat_collector.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.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
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_core/services/tasks_runner_failed_migration.py
RENAMED
File without changes
|
File without changes
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.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
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/blueprints/node_api_caching_docker.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
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2
RENAMED
File without changes
|
{sbcli_hmdi-0.0.50 → sbcli_hmdi-0.0.51}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2
RENAMED
File without changes
|
File without changes
|