我们希望将我们的POD暴露给外部IP。如果我们使用AWS LB,那么它就会向公众开放。有没有其他的解决方案?
以下是我到目前为止所做的:
{
"kind": "Service",
"apiVersion": "v1",
"metadata": {
"name": "testing"
},
"spec": {
"ports": [{
"port": 80,
"targetPort": 8080
}],
"selector": {
"app": "testing"
},
"type": "LoadBalancer"
}
}我们只想将它暴露给单个IP或一系列外部IP。
发布于 2020-02-25 15:05:00
您可以使用docs中记录的.spec.loadBalancerSourceRanges密钥
此字段包含IP CIDR范围列表,Kubernetes将使用该范围配置防火墙例外。Google Compute Engine、Google Kubernetes Engine、AWS Elastic Kubernetes Service、Azure Kubernetes Service和IBM Cloud Kubernetes Service
当前支持此功能
发布于 2020-02-25 01:33:03
您可以使用kubernetes的ingress抽象,使用nginx入口控制器作为that.Nginx的实现,提供源网段的whitelisting。
AWS ALB ingress controller有一个注解alb.ingress.kubernetes.io/inbound-cidrs,它确实提供了相同的功能。
https://stackoverflow.com/questions/60380758
复制相似问题