Welcome to kraken’s config file documentation!

Kubernetes API server configuration

http://judkins.house/apis/k2/v1/apiServerConfig.json
API Server properties such as the state kvStore (e.g. etcd) or flags
type object
properties
  • name
Name of the API server configuration
type string
  • kind
Type of apiServer
type string
enum apiServer
  • loadBalancer
What sort of load balancer system should be used
type string
enum cloud, flipbit
  • loadBalancerConfigs
AWS Load balancer configuration
  • state
  • events
  • flags
apiServerFlags.json
additionalProperties False

AWS Network Access Control List (ACL) Rule

http://judkins.house/apis/k2/v1/awsAclConfig.json
Describes an AWS network ACL rule. See the VPC [documentation](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_ACLs.html) for more information.
type object
properties
  • protocol
The protocol for this ACL.
type string
enum TCP, UDP, -1, ICMP
  • rule_no
The number of the rule for ordering.
type number
  • action
The action that should be implemented (allow/deny).
type string
enum allow, deny
  • cidr_block
The cidr to associate this rule to.
type string
format cidr
  • from_port
The from port number, 0 for all.
type number
maximum 65535
minimum 0
  • to_port
The to port number, 0 for all.
type number
additionalProperties False

AWS Security Credentials Configuration

http://judkins.house/apis/k2/v1/awsAuthenticationConfig.json
Describes AWS security credential configuration. See the [documentation](http://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html)
type object
properties
  • accessKey
The AWS access key for the API
type string / null
  • accessSecret
The AWS access secret for the API
type string / null
  • credentialsFile
The AWS credentials file for the API
type string / null
  • credentialsProfile
The profile to use within the credentials file
type string / null
  • securityToken
The Session Token to use when access credentials are from temporary STS grants
type string / null
additionalProperties False

AWS EBS Storage Options

http://judkins.house/apis/k2/v1/awsEbsStorageOptions.json
Describes AWS EBS storage options
type object
properties
  • device_name
The name of the device on the node (sde, sdg, etc).
type string
  • volume_type
The storage type on EBS (gp2, etc).
type string
  • volume_size
The size of the storage, in gigabytes.
type number
  • delete_on_termination
Whether or not to delete the volume after the node is terminated.
type boolean
  • snapshot_id
The id of a snapshot to recover from.
type string / null
  • encrypted
Whether or not the volume is encrypted within AWS.
type boolean
additionalProperties False

AWS Load balancer configuration

http://judkins.house/apis/k2/v1/awsLoadBalancerConfig.json
AWS Load balancer configuration for Kubernetes API servers
type object
properties
  • subnet
List of subnets to use within a region for the cluster.
type array
items
type string
minItems 1
additionalProperties False

AWS Node Configuration

http://judkins.house/apis/k2/v1/awsNodeConfig.json
Describes node configuration, some of which is specific to AWS (e.g. [instance types](https://aws.amazon.com/ec2/instance-types/)).
type object
properties
  • name
Name of node for use by k2.
type string
  • kind
Type of node
type string
enum node
  • mounts
Additional mounts made in the node.
type array
items
Node Mount Configuration
  • keypair
type string
  • providerConfig
AWS Provider Configuration
  • taints
List of AWS taints to associate with the kubernetes node
type array
items
Taint Configuration
additionalProperties False

Node Mount Configuration

http://judkins.house/apis/k2/v1/awsNodeMountConfig.json
Describes a mount for a node.
type object
properties
  • device
The device to be mounted.
type string
  • path
The path to mount the device to.
type string
  • forceFormat
Whether the mount should be formatted after every boot.
type boolean
additionalProperties False

AWS Provider Configuration

http://judkins.house/apis/k2/v1/awsNodeProviderConfig.json
Describes AWS specific provider configuration.
type object
properties
  • provider
Identifies who the provider is for configuration.
type string
enum aws
  • type
Identifies what aws machine type should be used (m3.medium, etc.).
type string
  • subnet
Identifies what subnets should be used. These are names of subnets created elsewhere in the configuration.
type array
items
type string
  • tags
List of AWS tags to associate with the node.
type array
items
AWS Node Tag
  • labels
List of Kubernetes labels to associate with the node.
type array
items
Kubernetes Node Label
  • storage
List of storage devices to attach to the node.
type array
items
AWS Storage Device
  • enablePublicIPs
Overrides the vpc’s subnet values. Do we allow for Auto-assigned Public IPs
type boolean
default true
additionalProperties False

AWS Node Tag

http://judkins.house/apis/k2/v1/awsNodeTag.json
Describes an [AWS node tag](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html).
type object
properties
  • key
The AWS tag’s key name.
type string
  • value
The AWS tag’s value.
type string
additionalProperties False

AWS Subnet Identification

http://judkins.house/apis/k2/v1/awsPreexistingSubnetConfig.json
Identifies an [AWS subnet](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html) that is not managed by K2.
type object
properties
  • name
The name of the subnet, for use within k2 configurations.
type string
  • id
AWS id of the pre-existing subnet.
type string
additionalProperties False

AWS Provider Configuration

http://judkins.house/apis/k2/v1/awsProviderConfig.json
Describes AWS specific provider configuration.
type object
properties
  • name
The name of the configuration, for use within k2 configurations.
type string
  • kind
The type of configuration this object it.
type string
enum provider
  • provider
The name of the provider for this provider setting.
type string
enum aws
  • type
Type of machine image deployment. For AWS, only cloudinit is supported.
type string
enum cloudinit
  • networkTopology
Type of network topology to create, care must be taken as you need pairs of subnets in a private topology.
type string
enum public, private
default public
  • resourcePrefix
Any prefix that should be prepended to resources in AWS to make them easier to identify.
type string / null
  • vpc
CIDR for the VPC for the cluster.
type string
default 10.0.0.0/16
format cidr
  • existing_vpc
AWS VPC Configuration
  • region
Region to create resources in (us-east-1, us-west-2, etc.).
type string
default us-east-1
  • subnet
List of subnets to use within a region for the cluster. Should be omitted and will be ignored if existing_vpc hash is specified.
type array
items
AWS Subnet Configurationn
minItems 1
  • egressAcl
List of egress ACLs to create for the VPC.
type array
items
AWS Network Access Control List (ACL) Rule
minItems 1
  • ingressAcl
List of ingress ACLs to create for the VPC.
type array
items
AWS Network Access Control List (ACL) Rule
minItems 1
  • ingressSecurity
List of ingress security rules to create for the VPC. This section is ignored when modifying an existing cluster.
type array
items
AWS Security Configuration
minItems 1
  • egressSecurity
List of egress security rules to create for the VPC. This section is ignored when modifying an existing cluster.
type array
items
AWS Security Configuration
minItems 1
  • authentication
AWS Security Credentials Configuration
additionalProperties False

AWS Security Configuration

http://judkins.house/apis/k2/v1/awsSecurityConfig.json
AWS Security Configuration
type object
properties
  • protocol
The protocol for this Security Rule.
type string
enum TCP, UDP, -1, ICMP
  • cidr_blocks
The cidr to associate this rule to.
type array
default [‘0.0.0.0/0’]
items
type string
  • from_port
The from port number.
type number
  • to_port
The to port number.
type number
additionalProperties False

AWS Storage Device

http://judkins.house/apis/k2/v1/awsStorageDevice.json
Describes an AWS storage device.
type object
properties
  • type
The type of storage
type string
  • opts
anyOf
AWS EBS Storage Options
additionalProperties False

AWS Subnet Configurationn

http://judkins.house/apis/k2/v1/awsSubnetConfig.json
Describes an [AWS subnet](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html).
type object
properties
  • name
The name of the subnet, for use within k2 configurations.
type string
  • az
Name of the Availability Zone (AZ) in AWS. Regions and AZs are documented [here](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions).
type string
default us-east-1a
  • cidr
The cidr to associate to the subnet (within the VPC).
type string
default 10.0.0.0/18
format cidr
  • enablePublicIPs
Do we allow for Auto-assigned Public IPs, Our clusters default to true
type boolean
default true
additionalProperties False

AWS VPC Configuration

http://judkins.house/apis/k2/v1/awsVpcConfig.json
Describes an existing AWS VPC configuration to install a Kubernetes cluster into.
type object
properties
  • id
id of a pre-created VPC
type string
  • route_table_id
DEPRECATED: id of a pre-created route table that exists in the provided vpc.id
type string
  • default_security_group_id
id of the pre-created default security group for the provided vpc.id
type string
  • subnet
list of subnet ids that are part of the provided vpc.id
type array
items
AWS Subnet Identification
minItems 1
additionalProperties False

A Bastion configuration

http://judkins.house/apis/k2/v1/bastionConfig.json
Properties pertaining to a Bastion.
type object
oneOf
A Bastion configuration
A Load Balanced Bastion configuration

A Load Balanced Bastion configuration

http://judkins.house/apis/k2/v1/bastionConfigLoadBalanced.json
Properties pertaining to a Load Balanced Bastion.
type object
properties
  • name
Name of the Bastion configuration.
type string
  • kind
Type of bastion config
type string
enum bastion-elb
  • listenPort
What port number to open for the ssh tunnel, default is 22
type number
maximum 65535
minimum 0
default 22
  • loadBalancer
What sort of load balancer system should be used
type string
enum cloud, flipbit
  • loadBalancerConfigs
AWS Load balancer configuration
additionalProperties False

A Bastion configuration

http://judkins.house/apis/k2/v1/bastionConfigSimple.json
Properties pertaining to a Bastion.
type object
properties
  • name
Name of the Bastion configuration.
type string
  • kind
Type of bastion config
type string
enum bastion
  • listenPort
What port number to open for the ssh tunnel, default is 22
type number
maximum 65535
minimum 0
default 22
additionalProperties False

Canal Fabric Configuration

http://judkins.house/apis/k2/v1/canalFabricConfig.json
Describes the configuration of a Canal fabric.
type object
properties
  • name
Name of the Canal Fabric Configuration.
type string
  • kind
The kind of configuration object.
type string
enum fabric
default fabric
  • type
The type of the fabric being used.
type string
enum canal
default canal
  • options
Canal Fabric Options
additionalProperties False

Canal Fabric Container Options

http://judkins.house/apis/k2/v1/canalFabricContainerConfig.json
Describes a Canal fabric container.
type object
properties
  • version
Tag of the container image (usually this is the version).
type string
  • location
Container image location.
type string
additionalProperties False

Canal Fabric Containers

http://judkins.house/apis/k2/v1/canalFabricContainers.json
Describes all of the containers necessary to implement a Canal fabric.
type object
properties
  • kubePolicyController
Canal Fabric Container Options
  • etcd
Canal Fabric Container Options
  • calicoCni
Canal Fabric Container Options
  • calicoNode
Canal Fabric Container Options
  • flannel
Canal Fabric Container Options
additionalProperties False

Canal Fabric Network configuration

http://judkins.house/apis/k2/v1/canalFabricNetwork.json
Describes the configuration of a Canal network fabric.
type object
properties
  • network
Network CIDR for pods in the fabric.
type string
format cidr
  • subnetLen
The size of a subnet to assign to any given node.
type number
maximum 32
minimum 1
default 22
  • subnetMin
The lowest subnet that can be handed out to a node.
type string
  • subnetMax
The highest subnet that can be handed out to a node.
type string
  • backend
Network CIDR for pods in the fabric.
type object
anyOf
Canal Fabric VXLan Network configuration
additionalProperties False

Canal Fabric VXLan Network configuration

http://judkins.house/apis/k2/v1/canalFabricNetworkVxlan.json
Canal Fabric VXLan Network configuration.
type object
properties
  • type
Indicates that it is vxlan.
type string
enum vxlan
default vxlan
additionalProperties False

Canal Fabric Options

http://judkins.house/apis/k2/v1/canalFabricOptions.json
Canal Fabric Options configuration.
type object
properties
  • containers
Canal Fabric Containers
  • network
Canal Fabric Network configuration
additionalProperties False

A single cluster configuration

http://judkins.house/apis/k2/v1/cluster.json
A set of one or more nodePools, along with any shared configuration between them.
type object
properties
  • name
Name of this cluster.
type string
maxLength 21
minLength 1
pattern ^[A-Za-z0-9-]+$
  • network
Internal IP address range (CIDR) for services.
type string
format cidr
  • dns
Internal IP address of the DNS service.
type string
format ipv4
  • domain
Domain name for cluster (internal resolution).
type string
format hostname
  • providerConfig
Provider Configuration
  • helmOverride
Set to true when using your own helm version.
type boolean / string / null
  • nodePools
A list of nodePools.
type array
items
nodePool Configuration
minItems 1
  • fabricConfig
Fabric Configuration
  • kubeAuth
Kubernetes Authentication Entry
  • helmConfig
Helm Configuration
  • dnsConfig
Cluster DNS configuration
  • customApiDns
Custom domain name for API server ELB.
type string
additionalProperties False

k2 Configuration

http://judkins.house/apis/k2/v1/config.json
Describes one or more Kubernetes clusters.
type object
properties
  • version
The k2 configuration version determines which schema is used to validate the configuration file.
type string
  • definitions
Definitions
  • deployment
A Kubernetes deployment
additionalProperties False

CoreOS Configuration

http://judkins.house/apis/k2/v1/coreOsConfig.json
Describes the configuration of CoreOS.
type object
properties
  • name
The name of the configuration.
type string
  • kind
The kind of configuration.
type string
enum os
  • type
The type of configuration (coreos).
type string
enum coreOs
  • version
The image tag of CoreOS to deploy.
type string
  • channel
The channel of CoreOS to pick.
type string
enum stable, beta, alpha
default stable
  • rebootStrategy
[Reboot Strategy Options](https://coreos.com/os/docs/latest/update-strategies.html#reboot-strategy-options).
type string
enum off, reboot, etcd-lock, best-effort
default off
  • locksmith
CoreOS Locksmith Configuration
additionalProperties False

CoreOS Locksmith Configuration

http://judkins.house/apis/k2/v1/coreOsLocksmithConfig.json
Describes the configuration of CoreOS Locksmith (used to manage [updates](https://coreos.com/os/docs/latest/update-strategies.html).
type object
properties
  • etcdConfig
  • endpoint
Comma separated list of etcd endpoints.
type string
  • etcdCafile
Path to CA file used for TLS communication with etcd.
type string
default /etc/etcd/ssl/client-ca.pem
  • etcdCertfile
Path to certificate file used for TLS communication with etcd.
type string
default /etc/etcd/ssl/client.pem
  • etcdKeyfile
Path to private key file used for TLS communication with etcd.
type string
default /etc/etcd/ssl/client-key.pem
  • group
Name of the reboot group in which this instance belongs. If not specified then it is the name of the nodePool, which is the default.
type string
  • setMax
Maximum number of nodes allowed to reboot at the same time. Should be one less than the number of failures the cluster can tolerate.
type number
default 1
  • windowStart
Optional day of the week (e.g. Sun, Mon, …) and the time of day (specified in 24-hours). For example, ‘Sat 04:00’, or ‘18:00’.
type string
default 04:00
  • windowLength
Length of time after window-start during which reboots are allowed. For example, ‘2h’, or ‘13h’. Duration will be parsed by https://godoc.org/time#ParseDuration
type string
default 2h
additionalProperties False

Definitions

http://judkins.house/apis/k2/v1/definitions.json
A dict containing JSON snippets which are referenced within the config for clarity or brevity.
type object
properties
  • helmConfigs
Helm configurations
A list of Helm configurations referenced within the configuration file.
type array
items
Helm Configuration
minItems 1
  • fabricConfigs
Fabric configurations
A list of fabric configurations referenced within the configuration file.
type array
items
Fabric Configuration
minItems 1
  • loadBalancerConfigs
Load Balancer configurations
A list of Load Balancer configurations referenced within the configuration file.
type array
items
Load balancer configuration
minItems 1
  • kvStoreConfigs
kvStore configurations
A list of kvStore (e.g. etcd) configurations referenced within the configuration file.
type array
items
kvStore Configuration
minItems 1
  • apiServerConfigs
API server configurations
A list of API server configurations referenced within the configuration file.
type array
items
Kubernetes API server configuration
minItems 1
  • bastionConfigs
Bastion configurations
A list of bastion configurations within the configuration file.
type array
items
A Bastion configuration
minItems 1
  • kubeConfigs
Kubernetes configurations
A list of Kubernetes configurations referenced within the configuration file.
type array
items
A Kubernetes configuration
minItems 1
  • containerConfigs
Container configurations
A list of container configurations referenced within the configuration file.
type array
items
Container Configuration
minItems 1
  • autoScalingConfigs
AutoScaling configurations
Describes the autoScaling configuration for a nodePool.
type array
items
autoScalingConfig.json
minItems 1
  • osConfigs
OS configurations
A list of OS configurations referenced within the configuration file.
type array
items
OS Configuration
minItems 1
  • nodeConfigs
Node configurations
A list of (provider specific) node configurations referenced within the configuration file.
type array
items
Node Configuration
minItems 1
  • providerConfigs
Provider configurations
A list of provider (e.g. AWS, GKE, etc.) configurations referenced within the configuration file.
type array
items
Provider Configuration
minItems 1
  • dnsConfig
DNS configurations
A list of DNS configurations referenced within the configuration file.
type array
items
Cluster DNS configuration
minItems 1
  • kubeAuth
Kubernetes Authentication configurations
A list of Kubernetes Authenications entries referenced within the configuration file.
type array
items
Kubernetes Authentication Entry
minItems 1
  • keyPairs
Key pairs
A list of key pairs referenced within the configuration file.
type array
items
Key Pairs Entry for use in K2
minItems 1
  • schedulingConfigs
Pod Scheduling configuration.
Taint information for pod scheduling.
type array
items
schedulingConfig.json
additionalProperties False

A Kubernetes deployment

http://judkins.house/apis/k2/v1/deployment.json
Describes the deployment of one or more Kubernetes clusters.
type object
properties
  • clusters
A list of cluster configurations.
type array
items
A single cluster configuration
maxItems 1
minItems 1
  • readiness
Cluster Readiness Configuration
additionalProperties False

Cluster DNS configuration

http://judkins.house/apis/k2/v1/dnsConfig.json
Describes the configuration of a DNS service for the cluster.
type object
properties
  • name
Name of cluster DNS configuration.
type string
  • kind
Type of cluster DNS configuration.
type string
enum dns
  • kubedns
Kubernetes DNS Configurations
additionalProperties False

Docker Runtime Configuration

http://judkins.house/apis/k2/v1/dockerContainerConfig.json
Describes the configuration of a Docker runtime.
type object
properties
  • name
Name of the docker configuration (e.g. prodDockerConfig, betaDockerConfig, etc.).
type string
default defaultDockerConfig
  • kind
Type of configuration.
type string
enum container
  • runtime
Type of container runtime.
type string
enum docker
default docker
  • type
Type of docker installation.
type string
enum distro, tgz
default distro
  • uri
If type is tgz, then uri identifies how to obtain a tgz file containing the docker binaries.
type string
additionalProperties False

etcd Configuration

http://judkins.house/apis/k2/v1/etcdConfig.json
Describes the configuration of etcd.
type object
properties
  • name
Name of etcd configuration
type string
  • type
Type of kvStore
type string
enum etcd
  • kind
Type of etcdConfig
type string
enum kvStore
  • clientPorts
Ports used to listen for client requests.
type array
default [2379, 4001]
items
type number
minItems 1
  • clusterToken
Token used during etcd cluster formation. This may be unsafe if an etcd cluster formation has to be restarted, or multiple clusters are created within the same VPC. It is highly recommended that the uuidToken option be used instead.
type string
default espouse-monger-rarely
  • uuidToken
If true, uuidgen will be used to generate a unique token for each etcd cluster. uuidToken takes precedence over clusterToken, and if neither are specified then the etcd defaults are used.
type boolean
default True
  • peerPorts
Ports used for peer to peer communication
type array
default [2380]
items
type number
minItems 1
  • ssl
Whether or not SSL is used for etcd traffic
type boolean
  • version
Version of etcd container which will be run
type string
additionalProperties False

GKE Service Account Configuration

http://judkins.house/apis/k2/v1/gkeKeyPairConfig.json
Describes a GKE service account used to authenticate management of GKE resources. See the [documentation](https://cloud.google.com/compute/docs/access/create-enable-service-accounts-for-instances) for more information.
type object
properties
  • serviceAccount
The service account id.
type string
  • serviceAccountKeyFile
The service account key file.
type string
additionalProperties False

GKE Node Configuration

http://judkins.house/apis/k2/v1/gkeNodeConfig.json
Describes node configuration, some of which is specific to GKE (e.g. [machine types](https://cloud.google.com/compute/docs/machine-types).
type object
properties
  • name
Name of node for use by k2.
type string
  • kind
Type of config this is.
type string
enum node
  • providerConfig
GKE Provider Node Configuration
  • taints
List of GKE taints to associate with the kubernetes node
type array
items
Taint Configuration
additionalProperties False

GKE Provider Node Configuration

http://judkins.house/apis/k2/v1/gkeNodeProviderConfig.json
Describes GKE specific node configuration.
type object
properties
  • diskSize
The amount of disk that should be allocated to the node, in GB.
type number
  • machineType
The machine type that should be used for the node (n1-standard-1, etc.).
type string
  • scopes
The scopes given to the node.
type array
items
type string
additionalProperties False

GKE Provider Configuration

http://judkins.house/apis/k2/v1/gkeProviderConfig.json
Describes GKE specific provider configuration.
type object
properties
  • name
The name of the configuration, for use within k2 configurations
type string
  • kind
The type of configuration this object it
type string
enum provider
  • provider
The name of the provider for this provider setting
type string
enum gke
  • type
Type of machine image deployment. For GKE, only autonomous is supported.
type string
enum autonomous
  • project
Name of GKE project
type string
  • keypair
Key Pairs Entry for use in K2
  • zone
GKE Zone Configuration
additionalProperties False

GKE Zone Configuration

http://judkins.house/apis/k2/v1/gkeZoneConfig.json
GKE Zone Configuration
type object
properties
  • primaryZone
The main zone for the k2 cluster.
type string
  • additionalZones
Additional Zones that the cluster should also exist in.
type array
items
type string
additionalProperties False

Helm Chart

http://judkins.house/apis/k2/v1/helmChart.json
Configuration for a helm chart for use in K2.
type object
properties
  • name
Friendly name for the chart.
type string
  • namespace
Namespace of the chart.
type string
  • repo
Repository to pull this chart from - referenced by helm application.
type string
  • registry
Registry to pull this chart from - referenced by helm application.
type string
  • chart
Actual name of chart in the repository - referenced by helm application.
type string
  • version
Version of the chart to deploy - referenced by helm application.
type string
additionalProperties False
oneOf

Helm Configuration

http://judkins.house/apis/k2/v1/helmConfig.json
Configuration for helm for use in K2.
type object
properties
  • name
Name of the helm configuration.
type string
  • kind
Kind of kubernetes package manager.
type string
  • repos
List of helm repositories we want installed.
type array
items
Helm repo configuration
  • registries
List of helm app registries we want installed.
type array
items
Helm app registry configuration
  • charts
List of helm charts we want installed.
type array
items
Helm Chart
additionalProperties False

Helm app registry configuration

http://judkins.house/apis/k2/v1/helmRegistry.json
Configuration for a helm app registry for use in K2.
type object
properties
  • name
Name for the app registry - referenced by helm application.
type string
  • username
Username with which to authenticate to the helm app registry.
type string
  • password
Password with which to authenticate to the helm app registry.
type string
additionalProperties False

Helm repo configuration

http://judkins.house/apis/k2/v1/helmRepo.json
Configuration for a helm repo for use in K2.
type object
properties
  • name
Name for the repository - referenced by helm application.
type string
  • url
URL to the helm repository.
type string
additionalProperties False

Key Pairs Entry for use in K2

http://judkins.house/apis/k2/v1/keyPair.json
Key Pairs Entry for use in K2.
type object
properties
  • name
Name given to the key entry for identification in other k2 configuration areas.
type string
  • kind
Type configuration node this is
type string
enum keyPair
  • publickeyFile
Location of the public key on the host running K2.
type string
  • privatekeyFile
Location of the private key on the host running K2.
type string
  • providerConfig
anyOf
GKE Service Account Configuration
additionalProperties False

Kubernetes Authentication Authn Entry

http://judkins.house/apis/k2/v1/kubeAuthAuthnEntry.json
Kubernetes Authentication Authn Entry
type object
properties
  • basic
List of Basic auth users to be created.
type array
items
Kubernetes Authentication Basic User Entry
minItems 1
  • cert
List of Cert auth users to be created.
type array
items
Kubernetes Authentication Cert User Entry
minItems 1
  • default_basic_user
Default admin user for kubeauth file. Must match one of the user names.
type string
additionalProperties False
anyOf

Kubernetes Authentication Authz Entry

http://judkins.house/apis/k2/v1/kubeAuthAuthzEntry.json
Kubernetes Authentication Authz Entry
type object
properties
  • rbac
Kubernetes RBAC configuration.
type object
properties
additionalProperties False

Kubernetes Authentication Basic User Entry

http://judkins.house/apis/k2/v1/kubeAuthBasicUser.json
Kubernetes Authentication Basic User Entry
type object
properties
  • user
The username for the account.
type string
  • password
The password for the user account.
type string
  • group
The groups for the user account.
type string
additionalProperties False

Kubernetes Authentication Cert User Entry

http://judkins.house/apis/k2/v1/kubeAuthCertUser.json
Kubernetes Authentication Cert User Entry
type object
properties
  • user
The username for the account.
type string
  • group
The groups for the user account.
type string
additionalProperties False

Kubernetes Authentication Entry

http://judkins.house/apis/k2/v1/kubeAuthConfig.json
Kubernetes Authentication Entry
type object
properties
  • authz
Kubernetes Authentication Authz Entry
  • authn
Kubernetes Authentication Authn Entry
additionalProperties False

A Kubernetes configuration

http://judkins.house/apis/k2/v1/kubeConfig.json
The location and version of a container containing the Kubernetes hyperkube binary.
type object
properties
  • name
Name of the Kubernetes configuration.
type string
  • kind
Type of kubeconfig
type string
enum kubernetes
  • hyperkubeLocation
Location of the Kubernetes container.
type string
format uri
  • version
Version of the hyperkube binary.
type string
format semver
additionalProperties False

Kubernetes DNS Configurations

http://judkins.house/apis/k2/v1/kubeDns.json
Describes the configuration of DNS for the Kubernetes cluster.
type object
properties
  • cluster_ip
This should be the same as the IP set in the deployment.clusters[x].dns in the main configuration file.
type string
  • dns_domain
This should be the same as the domain set in deployment.clusters[x].domain in the main configuration file.
type string
  • namespace
Kubernetes is expecting DNS to be in kube-system.
type string
additionalProperties False

Kubernetes Node Label

http://judkins.house/apis/k2/v1/kubeNodeLabel.json
Describes a Kubernetes node label. For more information on labels, see the [documentation](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/).
type object
properties
  • name
The Kubernetes node label’s key.
type string
  • value
The Kubernetes node label’s value.
type string
additionalProperties False

Taint Configuration

http://judkins.house/apis/k2/v1/kubeNodeTaint.json
Configuration for taint for use in K2.
type array

kubeVersioned Fabric configuration

http://judkins.house/apis/k2/v1/kubeVersionedFabric.json
Fabric configurations for multiple versions of Kubernetes.
type object
properties
  • name
Name of the kubeVersioned fabric configuration.
type string
  • kind
The kind of configuration object.
type string
enum versionedFabric
  • type
The type of the fabric being used.
type string
enum canal, weave
  • kubeVersion
Allows different configurations to be defined depending on the Kubernetes version.
type object
properties
  • default
oneOf
Canal Fabric Configuration
Weave Fabric Configuration
  • versions
Dictionary of configuration objects where the kubernetes version is the key
type object
patternProperties
  • ^v.*
oneOf
Canal Fabric Configuration
Weave Fabric Configuration
additionalProperties False
additionalProperties False

kvStore Configuration

http://judkins.house/apis/k2/v1/kvStoreConfig.json
Describes a kvStore (e.g. etcd) configuration.
type object
oneOf
etcd Configuration

Load balancer configuration

http://judkins.house/apis/k2/v1/loadBalancerConfig.json
Load balancer configuration for Kubernetes API servers
type object
properties
  • name
Name of the load balancer configuration.
type string
maxLength 32
  • type
Type of load balancer.
type string
enum cloud, flipbit
additionalProperties False

nodePool Configuration

http://judkins.house/apis/k2/v1/nodePool.json
Describes a set of one or more nodes which share the same configuration.
type object
properties
  • name
Name of the nodePool.
type string
  • count
Number of nodes in the nodePool.
type number
minimum 1
  • etcdConfig
kvStore Configuration
  • etcdConfigs
type array
items
kvStore Configuration
minItems 1
  • apiServerConfig
Kubernetes API server configuration
  • kubeConfig
A Kubernetes configuration
  • bastionConfig
A Bastion configuration
  • containerConfig
Container Configuration
  • osConfig
OS Configuration
  • nodeConfig
Node Configuration
  • keyPair
Key Pairs Entry for use in K2
  • autoScalingConfig
autoScalingConfig.json
  • schedulingConfig
schedulingConfig.json
additionalProperties False

Cluster Readiness Configuration

http://judkins.house/apis/k2/v1/readiness.json
Options to determine when a cluster is ready.
type object
properties
  • type
The type of test that should be used to determine if a cluster is ready.
type string
  • value
The value for the test.
type number
  • wait
The number of seconds to wait for the test to complete.
type number
additionalProperties False

Weave Fabric Configuration

http://judkins.house/apis/k2/v1/weaveFabricConfig.json
Describes configuration of Weave network fabric.
type object
properties
  • name
Name for the weave fabric configuration - used for referencing.
type string
  • kind
Type of weave fabric configuration
type string
enum fabric
  • type
The type of the fabric being used.
type string
enum weave
default weave
  • options
Weave Fabric Options
additionalProperties False

Weave Fabric Containers

http://judkins.house/apis/k2/v1/weaveFabricContainerConfig.json
Describes the containers which implement the Weave fabric.
type object
properties
  • version
Version of the container
type string
  • location
Container image location
type string
additionalProperties False

Weave Fabric Containers

http://judkins.house/apis/k2/v1/weaveFabricContainers.json
Describes the Weave fabric containers.
type object
properties
  • weave
Weave Fabric Containers
  • weave_npc
Weave Fabric Containers
additionalProperties False

Weave Fabric Network configuration

http://judkins.house/apis/k2/v1/weaveFabricNetwork.json
Describes the configuration of a Weave network fabric.
type object
properties
  • network
Network CIDR for pods in the fabric
type string
format cidr
  • nodeConnectionLimit
Maximum number of connection made per node. A cluster size of N would have each node making (N-1) connections
type number
minimum 1
default 30
additionalProperties False

Weave Fabric Options

http://judkins.house/apis/k2/v1/weaveFabricOptions.json
Weave Fabric Options configuration.
type object
properties
  • containers
Weave Fabric Containers
  • network
Weave Fabric Network configuration
additionalProperties False

Indices and tables