google / google/symphony-gcp

Explore using MIG resize requests to add new compute hosts

Open
#34 0 comments 0 reactions 1 assignee Claimed by @corykim View on GitHub
enhancement GCE
Dominant language
Python
Stars
7
Forks
2
PR merge metrics
No merged PRs in 30d

Description

Currently the `requestMachines` command is fulfilled using the `InstanceGroupManagersClient` to submit a `compute.CreateInstancesInstanceGroupManagerRequest` request, specifying a list of `compute.PerInstanceConfig` objects to define the number and name of instances we want to create.

Another way to request instances is to use the [`instanceGroupManagers.resize`](https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroupManagers/resize) specifying the number of new nodes that are required.

The main benefit of the second approach is that the resize request is atomic, and provides better metadata about the success or failure of the request.

There are some difficulties that will come with this approach:
1. The provider will need to perform more work to determine which instances were created
2. The HostFactory request will batch requests of any size based on `HF_DEMAND_BATCH_LIMIT`, so there could be a mismatch between the batch size and the request size.

The goal of this issue is to determine the feasibility of using the second approach.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.