We are building Karpenter for GCP and require an API similar to AWS EC2 Fleet.
Our needs include:
The API should be capable of launching instances that meet these criteria and have the expected properties.
Does GCP offer a feature equivalent to AWS EC2 Fleet?
Solved! Go to Solution.
Hi @jwcesign,
Welcome to Google Cloud Community!
Here are the explanation and relevant Google Cloud Platform (GCP) documentation to help you build your Karpenter-like solution. However, GCP provides a combination of services that, when used together, can achieve similar results.
Multiple Instance Types:
Your system needs to be able to handle requests for different VM configurations, for example like n2-standard-2, c2-standard-4, m3-ultramem-128, etc. This implies the need to manage different VM sizes, CPU/memory combinations, and potentially different architectures.
GCP Service: Instance Templates will be essential for this. You'll create a separate template for each instance type you want to support.
Defining Requirements (Zones, Parameters):
You need to be able to specify constraints on where your instances are launched, such as:
This demands a way to take input parameters, filter and select the correct instance type based on the constraints provided.
GCP Service: This is managed by the custom-built logic you will develop. The logic will use the zone and machine type data from the instance templates and combine it with your requirements to make decisions. View here the available regions and zone.
Applying Policies (Lowest Price):
Your system should implement logic for making decisions, for example:
GCP Service: You will need to check yourself using the GCP Pricing API and implementing a selection algorithm. Also, to get an estimate of the cost of using Google Cloud products and services, refer to the Google Cloud’s Pricing Calculator.
API for Launching Instances:
You require a way to trigger VM launches programmatically, in response to workload demands. You need to manage the underlying mechanisms of creating VMs and ensure they start with the correct configuration.
GCP Service: This will be achieved by utilizing the Compute Engine API to interact with Managed Instance Groups (MIGs).
Additionally, based on this GCC Discussion @splichy mentioned that Google doesn't support Karpenter yet and github resources It’s not available temporarily.
For feature requests we encourage you to create a public issue tracker. However, please note that there's no guaranteed time frame for resolving it. If you need urgent assistance and questions please reach out to Google Cloud Support directly.
Was this helpful? If so, please accept this answer as “Solution”. If you need additional assistance, reply here within 2 business days and I’ll be happy to help.
Hi @jwcesign,
Welcome to Google Cloud Community!
Here are the explanation and relevant Google Cloud Platform (GCP) documentation to help you build your Karpenter-like solution. However, GCP provides a combination of services that, when used together, can achieve similar results.
Multiple Instance Types:
Your system needs to be able to handle requests for different VM configurations, for example like n2-standard-2, c2-standard-4, m3-ultramem-128, etc. This implies the need to manage different VM sizes, CPU/memory combinations, and potentially different architectures.
GCP Service: Instance Templates will be essential for this. You'll create a separate template for each instance type you want to support.
Defining Requirements (Zones, Parameters):
You need to be able to specify constraints on where your instances are launched, such as:
This demands a way to take input parameters, filter and select the correct instance type based on the constraints provided.
GCP Service: This is managed by the custom-built logic you will develop. The logic will use the zone and machine type data from the instance templates and combine it with your requirements to make decisions. View here the available regions and zone.
Applying Policies (Lowest Price):
Your system should implement logic for making decisions, for example:
GCP Service: You will need to check yourself using the GCP Pricing API and implementing a selection algorithm. Also, to get an estimate of the cost of using Google Cloud products and services, refer to the Google Cloud’s Pricing Calculator.
API for Launching Instances:
You require a way to trigger VM launches programmatically, in response to workload demands. You need to manage the underlying mechanisms of creating VMs and ensure they start with the correct configuration.
GCP Service: This will be achieved by utilizing the Compute Engine API to interact with Managed Instance Groups (MIGs).
Additionally, based on this GCC Discussion @splichy mentioned that Google doesn't support Karpenter yet and github resources It’s not available temporarily.
For feature requests we encourage you to create a public issue tracker. However, please note that there's no guaranteed time frame for resolving it. If you need urgent assistance and questions please reach out to Google Cloud Support directly.
Was this helpful? If so, please accept this answer as “Solution”. If you need additional assistance, reply here within 2 business days and I’ll be happy to help.