Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

A Kubernetes Cluster is a collection of Docker hosts, and a set of management features for running Docker containers in a clustered environment.  A sample Kubernetes Cluster definition, together with information on all the properties that can be added in a Kubernetes Cluster definition JSON are as follows:

Table of Contents
maxLevel3

Sample Kubernetes Cluster definition JSON

The following are sample configurations that can be used in a JSON to define a Kubernetes-CoreOS Cluster:

 

Excerpt
Localtabgroup
Localtab
title4.1.0 Resource definition
Code Block
{
  "clusterId": "kubernetes-cluster-1",
  "description": "Kubernetes Cluster 1",
  "kubernetesMaster": {
    "hostId": "master",
    "hostname": "master.dev.kubernetes.org",
    "privateIPAddress": "172.17.8.101",
    "publicIPAddress": "172.17.8.101",
    "property": [
      
    ]
  },
  "portRange": {
    "upper": "5000",
    "lower": "4500"
  },
  "kubernetesHosts": [
    {
      "hostId": "minion-1",
      "hostname": "minion-1.dev.kubernetes.org",
      "privateIPAddress": "172.17.8.102",
      "publicIPAddress": "172.17.8.102",
      "property": [
        
      ]
    }
  ],
  "property": [
    {
      "name": "payload_parameter.MB_IP",
      "value": "172.17.8.1"
    },
    {
      "name": "payload_parameter.MB_PORT",
      "value": "1883"
    },
    {
      "name": "payload_parameter.CEP_IP",
      "value": "172.17.8.1"
    },
    {
      "name": "payload_parameter.CEP_PORT",
      "value": "7711"
    },
    {
      "name": "payload_parameter.LOG_LEVEL",
      "value": "DEBUG"
    },
    {
      "name": "payload_parameter.METADATA_SERVICE_URL",
      "value": "https://172.17.8.1:9443"
    }
  ]
}
Localtab
title4.1.1 Resource Definition
Code Block
 {
  "clusterId": "kubernetes-cluster-1",
  "description": "Kubernetes Cluster 1",
  "kubernetesMaster": {
    "hostId": "master",
    "hostname": "master.dev.kubernetes.org",
    "privateIPAddress": "172.17.8.101",
    "publicIPAddress": "172.17.8.101",
    "property": [
      
    ]
  },
  "portRange": {
    "upper": "32767",
    "lower": "30000"
  },
  "kubernetesHosts": [
    {
      "hostId": "minion-1",
      "hostname": "minion-1.dev.kubernetes.org",
      "privateIPAddress": "172.17.8.102",
      "publicIPAddress": "172.17.8.102",
      "property": [
        
      ]
    }
  ],
  "property": [
    {
      "name": "payload_parameter.MB_IP",
      "value": "172.17.8.1"
    },
    {
      "name": "payload_parameter.MB_PORT",
      "value": "1883"
    },
    {
      "name": "payload_parameter.CEP_IP",
      "value": "172.17.8.1"
    },
    {
      "name": "payload_parameter.CEP_PORT",
      "value": "7711"
    },
    {
      "name": "payload_parameter.LOG_LEVEL",
      "value": "DEBUG"
    },
    {
      "name": "payload_parameter.METADATA_SERVICE_URL",
      "value": "https://172.17.8.1:9443"
    }
  ]
}
Info

The portRange values changed in 4.1.1. WSO2 Private PaaS now supports both the NodePort and ClusterIP service types in Kubernetes.

 

 

Note

You can configure the KUBERNETES_MASTER_PORT by defining it under the Kubernetes Master property parameter.

Example:

Code Block
{
  "name": "KUBERNETES_MASTER_PORT",
  "value": "8080"
}

Property definitions

All the properties that correspond to the Kubernetes Cluster resource are explained as follows: 

Main property definitions

Property

Image Added

Image Added

Image Added

Description

Image Added

Image Added

Data
Type 

Example
Value 

JSON

UI

Anchor
clusterId
clusterId
clusterId

clusterId

X

ID of the Kubernetes cluster. This needs to be a unique value.

Yes

N/A

String

kubernetes-cluster-1

Anchor
description
description
description

description

A short description of the Kubernetes Cluster.

Yes

N/A

String

Kubernetes Cluster 1

Anchor
kubernetesMaster
kubernetesMaster
kubernetesMaster

kubernetesMaster

The Kubernetes master definition. For more information on the sub-properties, see kubernetesMaster.

Yes

N/A

kubernetesMaster

N/A

Anchor
portRange
portRange
portRange

portRange

The allowed port range for the service.

Yes

N/A

portRange

N/A

Anchor
kubernetesHosts
kubernetesHosts
kubernetesHosts

kubernetesHosts

The Kubernetes host (salve/minion) definition. or more information on the sub-properties, see kubernetesHosts.

Yes

N/A

kubernetesHosts array

N/A

Anchor
property1
property1
property

property

These are properties that are used by Stratos when creating the Stratos Kubernetes Cluster. These properties are listed as name value pairs.

Yes

N/A

property array

N/A

Sub-parameter definitions

kubernetesMaster

Property

Image Added

Image Added

Image Added

Description

Image Added

Image Added

Data
Type 

Example
Value 

JSON

UI

Anchor
hostId
hostId
hostId

 hostId

X

Unique ID of the Kubernetes master.

Yes

N/A

String

master

Anchor
hostname
hostname
hostname

hostname

The hostname of the Kubernetes master.

Yes

N/A

String

master.dev.kubernetes.org

Anchor
privateIPAddress
privateIPAddress
privateIPAddress

privateIPAddress

The IP address of the Kubernetes master used to communicate within the Kubernetes cluster.

Yes

N/A

String

172.17.8.101 

Anchor
publicIPAddress
publicIPAddress
publicIPAddress

publicIPAddress

The IP address of the Kubernetes master used for external communication.

Yes

N/A

String

172.17.8.101 

Anchor
property2
property2
property

property

These are properties that are used by Stratos when creating the Stratos Kubernetes Master. These properties are listed as name value pairs. For more information on the sub-properties, see property .

Yes

N/A

property array

N/A

kubernetesHost

Property

Image Added

Image Added

Image Added

Description

Image Added

Image Added

Data
Type 

Example

JSON

UI

Anchor
hostId2
hostId2
hostId

hostId

X

Unique ID of the Kubernetes Host.

Yes

N/A

String

minion-1

Anchor
hostname2
hostname2
hostname

hostname

The hostname of the Kubernetes Host.

Yes

N/A

String

minion-1.dev.kubernetes.org

Anchor
privateIPAddress2
privateIPAddress2
privateIPAddress

privateIPAddress

The IP address of the Kubernetes Host used to communicate within the Kubernetes Cluster.

Yes

N/A

String

172.17.8.102

Anchor
publicIPAddress2
publicIPAddress2
publicIPAddress

publicIPAddress

The IP address of the Kubernetes Host used for external communication.

Yes

N/A

String

172.17.8.102

Anchor
property3
property3
property

property

These are properties that are used by Stratos when creating the Stratos Kubernetes Host. These properties are listed as name value pairs. For more information on the sub-properties, see property.

Yes

N/A

property array

N/A

portRange

Property

Image Added

Image Added

Image Added

Description

Image Added

Image Added

Data
Type 

Example

JSON

UI

Anchor
lower
lower
lower

lower

This is the lower limit of the service port range.

Yes

N/A

Int

4500

Anchor
upper
upper
upper

upper

This is the upper limit of the service port range.

Yes

N/A

Int

5000

property
Property NameDescriptionRequiredExample Value

payload_parameter.MB_IP

Message Broker IP.

Yes

172.17.42.1

payload_parameter.MB_PORT

Message Broker port.

Yes

1883

payload_parameter.CEP_IP

Complex Event Processor IP.

Yes

172.17.42.1

payload_parameter.CEP_PORT

Complex Event Processor port.

Yes

7611

payload_parameter.LOG_LEVEL

If this property is set to DEBUG, when the Python cartridge agent is running, it will print the corresponding DEBUG logs. If this property is not defined, then the Python cartridge agent will only print the INFO logs.

Yes

DEBUG

payload_parameter.METADATA_SERVICE_URL

The URL used to access the Metadata service.

Yes

https://172.17.8.1:9443