我有一个kubernetes集群和一个在terraform中配置的RDS,现在我想将RDS的节点ip列入白名单。是否有一种方法以某种方式从集群配置访问节点池实例?我想要的RDS配置是像
这样的东西ip_configuration {
dynamic "authorized_networks" {
for_each = google_container_cluster.data_lake.network
iterator = node
content {
name = node.network.ip
value = node.network.ip
}
}
}
但是从我所看到的,似乎没有办法得到节点/ip的列表…我试着
ip_configuration {
authorized_networks {
value = google_container_cluster.my_cluster.cluster_ipv4_cidr
}
}
导致Non-routable or private authorized network (10.80.0.0/14).., invalid
,所以看起来这只适用于公共ip。或者我必须为此设置一个单独的VPC ?
我建议你先设置NAT网关在GKE前面这样您就可以从单个出口管理所有出站流量。点。
您可以使用此地形创建&设置NAT网关:https://registry.terraform.io/modules/GoogleCloudPlatform/nat-gateway/google/latest/examples/gke-nat-gateway
模块源代码:https://github.com/GoogleCloudPlatform/terraform-google-nat-gateway/tree/v1.2.3/examples/gke-nat-gateway
使用NAT网关您的所有节点流量将从单个IP流出,您可以将此single IP
列入RDS
的白名单。
自<<p> strong> RDS 在AWS服务,VPC对等是不可能的,否则如果使用GCP SQL,这也是一个选择。