kvcache-ai / kvcache-ai/Mooncake

[Feature Request]: Support a stable and configurable NVMe-oF Host NQN for NoF

Open
#3,795 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
6.6k
Forks
1.2k
Avg merge
3d 5h
Merged PRs (30d)
312

Description

### Describe your feature request

Mooncake NoF currently relies on the default Host NQN provided by SPDK. This may not match the stable host identity configured in `/etc/nvme/hostnqn`, causing NVMe-oF targets with Host NQN access control to reject Mooncake connections.

Reading `/etc/nvme/hostnqn` works for bare-metal deployments, but containers may not have access to the host file. I propose resolving the Host NQN in the following order:

1. Use `MC_NVME_HOSTNQN` when explicitly configured.
2. Otherwise, read `/etc/nvme/hostnqn`, with an optional `MC_NVME_HOSTNQN_PATH` override.
3. If no Host NQN is available, preserve the existing SPDK default behavior.

The resolved Host NQN should be reused by normal NoF connections and heartbeat probes.

I would be happy to implement this after the community agrees on the configuration interface and fallback behavior.

### Before submitting a new issue...

- [x] Make sure you already searched for relevant issues and read the [documentation](https://kvcache-ai.github.io/Mooncake/)

Contributor guide

Open the contributing guide

Research direction

First confirm the configuration interface and fallback behavior with the community. Then locate the NoF connection setup and heartbeat probe paths, and trace how SPDK currently selects the Host NQN. Done means the configured or resolved NQN is reused by both connection types while the SPDK default remains available when no NQN can be read.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
backend, networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.