Am creat un cluster nativ vpc și încerc să mă conectez de la un pod din cluster la o instanță SQL postgres cu un IP privat.
Testez folosind o comandă de bază telnet 5432.
Conexiunea funcționează bine când o încerc de la o instanță GCE care se află în același VPC.
Toate testele de conectivitate din GCP îmi dau undă verde, așa că pare a fi o problemă k8s.
Iată clusterul meu:
clusterele de containere gcloud creează alex-test \
--network=factory-vpc \
--region=europe-west1 \
--enable-ip-alias \
--subnetwork=europe-west1-factory-subnet \
--cluster-ipv4-cidr="/16" \
--services-ipv4-cidr="/20"
Iată cum testez conectivitatea:
kubectl run -it --rm --restart=Never busybox --image=gcr.io/google-containers/busybox sh
telnet <ip privat> 5432
Iată configurația mea de rețea în terraform:
resursă „google_compute_network” „fabrică” {
nume = "factory-vpc"
auto_create_subnetworks = false
depends_on = [google_project_service.compute]
}
resursă „google_compute_subnetwork” „factory_subnet” {
nume = "${var.region}-factory-subnet"
ip_cidr_range = "10.0.0.0/16"
regiune = var.region
network = google_compute_network.factory.self_link
private_ip_google_access = adevărat
secundar_ip_range {
ip_cidr_range = "10.2.0.0/16"
range_name = "pastaie"
}
secundar_ip_range {
ip_cidr_range = "10.3.0.0/16"
range_name = "servicii"
}
}
resursă „google_compute_global_address” „gitlab_google_private_peering” {
provider = google-beta
nume = "gitlab-gcp-private"
adresa_tip = "INTERN"
scop = „VPC_PEERING”
network = google_compute_network.factory.self_link
prefix_length = 16
}
resursă „google_service_networking_connection” „gitlab_google_private_peering” {
provider = google-beta
network = google_compute_network.factory.self_link
service = „servicenetworking.googleapis.com”
reserved_peering_ranges = [google_compute_global_address.gitlab_google_private_peering.name]
}
Am verificat deja următoarele documente și articole, dar nimic nu ajută:
Orice ajutor este foarte apreciat!