Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revert SPDK sokcet path to /var/tmp/spdk.sock #810

Merged
merged 1 commit into from
Aug 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions ceph-nvmeof.conf
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,7 @@ client_cert = ./client.crt
[spdk]
bdevs_per_cluster = 32
tgt_path = /usr/local/bin/nvmf_tgt
#rpc_socket_dir = /var/tmp/
#rpc_socket_name = spdk.sock
#rpc_socket = /var/tmp/spdk.sock
#tgt_cmd_extra_args = --env-context="--no-huge -m1024" --iova-mode=va
timeout = 60.0
log_level =
Expand Down
14 changes: 1 addition & 13 deletions control/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -332,26 +332,14 @@ def _grpc_server(self, address):

return server

def _get_spdk_rpc_socket_path(self, omap_state) -> str:
# For backward compatibility, try first to get the old attribute
spdk_rpc_socket = self.config.get_with_default("spdk", "rpc_socket", "")
if spdk_rpc_socket:
return spdk_rpc_socket

(spdk_rpc_socket_dir, create_status) = GatewayUtils.get_directory_with_fsid(
self.logger, self.config, self.ceph_utils, "spdk", "rpc_socket_dir",
GatewayConfig.CEPH_RUN_DIRECTORY, "", True)
spdk_rpc_socket = spdk_rpc_socket_dir + self.config.get_with_default("spdk", "rpc_socket_name", "spdk.sock")
return spdk_rpc_socket

def _start_spdk(self, omap_state):
"""Starts SPDK process."""

# Start target
self.logger.debug(f"Configuring server {self.name}")
spdk_tgt_path = self.config.get("spdk", "tgt_path")
self.logger.info(f"SPDK Target Path: {spdk_tgt_path}")
self.spdk_rpc_socket_path = self._get_spdk_rpc_socket_path(omap_state)
self.spdk_rpc_socket_path = self.config.get_with_default("spdk", "rpc_socket", "/var/tmp/spdk.sock")
self.logger.info(f"SPDK Socket: {self.spdk_rpc_socket_path}")
spdk_tgt_cmd_extra_args = self.config.get_with_default(
"spdk", "tgt_cmd_extra_args", "")
Expand Down
37 changes: 0 additions & 37 deletions control/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -176,43 +176,6 @@ def is_valid_nqn(nqn):

return (0, os.strerror(0))

def get_directory_with_fsid(logger, config, ceph_utils, conf_section, conf_field, def_value, suffix, should_create):
status = errno.ENOENT
dir_name = config.get_with_default(conf_section, conf_field, "")
if dir_name:
# If there is an explicit dir name in configuration file, do not change it
suffix = ""
else:
dir_name = def_value
if ceph_utils:
fsid = ceph_utils.fetch_ceph_fsid()
if fsid:
dir_name += fsid + "/"
if not dir_name.endswith("/"):
dir_name += "/"
if suffix:
dir_name += suffix
if not dir_name.endswith("/"):
dir_name += "/"
if should_create:
try:
os.makedirs(dir_name, 0o777, True)
status = 0
except OSError as err:
logger.exception(f"makedirs({dir_name}, 0o777, True) failed")
status = err.errno
except Exception:
logger.exception(f"makedirs({dir_name}, 0o777, True) failed")
status = errno.ENOENT
else:
if os.path.isdir(dir_name):
status = 0
else:
logger.error(f"Directory {dir_name} does not exist")
status = errno.ENOENT

return (dir_name, status)

class GatewayLogger:
CEPH_LOG_DIRECTORY = "/var/log/ceph/"
MAX_LOG_FILE_SIZE_DEFAULT = 10
Expand Down
3 changes: 1 addition & 2 deletions tests/ceph-nvmeof.tls.conf
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,7 @@ client_cert = /etc/ceph/client.crt
[spdk]
bdevs_per_cluster = 32
tgt_path = /usr/local/bin/nvmf_tgt
#rpc_socket_dir = /var/tmp/
#rpc_socket_name = spdk.sock
#rpc_socket = /var/tmp/spdk.sock
#tgt_cmd_extra_args = --env-context="--no-huge -m1024" --iova-mode=va
timeout = 60.0
log_level = WARNING
Expand Down
2 changes: 1 addition & 1 deletion tests/ha/4gws.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ expect_optimized() {
socket_retries=0
socket=""
while [ $socket_retries -lt 10 ] ; do
socket=$(docker exec "$GW_NAME" find /var/run/ceph -name spdk.sock)
socket=$(docker exec "$GW_NAME" find /var/tmp -name spdk.sock)
if [ -n "$socket" ]; then
break
fi
Expand Down
2 changes: 1 addition & 1 deletion tests/ha/4gws_create_delete.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ expect_optimized() {
socket_retries=0
socket=""
while [ $socket_retries -lt 10 ] ; do
socket=$(docker exec "$GW_NAME" find /var/run/ceph -name spdk.sock)
socket=$(docker exec "$GW_NAME" find /var/tmp -name spdk.sock)
if [ -n "$socket" ]; then
break
fi
Expand Down
2 changes: 1 addition & 1 deletion tests/ha/late_registration.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ expect_optimized() {
GW_NAME=$1
EXPECTED_OPTIMIZED=$2

socket=$(docker exec "$GW_NAME" find /var/run/ceph -name spdk.sock)
socket=$(docker exec "$GW_NAME" find /var/tmp -name spdk.sock)
# Verify expected number of "optimized"
while true; do
response=$(docker exec "$GW_NAME" "$rpc" "-s" "$socket" "$cmd" "$nqn")
Expand Down
2 changes: 1 addition & 1 deletion tests/ha/state_transitions.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ expect_optimized() {
GW_NAME=$1
EXPECTED_OPTIMIZED=$2

socket=$(docker exec "$GW_NAME" find /var/run/ceph -name spdk.sock)
socket=$(docker exec "$GW_NAME" find /var/tmp -name spdk.sock)
# Verify expected number of "optimized"
while true; do
response=$(docker exec "$GW_NAME" "$rpc" "-s" "$socket" "$cmd" "$nqn")
Expand Down
2 changes: 1 addition & 1 deletion tests/ha/state_transitions_both_gws.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ expect_optimized() {
GW_NAME=$1
EXPECTED_OPTIMIZED=$2

socket=$(docker exec "$GW_NAME" find /var/run/ceph -name spdk.sock)
socket=$(docker exec "$GW_NAME" find /var/tmp -name spdk.sock)
# Verify expected number of "optimized"
while true; do
response=$(docker exec "$GW_NAME" "$rpc" "-s" "$socket" "$cmd" "$nqn")
Expand Down
4 changes: 2 additions & 2 deletions tests/test_cli_change_lb.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@ def two_gateways(config):
configB = copy.deepcopy(config)
configA.config["gateway"]["name"] = nameA
configA.config["gateway"]["override_hostname"] = nameA
configA.config["spdk"]["rpc_socket_name"] = sockA
configA.config["spdk"]["rpc_socket"] = f"/var/tmp/{sockA}"
portA = configA.getint("gateway", "port") + 1
configA.config["gateway"]["port"] = str(portA)
discPortA = configA.getint("discovery", "port") + 1
configA.config["discovery"]["port"] = str(discPortA)
configB.config["gateway"]["name"] = nameB
configB.config["gateway"]["override_hostname"] = nameB
configB.config["spdk"]["rpc_socket_name"] = sockB
configB.config["spdk"]["rpc_socket"] = f"/var/tmp/{sockB}"
portB = portA + 1
discPortB = discPortA + 1
configB.config["gateway"]["port"] = str(portB)
Expand Down
4 changes: 2 additions & 2 deletions tests/test_multi_gateway.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ def conn(config):
configA.config["gateway"]["group"] = "Group1"
configA.config["gateway"]["state_update_notify"] = str(update_notify)
configA.config["gateway"]["enable_spdk_discovery_controller"] = "True"
configA.config["spdk"]["rpc_socket_name"] = "spdk_GatewayA.sock"
configA.config["spdk"]["rpc_socket"] = "/var/tmp/spdk_GatewayA.sock"
configB = copy.deepcopy(configA)
addr = configA.get("gateway", "addr")
portA = configA.getint("gateway", "port")
portB = portA + 2
configB.config["gateway"]["name"] = "GatewayB"
configB.config["gateway"]["port"] = str(portB)
configB.config["gateway"]["state_update_interval_sec"] = str(update_interval_sec)
configB.config["spdk"]["rpc_socket_name"] = "spdk_GatewayB.sock"
configB.config["spdk"]["rpc_socket"] = "/var/tmp/spdk_GatewayB.sock"
configB.config["spdk"]["tgt_cmd_extra_args"] = "-m 0x02"
ceph_utils = CephUtils(config)

Expand Down
4 changes: 2 additions & 2 deletions tests/test_nsid.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,14 @@ def setup_config(config, gw1_name, gw2_name, gw_group, update_notify, update_int
configA.config["gateway"]["omap_file_disable_unlock"] = str(disable_unlock)
configA.config["gateway"]["omap_file_lock_duration"] = str(lock_duration)
configA.config["gateway"]["enable_spdk_discovery_controller"] = "True"
configA.config["spdk"]["rpc_socket_name"] = sock1_name
configA.config["spdk"]["rpc_socket"] = f"/var/tmp/{sock1_name}"
configB = copy.deepcopy(configA)
portA = configA.getint("gateway", "port")
configA.config["gateway"]["port"] = str(portA)
portB = portA + 2
configB.config["gateway"]["name"] = gw2_name
configB.config["gateway"]["port"] = str(portB)
configB.config["spdk"]["rpc_socket_name"] = sock2_name
configB.config["spdk"]["rpc_socket"] = f"/var/tmp/{sock2_name}"
configB.config["spdk"]["tgt_cmd_extra_args"] = "-m 0x02"

return configA, configB
Expand Down
4 changes: 2 additions & 2 deletions tests/test_omap_lock.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,15 +29,15 @@ def setup_config(config, gw1_name, gw2_name, gw_group, update_notify ,update_int
configA.config["gateway"]["omap_file_disable_unlock"] = str(disable_unlock)
configA.config["gateway"]["omap_file_lock_duration"] = str(lock_duration)
configA.config["gateway"]["enable_spdk_discovery_controller"] = "True"
configA.config["spdk"]["rpc_socket_name"] = sock1_name
configA.config["spdk"]["rpc_socket"] = f"/var/tmp/{sock1_name}"
configB = copy.deepcopy(configA)
portA = configA.getint("gateway", "port") + port_inc
configA.config["gateway"]["port"] = str(portA)
portB = portA + 2
configB.config["gateway"]["name"] = gw2_name
configB.config["gateway"]["override_hostname"] = gw2_name
configB.config["gateway"]["port"] = str(portB)
configB.config["spdk"]["rpc_socket_name"] = sock2_name
configB.config["spdk"]["rpc_socket"] = f"/var/tmp/{sock2_name}"
configB.config["spdk"]["tgt_cmd_extra_args"] = "-m 0x02"

return configA, configB
Expand Down
2 changes: 1 addition & 1 deletion tests/test_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ def test_spdk_multi_gateway_exception(self):
configB = copy.deepcopy(configA)
configB.config["gateway"]["name"] = "GatewayB"
configB.config["gateway"]["port"] = str(configA.getint("gateway", "port") + 1)
configB.config["spdk"]["rpc_socket_name"] = "spdk_GatewayB.sock"
configB.config["spdk"]["rpc_socket"] = "/var/tmp/spdk_GatewayB.sock"
# invalid arg, spdk would exit with code 1 at start up
configB.config["spdk"]["tgt_cmd_extra_args"] = "-m 0x343435545"

Expand Down
Loading