我正在尝试按照谷歌云平台控制台上提供的教程,使用Compute Engine创建MongoDB应用程序。我按照教程创建了VM,但是没有创建它们并返回以下错误:
字段&resource.networkInterfaces [0] .network':''的值无效。找不到引用的网络资源。
知道这可能是什么?我以前没有创建过任何虚拟机,所以我不确定这是什么。我没有使用命令行,我正在使用控制台执行此操作。
答案 0 :(得分:4)
我刚刚尝试在新项目上创建VM时遇到同样的问题。看起来谷歌在配置新项目时遇到了问题(至少是计算引擎网络的东西)。
您必须手动创建默认网络。以下是如何做到这一点:
激活Google Cloud Shell(Cloud Console网站右上角的按钮),然后运行以下命令:
gcloud compute networks create default
gcloud compute firewall-rules create default-allow-icmp --network default --allow icmp --source-ranges 0.0.0.0/0
gcloud compute firewall-rules create default-allow-ssh --network default --allow tcp:22 --source-ranges 0.0.0.0/0
gcloud compute firewall-rules create default-allow-internal --network default --allow tcp:0-65535,udp:0-65535,icmp --source-ranges 10.128.0.0/9
之后,您应该能够创建VM。
另一种选择是向Google投诉。这不是正常行为。
答案 1 :(得分:2)
添加:
{
"results" : [
{
"address_components" : [
{
"long_name" : "vulica Lienina",
"short_name" : "vulica Lienina",
"types" : [ "route" ]
},
{
"long_name" : "Minsk",
"short_name" : "Minsk",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Belarus",
"short_name" : "BY",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "vulica Lienina, Minsk, Belarus",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 53.9049197,
"lng" : 27.5804421
},
"southwest" : {
"lat" : 53.8868641,
"lng" : 27.553896
}
},
"location" : {
"lat" : 53.8958051,
"lng" : 27.5659861
},
"location_type" : "GEOMETRIC_CENTER",
"viewport" : {
"northeast" : {
"lat" : 53.9049197,
"lng" : 27.5804421
},
"southwest" : {
"lat" : 53.8868641,
"lng" : 27.553896
}
}
},
"place_id" : "ChIJL_x0NsTP20YRE6LICTM5v2I",
"types" : [ "route" ]
},
{
"address_components" : [
{
"long_name" : "Lenina",
"short_name" : "Lenina",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Slucki rajon",
"short_name" : "Slucki rajon",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Minskaja voblasć",
"short_name" : "Minskaja voblasć",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Belarus",
"short_name" : "BY",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Lenina, Belarus",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 53.0604058,
"lng" : 27.2418881
},
"southwest" : {
"lat" : 53.0405422,
"lng" : 27.2215462
}
},
"location" : {
"lat" : 53.0546355,
"lng" : 27.229549
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 53.0604058,
"lng" : 27.2418881
},
"southwest" : {
"lat" : 53.0405422,
"lng" : 27.2215462
}
}
},
"place_id" : "ChIJNTp2Gl6t2UYRI1cE6L4oVh8",
"types" : [ "locality", "political" ]
}
],
"status" : "OK"
}
为我工作。网络(子网)已经存在于我的情况下(与@Ray的情况不同)因此只提到子网的名称(一般默认)有帮助。
答案 2 :(得分:0)
Terraform,Juju等会给您一个错误:
错误400:字段'resource.networkInterfaces [0]'的值无效:”。应该为自定义子网模式网络指定子网,无效
实际问题是subnet-mode
https://cloud.google.com/sdk/gcloud/reference/compute/networks/create
gcloud compute networks create NAME --subnet-mode=MODE
--subnet-mode=MODE
网络的子网模式。如果未指定,则默认为AUTO。 MODE必须是以下之一:
auto
-子网是自动创建的。这是推荐的选择。
custom
-手动创建子网。
https://cloud.google.com/sdk/gcloud/reference/compute/networks/list
要检查子网模式,请使用:gcloud compute networks list
NAME SUBNET_MODE BGP_ROUTING_MODE IPV4_RANGE GATEWAY_IPV4
default AUTO REGIONAL
vpc-01 CUSTOM GLOBAL
vpc-02 CUSTOM GLOBAL
vpc-03 CUSTOM GLOBAL
仅当您具有模式“自动” 时,这才可以解决问题,这要归功于@Ray Pitmon