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 of the API server configuration | |
type | string | |
|
Type of apiServer | |
type | string | |
enum | apiServer | |
|
What sort of load balancer system should be used | |
type | string | |
enum | cloud, flipbit | |
|
AWS Load balancer configuration | |
|
||
|
||
|
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 | ||
|
The protocol for this ACL. | |
type | string | |
enum | TCP, UDP, -1, ICMP | |
|
The number of the rule for ordering. | |
type | number | |
|
The action that should be implemented (allow/deny). | |
type | string | |
enum | allow, deny | |
|
The cidr to associate this rule to. | |
type | string | |
format | cidr | |
|
The from port number, 0 for all. | |
type | number | |
maximum | 65535 | |
minimum | 0 | |
|
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 | ||
|
The AWS access key for the API | |
type | string / null | |
|
The AWS access secret for the API | |
type | string / null | |
|
The AWS credentials file for the API | |
type | string / null | |
|
The profile to use within the credentials file | |
type | string / null | |
|
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 | ||
|
The name of the device on the node (sde, sdg, etc). | |
type | string | |
|
The storage type on EBS (gp2, etc). | |
type | string | |
|
The size of the storage, in gigabytes. | |
type | number | |
|
Whether or not to delete the volume after the node is terminated. | |
type | boolean | |
|
The id of a snapshot to recover from. | |
type | string / null | |
|
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 | |||
|
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 of node for use by k2. | |
type | string | |
|
Type of node | |
type | string | |
enum | node | |
|
Additional mounts made in the node. | |
type | array | |
items | ||
Node Mount Configuration | ||
|
type | string |
|
AWS Provider Configuration | |
|
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 | ||
|
The device to be mounted. | |
type | string | |
|
The path to mount the device to. | |
type | string | |
|
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 | |||
|
Identifies who the provider is for configuration. | ||
type | string | ||
enum | aws | ||
|
Identifies what aws machine type should be used (m3.medium, etc.). | ||
type | string | ||
|
Identifies what subnets should be used. These are names of subnets created elsewhere in the configuration. | ||
type | array | ||
items | |||
type | string | ||
|
List of AWS tags to associate with the node. | ||
type | array | ||
items | |||
AWS Node Tag | |||
|
List of Kubernetes labels to associate with the node. | ||
type | array | ||
items | |||
Kubernetes Node Label | |||
|
List of storage devices to attach to the node. | ||
type | array | ||
items | |||
AWS Storage Device | |||
|
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 | ||
|
The AWS tag’s key name. | |
type | string | |
|
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 | ||
|
The name of the subnet, for use within k2 configurations. | |
type | string | |
|
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 | ||
|
The name of the configuration, for use within k2 configurations. | |
type | string | |
|
The type of configuration this object it. | |
type | string | |
enum | provider | |
|
The name of the provider for this provider setting. | |
type | string | |
enum | aws | |
|
Type of machine image deployment. For AWS, only cloudinit is supported. | |
type | string | |
enum | cloudinit | |
|
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 | |
|
Any prefix that should be prepended to resources in AWS to make them easier to identify. | |
type | string / null | |
|
CIDR for the VPC for the cluster. | |
type | string | |
default | 10.0.0.0/16 | |
format | cidr | |
|
AWS VPC Configuration | |
|
Region to create resources in (us-east-1, us-west-2, etc.). | |
type | string | |
default | us-east-1 | |
|
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 | |
|
List of egress ACLs to create for the VPC. | |
type | array | |
items | ||
AWS Network Access Control List (ACL) Rule | ||
minItems | 1 | |
|
List of ingress ACLs to create for the VPC. | |
type | array | |
items | ||
AWS Network Access Control List (ACL) Rule | ||
minItems | 1 | |
|
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 | |
|
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 | |
|
AWS Security Credentials Configuration | |
additionalProperties | False |
AWS Security Configuration¶
http://judkins.house/apis/k2/v1/awsSecurityConfig.json | |||
AWS Security Configuration | |||
type | object | ||
properties | |||
|
The protocol for this Security Rule. | ||
type | string | ||
enum | TCP, UDP, -1, ICMP | ||
|
The cidr to associate this rule to. | ||
type | array | ||
default | [‘0.0.0.0/0’] | ||
items | |||
type | string | ||
|
The from port number. | ||
type | number | ||
|
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 | |||
|
The type of storage | ||
type | string | ||
|
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 | ||
|
The name of the subnet, for use within k2 configurations. | |
type | string | |
|
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 | |
|
The cidr to associate to the subnet (within the VPC). | |
type | string | |
default | 10.0.0.0/18 | |
format | cidr | |
|
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 of a pre-created VPC | |
type | string | |
|
DEPRECATED: id of a pre-created route table that exists in the provided vpc.id | |
type | string | |
|
id of the pre-created default security group for the provided vpc.id | |
type | string | |
|
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 of the Bastion configuration. | |
type | string | |
|
Type of bastion config | |
type | string | |
enum | bastion-elb | |
|
What port number to open for the ssh tunnel, default is 22 | |
type | number | |
maximum | 65535 | |
minimum | 0 | |
default | 22 | |
|
What sort of load balancer system should be used | |
type | string | |
enum | cloud, flipbit | |
|
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 of the Bastion configuration. | |
type | string | |
|
Type of bastion config | |
type | string | |
enum | bastion | |
|
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 of the Canal Fabric Configuration. | |
type | string | |
|
The kind of configuration object. | |
type | string | |
enum | fabric | |
default | fabric | |
|
The type of the fabric being used. | |
type | string | |
enum | canal | |
default | canal | |
|
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 | ||
|
Tag of the container image (usually this is the version). | |
type | string | |
|
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 | |
|
Canal Fabric Container Options |
|
Canal Fabric Container Options |
|
Canal Fabric Container Options |
|
Canal Fabric Container Options |
|
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 CIDR for pods in the fabric. | ||
type | string | ||
format | cidr | ||
|
The size of a subnet to assign to any given node. | ||
type | number | ||
maximum | 32 | ||
minimum | 1 | ||
default | 22 | ||
|
The lowest subnet that can be handed out to a node. | ||
type | string | ||
|
The highest subnet that can be handed out to a node. | ||
type | string | ||
|
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 | ||
|
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 | |
|
Canal Fabric Containers |
|
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 of this cluster. | |
type | string | |
maxLength | 21 | |
minLength | 1 | |
pattern | ^[A-Za-z0-9-]+$ | |
|
Internal IP address range (CIDR) for services. | |
type | string | |
format | cidr | |
|
Internal IP address of the DNS service. | |
type | string | |
format | ipv4 | |
|
Domain name for cluster (internal resolution). | |
type | string | |
format | hostname | |
|
Provider Configuration | |
|
Set to true when using your own helm version. | |
type | boolean / string / null | |
|
A list of nodePools. | |
type | array | |
items | ||
nodePool Configuration | ||
minItems | 1 | |
|
Fabric Configuration | |
|
Kubernetes Authentication Entry | |
|
Helm Configuration | |
|
Cluster DNS configuration | |
|
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 | ||
|
The k2 configuration version determines which schema is used to validate the configuration file. | |
type | string | |
|
Definitions | |
|
A Kubernetes deployment | |
additionalProperties | False |
Container Configuration¶
http://judkins.house/apis/k2/v1/containerConfig.json | ||
anyOf | Docker Runtime Configuration |
CoreOS Configuration¶
http://judkins.house/apis/k2/v1/coreOsConfig.json | ||
Describes the configuration of CoreOS. | ||
type | object | |
properties | ||
|
The name of the configuration. | |
type | string | |
|
The kind of configuration. | |
type | string | |
enum | os | |
|
The type of configuration (coreos). | |
type | string | |
enum | coreOs | |
|
The image tag of CoreOS to deploy. | |
type | string | |
|
The channel of CoreOS to pick. | |
type | string | |
enum | stable, beta, alpha | |
default | stable | |
|
[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 | |
|
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 | ||
|
||
|
Comma separated list of etcd endpoints. | |
type | string | |
|
Path to CA file used for TLS communication with etcd. | |
type | string | |
default | /etc/etcd/ssl/client-ca.pem | |
|
Path to certificate file used for TLS communication with etcd. | |
type | string | |
default | /etc/etcd/ssl/client.pem | |
|
Path to private key file used for TLS communication with etcd. | |
type | string | |
default | /etc/etcd/ssl/client-key.pem | |
|
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 | |
|
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 | |
|
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 | |
|
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 | ||
|
Helm configurations | |
A list of Helm configurations referenced within the configuration file. | ||
type | array | |
items | ||
Helm Configuration | ||
minItems | 1 | |
|
Fabric configurations | |
A list of fabric configurations referenced within the configuration file. | ||
type | array | |
items | ||
Fabric Configuration | ||
minItems | 1 | |
|
Load Balancer configurations | |
A list of Load Balancer configurations referenced within the configuration file. | ||
type | array | |
items | ||
Load balancer configuration | ||
minItems | 1 | |
|
kvStore configurations | |
A list of kvStore (e.g. etcd) configurations referenced within the configuration file. | ||
type | array | |
items | ||
kvStore Configuration | ||
minItems | 1 | |
|
API server configurations | |
A list of API server configurations referenced within the configuration file. | ||
type | array | |
items | ||
Kubernetes API server configuration | ||
minItems | 1 | |
|
Bastion configurations | |
A list of bastion configurations within the configuration file. | ||
type | array | |
items | ||
A Bastion configuration | ||
minItems | 1 | |
|
Kubernetes configurations | |
A list of Kubernetes configurations referenced within the configuration file. | ||
type | array | |
items | ||
A Kubernetes configuration | ||
minItems | 1 | |
|
Container configurations | |
A list of container configurations referenced within the configuration file. | ||
type | array | |
items | ||
Container Configuration | ||
minItems | 1 | |
|
AutoScaling configurations | |
Describes the autoScaling configuration for a nodePool. | ||
type | array | |
items | ||
autoScalingConfig.json | ||
minItems | 1 | |
|
OS configurations | |
A list of OS configurations referenced within the configuration file. | ||
type | array | |
items | ||
OS Configuration | ||
minItems | 1 | |
|
Node configurations | |
A list of (provider specific) node configurations referenced within the configuration file. | ||
type | array | |
items | ||
Node Configuration | ||
minItems | 1 | |
|
Provider configurations | |
A list of provider (e.g. AWS, GKE, etc.) configurations referenced within the configuration file. | ||
type | array | |
items | ||
Provider Configuration | ||
minItems | 1 | |
|
DNS configurations | |
A list of DNS configurations referenced within the configuration file. | ||
type | array | |
items | ||
Cluster DNS configuration | ||
minItems | 1 | |
|
Kubernetes Authentication configurations | |
A list of Kubernetes Authenications entries referenced within the configuration file. | ||
type | array | |
items | ||
Kubernetes Authentication Entry | ||
minItems | 1 | |
|
Key pairs | |
A list of key pairs referenced within the configuration file. | ||
type | array | |
items | ||
Key Pairs Entry for use in K2 | ||
minItems | 1 | |
|
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 | ||
|
A list of cluster configurations. | |
type | array | |
items | ||
A single cluster configuration | ||
maxItems | 1 | |
minItems | 1 | |
|
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 of cluster DNS configuration. | |
type | string | |
|
Type of cluster DNS configuration. | |
type | string | |
enum | dns | |
|
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 of the docker configuration (e.g. prodDockerConfig, betaDockerConfig, etc.). | |
type | string | |
default | defaultDockerConfig | |
|
Type of configuration. | |
type | string | |
enum | container | |
|
Type of container runtime. | |
type | string | |
enum | docker | |
default | docker | |
|
Type of docker installation. | |
type | string | |
enum | distro, tgz | |
default | distro | |
|
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 of etcd configuration | ||
type | string | ||
|
Type of kvStore | ||
type | string | ||
enum | etcd | ||
|
Type of etcdConfig | ||
type | string | ||
enum | kvStore | ||
|
Ports used to listen for client requests. | ||
type | array | ||
default | [2379, 4001] | ||
items | |||
type | number | ||
minItems | 1 | ||
|
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 | ||
|
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 | ||
|
Ports used for peer to peer communication | ||
type | array | ||
default | [2380] | ||
items | |||
type | number | ||
minItems | 1 | ||
|
Whether or not SSL is used for etcd traffic | ||
type | boolean | ||
|
Version of etcd container which will be run | ||
type | string | ||
additionalProperties | False |
Fabric Configuration¶
http://judkins.house/apis/k2/v1/fabricConfig.json | ||
oneOf | Canal Fabric Configuration | |
Weave Fabric Configuration | ||
kubeVersioned Fabric configuration |
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 | ||
|
The service account id. | |
type | string | |
|
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 of node for use by k2. | |
type | string | |
|
Type of config this is. | |
type | string | |
enum | node | |
|
GKE Provider Node Configuration | |
|
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 | |||
|
The amount of disk that should be allocated to the node, in GB. | ||
type | number | ||
|
The machine type that should be used for the node (n1-standard-1, etc.). | ||
type | string | ||
|
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 | ||
|
The name of the configuration, for use within k2 configurations | |
type | string | |
|
The type of configuration this object it | |
type | string | |
enum | provider | |
|
The name of the provider for this provider setting | |
type | string | |
enum | gke | |
|
Type of machine image deployment. For GKE, only autonomous is supported. | |
type | string | |
enum | autonomous | |
|
Name of GKE project | |
type | string | |
|
Key Pairs Entry for use in K2 | |
|
GKE Zone Configuration | |
additionalProperties | False |
GKE Zone Configuration¶
http://judkins.house/apis/k2/v1/gkeZoneConfig.json | |||
GKE Zone Configuration | |||
type | object | ||
properties | |||
|
The main zone for the k2 cluster. | ||
type | string | ||
|
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 | ||
|
Friendly name for the chart. | |
type | string | |
|
Namespace of the chart. | |
type | string | |
|
Repository to pull this chart from - referenced by helm application. | |
type | string | |
|
Registry to pull this chart from - referenced by helm application. | |
type | string | |
|
Actual name of chart in the repository - referenced by helm application. | |
type | string | |
|
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 of the helm configuration. | |
type | string | |
|
Kind of kubernetes package manager. | |
type | string | |
|
List of helm repositories we want installed. | |
type | array | |
items | ||
Helm repo configuration | ||
|
List of helm app registries we want installed. | |
type | array | |
items | ||
Helm app registry configuration | ||
|
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 for the app registry - referenced by helm application. | |
type | string | |
|
Username with which to authenticate to the helm app registry. | |
type | string | |
|
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 for the repository - referenced by helm application. | |
type | string | |
|
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 given to the key entry for identification in other k2 configuration areas. | ||
type | string | ||
|
Type configuration node this is | ||
type | string | ||
enum | keyPair | ||
|
Location of the public key on the host running K2. | ||
type | string | ||
|
Location of the private key on the host running K2. | ||
type | string | ||
|
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 | ||
|
List of Basic auth users to be created. | |
type | array | |
items | ||
Kubernetes Authentication Basic User Entry | ||
minItems | 1 | |
|
List of Cert auth users to be created. | |
type | array | |
items | ||
Kubernetes Authentication Cert User Entry | ||
minItems | 1 | |
|
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 | ||
|
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 | ||
|
The username for the account. | |
type | string | |
|
The password for the user account. | |
type | string | |
|
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 | ||
|
The username for the account. | |
type | string | |
|
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 | |
|
Kubernetes Authentication Authz Entry |
|
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 of the Kubernetes configuration. | |
type | string | |
|
Type of kubeconfig | |
type | string | |
enum | kubernetes | |
|
Location of the Kubernetes container. | |
type | string | |
format | uri | |
|
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 | ||
|
This should be the same as the IP set in the deployment.clusters[x].dns in the main configuration file. | |
type | string | |
|
This should be the same as the domain set in deployment.clusters[x].domain in the main configuration file. | |
type | string | |
|
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 | ||
|
The Kubernetes node label’s key. | |
type | string | |
|
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 of the kubeVersioned fabric configuration. | ||||
type | string | ||||
|
The kind of configuration object. | ||||
type | string | ||||
enum | versionedFabric | ||||
|
The type of the fabric being used. | ||||
type | string | ||||
enum | canal, weave | ||||
|
Allows different configurations to be defined depending on the Kubernetes version. | ||||
type | object | ||||
properties | |||||
|
oneOf | Canal Fabric Configuration | |||
Weave Fabric Configuration | |||||
|
Dictionary of configuration objects where the kubernetes version is the key | ||||
type | object | ||||
patternProperties | |||||
|
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 of the load balancer configuration. | |
type | string | |
maxLength | 32 | |
|
Type of load balancer. | |
type | string | |
enum | cloud, flipbit | |
additionalProperties | False |
Node Configuration¶
http://judkins.house/apis/k2/v1/nodeConfig.json | ||
oneOf | AWS Node Configuration | |
GKE Node Configuration |
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 of the nodePool. | |
type | string | |
|
Number of nodes in the nodePool. | |
type | number | |
minimum | 1 | |
|
kvStore Configuration | |
|
type | array |
items | ||
kvStore Configuration | ||
minItems | 1 | |
|
Kubernetes API server configuration | |
|
A Kubernetes configuration | |
|
A Bastion configuration | |
|
Container Configuration | |
|
OS Configuration | |
|
Node Configuration | |
|
Key Pairs Entry for use in K2 | |
|
autoScalingConfig.json | |
|
schedulingConfig.json | |
additionalProperties | False |
OS Configuration¶
http://judkins.house/apis/k2/v1/osConfig.json | ||
anyOf | CoreOS Configuration |
Provider Configuration¶
http://judkins.house/apis/k2/v1/providerConfig.json | ||
oneOf | AWS Provider Configuration | |
GKE Provider Configuration |
Cluster Readiness Configuration¶
http://judkins.house/apis/k2/v1/readiness.json | ||
Options to determine when a cluster is ready. | ||
type | object | |
properties | ||
|
The type of test that should be used to determine if a cluster is ready. | |
type | string | |
|
The value for the test. | |
type | number | |
|
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 for the weave fabric configuration - used for referencing. | |
type | string | |
|
Type of weave fabric configuration | |
type | string | |
enum | fabric | |
|
The type of the fabric being used. | |
type | string | |
enum | weave | |
default | weave | |
|
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 of the container | |
type | string | |
|
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 Fabric Containers |
|
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 CIDR for pods in the fabric | |
type | string | |
format | cidr | |
|
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 | |
|
Weave Fabric Containers |
|
Weave Fabric Network configuration |
additionalProperties | False |