Module gke
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-spotinstrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-spotinstrepo.
Resources
Others
- ElastigroupArgs
- ElastigroupState
- OceanImportArgs
- OceanImportState
- OceanLaunchSpecArgs
- OceanLaunchSpecImportArgs
- OceanLaunchSpecImportState
- OceanLaunchSpecState
Resources
Resource Elastigroup
class Elastigroup extends CustomResourceconstructor
new Elastigroup(name: string, args: ElastigroupArgs, opts?: pulumi.CustomResourceOptions)Create a Elastigroup resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ElastigroupState, opts?: pulumi.CustomResourceOptions): ElastigroupGet an existing Elastigroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ElastigroupReturns true if the given object is an instance of Elastigroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property backendServices
public backendServices: pulumi.Output<ElastigroupBackendService[] | undefined>;property clusterId
public clusterId: pulumi.Output<string | undefined>;The name of the GKE cluster you wish to import.
property clusterZoneName
public clusterZoneName: pulumi.Output<string>;The zone where the cluster is hosted.
property desiredCapacity
public desiredCapacity: pulumi.Output<number>;property disks
public disks: pulumi.Output<ElastigroupDisk[] | undefined>;property drainingTimeout
public drainingTimeout: pulumi.Output<number | undefined>;property fallbackToOndemand
public fallbackToOndemand: pulumi.Output<boolean | undefined>;property gpu
public gpu: pulumi.Output<ElastigroupGpu[] | undefined>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property instanceTypesCustoms
public instanceTypesCustoms: pulumi.Output<ElastigroupInstanceTypesCustom[] | undefined>;property instanceTypesOndemand
public instanceTypesOndemand: pulumi.Output<string | undefined>;property instanceTypesPreemptibles
public instanceTypesPreemptibles: pulumi.Output<string[] | undefined>;property integrationDockerSwarm
public integrationDockerSwarm: pulumi.Output<ElastigroupIntegrationDockerSwarm | undefined>;property integrationGke
public integrationGke: pulumi.Output<ElastigroupIntegrationGke | undefined>;property ipForwarding
public ipForwarding: pulumi.Output<boolean | undefined>;property labels
public labels: pulumi.Output<ElastigroupLabel[] | undefined>;property maxSize
public maxSize: pulumi.Output<number>;property metadatas
public metadatas: pulumi.Output<ElastigroupMetadata[] | undefined>;property minSize
public minSize: pulumi.Output<number>;property name
public name: pulumi.Output<string>;property networkInterfaces
public networkInterfaces: pulumi.Output<ElastigroupNetworkInterface[] | undefined>;property nodeImage
public nodeImage: pulumi.Output<string | undefined>;The image that will be used for the node VMs. Possible values: COS, UBUNTU.
property ondemandCount
public ondemandCount: pulumi.Output<number | undefined>;property preemptiblePercentage
public preemptiblePercentage: pulumi.Output<number | undefined>;property scalingDownPolicies
public scalingDownPolicies: pulumi.Output<ElastigroupScalingDownPolicy[] | undefined>;property scalingUpPolicies
public scalingUpPolicies: pulumi.Output<ElastigroupScalingUpPolicy[] | undefined>;property serviceAccount
public serviceAccount: pulumi.Output<string | undefined>;property shutdownScript
public shutdownScript: pulumi.Output<string | undefined>;property startupScript
public startupScript: pulumi.Output<string | undefined>;property tags
public tags: pulumi.Output<string[] | undefined>;property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource OceanImport
class OceanImport extends CustomResourceProvides a Spotinst Ocean GKE import resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";
const example = new spotinst.gke.OceanImport("example", {
backendServices: [{
locationType: "regional",
namedPorts: [{
name: "http",
ports: [
"80",
"8080",
],
}],
scheme: "INTERNAL",
serviceName: "example-backend-service",
}],
clusterName: "example-cluster-name",
desiredCapacity: 0,
location: "us-central1-a",
maxSize: 2,
minSize: 0,
whitelists: [
"n1-standard-1",
"n1-standard-2",
],
});scheduled task
scheduledTask- (Optional) Set scheduling object.shutdownHours- (Optional) Set shutdown hours for cluster object.isEnabled- (Optional) Flag to enable / disable the shutdown hours. Example: TruetimeWindows- (Required) Set time windows for shutdown hours. specify a list of ‘timeWindows’ with at least one time window Each string is in the format of - ddd:hh:mm-ddd:hh:mm ddd = day of week = Sun | Mon | Tue | Wed | Thu | Fri | Sat hh = hour 24 = 0 -23 mm = minute = 0 - 59. Time windows should not overlap. required on cluster.scheduling.isEnabled = True. API Times are in UTC Example: Fri:15:30-Wed:14:30
tasks- (Optional) The scheduling tasks for the cluster.isEnabled- (Required) Describes whether the task is enabled. When true the task should run when false it should not run. Required for cluster.scheduling.tasks object.cronExpression- (Required) A valid cron expression. For example : “ * * * * * “.The cron is running in UTC time zone and is in Unix cron format Cron Expression Validator Script. Only one of ‘frequency’ or ‘cronExpression’ should be used at a time. Required for cluster.scheduling.tasks object Example: 0 1 * * *taskType- (Required) Valid values: “clusterRoll”. Required for cluster.scheduling.tasks object.batchSizePercentage- (Optional) Value in % to set size of batch in roll. Valid values are 0-100 Example: 20.
import * as pulumi from "@pulumi/pulumi";Autoscaler
autoscaler- (Optional) The Ocean Kubernetes Autoscaler object.isEnabled- (Optional, Default:true) Enable the Ocean Kubernetes Autoscaler.isAutoConfig- (Optional, Default:true) Automatically configure and optimize headroom resources.autoHeadroomPercentage- Optionally set the auto headroom percentage, set a number between 0-200 to control the headroom % from the cluster. Relevant when isAutoConfig=true.cooldown- (Optional, Default:null) Cooldown period between scaling actions.headroom- (Optional) Spare resource capacity management enabling fast assignment of Pods without waiting for new resources to launch.cpuPerUnit- (Optional) Optionally configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.memoryPerUnit- (Optional) Optionally configure the amount of memory (MiB) to allocate the headroom.gpuPerUnit- (Optional) How much GPU allocate for headroom unit.numOfUnits- (Optional) The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.down- (Optional) Auto Scaling scale down operations.evaluationPeriods- (Optional, Default:null) The number of evaluation periods that should accumulate before a scale down action takes place.maxScaleDownPercentage- (Optional) Would represent the maximum % to scale-down. Number between 1-100.resourceLimits- (Optional) Optionally set upper and lower bounds on the resource usage of the cluster.maxVcpu- (Optional) The maximum cpu in vCpu units that can be allocated to the cluster.maxMemoryGib- (Optional) The maximum memory in GiB units that can be allocated to the cluster.
import * as pulumi from "@pulumi/pulumi";constructor
new OceanImport(name: string, args: OceanImportArgs, opts?: pulumi.CustomResourceOptions)Create a OceanImport resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OceanImportState, opts?: pulumi.CustomResourceOptions): OceanImportGet an existing OceanImport resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is OceanImportReturns true if the given object is an instance of OceanImport. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property autoscaler
public autoscaler: pulumi.Output<OceanImportAutoscaler>;property backendServices
public backendServices: pulumi.Output<OceanImportBackendService[] | undefined>;Describes the backend service configurations.
property clusterControllerId
public clusterControllerId: pulumi.Output<string>;property clusterName
public clusterName: pulumi.Output<string>;The GKE cluster name.
property desiredCapacity
public desiredCapacity: pulumi.Output<number>;The number of instances to launch and maintain in the cluster.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property location
public location: pulumi.Output<string>;The zone the master cluster is located in.
property maxSize
public maxSize: pulumi.Output<number>;The upper limit of instances the cluster can scale up to.
property minSize
public minSize: pulumi.Output<number>;The lower limit of instances the cluster can scale down to.
property scheduledTasks
public scheduledTasks: pulumi.Output<OceanImportScheduledTask[] | undefined>;property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property whitelists
public whitelists: pulumi.Output<string[] | undefined>;Resource OceanLaunchSpec
class OceanLaunchSpec extends CustomResourceProvides a custom Spotinst Ocean GKE Launch Spec resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";
const example = new spotinst.gke.OceanLaunchSpec("example", {
autoscaleHeadrooms: [{
cpuPerUnit: 1000,
gpuPerUnit: 0,
memoryPerUnit: 2048,
numOfUnits: 5,
}],
labels: [{
key: "labelKey",
value: "labelVal",
}],
metadatas: [{
key: "gci-update-strategy",
value: "updateDisabled",
}],
oceanId: "o-123456",
sourceImage: "image",
taints: [{
effect: "taintEffect",
key: "taintKey",
value: "taintVal",
}],
});constructor
new OceanLaunchSpec(name: string, args: OceanLaunchSpecArgs, opts?: pulumi.CustomResourceOptions)Create a OceanLaunchSpec resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OceanLaunchSpecState, opts?: pulumi.CustomResourceOptions): OceanLaunchSpecGet an existing OceanLaunchSpec resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is OceanLaunchSpecReturns true if the given object is an instance of OceanLaunchSpec. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property autoscaleHeadrooms
public autoscaleHeadrooms: pulumi.Output<OceanLaunchSpecAutoscaleHeadroom[] | undefined>;Set custom headroom per launch spec. provide list of headrooms object.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property labels
public labels: pulumi.Output<OceanLaunchSpecLabel[] | undefined>;Cluster’s labels.
property metadatas
public metadatas: pulumi.Output<OceanLaunchSpecMetadata[]>;Cluster’s metadata.
property oceanId
public oceanId: pulumi.Output<string>;The Ocean cluster ID required for launchSpec create.
property sourceImage
public sourceImage: pulumi.Output<string>;Image URL.
property taints
public taints: pulumi.Output<OceanLaunchSpecTaint[] | undefined>;Cluster’s taints.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource OceanLaunchSpecImport
class OceanLaunchSpecImport extends CustomResourceProvides a custom Spotinst Ocean GKE Launch Spec Import resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";
const example = new spotinst.gke.OceanLaunchSpecImport("example", {
nodePoolName: "default-pool",
oceanId: "o-123456",
});constructor
new OceanLaunchSpecImport(name: string, args: OceanLaunchSpecImportArgs, opts?: pulumi.CustomResourceOptions)Create a OceanLaunchSpecImport resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OceanLaunchSpecImportState, opts?: pulumi.CustomResourceOptions): OceanLaunchSpecImportGet an existing OceanLaunchSpecImport resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is OceanLaunchSpecImportReturns true if the given object is an instance of OceanLaunchSpecImport. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property nodePoolName
public nodePoolName: pulumi.Output<string>;The node pool you wish to use in your launchSpec.
property oceanId
public oceanId: pulumi.Output<string>;The Ocean cluster ID required for launchSpec create.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Others
interface ElastigroupArgs
interface ElastigroupArgsThe set of arguments for constructing a Elastigroup resource.
property backendServices
backendServices?: pulumi.Input<pulumi.Input<ElastigroupBackendService>[]>;property clusterId
clusterId?: pulumi.Input<string>;The name of the GKE cluster you wish to import.
property clusterZoneName
clusterZoneName: pulumi.Input<string>;The zone where the cluster is hosted.
property desiredCapacity
desiredCapacity: pulumi.Input<number>;property disks
disks?: pulumi.Input<pulumi.Input<ElastigroupDisk>[]>;property drainingTimeout
drainingTimeout?: pulumi.Input<number>;property fallbackToOndemand
fallbackToOndemand?: pulumi.Input<boolean>;property gpu
gpu?: pulumi.Input<pulumi.Input<ElastigroupGpu>[]>;property instanceTypesCustoms
instanceTypesCustoms?: pulumi.Input<pulumi.Input<ElastigroupInstanceTypesCustom>[]>;property instanceTypesOndemand
instanceTypesOndemand?: pulumi.Input<string>;property instanceTypesPreemptibles
instanceTypesPreemptibles?: pulumi.Input<pulumi.Input<string>[]>;property integrationDockerSwarm
integrationDockerSwarm?: pulumi.Input<ElastigroupIntegrationDockerSwarm>;property integrationGke
integrationGke?: pulumi.Input<ElastigroupIntegrationGke>;property ipForwarding
ipForwarding?: pulumi.Input<boolean>;property labels
labels?: pulumi.Input<pulumi.Input<ElastigroupLabel>[]>;property maxSize
maxSize?: pulumi.Input<number>;property metadatas
metadatas?: pulumi.Input<pulumi.Input<ElastigroupMetadata>[]>;property minSize
minSize?: pulumi.Input<number>;property name
name?: pulumi.Input<string>;property networkInterfaces
networkInterfaces?: pulumi.Input<pulumi.Input<ElastigroupNetworkInterface>[]>;property nodeImage
nodeImage?: pulumi.Input<string>;The image that will be used for the node VMs. Possible values: COS, UBUNTU.
property ondemandCount
ondemandCount?: pulumi.Input<number>;property preemptiblePercentage
preemptiblePercentage?: pulumi.Input<number>;property scalingDownPolicies
scalingDownPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingDownPolicy>[]>;property scalingUpPolicies
scalingUpPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingUpPolicy>[]>;property serviceAccount
serviceAccount?: pulumi.Input<string>;property shutdownScript
shutdownScript?: pulumi.Input<string>;property startupScript
startupScript?: pulumi.Input<string>;property tags
tags?: pulumi.Input<pulumi.Input<string>[]>;interface ElastigroupState
interface ElastigroupStateInput properties used for looking up and filtering Elastigroup resources.
property backendServices
backendServices?: pulumi.Input<pulumi.Input<ElastigroupBackendService>[]>;property clusterId
clusterId?: pulumi.Input<string>;The name of the GKE cluster you wish to import.
property clusterZoneName
clusterZoneName?: pulumi.Input<string>;The zone where the cluster is hosted.
property desiredCapacity
desiredCapacity?: pulumi.Input<number>;property disks
disks?: pulumi.Input<pulumi.Input<ElastigroupDisk>[]>;property drainingTimeout
drainingTimeout?: pulumi.Input<number>;property fallbackToOndemand
fallbackToOndemand?: pulumi.Input<boolean>;property gpu
gpu?: pulumi.Input<pulumi.Input<ElastigroupGpu>[]>;property instanceTypesCustoms
instanceTypesCustoms?: pulumi.Input<pulumi.Input<ElastigroupInstanceTypesCustom>[]>;property instanceTypesOndemand
instanceTypesOndemand?: pulumi.Input<string>;property instanceTypesPreemptibles
instanceTypesPreemptibles?: pulumi.Input<pulumi.Input<string>[]>;property integrationDockerSwarm
integrationDockerSwarm?: pulumi.Input<ElastigroupIntegrationDockerSwarm>;property integrationGke
integrationGke?: pulumi.Input<ElastigroupIntegrationGke>;property ipForwarding
ipForwarding?: pulumi.Input<boolean>;property labels
labels?: pulumi.Input<pulumi.Input<ElastigroupLabel>[]>;property maxSize
maxSize?: pulumi.Input<number>;property metadatas
metadatas?: pulumi.Input<pulumi.Input<ElastigroupMetadata>[]>;property minSize
minSize?: pulumi.Input<number>;property name
name?: pulumi.Input<string>;property networkInterfaces
networkInterfaces?: pulumi.Input<pulumi.Input<ElastigroupNetworkInterface>[]>;property nodeImage
nodeImage?: pulumi.Input<string>;The image that will be used for the node VMs. Possible values: COS, UBUNTU.
property ondemandCount
ondemandCount?: pulumi.Input<number>;property preemptiblePercentage
preemptiblePercentage?: pulumi.Input<number>;property scalingDownPolicies
scalingDownPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingDownPolicy>[]>;property scalingUpPolicies
scalingUpPolicies?: pulumi.Input<pulumi.Input<ElastigroupScalingUpPolicy>[]>;property serviceAccount
serviceAccount?: pulumi.Input<string>;property shutdownScript
shutdownScript?: pulumi.Input<string>;property startupScript
startupScript?: pulumi.Input<string>;property tags
tags?: pulumi.Input<pulumi.Input<string>[]>;interface OceanImportArgs
interface OceanImportArgsThe set of arguments for constructing a OceanImport resource.
property autoscaler
autoscaler?: pulumi.Input<OceanImportAutoscaler>;property backendServices
backendServices?: pulumi.Input<pulumi.Input<OceanImportBackendService>[]>;Describes the backend service configurations.
property clusterName
clusterName: pulumi.Input<string>;The GKE cluster name.
property desiredCapacity
desiredCapacity?: pulumi.Input<number>;The number of instances to launch and maintain in the cluster.
property location
location: pulumi.Input<string>;The zone the master cluster is located in.
property maxSize
maxSize?: pulumi.Input<number>;The upper limit of instances the cluster can scale up to.
property minSize
minSize?: pulumi.Input<number>;The lower limit of instances the cluster can scale down to.
property scheduledTasks
scheduledTasks?: pulumi.Input<pulumi.Input<OceanImportScheduledTask>[]>;property whitelists
whitelists?: pulumi.Input<pulumi.Input<string>[]>;interface OceanImportState
interface OceanImportStateInput properties used for looking up and filtering OceanImport resources.
property autoscaler
autoscaler?: pulumi.Input<OceanImportAutoscaler>;property backendServices
backendServices?: pulumi.Input<pulumi.Input<OceanImportBackendService>[]>;Describes the backend service configurations.
property clusterControllerId
clusterControllerId?: pulumi.Input<string>;property clusterName
clusterName?: pulumi.Input<string>;The GKE cluster name.
property desiredCapacity
desiredCapacity?: pulumi.Input<number>;The number of instances to launch and maintain in the cluster.
property location
location?: pulumi.Input<string>;The zone the master cluster is located in.
property maxSize
maxSize?: pulumi.Input<number>;The upper limit of instances the cluster can scale up to.
property minSize
minSize?: pulumi.Input<number>;The lower limit of instances the cluster can scale down to.
property scheduledTasks
scheduledTasks?: pulumi.Input<pulumi.Input<OceanImportScheduledTask>[]>;property whitelists
whitelists?: pulumi.Input<pulumi.Input<string>[]>;interface OceanLaunchSpecArgs
interface OceanLaunchSpecArgsThe set of arguments for constructing a OceanLaunchSpec resource.
property autoscaleHeadrooms
autoscaleHeadrooms?: pulumi.Input<pulumi.Input<OceanLaunchSpecAutoscaleHeadroom>[]>;Set custom headroom per launch spec. provide list of headrooms object.
property labels
labels?: pulumi.Input<pulumi.Input<OceanLaunchSpecLabel>[]>;Cluster’s labels.
property metadatas
metadatas: pulumi.Input<pulumi.Input<OceanLaunchSpecMetadata>[]>;Cluster’s metadata.
property oceanId
oceanId: pulumi.Input<string>;The Ocean cluster ID required for launchSpec create.
property sourceImage
sourceImage: pulumi.Input<string>;Image URL.
property taints
taints?: pulumi.Input<pulumi.Input<OceanLaunchSpecTaint>[]>;Cluster’s taints.
interface OceanLaunchSpecImportArgs
interface OceanLaunchSpecImportArgsThe set of arguments for constructing a OceanLaunchSpecImport resource.
property nodePoolName
nodePoolName: pulumi.Input<string>;The node pool you wish to use in your launchSpec.
property oceanId
oceanId: pulumi.Input<string>;The Ocean cluster ID required for launchSpec create.
interface OceanLaunchSpecImportState
interface OceanLaunchSpecImportStateInput properties used for looking up and filtering OceanLaunchSpecImport resources.
property nodePoolName
nodePoolName?: pulumi.Input<string>;The node pool you wish to use in your launchSpec.
property oceanId
oceanId?: pulumi.Input<string>;The Ocean cluster ID required for launchSpec create.
interface OceanLaunchSpecState
interface OceanLaunchSpecStateInput properties used for looking up and filtering OceanLaunchSpec resources.
property autoscaleHeadrooms
autoscaleHeadrooms?: pulumi.Input<pulumi.Input<OceanLaunchSpecAutoscaleHeadroom>[]>;Set custom headroom per launch spec. provide list of headrooms object.
property labels
labels?: pulumi.Input<pulumi.Input<OceanLaunchSpecLabel>[]>;Cluster’s labels.
property metadatas
metadatas?: pulumi.Input<pulumi.Input<OceanLaunchSpecMetadata>[]>;Cluster’s metadata.
property oceanId
oceanId?: pulumi.Input<string>;The Ocean cluster ID required for launchSpec create.
property sourceImage
sourceImage?: pulumi.Input<string>;Image URL.
property taints
taints?: pulumi.Input<pulumi.Input<OceanLaunchSpecTaint>[]>;Cluster’s taints.