云部署管理器:内部负载均衡器创建问题

云部署管理器:内部负载均衡器创建问题

我正在尝试使用以下代码通过部署管理器创建内部负载均衡器

- name:  {{ env["name"] }}-port389-healthcheck
type: compute.v1.healthChecks
properties:
    type: tcp
    tcpHealthCheck: {
    port: 389
    }

- name: {{ env["name"] }}-port389-backend-service
type: compute.beta.backendService
properties:
    healthChecks:
    - $(ref.{{ env["name"] }}-port389-healthcheck.selfLink)
    backends:
    - group: $(ref.{{ env['name'] }}-master-instance-groups-managed.instanceGroup)
    - group: $(ref.{{ env['name'] }}-slave-instance-groups-managed.instanceGroup)
    protocol: TCP
    region: {{ properties['region'] }}
    loadBalancingScheme: INTERNAL

- name: {{ env["name"] }}-port389-forwarding-rule
type: compute.beta.forwardingRule
properties:
    loadBalancingScheme: INTERNAL
    ports: 
    - 389
    network: default
    region: {{ properties["region"] }}
    backendService: $(ref.{{ env["name"] }}-port389-backend-service.selfLink)

运行以下命令时出错

Waiting for create operation-1478651694403-540d36cfdcdb9-cba25532-08697daf...failed.
ERROR: (gcloud.beta.deployment-manager.deployments.create) Error in Operation operation-1478651694403-540d36cfdcdb9-cba25532-08697daf:
errors:
- code: RESOURCE_ERROR
location: /deployments/forgerock/resources/forgerock-frontend-port389-backend-service-us-central1
message: 'Unexpected response from resource of type compute.beta.backendService:
    400 {"code":400,"errors":[{"domain":"global","message":"Invalid value for field
    ''resource.loadBalancingScheme'': ''INTERNAL''. Load balancing scheme must be
    external for a global backend service.","reason":"invalid"}],"message":"Invalid
    value for field ''resource.loadBalancingScheme'': ''INTERNAL''. Load balancing
    scheme must be external for a global backend service.","statusMessage":"Bad Request","requestPath":"https://www.googleapis.com/compute/beta/projects/carbide-tenure-557/global/backendServices"}'

它似乎是使用https://www.googleapis.com/compute/beta/projects/carbide-tenure-557/global/backendServices而不是创建https://www.googleapis.com/compute/beta/projects/carbide-tenure-557/backendServices

我知道这是测试版功能,但尝试使用GDM而不是混合gcloud命令和GDM

答案1

请参见https://stackoverflow.com/questions/40498889/cloud-deployment-manager-internal-load-balancer-create-issue如何解决这个问题。

本质上,我们需要使用compute.v1.regionBackendService

相关内容