sbcli-dev 4.0.66__zip → 4.0.68__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.66 → sbcli_dev-4.0.68}/PKG-INFO +1 -1
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/env_var +1 -3
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/sbcli_dev.egg-info/PKG-INFO +1 -1
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_cli/cli.py +8 -3
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/cluster_ops.py +6 -3
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/lvol_controller.py +4 -2
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/snapshot_controller.py +2 -1
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/cluster.py +2 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/rpc_client.py +2 -2
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/storage_node_ops.py +5 -2
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_cluster.py +2 -1
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/templates/storage_deploy_spdk.yaml.j2 +4 -1
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/README.md +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/pyproject.toml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/sbcli_dev.egg-info/SOURCES.txt +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/sbcli_dev.egg-info/dependency_links.txt +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/sbcli_dev.egg-info/entry_points.txt +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/sbcli_dev.egg-info/requires.txt +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/sbcli_dev.egg-info/top_level.txt +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/setup.cfg +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/setup.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_cli/main.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/__init__.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/cnode_client.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/compute_node_ops.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/constants.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/__init__.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/caching_node_controller.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/cluster_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/device_controller.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/device_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/events_controller.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/health_controller.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/lvol_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/mgmt_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/pool_controller.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/pool_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/snapshot_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/storage_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/tasks_controller.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/controllers/tasks_events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/distr_controller.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/kv_store.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/mgmt_node_ops.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/__init__.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/base_model.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/caching_node.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/compute_node.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/deployer.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/events.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/global_settings.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/iface.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/job_schedule.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/lvol_model.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/mgmt_node.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/nvme_device.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/pool.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/port_stat.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/snapshot.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/stats.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/models/storage_node.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/pci_utils.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/__init__.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2 +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/alerting/alert_rules.yaml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/clean_local_storage_deploy.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/config_docker.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/dashboard.yml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/dashboards/cluster.json +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/dashboards/devices.json +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/dashboards/lvols.json +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/dashboards/node-exporter.json +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/dashboards/nodes.json +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/dashboards/pools.json +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/datasource.yml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/db_config_double.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/db_config_single.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/deploy_stack.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/docker-compose-swarm-monitoring.yml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/docker-compose-swarm.yml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/haproxy.cfg +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/install_deps.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/objstore.yml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/prometheus.yml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/run_ssh.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/set_db_config.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/stack_deploy_wait.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/__init__.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/cached_lvol_stat_collector.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/caching_node_monitor.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/cap_monitor.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/capacity_and_stats_collector.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/device_monitor.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/health_check_service.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/install_service.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/log_agg_service.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/lvol_monitor.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/lvol_stat_collector.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/main_distr_event_collector.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/mgmt_node_monitor.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/new_device_discovery.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/port_stat_collector.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/remove_service.sh +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/service_template.service +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/spdk_http_proxy_server.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/storage_node_monitor.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/tasks_runner_failed_migration.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/tasks_runner_migration.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/tasks_runner_new_dev_migration.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/tasks_runner_node_add.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/tasks_runner_restart.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/shell_utils.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/snode_client.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/utils.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/__init__.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/app.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/auth_middleware.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/__init__.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/caching_node_ops.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/caching_node_ops_k8s.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/node_api_basic.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/node_api_caching_docker.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/node_api_caching_ks.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/snode_ops.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/snode_ops_k8s.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_caching_node.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_deployer.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_device.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_lvol.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_mgmt_node.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_pool.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_snapshot.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/blueprints/web_api_storage_node.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/caching_node_app.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/caching_node_app_k8s.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/node_utils.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/node_webapp.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/snode_app.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/snode_app_k8s.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/delete.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/deploy.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/deploy_cnode.yaml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/deploy_spdk.yaml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/is_up.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/list_deps.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/rpac.yaml +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/static/tst.py +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/templates/caching_deploy_spdk.yaml.j2 +0 -0
- {sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_web/utils.py +0 -0
|
@@ -294,7 +294,8 @@ class CLIWrapper:
|
|
|
294
294
|
sub_command.add_argument("--ha-type", help='LVol HA type (single, ha), default is cluster HA type',
|
|
295
295
|
dest='ha_type', choices=["single", "ha", "default"], default='single')
|
|
296
296
|
sub_command.add_argument("--enable-node-affinity", help='Enable node affinity for storage nodes', action='store_true')
|
|
297
|
-
|
|
297
|
+
sub_command.add_argument("--qpair-count", help='tcp transport qpair count', type=int, dest='qpair_count',
|
|
298
|
+
default=6, choices=range(128))
|
|
298
299
|
# add cluster
|
|
299
300
|
sub_command = self.add_sub_command(subparser, 'add', 'Add new cluster')
|
|
300
301
|
sub_command.add_argument("--blk_size", help='The block size in bytes', type=int, choices=[512, 4096], default=512)
|
|
@@ -316,6 +317,8 @@ class CLIWrapper:
|
|
|
316
317
|
sub_command.add_argument("--ha-type", help='LVol HA type (single, ha), default is cluster HA type',
|
|
317
318
|
dest='ha_type', choices=["single", "ha", "default"], default='default')
|
|
318
319
|
sub_command.add_argument("--enable-node-affinity", help='Enable node affinity for storage nodes', action='store_true')
|
|
320
|
+
sub_command.add_argument("--qpair-count", help='tcp transport qpair count', type=int, dest='qpair_count',
|
|
321
|
+
default=6, choices=range(128))
|
|
319
322
|
|
|
320
323
|
# Activate cluster
|
|
321
324
|
sub_command = self.add_sub_command(subparser, 'activate', 'Create distribs and raid0 bdevs on all the storage node and move the cluster to active state')
|
|
@@ -1250,10 +1253,11 @@ class CLIWrapper:
|
|
|
1250
1253
|
distr_chunk_bs = args.distr_chunk_bs
|
|
1251
1254
|
ha_type = args.ha_type
|
|
1252
1255
|
enable_node_affinity = args.enable_node_affinity
|
|
1256
|
+
qpair_count = args.qpair_count
|
|
1253
1257
|
|
|
1254
1258
|
return cluster_ops.add_cluster(
|
|
1255
1259
|
blk_size, page_size_in_blocks, cap_warn, cap_crit, prov_cap_warn, prov_cap_crit,
|
|
1256
|
-
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity)
|
|
1260
|
+
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity, qpair_count)
|
|
1257
1261
|
|
|
1258
1262
|
def cluster_create(self, args):
|
|
1259
1263
|
page_size_in_blocks = args.page_size
|
|
@@ -1274,12 +1278,13 @@ class CLIWrapper:
|
|
|
1274
1278
|
contact_point = args.contact_point
|
|
1275
1279
|
grafana_endpoint = args.grafana_endpoint
|
|
1276
1280
|
enable_node_affinity = args.enable_node_affinity
|
|
1281
|
+
qpair_count = args.qpair_count
|
|
1277
1282
|
|
|
1278
1283
|
return cluster_ops.create_cluster(
|
|
1279
1284
|
blk_size, page_size_in_blocks,
|
|
1280
1285
|
CLI_PASS, cap_warn, cap_crit, prov_cap_warn, prov_cap_crit,
|
|
1281
1286
|
ifname, log_del_interval, metrics_retention_period, contact_point, grafana_endpoint,
|
|
1282
|
-
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity)
|
|
1287
|
+
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity, qpair_count)
|
|
1283
1288
|
|
|
1284
1289
|
def query_yes_no(self, question, default="yes"):
|
|
1285
1290
|
"""Ask a yes/no question via raw_input() and return their answer.
|
|
@@ -102,7 +102,8 @@ def _add_graylog_input(cluster_ip, password):
|
|
|
102
102
|
|
|
103
103
|
def create_cluster(blk_size, page_size_in_blocks, cli_pass,
|
|
104
104
|
cap_warn, cap_crit, prov_cap_warn, prov_cap_crit, ifname, log_del_interval, metrics_retention_period,
|
|
105
|
-
contact_point, grafana_endpoint, distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type,
|
|
105
|
+
contact_point, grafana_endpoint, distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type,
|
|
106
|
+
enable_node_affinity, qpair_count):
|
|
106
107
|
logger.info("Installing dependencies...")
|
|
107
108
|
ret = scripts.install_deps()
|
|
108
109
|
logger.info("Installing dependencies > Done")
|
|
@@ -169,7 +170,8 @@ def create_cluster(blk_size, page_size_in_blocks, cli_pass,
|
|
|
169
170
|
else:
|
|
170
171
|
c.grafana_endpoint = f"http://{DEV_IP}/grafana"
|
|
171
172
|
c.enable_node_affinity = enable_node_affinity
|
|
172
|
-
|
|
173
|
+
c.qpair_count = qpair_count or 256
|
|
174
|
+
|
|
173
175
|
alerts_template_folder = os.path.join(TOP_DIR, "simplyblock_core/scripts/alerting/")
|
|
174
176
|
alert_resources_file = "alert_resources.yaml"
|
|
175
177
|
|
|
@@ -287,7 +289,7 @@ def deploy_spdk(node_docker, spdk_cpu_mask, spdk_mem):
|
|
|
287
289
|
|
|
288
290
|
|
|
289
291
|
def add_cluster(blk_size, page_size_in_blocks, cap_warn, cap_crit, prov_cap_warn, prov_cap_crit,
|
|
290
|
-
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity):
|
|
292
|
+
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity, qpair_count):
|
|
291
293
|
db_controller = DBController()
|
|
292
294
|
clusters = db_controller.get_clusters()
|
|
293
295
|
if not clusters:
|
|
@@ -319,6 +321,7 @@ def add_cluster(blk_size, page_size_in_blocks, cap_warn, cap_crit, prov_cap_warn
|
|
|
319
321
|
cluster.distr_chunk_bs = distr_chunk_bs
|
|
320
322
|
cluster.ha_type = ha_type
|
|
321
323
|
cluster.enable_node_affinity = enable_node_affinity
|
|
324
|
+
cluster.qpair_count = qpair_count or 256
|
|
322
325
|
if cap_warn and cap_warn > 0:
|
|
323
326
|
cluster.cap_warn = cap_warn
|
|
324
327
|
if cap_crit and cap_crit > 0:
|
|
@@ -635,6 +635,7 @@ def add_lvol_on_node(lvol, snode, ha_comm_addrs=None, ha_inode_self=None):
|
|
|
635
635
|
ret = rpc_client.subsystem_create(lvol.nqn, 'sbcli-cn', lvol.uuid)
|
|
636
636
|
logger.debug(ret)
|
|
637
637
|
|
|
638
|
+
cluster = db_controller.get_cluster_by_id(snode.cluster_id)
|
|
638
639
|
# add listeners
|
|
639
640
|
logger.info("adding listeners")
|
|
640
641
|
for iface in snode.data_nics:
|
|
@@ -647,7 +648,7 @@ def add_lvol_on_node(lvol, snode, ha_comm_addrs=None, ha_inode_self=None):
|
|
|
647
648
|
if ty['trtype'] == tr_type:
|
|
648
649
|
found = True
|
|
649
650
|
if found is False:
|
|
650
|
-
ret = rpc_client.transport_create(tr_type)
|
|
651
|
+
ret = rpc_client.transport_create(tr_type, cluster.qpair_count)
|
|
651
652
|
logger.info("adding listener for %s on IP %s" % (lvol.nqn, iface.ip4_address))
|
|
652
653
|
ret = rpc_client.listeners_create(lvol.nqn, tr_type, iface.ip4_address, "4420")
|
|
653
654
|
is_optimized = False
|
|
@@ -695,6 +696,7 @@ def recreate_lvol_on_node(lvol, snode, ha_comm_addrs=None, ha_inode_self=None):
|
|
|
695
696
|
ret = rpc_client.subsystem_create(lvol.nqn, 'sbcli-cn', lvol.uuid)
|
|
696
697
|
logger.debug(ret)
|
|
697
698
|
|
|
699
|
+
cluster = db_controller.get_cluster_by_id(snode.cluster_id)
|
|
698
700
|
# add listeners
|
|
699
701
|
logger.info("adding listeners")
|
|
700
702
|
for iface in snode.data_nics:
|
|
@@ -707,7 +709,7 @@ def recreate_lvol_on_node(lvol, snode, ha_comm_addrs=None, ha_inode_self=None):
|
|
|
707
709
|
if ty['trtype'] == tr_type:
|
|
708
710
|
found = True
|
|
709
711
|
if found is False:
|
|
710
|
-
ret = rpc_client.transport_create(tr_type)
|
|
712
|
+
ret = rpc_client.transport_create(tr_type, cluster.qpair_count)
|
|
711
713
|
logger.info("adding listener for %s on IP %s" % (lvol.nqn, iface.ip4_address))
|
|
712
714
|
ret = rpc_client.listeners_create(lvol.nqn, tr_type, iface.ip4_address, "4420")
|
|
713
715
|
is_optimized = False
|
|
@@ -307,12 +307,13 @@ def clone(snapshot_id, clone_name, new_size=0):
|
|
|
307
307
|
logger.info("creating subsystem %s", subsystem_nqn)
|
|
308
308
|
ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', lvol.uuid)
|
|
309
309
|
|
|
310
|
+
cluster = db_controller.get_cluster_by_id(snode.cluster_id)
|
|
310
311
|
# add listeners
|
|
311
312
|
logger.info("adding listeners")
|
|
312
313
|
for iface in snode.data_nics:
|
|
313
314
|
if iface.ip4_address:
|
|
314
315
|
tr_type = iface.get_transport_type()
|
|
315
|
-
ret = rpc_client.transport_create(tr_type)
|
|
316
|
+
ret = rpc_client.transport_create(tr_type, cluster.qpair_count)
|
|
316
317
|
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
317
318
|
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
318
319
|
|
|
@@ -50,6 +50,8 @@ class Cluster(BaseModel):
|
|
|
50
50
|
"prov_cap_warn": {"type": int, "default": 180},
|
|
51
51
|
"prov_cap_crit": {"type": int, "default": 190},
|
|
52
52
|
|
|
53
|
+
"qpair_count": {"type": int, "default": 6},
|
|
54
|
+
|
|
53
55
|
"secret": {"type": str, "default": ""},
|
|
54
56
|
"status": {"type": str, "default": ""},
|
|
55
57
|
"updated_at": {"type": str, "default": ""},
|
|
@@ -119,7 +119,7 @@ class RPCClient:
|
|
|
119
119
|
params = {"trtype": trtype}
|
|
120
120
|
return self._request("nvmf_get_transports", params)
|
|
121
121
|
|
|
122
|
-
def transport_create(self, trtype):
|
|
122
|
+
def transport_create(self, trtype, qpair_count=256):
|
|
123
123
|
"""
|
|
124
124
|
[{'trtype': 'TCP', 'max_queue_depth': 128,
|
|
125
125
|
'max_io_qpairs_per_ctrlr': 127, 'in_capsule_data_size': 4096,
|
|
@@ -134,7 +134,7 @@ class RPCClient:
|
|
|
134
134
|
"""
|
|
135
135
|
params = {
|
|
136
136
|
"trtype": trtype,
|
|
137
|
-
"max_io_qpairs_per_ctrlr":
|
|
137
|
+
"max_io_qpairs_per_ctrlr": qpair_count,
|
|
138
138
|
"max_queue_depth": 512,
|
|
139
139
|
"abort_timeout_sec": 5,
|
|
140
140
|
"ack_timeout": 512,
|
|
@@ -440,6 +440,7 @@ def _create_jm_stack_on_device(rpc_client, nvme, snode, after_restart):
|
|
|
440
440
|
|
|
441
441
|
|
|
442
442
|
def _create_storage_device_stack(rpc_client, nvme, snode, after_restart):
|
|
443
|
+
db_controller = DBController()
|
|
443
444
|
nvme_bdev = nvme.nvme_bdev
|
|
444
445
|
if snode.enable_test_device:
|
|
445
446
|
test_name = f"{nvme.nvme_bdev}_test"
|
|
@@ -478,6 +479,7 @@ def _create_storage_device_stack(rpc_client, nvme, snode, after_restart):
|
|
|
478
479
|
logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
|
|
479
480
|
return False
|
|
480
481
|
|
|
482
|
+
cluster = db_controller.get_cluster_by_id(snode.cluster_id)
|
|
481
483
|
subsystem_nqn = snode.subsystem + ":dev:" + alceml_id
|
|
482
484
|
logger.info("creating subsystem %s", subsystem_nqn)
|
|
483
485
|
ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', alceml_id)
|
|
@@ -492,7 +494,7 @@ def _create_storage_device_stack(rpc_client, nvme, snode, after_restart):
|
|
|
492
494
|
if ty['trtype'] == tr_type:
|
|
493
495
|
found = True
|
|
494
496
|
if found is False:
|
|
495
|
-
ret = rpc_client.transport_create(tr_type)
|
|
497
|
+
ret = rpc_client.transport_create(tr_type, cluster.qpair_count)
|
|
496
498
|
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
497
499
|
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
498
500
|
IP = iface.ip4_address
|
|
@@ -729,6 +731,7 @@ def _prepare_cluster_devices_on_restart(snode):
|
|
|
729
731
|
logger.error(f"Failed to create pt noexcl bdev: {pt_name}")
|
|
730
732
|
return False
|
|
731
733
|
|
|
734
|
+
cluster = db_controller.get_cluster_by_id(snode.cluster_id)
|
|
732
735
|
subsystem_nqn = snode.subsystem + ":dev:" + jm_bdev
|
|
733
736
|
logger.info("creating subsystem %s", subsystem_nqn)
|
|
734
737
|
ret = rpc_client.subsystem_create(subsystem_nqn, 'sbcli-cn', jm_bdev)
|
|
@@ -743,7 +746,7 @@ def _prepare_cluster_devices_on_restart(snode):
|
|
|
743
746
|
if ty['trtype'] == tr_type:
|
|
744
747
|
found = True
|
|
745
748
|
if found is False:
|
|
746
|
-
ret = rpc_client.transport_create(tr_type)
|
|
749
|
+
ret = rpc_client.transport_create(tr_type, cluster.qpair_count)
|
|
747
750
|
logger.info("adding listener for %s on IP %s" % (subsystem_nqn, iface.ip4_address))
|
|
748
751
|
ret = rpc_client.listeners_create(subsystem_nqn, tr_type, iface.ip4_address, "4420")
|
|
749
752
|
IP = iface.ip4_address
|
|
@@ -45,9 +45,10 @@ def add_cluster():
|
|
|
45
45
|
distr_chunk_bs = cl_data.get('distr_chunk_bs', 4096)
|
|
46
46
|
ha_type = cl_data.get('ha_type', 'single')
|
|
47
47
|
enable_node_affinity = cl_data.get('enable_node_affinity', False)
|
|
48
|
+
qpair_count = cl_data.get('qpair_count', 256)
|
|
48
49
|
|
|
49
50
|
ret = cluster_ops.add_cluster(blk_size, page_size_in_blocks, cap_warn, cap_crit, prov_cap_warn, prov_cap_crit,
|
|
50
|
-
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity)
|
|
51
|
+
distr_ndcs, distr_npcs, distr_bs, distr_chunk_bs, ha_type, enable_node_affinity, qpair_count)
|
|
51
52
|
|
|
52
53
|
return utils.get_response(ret)
|
|
53
54
|
|
|
@@ -122,7 +122,10 @@ spec:
|
|
|
122
122
|
value: "{{ RPC_USERNAME }}"
|
|
123
123
|
- name: RPC_PASSWORD
|
|
124
124
|
value: "{{ RPC_PASSWORD }}"
|
|
125
|
-
|
|
125
|
+
- name: MULTI_THREADING_ENABLED
|
|
126
|
+
value: "True"
|
|
127
|
+
- name: TIMEOUT
|
|
128
|
+
value: "300"
|
|
126
129
|
- name: fluentd
|
|
127
130
|
image: fluent/fluentd-kubernetes-daemonset:v1.17.1-debian-graylog-1.2
|
|
128
131
|
imagePullPolicy: "Always"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
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.66 → sbcli_dev-4.0.68}/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
|
{sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/scripts/alerting/alert_resources.yaml.j2
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/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.66 → sbcli_dev-4.0.68}/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.66 → sbcli_dev-4.0.68}/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.66 → sbcli_dev-4.0.68}/simplyblock_core/services/cached_lvol_stat_collector.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/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-4.0.66 → sbcli_dev-4.0.68}/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-4.0.66 → sbcli_dev-4.0.68}/simplyblock_core/services/tasks_runner_failed_migration.py
RENAMED
|
File without changes
|
|
File without changes
|
{sbcli_dev-4.0.66 → sbcli_dev-4.0.68}/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
|