symbiosis logo
Symbiosis v1.0.4, Mar 16 23

symbiosis.NodePool

Explore with Pulumi AI

Creates node pools for Kubernetes clusters in Symbiosis.

Example Usage

using System.Collections.Generic;
using Pulumi;
using Symbiosis = Symbiosis.Pulumi.Symbiosis;

return await Deployment.RunAsync(() => 
{
    var exampleCluster = new Symbiosis.Cluster("exampleCluster", new()
    {
        Region = "germany-1",
    });

    var exampleNodePool = new Symbiosis.NodePool("exampleNodePool", new()
    {
        Cluster = exampleCluster.Name,
        NodeType = "general-1",
        Quantity = 6,
    });

});
package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/symbiosis-cloud/pulumi-symbiosis/sdk/go/symbiosis"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleCluster, err := symbiosis.NewCluster(ctx, "exampleCluster", &symbiosis.ClusterArgs{
			Region: pulumi.String("germany-1"),
		})
		if err != nil {
			return err
		}
		_, err = symbiosis.NewNodePool(ctx, "exampleNodePool", &symbiosis.NodePoolArgs{
			Cluster:  exampleCluster.Name,
			NodeType: pulumi.String("general-1"),
			Quantity: pulumi.Int(6),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.symbiosis.Cluster;
import com.pulumi.symbiosis.ClusterArgs;
import com.pulumi.symbiosis.NodePool;
import com.pulumi.symbiosis.NodePoolArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var exampleCluster = new Cluster("exampleCluster", ClusterArgs.builder()        
            .region("germany-1")
            .build());

        var exampleNodePool = new NodePool("exampleNodePool", NodePoolArgs.builder()        
            .cluster(exampleCluster.name())
            .nodeType("general-1")
            .quantity(6)
            .build());

    }
}
import pulumi
import symbiosis_pulumi as symbiosis

example_cluster = symbiosis.Cluster("exampleCluster", region="germany-1")
example_node_pool = symbiosis.NodePool("exampleNodePool",
    cluster=example_cluster.name,
    node_type="general-1",
    quantity=6)
import * as pulumi from "@pulumi/pulumi";
import * as symbiosis from "@symbiosis-cloud/symbiosis-pulumi";

const exampleCluster = new symbiosis.Cluster("exampleCluster", {region: "germany-1"});
const exampleNodePool = new symbiosis.NodePool("exampleNodePool", {
    cluster: exampleCluster.name,
    nodeType: "general-1",
    quantity: 6,
});
resources:
  exampleCluster:
    type: symbiosis:Cluster
    properties:
      region: germany-1
  exampleNodePool:
    type: symbiosis:NodePool
    properties:
      cluster: ${exampleCluster.name}
      nodeType: general-1
      quantity: 6

Create NodePool Resource

new NodePool(name: string, args: NodePoolArgs, opts?: CustomResourceOptions);
@overload
def NodePool(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             autoscaling: Optional[NodePoolAutoscalingArgs] = None,
             cluster: Optional[str] = None,
             labels: Optional[Mapping[str, str]] = None,
             name: Optional[str] = None,
             node_type: Optional[str] = None,
             quantity: Optional[int] = None,
             taints: Optional[Sequence[NodePoolTaintArgs]] = None)
@overload
def NodePool(resource_name: str,
             args: NodePoolArgs,
             opts: Optional[ResourceOptions] = None)
func NewNodePool(ctx *Context, name string, args NodePoolArgs, opts ...ResourceOption) (*NodePool, error)
public NodePool(string name, NodePoolArgs args, CustomResourceOptions? opts = null)
public NodePool(String name, NodePoolArgs args)
public NodePool(String name, NodePoolArgs args, CustomResourceOptions options)
type: symbiosis:NodePool
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args NodePoolArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args NodePoolArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args NodePoolArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args NodePoolArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args NodePoolArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

NodePool Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The NodePool resource accepts the following input properties:

Cluster string

Name of cluster to create node pool in.

NodeType string

Type of nodes for this specific pool, see docs.

Quantity int

Desired number of nodes for specific pool.

Autoscaling Symbiosis.NodePoolAutoscalingArgs
Labels Dictionary<string, string>

Node labels to be applied to the nodes

Name string

Name of node pool

Taints List<Symbiosis.NodePoolTaintArgs>

Node taints to be applied to the nodes

Cluster string

Name of cluster to create node pool in.

NodeType string

Type of nodes for this specific pool, see docs.

Quantity int

Desired number of nodes for specific pool.

Autoscaling NodePoolAutoscalingArgs
Labels map[string]string

Node labels to be applied to the nodes

Name string

Name of node pool

Taints []NodePoolTaintArgs

Node taints to be applied to the nodes

cluster String

Name of cluster to create node pool in.

nodeType String

Type of nodes for this specific pool, see docs.

quantity Integer

Desired number of nodes for specific pool.

autoscaling NodePoolAutoscalingArgs
labels Map<String,String>

Node labels to be applied to the nodes

name String

Name of node pool

taints List<NodePoolTaintArgs>

Node taints to be applied to the nodes

cluster string

Name of cluster to create node pool in.

nodeType string

Type of nodes for this specific pool, see docs.

quantity number

Desired number of nodes for specific pool.

autoscaling NodePoolAutoscalingArgs
labels {[key: string]: string}

Node labels to be applied to the nodes

name string

Name of node pool

taints NodePoolTaintArgs[]

Node taints to be applied to the nodes

cluster str

Name of cluster to create node pool in.

node_type str

Type of nodes for this specific pool, see docs.

quantity int

Desired number of nodes for specific pool.

autoscaling NodePoolAutoscalingArgs
labels Mapping[str, str]

Node labels to be applied to the nodes

name str

Name of node pool

taints Sequence[NodePoolTaintArgs]

Node taints to be applied to the nodes

cluster String

Name of cluster to create node pool in.

nodeType String

Type of nodes for this specific pool, see docs.

quantity Number

Desired number of nodes for specific pool.

autoscaling Property Map
labels Map<String>

Node labels to be applied to the nodes

name String

Name of node pool

taints List<Property Map>

Node taints to be applied to the nodes

Outputs

All input properties are implicitly available as output properties. Additionally, the NodePool resource produces the following output properties:

Id string

The provider-assigned unique ID for this managed resource.

Id string

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

id string

The provider-assigned unique ID for this managed resource.

id str

The provider-assigned unique ID for this managed resource.

id String

The provider-assigned unique ID for this managed resource.

Look up Existing NodePool Resource

Get an existing NodePool resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: NodePoolState, opts?: CustomResourceOptions): NodePool
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        autoscaling: Optional[NodePoolAutoscalingArgs] = None,
        cluster: Optional[str] = None,
        labels: Optional[Mapping[str, str]] = None,
        name: Optional[str] = None,
        node_type: Optional[str] = None,
        quantity: Optional[int] = None,
        taints: Optional[Sequence[NodePoolTaintArgs]] = None) -> NodePool
func GetNodePool(ctx *Context, name string, id IDInput, state *NodePoolState, opts ...ResourceOption) (*NodePool, error)
public static NodePool Get(string name, Input<string> id, NodePoolState? state, CustomResourceOptions? opts = null)
public static NodePool get(String name, Output<String> id, NodePoolState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
Autoscaling Symbiosis.NodePoolAutoscalingArgs
Cluster string

Name of cluster to create node pool in.

Labels Dictionary<string, string>

Node labels to be applied to the nodes

Name string

Name of node pool

NodeType string

Type of nodes for this specific pool, see docs.

Quantity int

Desired number of nodes for specific pool.

Taints List<Symbiosis.NodePoolTaintArgs>

Node taints to be applied to the nodes

Autoscaling NodePoolAutoscalingArgs
Cluster string

Name of cluster to create node pool in.

Labels map[string]string

Node labels to be applied to the nodes

Name string

Name of node pool

NodeType string

Type of nodes for this specific pool, see docs.

Quantity int

Desired number of nodes for specific pool.

Taints []NodePoolTaintArgs

Node taints to be applied to the nodes

autoscaling NodePoolAutoscalingArgs
cluster String

Name of cluster to create node pool in.

labels Map<String,String>

Node labels to be applied to the nodes

name String

Name of node pool

nodeType String

Type of nodes for this specific pool, see docs.

quantity Integer

Desired number of nodes for specific pool.

taints List<NodePoolTaintArgs>

Node taints to be applied to the nodes

autoscaling NodePoolAutoscalingArgs
cluster string

Name of cluster to create node pool in.

labels {[key: string]: string}

Node labels to be applied to the nodes

name string

Name of node pool

nodeType string

Type of nodes for this specific pool, see docs.

quantity number

Desired number of nodes for specific pool.

taints NodePoolTaintArgs[]

Node taints to be applied to the nodes

autoscaling NodePoolAutoscalingArgs
cluster str

Name of cluster to create node pool in.

labels Mapping[str, str]

Node labels to be applied to the nodes

name str

Name of node pool

node_type str

Type of nodes for this specific pool, see docs.

quantity int

Desired number of nodes for specific pool.

taints Sequence[NodePoolTaintArgs]

Node taints to be applied to the nodes

autoscaling Property Map
cluster String

Name of cluster to create node pool in.

labels Map<String>

Node labels to be applied to the nodes

name String

Name of node pool

nodeType String

Type of nodes for this specific pool, see docs.

quantity Number

Desired number of nodes for specific pool.

taints List<Property Map>

Node taints to be applied to the nodes

Supporting Types

NodePoolAutoscaling

enabled Boolean
maxSize Integer
minSize Integer
enabled boolean
maxSize number
minSize number
enabled Boolean
maxSize Number
minSize Number

NodePoolTaint

Effect string

Taint effect. Can be either NoSchedule, PreferNoSchedule or NoExecute. See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

Key string
Value string
Effect string

Taint effect. Can be either NoSchedule, PreferNoSchedule or NoExecute. See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

Key string
Value string
effect String

Taint effect. Can be either NoSchedule, PreferNoSchedule or NoExecute. See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

key String
value String
effect string

Taint effect. Can be either NoSchedule, PreferNoSchedule or NoExecute. See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

key string
value string
effect str

Taint effect. Can be either NoSchedule, PreferNoSchedule or NoExecute. See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

key str
value str
effect String

Taint effect. Can be either NoSchedule, PreferNoSchedule or NoExecute. See: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

key String
value String

Package Details

Repository
symbiosis symbiosis-cloud/pulumi-symbiosis
License
Apache-2.0
Notes

This Pulumi package is based on the symbiosis Terraform Provider.