Skip to content

Commit

Permalink
mgr/cephadm: add nvmeof configuration fields
Browse files Browse the repository at this point in the history
Fixes: https://tracker.ceph.com/issues/64821

Signed-off-by: Gil Bregman <gbregman@il.ibm.com>
(cherry picked from commit a16ac81)

Conflicts:
	src/pybind/mgr/cephadm/templates/services/nvmeof/ceph-nvmeof.conf.j2
	src/pybind/mgr/cephadm/tests/test_services.py
  • Loading branch information
gbregman authored and adk3798 committed Apr 2, 2024
1 parent c2315c3 commit 19d375b
Show file tree
Hide file tree
Showing 3 changed files with 63 additions and 17 deletions.
5 changes: 3 additions & 2 deletions src/pybind/mgr/cephadm/services/nvmeof.py
Expand Up @@ -43,8 +43,9 @@ def prepare_create(self, daemon_spec: CephadmDaemonDeploySpec) -> CephadmDaemonD
'name': name,
'addr': host_ip,
'port': spec.port,
'log_level': 'WARN',
'rpc_socket': '/var/tmp/spdk.sock',
'spdk_log_level': 'WARNING',
'rpc_socket_dir': '/var/tmp/',
'rpc_socket_name': 'spdk.sock',
'transport_tcp_options': transport_tcp_options,
'rados_id': rados_id
}
Expand Down
Expand Up @@ -3,16 +3,33 @@
name = {{ name }}
group = {{ spec.group if spec.group is not none else '' }}
addr = {{ addr }}
port = {{ port }}
port = {{ spec.port }}
enable_auth = {{ spec.enable_auth }}
state_update_notify = True
state_update_interval_sec = 5
min_controller_id = {{ spec.min_controller_id }}
max_controller_id = {{ spec.max_controller_id }}
state_update_notify = {{ spec.state_update_notify }}
state_update_interval_sec = {{ spec.state_update_interval_sec }}
enable_spdk_discovery_controller = {{ spec.enable_spdk_discovery_controller }}
enable_prometheus_exporter = True
enable_prometheus_exporter = {{ spec.enable_prometheus_exporter }}
prometheus_exporter_ssl = False
prometheus_port = 10008
verify_nqns = {{ spec.verify_nqns }}
omap_file_lock_duration = {{ spec.omap_file_lock_duration }}
omap_file_lock_retries = {{ spec.omap_file_lock_retries }}
omap_file_lock_retry_sleep_interval = {{ spec.omap_file_lock_retry_sleep_interval }}
omap_file_update_reloads = {{ spec.omap_file_update_reloads }}

[gateway-logs]
log_level = {{ spec.log_level }}
log_files_enabled = {{ spec.log_files_enabled }}
log_files_rotation_enabled = {{ spec.log_files_rotation_enabled }}
verbose_log_messages = {{ spec.verbose_log_messages }}
max_log_file_size_in_mb = {{ spec.max_log_file_size_in_mb }}
max_log_files_count = {{ spec.max_log_files_count }}
max_log_directory_backups = {{ spec.max_log_directory_backups }}
log_directory = {{ spec.log_directory }}

[discovery]
addr = {{ addr }}
port = {{ spec.discovery_port }}

[ceph]
pool = {{ spec.pool }}
Expand All @@ -27,9 +44,11 @@ client_cert = {{ spec.client_cert }}

[spdk]
tgt_path = {{ spec.tgt_path }}
rpc_socket = {{ rpc_socket }}
timeout = {{ spec.timeout }}
log_level = {{ log_level }}
rpc_socket_dir = {{ spec.rpc_socket_dir }}
rpc_socket_name = {{ spec.rpc_socket_name }}
timeout = {{ spec.spdk_timeout }}
bdevs_per_cluster = {{ spec.bdevs_per_cluster }}
log_level = {{ spec.spdk_log_level }}
conn_retries = {{ spec.conn_retries }}
transports = {{ spec.transports }}
{% if transport_tcp_options %}
Expand All @@ -38,3 +57,7 @@ transport_tcp_options = {{ transport_tcp_options }}
{% if spec.tgt_cmd_extra_args %}
tgt_cmd_extra_args = {{ spec.tgt_cmd_extra_args }}
{% endif %}

[monitor]
timeout = {{ spec.monitor_timeout }}

34 changes: 28 additions & 6 deletions src/pybind/mgr/cephadm/tests/test_services.py
Expand Up @@ -390,12 +390,29 @@ def test_nvmeof_config(self, _get_name, _run_cephadm, cephadm_module: CephadmOrc
enable_auth = False
state_update_notify = True
state_update_interval_sec = 5
min_controller_id = 1
max_controller_id = 65519
enable_spdk_discovery_controller = False
enable_prometheus_exporter = True
prometheus_exporter_ssl = False
prometheus_port = 10008
verify_nqns = True
omap_file_lock_duration = 60
omap_file_lock_retries = 15
omap_file_lock_retry_sleep_interval = 5
omap_file_update_reloads = 10
[gateway-logs]
log_level = INFO
log_files_enabled = True
log_files_rotation_enabled = True
verbose_log_messages = True
max_log_file_size_in_mb = 10
max_log_files_count = 20
max_log_directory_backups = 10
log_directory = /var/log/ceph/
[discovery]
addr = 192.168.100.100
port = 8009
[ceph]
pool = {pool}
Expand All @@ -410,13 +427,18 @@ def test_nvmeof_config(self, _get_name, _run_cephadm, cephadm_module: CephadmOrc
[spdk]
tgt_path = /usr/local/bin/nvmf_tgt
rpc_socket = /var/tmp/spdk.sock
timeout = 60
log_level = WARN
rpc_socket_dir = /var/tmp/
rpc_socket_name = spdk.sock
timeout = 60.0
bdevs_per_cluster = 32
log_level = WARNING
conn_retries = 10
transports = tcp
transport_tcp_options = {{"in_capsule_data_size": 8192, "max_io_qpairs_per_ctrlr": 7}}
tgt_cmd_extra_args = {tgt_cmd_extra_args}\n"""
tgt_cmd_extra_args = {tgt_cmd_extra_args}
[monitor]
timeout = 1.0\n"""

with with_host(cephadm_module, 'test'):
with with_service(cephadm_module, NvmeofServiceSpec(service_id=pool,
Expand Down

0 comments on commit 19d375b

Please sign in to comment.