pcortez
pcortez

Reputation: 376

GCP Cloud Deployment Load Balancer Backend Bucket

How to deploy a web page architecture from a GCP Cloud Deployment yaml, which includes static files in a storage and a load balancer that has a backend bucket connected to this storage?

We need the load balancer to connect it to the GCP CDN.

Upvotes: 3

Views: 1521

Answers (2)

Alejandro Barone
Alejandro Barone

Reputation: 2151

I think you need to create the resources based on google's API on the deployment manager YAML script.

As my understanding you need to connect a load balancing with a backend bucket, and the latter connect it to a storage bucket. I will asume the bucket creation is not necessary.

So the resources you need are compute.beta.backendBucket and the compute.v1.urlMap. The YAML file will look -kind- of this:

resources:
- type: compute.beta.backendBucket
  name: backendbucket-test
  properties:
    bucketName: already-created-bucket
- type: compute.v1.urlMap
  name: urlmap-test
  properties:
    defaultService: $(ref.backendbucket-test.selfLink)
    hostRules: 
    - hosts: ["*"]
      pathMatcher: "allpaths"
    pathMatchers:
    - name: "allpaths"
      defaultService: $(ref.backendbucket-test.selfLink)
      pathRules:
      - service: $(ref.backendbucket-test.selfLink)
        paths: ["/*"]

Note that the names are completely up to you. Also see there are ref (from reference) to link the backendBucket created on the first step to the urlMap of the second one.

Is good to mention that you will probably need more resources for a complete solution (specifically the frontend part of the load balancer).

Hope it can help in some way, Cheers!

Upvotes: 3

Patrick W
Patrick W

Reputation: 4899

You can follow this guide from Google on how to create a Load Balancer to serve static content from a bucket. Note that the bucket and its content must already exists, the content will not be created by DM.

Follow the gcloud steps, not the console steps. For each step, find the correct API call and create a separate resource in your deployment manager config for each step.

Upvotes: 0

Related Questions