[GH-ISSUE #1938] [HELP] Any ENVs to force mooncake store TE bind to specific IP? #543

Closed
opened 2026-10-29 21:16:11 +00:00 by bsakaguchi · 5 comments
Owner

Originally created by @weike7 on GitHub (Apr 21, 2026).
Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/1938

In my ENV, the TE listen on docker0 by default, and it is not correct. I must down it manually in docker. It looks like TE always select the first active interface, it is not flexiable.

I0421 03:00:39.906216 693 client_metric.cpp:80] Client metrics enabled (default enabled)
I0421 03:00:39.906638 693 ha_helper.cpp:20] Master view key: mooncake-store/mooncake/master_view
I0421 03:00:39.906888 693 client_service.cpp:60] client_id=14072333324383943612-12497520455586856362
I0421 03:00:39.906893 693 client_service.cpp:68] Client metrics enabled but reporting disabled (interval=0)
I0421 03:00:39.909375 693 client_service.cpp:474] Storage root directory is not set. persisting data is disabled.
I0421 03:00:39.909447 693 transfer_engine_impl.cpp:597] Metrics reporting is disabled (set MC_TE_METRIC=1 to enable)
I0421 03:00:39.909464 693 transfer_engine_impl.cpp:105] Transfer Engine parseHostNameWithPort. server_name: 192.168.50.6 port: 13981
I0421 03:00:39.910776 693 transfer_metadata_plugin.cpp:1127] Found active interface docker0 with IP 172.17.0.1
I0421 03:00:39.910799 693 transfer_metadata_plugin.cpp:1116] Skipping interface br-626a37216f62 (not UP or not RUNNING)
I0421 03:00:39.910802 693 transfer_metadata_plugin.cpp:1116] Skipping interface br-77d1a57923c7 (not UP or not RUNNING)
I0421 03:00:39.910804 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910808 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910810 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910812 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910815 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910820 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910822 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910825 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910828 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910830 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910835 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING)
I0421 03:00:39.910835 693 transfer_metadata_plugin.cpp:1127] Found active interface ens5f0np0 with IP 192.168.50.6
I0421 03:00:39.910838 693 transfer_metadata_plugin.cpp:1127] Found active interface ens5f1np1 with IP 192.168.51.6
I0421 03:00:39.910843 693 transfer_metadata_plugin.cpp:1127] Found active interface ens16f0np0 with IP 10.121.129.6
I0421 03:00:39.910847 693 transfer_metadata_plugin.cpp:1127] Found active interface ens6f0np0 with IP 192.168.60.6
I0421 03:00:39.910851 693 transfer_metadata_plugin.cpp:1127] Found active interface ens6f1np1 with IP 192.168.61.6
I0421 03:00:39.910852 693 transfer_metadata_plugin.cpp:1127] Found active interface ens8f0np0 with IP 192.168.80.6
I0421 03:00:39.910856 693 transfer_metadata_plugin.cpp:1127] Found active interface ens8f1np1 with IP 192.168.81.6
I0421 03:00:39.910858 693 transfer_metadata_plugin.cpp:1127] Found active interface ens7f0np0 with IP 192.168.70.6
I0421 03:00:39.910862 693 transfer_metadata_plugin.cpp:1127] Found active interface ens7f1np1 with IP 192.168.71.6
I0421 03:00:39.910883 693 transfer_engine_impl.cpp:172] Transfer Engine RPC using new RPC mapping, listening on 172.17.0.1:16818
I0421 03:00:39.911938 693 client_service.cpp:325] Transfer engine auto discovery is disabled for protocol: rdma
I0421 03:00:39.911944 693 client_service.cpp:337] Using specified RDMA devices: mlx5_0
I0421 03:00:39.938532 693 topology.cpp:120] Device mlx5_0 port 1 is available

Originally created by @weike7 on GitHub (Apr 21, 2026). Original GitHub issue: https://github.com/kvcache-ai/Mooncake/issues/1938 In my ENV, the TE listen on docker0 by default, and it is not correct. I must down it manually in docker. It looks like TE always select the first active interface, it is not flexiable. I0421 03:00:39.906216 693 client_metric.cpp:80] Client metrics enabled (default enabled) I0421 03:00:39.906638 693 ha_helper.cpp:20] Master view key: mooncake-store/mooncake/master_view I0421 03:00:39.906888 693 client_service.cpp:60] client_id=14072333324383943612-12497520455586856362 I0421 03:00:39.906893 693 client_service.cpp:68] Client metrics enabled but reporting disabled (interval=0) I0421 03:00:39.909375 693 client_service.cpp:474] Storage root directory is not set. persisting data is disabled. I0421 03:00:39.909447 693 transfer_engine_impl.cpp:597] Metrics reporting is disabled (set MC_TE_METRIC=1 to enable) I0421 03:00:39.909464 693 transfer_engine_impl.cpp:105] Transfer Engine parseHostNameWithPort. server_name: 192.168.50.6 port: 13981 I0421 03:00:39.910776 693 transfer_metadata_plugin.cpp:1127] Found active interface docker0 with IP 172.17.0.1 I0421 03:00:39.910799 693 transfer_metadata_plugin.cpp:1116] Skipping interface br-626a37216f62 (not UP or not RUNNING) I0421 03:00:39.910802 693 transfer_metadata_plugin.cpp:1116] Skipping interface br-77d1a57923c7 (not UP or not RUNNING) I0421 03:00:39.910804 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910808 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910810 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910812 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910815 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910820 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910822 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910825 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910828 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910830 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910835 693 transfer_metadata_plugin.cpp:1116] Skipping interface kube-ipvs0 (not UP or not RUNNING) I0421 03:00:39.910835 693 transfer_metadata_plugin.cpp:1127] Found active interface ens5f0np0 with IP 192.168.50.6 I0421 03:00:39.910838 693 transfer_metadata_plugin.cpp:1127] Found active interface ens5f1np1 with IP 192.168.51.6 I0421 03:00:39.910843 693 transfer_metadata_plugin.cpp:1127] Found active interface ens16f0np0 with IP 10.121.129.6 I0421 03:00:39.910847 693 transfer_metadata_plugin.cpp:1127] Found active interface ens6f0np0 with IP 192.168.60.6 I0421 03:00:39.910851 693 transfer_metadata_plugin.cpp:1127] Found active interface ens6f1np1 with IP 192.168.61.6 I0421 03:00:39.910852 693 transfer_metadata_plugin.cpp:1127] Found active interface ens8f0np0 with IP 192.168.80.6 I0421 03:00:39.910856 693 transfer_metadata_plugin.cpp:1127] Found active interface ens8f1np1 with IP 192.168.81.6 I0421 03:00:39.910858 693 transfer_metadata_plugin.cpp:1127] Found active interface ens7f0np0 with IP 192.168.70.6 I0421 03:00:39.910862 693 transfer_metadata_plugin.cpp:1127] Found active interface ens7f1np1 with IP 192.168.71.6 I0421 03:00:39.910883 693 transfer_engine_impl.cpp:172] Transfer Engine RPC using new RPC mapping, listening on 172.17.0.1:16818 I0421 03:00:39.911938 693 client_service.cpp:325] Transfer engine auto discovery is disabled for protocol: rdma I0421 03:00:39.911944 693 client_service.cpp:337] Using specified RDMA devices: mlx5_0 I0421 03:00:39.938532 693 topology.cpp:120] Device mlx5_0 port 1 is available
bsakaguchi 2026-10-29 21:16:11 +00:00
Author
Owner

@ykwd commented on GitHub (Apr 21, 2026):

The device of TE can be set via device_name. Please refer to https://kvcache-ai.github.io/Mooncake/getting_started/examples/sglang-integration/hicache-integration-v1.html for more details

<!-- gh-comment-id:4288366985 --> @ykwd commented on GitHub (Apr 21, 2026): The device of TE can be set via `device_name`. Please refer to https://kvcache-ai.github.io/Mooncake/getting_started/examples/sglang-integration/hicache-integration-v1.html for more details
Author
Owner

@weike7 commented on GitHub (Apr 22, 2026):

@ykwd
I have set the devic_name, please refer my config:
{
"local_hostname": "192.168.50.6",
"metadata_server": "http://192.168.71.11:8083/metadata",
"master_server_address": "192.168.71.11:50051",
"protocol": "rdma",
"device_name": "mlx5_0",
"global_segment_size": "128gb",
"local_buffer_size": 0
}
For my case, mlx5_0 is bind to ens5f0np0 with IP 192.168.50.6, but store (pure server) TE RPC still listens on docker0. My understanding is device_name is for data panel, and control panel RPC can be different.

<!-- gh-comment-id:4293132152 --> @weike7 commented on GitHub (Apr 22, 2026): @ykwd I have set the devic_name, please refer my config: { "local_hostname": "192.168.50.6", "metadata_server": "http://192.168.71.11:8083/metadata", "master_server_address": "192.168.71.11:50051", "protocol": "rdma", "device_name": "mlx5_0", "global_segment_size": "128gb", "local_buffer_size": 0 } For my case, mlx5_0 is bind to ens5f0np0 with IP 192.168.50.6, but store (pure server) TE RPC still listens on docker0. My understanding is device_name is for data panel, and control panel RPC can be different.
Author
Owner

@Primary33 commented on GitHub (Apr 22, 2026):

Please try setting MC_TCP_BIND_ADDRESS.

device_name is mainly for RDMA device selection, while TE RPC bind IP is chosen separately. In the current code, when using the new RPC mapping, TE will use MC_TCP_BIND_ADDRESS if set; otherwise it auto-selects the first active interface.

Given your log shows TE is using the new RPC mapping, MC_TCP_BIND_ADDRESS=192.168.50.6 may solve the problem.

<!-- gh-comment-id:4294026268 --> @Primary33 commented on GitHub (Apr 22, 2026): Please try setting `MC_TCP_BIND_ADDRESS`. `device_name` is mainly for RDMA device selection, while TE RPC bind IP is chosen separately. In the current code, when using the new RPC mapping, TE will use `MC_TCP_BIND_ADDRESS` if set; otherwise it auto-selects the first active interface. Given your log shows TE is using the new RPC mapping, `MC_TCP_BIND_ADDRESS=192.168.50.6` may solve the problem.
Author
Owner

@github-actions[bot] commented on GitHub (Jul 22, 2026):

This issue has had no activity for 90 days and will be closed in 7 days if there is no further activity. Please comment or react if it should stay open.

<!-- gh-comment-id:5041833924 --> @github-actions[bot] commented on GitHub (Jul 22, 2026): This issue has had no activity for 90 days and will be closed in 7 days if there is no further activity. Please comment or react if it should stay open.
Author
Owner

@github-actions[bot] commented on GitHub (Jul 29, 2026):

Closing due to 3 months of inactivity. If this is still relevant, please comment and we can reopen.

<!-- gh-comment-id:5113164837 --> @github-actions[bot] commented on GitHub (Jul 29, 2026): Closing due to 3 months of inactivity. If this is still relevant, please comment and we can reopen.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kvcache-ai/Mooncake#543
No description provided.