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

通过Terraform实现Kubernetes Pod公网访问

让EKS上的Splunk Web实现公网访问的方案

1. 定位Splunk Web Pod的标签

要精准关联Splunk Web的Pod,先获取它的标签。执行命令:

kubectl get pods -l app=splunk,component=web

如果没找到结果,就用kubectl describe pod <你的splunk-web-pod名称>查看Pod的Labels字段,把对应标签记下来。

2. 创建专属的LoadBalancer Service

这个Service只会指向Splunk Web的Pod,不会影响集群内其他服务。新建splunk-web-lb.yaml文件,内容如下:

apiVersion: v1
kind: Service
metadata:
  name: splunk-web-loadbalancer
spec:
  type: LoadBalancer
  selector:
    # 替换成你查到的Splunk Web Pod标签
    app: splunk
    component: web
  ports:
    - protocol: TCP
      port: 80
      targetPort: 8000  # Splunk Web容器默认端口是8000

执行命令应用配置:

kubectl apply -f splunk-web-lb.yaml

3. 获取公网访问地址

等待几分钟,AWS会自动为该Service分配公网ELB。执行命令查看:

kubectl get service splunk-web-loadbalancer

输出里的EXTERNAL-IP就是公网地址,直接访问http://<该IP>即可打开Splunk Web。

4. 简化操作:修改现有Service(若Helm已创建)

如果Splunk Helm Chart已生成对应Service(比如名为splunk-web),直接修改其类型为LoadBalancer即可,无需新建:

kubectl patch service splunk-web -p '{"spec":{"type":"LoadBalancer"}}'

安全提示

  • 公网暴露后务必给Splunk设置强密码,避免暴力破解。
  • 建议后续配置HTTPS,或用AWS WAF限制允许访问的IP范围,降低安全风险。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 13:33:22