EMQX 自动发现逻辑获取不到k8sAPI返回的hostname。
k8sAPI返回的hostname 存储在 spec.hostname
字段。
报错信息如下:
2025-07-21T08:12:34.128672+00:00 [error] Ekka(AutoCluster): Discover error: {badkey,<<"hostname">>}, [{erlang,map_get,[<<"hostname">>,#{<<"ip">> => <<"10.42.3.58">>,<<"nodeName">> => <<"worker1">>,<<"targetRef">> => #{<<"kind">> => <<"Pod">>,<<"name">> => <<"emqx-state-0">>,<<"namespace">> => <<"test">>,<<"resourceVersion">> => <<"133562598">>,<<"uid">> => <<"114d98b2-fd05-485f-b2fb-0dce890057ef">>}}],[{error_info,#{module => erl_erts_errors}}]},{ekka_cluster_k8s,extract_host,2,[{file,"ekka_cluster_k8s.erl"},{line,124}]},{ekka_cluster_k8s,'-extract_addresses/2-lc$^1/1-1-',2,[{file,"ekka_cluster_k8s.erl"},{line,116}]},{ekka_cluster_k8s,'-extract_addresses/2-lc$^0/1-0-',2,[{file,"ekka_cluster_k8s.erl"},{line,117}]},{ekka_cluster_k8s,extract_addresses,2,[{file,"ekka_cluster_k8s.erl"},{line,118}]},{ekka_cluster_k8s,discover,1,[{file,"ekka_cluster_k8s.erl"},{line,48}]},{ekka_autocluster,discover_and_join,2,[{file,"ekka_autocluster.erl"},{line,220}]},{ekka_autocluster,'-discover_and_join/0-fun-0-',2,[{file,"ekka_autocluster.erl"},{line,190}]},{ekka_autocluster,handle_info,2,[{file,"ekka_autocluster.erl"},{line,134}]},{gen_server,try_handle_info,3,[{file,"gen_server.erl"},{line,1095}]},{gen_server,handle_msg,6,[{file,"gen_server.erl"},{line,1183}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,241}]}]
2025-07-21T08:12:34.134229+00:00 [error] Ekka(AutoCluster): Core node discovery error {badkey,<<"hostname">>}: [{erlang,map_get,[<<"hostname">>,#{<<"ip">> => <<"10.42.3.58">>,<<"nodeName">> => <<"worker1">>,<<"targetRef">> => #{<<"kind">> => <<"Pod">>,<<"name">> => <<"emqx-state-0">>,<<"namespace">> => <<"test">>,<<"resourceVersion">> => <<"133562598">>,<<"uid">> => <<"114d98b2-fd05-485f-b2fb-0dce890057ef">>}}],[{error_info,#{module => erl_erts_errors}}]},{ekka_cluster_k8s,extract_host,2,[{file,"ekka_cluster_k8s.erl"},{line,124}]},{ekka_cluster_k8s,'-extract_addresses/2-lc$^1/1-1-',2,[{file,"ekka_cluster_k8s.erl"},{line,116}]},{ekka_cluster_k8s,'-extract_addresses/2-lc$^0/1-0-',2,[{file,"ekka_cluster_k8s.erl"},{line,117}]},{ekka_cluster_k8s,extract_addresses,2,[{file,"ekka_cluster_k8s.erl"},{line,118}]},{ekka_cluster_k8s,discover,1,[{file,"ekka_cluster_k8s.erl"},{line,48}]},{ekka_autocluster,core_node_discovery_callback,0,[{file,"ekka_autocluster.erl"},{line,104}]},{ekka_autocluster,is_node_registered,0,[{file,"ekka_autocluster.erl"},{line,302}]},{ekka_autocluster,is_discovery_complete,1,[{file,"ekka_autocluster.erl"},{line,154}]},{ekka_autocluster,handle_info,2,[{file,"ekka_autocluster.erl"},{line,135}]},{gen_server,try_handle_info,3,[{file,"gen_server.erl"},{line,1095}]},{gen_server,handle_msg,6,[{file,"gen_server.erl"},{line,1183}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,241}]}]
环境变量为