Create a new SKS Nodepool

POST /sks-cluster/{id}/nodepool

Path parameters

  • id string(uuid) Required
application/json

Body Required

  • Anti-affinity Group

    Hide anti-affinity-groups attributes Show anti-affinity-groups attributes object
    • name string

      Anti-affinity Group name

      Minimum length is 1, maximum length is 255.

    • Anti-affinity Group description

      Maximum length is 255.

  • Nodepool description

    Maximum length is 255.

  • labels object

    Resource labels

    Hide labels attribute Show labels attribute
  • taints object

    Nodepool taints

    Hide taints attribute Show taints attribute
    • Nodepool taint

      Hide Additional properties: attributes Show Additional properties: attributes
      • value string Required

        Nodepool taint value

        Minimum length is 1, maximum length is 255.

      • effect string Required

        Nodepool taint effect

        Values are NoExecute, NoSchedule, or PreferNoSchedule.

  • security-groups array[object]

    Security Group

    Hide security-groups attributes Show security-groups attributes object
    • name string

      Security Group name

      Minimum length is 1, maximum length is 255.

    • Security Group description

      Maximum length is 255.

    • external-sources array[string]

      Security Group external sources

    • rules array[object]

      Security Group rule

      Hide rules attributes Show rules attributes object
      • Security Group rule description

        Maximum length is 255.

      • start-port integer(int64)

        Start port of the range

        Minimum value is 1, maximum value is 65535.

      • protocol string

        Network protocol

        Values are tcp, esp, icmp, udp, gre, ah, ipip, or icmpv6.

      • icmp object

        ICMP details

        Hide icmp attributes Show icmp attributes
        • code integer(int64)

          Minimum value is -1, maximum value is 254.

        • type integer(int64)

          Minimum value is -1, maximum value is 254.

      • end-port integer(int64)

        End port of the range

        Minimum value is 1, maximum value is 65535.

      • Security Group allowed

        Hide security-group attributes Show security-group attributes
        • name string

          Security Group name

          Minimum length is 1, maximum length is 255.

        • Whether this points to a public security group. This is only valid when in the context of a rule addition which uses a public security group as a source or destination.

          Values are private or public.

      • network string

        CIDR-formatted network allowed

      • Network flow direction to match

        Values are ingress or egress.

  • name string Required

    Nodepool name

    Minimum length is 1, maximum length is 255.

  • instance-type object Required

    Instance Type

  • private-networks array[object]

    Private Network

    Hide private-networks attributes Show private-networks attributes object
    • name string

      Private Network name

      Minimum length is 1, maximum length is 255.

    • Private Network description

      Maximum length is 255.

    • netmask string(ipv4)

      Private Network netmask

    • start-ip string(ipv4)

      Private Network start IP address

    • end-ip string(ipv4)

      Private Network end IP address

    • labels object

      Resource labels

      Hide labels attribute Show labels attribute
  • size integer(int64) Required

    Number of instances

    Minimum value is 0.

  • Kubelet image GC options

    Hide kubelet-image-gc attributes Show kubelet-image-gc attributes
  • Prefix to apply to instances names (default: pool)

    Minimum length is 1, maximum length is 30.

  • Instance Deploy Target

    Hide deploy-target attributes Show deploy-target attributes
    • id string(uuid) Required

      Deploy Target ID

    • name string

      Deploy Target name

      Minimum length is 1, maximum length is 255.

    • type string

      Deploy Target type

      Values are edge or dedicated.

    • Deploy Target description

      Maximum length is 255.

  • addons array[string]

    Nodepool addons

    Value is storage-lvm.

  • disk-size integer(int64) Required

    Nodepool instances disk size in GB

    Minimum value is 20, maximum value is 50000.

Responses

  • 200 application/json

    200

    Hide response attributes Show response attributes object
    • id string(uuid)

      Operation ID

    • reason string

      Operation failure reason

      Values are incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, or conflict.

    • Related resource reference

      Hide reference attributes Show reference attributes
      • id string(uuid)

        Reference ID

      • command string

        Command name

    • message string

      Operation message

    • state string

      Operation status

      Values are failure, pending, success, or timeout.

POST /sks-cluster/{id}/nodepool
curl \
 -X POST https://api-ch-gva-2.exoscale.com/v2/sks-cluster/{id}/nodepool \
 -H "Content-Type: application/json" \
 -d '{"anti-affinity-groups":[{"name":"string","description":"string"}],"description":"string","labels":{},"taints":{},"security-groups":[{"name":"string","description":"string","external-sources":["string"],"rules":[{"description":"string","start-port":42,"protocol":"tcp","icmp":{"code":42,"type":42},"end-port":42,"security-group":{"name":"string","visibility":"private"},"network":"string","flow-direction":"ingress"}]}],"name":"string","instance-type":{},"private-networks":[{"name":"string","description":"string","netmask":"string","start-ip":"string","end-ip":"string","labels":{}}],"size":42,"kubelet-image-gc":{"high-threshold":42,"low-threshold":42,"min-age":"string"},"instance-prefix":"string","deploy-target":{"id":"string","name":"string","type":"edge","description":"string"},"addons":["storage-lvm"],"disk-size":42}'
Request example
{
  "anti-affinity-groups": [
    {
      "name": "string",
      "description": "string"
    }
  ],
  "description": "string",
  "labels": {},
  "taints": {},
  "security-groups": [
    {
      "name": "string",
      "description": "string",
      "external-sources": [
        "string"
      ],
      "rules": [
        {
          "description": "string",
          "start-port": 42,
          "protocol": "tcp",
          "icmp": {
            "code": 42,
            "type": 42
          },
          "end-port": 42,
          "security-group": {
            "name": "string",
            "visibility": "private"
          },
          "network": "string",
          "flow-direction": "ingress"
        }
      ]
    }
  ],
  "name": "string",
  "instance-type": {},
  "private-networks": [
    {
      "name": "string",
      "description": "string",
      "netmask": "string",
      "start-ip": "string",
      "end-ip": "string",
      "labels": {}
    }
  ],
  "size": 42,
  "kubelet-image-gc": {
    "high-threshold": 42,
    "low-threshold": 42,
    "min-age": "string"
  },
  "instance-prefix": "string",
  "deploy-target": {
    "id": "string",
    "name": "string",
    "type": "edge",
    "description": "string"
  },
  "addons": [
    "storage-lvm"
  ],
  "disk-size": 42
}
Response examples (200)
{
  "id": "string",
  "reason": "incorrect",
  "reference": {
    "id": "string",
    "link": "string",
    "command": "string"
  },
  "message": "string",
  "state": "failure"
}