我正在尝试创建一个 terraform 配置来启动不同区域中的多个 VPC 并在它们之间创建 VPC 对等连接。
这是我的 VPC 模块
# Required Variables
variable "region" {}
variable "cluster_name" {}
variable "region_name" {}
variable "nb_nodes" {}
variable "vpc_cidr" {}
# Default Variables
variable "instance_type" {
default = "t2.nano"
}
variable "public_key_path" {
default = "id_rsa.pub"
}
variable "private_key_path" {
default = "id_rsa"
}
variable "ami-username" {
default = "ubuntu"
}
variable "ami" {
type = "map"
default = {
us-east-1 = "ami-0f9cf087c1f27d9b1"
us-east-2 = "ami-0653e888ec96eab9b"
}
}
variable "availability_zone" {
type …Run Code Online (Sandbox Code Playgroud) 我无法使用数据库的私有 IP 从 GKE 集群访问运行 Postgres 的 Cloud SQL 实例。我找到的所有文档都建议使用支持 VPC 的集群来完成此操作,但我仍然无法访问数据库。
具体来说,我可以从集群中的节点访问数据库,但我无法从节点上的容器内访问数据库,除非我使用主机的网络运行 docker 容器。这让我相信我对 GCP VPC 和 Kubernetes 的网络组件如何相互交互存在误解。
我的 VPC 有一个子网和两个次要范围:
IP 范围:10.0.0.0/16
次要范围 - pod: 10.1.0.0/16
次要范围 - 服务: 10.2.0.0/16
这是使用以下 Terraform 配置创建的:
resource "google_compute_subnetwork" "cluster" {
ip_cidr_range = "10.0.0.0/16"
name = "cluster"
network = google_compute_network.vpc.self_link
secondary_ip_range {
ip_cidr_range = "10.1.0.0/16"
range_name = "pods"
}
secondary_ip_range {
ip_cidr_range = "10.2.0.0/16"
range_name = "services"
}
}
Run Code Online (Sandbox Code Playgroud)
我的云 SQL 数据库运行 Postgres 11 并配置为仅允许通过私有 IP 进行连接。我已与一组全局计算地址建立了对等连接,以允许从我的 VPC …
google-cloud-sql google-cloud-platform google-kubernetes-engine vpc-peering
假设我有帐户A和B以及每个帐户中的轻型帆实例a和b。a和b处于相同的区域和区域。难道possiple了一个和b与私有IP互连?例如,在我登录a 后,我可以使用b的私有 IP ssh 到b吗?
查了资料,觉得可能跟VPC有关系,不过对新手来说有点复杂。谁能指定如何配置它?提前致谢。
我遵循的步骤:
gcloud compute networks create stg-vpc \
--subnet-mode custom
gcloud beta compute addresses create google-managed-services-stg-vpc \
--global \
--purpose=VPC_PEERING \
--description="peering range for psql" \
--addresses=10.20.0.0 \
--prefix-length=16 \
--network=stg-vpc
在 Cloud SQL Web 控制台中,我创建了一个新的 Postgres 实例。在连接选项中,我启用了私有 IP,并将其配置stg-vpc为 IP 范围google-managed-services-stg-vpc。
这将创建具有 IP 的 Cloud SQL Postgres 实例10.20.0.3。
gcloud compute networks subnets create stg-vpc-us-central1 \ …
google-cloud-sql google-cloud-platform google-kubernetes-engine vpc-peering
我正在尝试在同一个 AWS 账户中设置准系统 VPC 连接。
每个VPC包含一个EC2实例
我已将以下路由添加到与 VPC-A 和子网-A 关联的路由表中,该路由表应根据 VPC-B 的 CIDR 范围将流量从 VPC-A 路由到 VPC-B
(其中 PCX-123 是 VPC 对等连接的 ID)
与 EC2-A 和 EC2-B 关联的安全组允许所有入站和出站流量。
两个网络的 NACL 都允许所有流量
当我通过 SSH 连接到 EC2-A 并尝试 ping EC2-B 时,出现超时。
ping 10.200.2.67
...
...
... timeout
Run Code Online (Sandbox Code Playgroud)
我缺少什么?
供参考
我想使用另一个 VPC 的 Nat 网关(不是 EC2 上的 Nat 实例!)将我的流量从对等 VPC 路由到 Internet。我的基础设施如下所示:
/---------------------VPC-LIVECHAT---------------------\
| /---Subnet A---\ /---Subnet B---\ /---Subnet C---\ |
| | | | | | | |
| \-10.10.0.0/24-/ \-10.10.1.0/24-/ \-10.10.2.0/24-/ |
\------------------------------------------------------/
| |
| VPC Peering Connection |
| |
/----------------------VPC-COMMON----------------------\
| /---Subnet A---\ /---Subnet B---\ /---Subnet C---\ |
| | /--------\ | | /--------\ | | /--------\ | |
| | | NAT GW | | | | NAT GW | | | | NAT …Run Code Online (Sandbox Code Playgroud) routing amazon-web-services amazon-vpc vpc-peering amazon-nat-gateway
在我公司的 AWS 云中,我们有 4 个 VPC,一个用于我们的每个主要 API 环境(开发、测试、阶段、生产)。为了使这些环境尽可能相似,它们都将 CIDR 块设置为 10.0.0.0/16。
现在我们需要创建一个在这些环境之间共享的内部服务。为了便于论证,我们假设这个新服务存储来自所有这些环境的日志数据。此服务存在于其自己的 VPC 中,其 CIDR 块为 10.1.1.0/24。
起初,我认为我可以简单地将来自所有环境 VPC 的对等连接添加到日志记录 VPC 中。但是,当我开始设置路由表时遇到了障碍。我从 Dev -> Logging 创建了一个路由表,它路由目的地为 10.1.1.0/24 的所有流量。但是我仍然无法从 dev 连接到我的日志记录服务器。似乎我需要为 Logging -> Dev 添加一个路由表,它路由目标为 10.0.0.0/16 的所有流量。这允许我从开发服务器连接到日志服务器,但现在我无法将我的任何其他环境连接到日志 VPC。
日志服务器永远不必启动与我的 API 服务器的连接,它只需要接收和响应连接。所以我的下一个想法是我可以在每个环境 VPC 上使用 NAT 网关,然后将它们路由到日志记录 VPC。不幸的是,NAT 网关似乎直接连接到 Internet,我不希望我的日志记录 VPC 连接到 Internet。
我觉得一定有办法让这个工作,但我想不出一个。目前我觉得我唯一的选择是创建 4 个日志 VPC 并在每个 VPC 中运行单独的日志服务器,但从成本的角度来看,这对我来说并不真正吸引我。
我在us-east-1(VPC1和VPC2) 中有 2 个 VPC ,并且是 VPC 对等连接。我运行 openVPNVPC1以连接到两个 vpc。现在我不得不在ap-southeast-1(VPC3和VPC4) 中制作 2 个新的 VPC,它们都是 VPC 配对的。我按照本教程设置us-east-1和ap-southeast-1(连接VPC1和VPC3)之间的连接。我现在能够连接到在所有情况下VPC1,VPC2和VPC3,但无法连接到VPC4。我只能VPC4从VPC3. 我openvpn在 VPC1(ovpn1和ovpn2) 中有两个实例。ovpn1用于从我的办公室ovpn2连接并连接到openvpn运行的第三个实例VPC3. 我已经验证了VPC4in 的路由表,us-east-1看起来不错。
这里也是我在 .ovpn 实例上的路由表VPC1。 …