You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Kubernetes Java Client获取Ingress关联的Host列表

获取Ingress关联的Host列表(Kubernetes Java Client)

你可以通过V1Ingress对象的spec.rules属性提取关联的Host列表,每个V1IngressRule对象包含对应的host字段。以下是修改后的代码示例:

ApiClient client = Config.defaultClient();
Configuration.setDefaultApiClient(client); 

NetworkingV1Api netapi = new NetworkingV1Api();
V1IngressList list1 = netapi.listIngressForAllNamespaces(null, null, null, null, null, null, null, null, null, null, null);

for (V1Ingress item : list1.getItems()) {
    System.out.println("Ingress 名称: " + item.getMetadata().getName());
    // 获取Ingress的规则列表
    List<V1IngressRule> rules = item.getSpec().getRules();
    if (rules != null && !rules.isEmpty()) {
        System.out.println("关联的Host列表:");
        for (V1IngressRule rule : rules) {
            String host = rule.getHost();
            // 处理可能为空的host(比如默认Ingress规则)
            if (host != null) {
                System.out.println("- " + host);
            } else {
                System.out.println("- 无指定Host(默认规则)");
            }
        }
    } else {
        System.out.println("该Ingress未配置任何规则");
    }
    System.out.println("---");
}

关键说明:

  • item.getSpec().getRules():获取Ingress的规则集合,每个规则对应一组路由配置
  • rule.getHost():提取单个规则绑定的Host地址,部分Ingress规则可能不指定host(作为默认路由),需要做非空判断避免空指针异常

内容的提问来源于stack exchange,提问作者user2315104

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 09:42:32