kops



Cluster v1alpha2 kops


apiVersion: kops/v1alpha2
kind: Cluster
metadata:
  name: cluster-example
spec:
Group Version Kind
kops v1alpha2 Cluster
Field Description
apiVersion
string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
kind
string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
metadata
ObjectMeta
spec
ClusterSpec

ClusterSpec v1alpha2 kops

Field Description
additionalPolicies
object
Additional policies to add for roles
api
AccessSpec
API field controls how the API is exposed outside the cluster
authentication
AuthenticationSpec
Authentication field controls how the cluster is configured for authentication
authorization
AuthorizationSpec
Authorization field controls how the cluster is configured for authorization
channel
string
The Channel we are following
cloudConfig
CloudConfiguration
cloudLabels
object
Tags for AWS resources
cloudProvider
string
The CloudProvider to use (aws or gce)
clusterDNSDomain
string
ClusterDNSDomain is the suffix we use for internal DNS names (normally cluster.local)
configBase
string
ConfigBase is the path where we store configuration for the cluster This might be different that the location when the cluster spec itself is stored, both because this must be accessible to the cluster, and because it might be on a different cloud or storage system (etcd vs S3)
configStore
string
ConfigStore is the VFS path to where the configuration (Cluster, InstanceGroups etc) is stored
dnsZone
string
DNSZone is the DNS zone we should use when configuring DNS This is because some clouds let us define a managed zone foo.bar, and then have kubernetes.dev.foo.bar, without needing to define dev.foo.bar as a hosted zone. DNSZone will probably be a suffix of the MasterPublicName and MasterInternalName Note that DNSZone can either by the host name of the zone (containing dots), or can be an identifier for the zone.
docker
DockerConfig
Component configurations
etcdClusters
EtcdClusterSpec array
EtcdClusters stores the configuration for each cluster
hooks
HookSpec array
Hooks for custom actions e.g. on first installation
isolateMasters
boolean
IsolatesMasters determines whether we should lock down masters so that they are not on the pod network. true is the kube-up behaviour, but it is very surprising: it means that daemonsets only work on the master if they have hostNetwork=true. false is now the default, and it will: give the master a normal PodCIDR run kube-proxy on the master * enable debugging handlers on the master, so kubectl logs works
keyStore
string
KeyStore is the VFS path to where SSL keys and certificates are stored
kubeAPIServer
KubeAPIServerConfig
kubeControllerManager
KubeControllerManagerConfig
kubeDNS
KubeDNSConfig
kubeProxy
KubeProxyConfig
kubeScheduler
KubeSchedulerConfig
kubelet
KubeletConfigSpec
kubernetesApiAccess
string array
KubernetesAPIAccess determines the permitted access to the API endpoints (master HTTPS) Currently only a single CIDR is supported (though a richer grammar could be added in future)
kubernetesVersion
string
The version of kubernetes to install (optional, and can be a "spec" like stable)
masterInternalName
string
MasterInternalName is the internal DNS name for the master nodes
masterKubelet
KubeletConfigSpec
masterPublicName
string
MasterPublicName is the external DNS name for the master nodes
networkCIDR
string
The CIDR used for the AWS VPC / GCE Network, or otherwise allocated to k8s This is a real CIDR, not the internal k8s network
networkID
string
NetworkID is an identifier of a network, if we want to reuse/share an existing network (e.g. an AWS VPC)
networking
NetworkingSpec
Networking configuration
nonMasqueradeCIDR
string
NonMasqueradeCIDR is the CIDR for the internal k8s network (on which pods & services live) It cannot overlap ServiceClusterIPRange
project
string
Project is the cloud project we should use, required on GCE
secretStore
string
SecretStore is the VFS path to where secrets are stored
serviceClusterIPRange
string
ServiceClusterIPRange is the CIDR, from the internal network, where we allocate IPs for services
sshAccess
string array
SSHAccess determines the permitted access to SSH Currently only a single CIDR is supported (though a richer grammar could be added in future)
subnets
ClusterSubnetSpec array
Configuration of subnets we are targeting
topology
TopologySpec
Topology defines the type of network topology to use on the cluster - default public This is heavily weighted towards AWS for the time being, but should also be agnostic enough to port out to GCE later if needed
updatePolicy
string
UpdatePolicy determines the policy for applying upgrades automatically. Valid values: 'external' do not apply updates automatically - they are applied manually or by an external system missing: default policy (currently OS security upgrades that do not require a reboot)

ClusterList v1alpha2 kops

Field Description
apiVersion
string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
items
Cluster array
kind
string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
metadata
ListMeta

InstanceGroup v1alpha2 kops


apiVersion: kops/v1alpha2
kind: InstanceGroup
metadata:
  name: instancegroup-example
spec:
Group Version Kind
kops v1alpha2 InstanceGroup

InstanceGroup represents a group of instances (either nodes or masters) with the same configuration

Field Description
apiVersion
string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
kind
string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
metadata
ObjectMeta
spec
InstanceGroupSpec

InstanceGroupSpec v1alpha2 kops

Field Description
additionalSecurityGroups
string array
AdditionalSecurityGroups attaches additional security groups (e.g. i-123456)
associatePublicIp
boolean
AssociatePublicIP is true if we want instances to have a public IP
cloudLabels
object
CloudLabels indicates the labels for instances in this group, at the AWS level
image
string
kubelet
KubeletConfigSpec
Kubelet overrides kubelet config from the ClusterSpec
machineType
string
NodeInstancePrefix string json:",omitempty" NodeLabels string json:",omitempty"
maxPrice
string
MaxPrice indicates this is a spot-pricing group, with the specified value as our max-price bid
maxSize
integer
minSize
integer
nodeLabels
object
NodeLabels indicates the kubernetes labels for nodes in this group
role
string
Type determines the role of instances in this group: masters or nodes
rootVolumeOptimization
boolean
RootVolumeOptimization enables EBS optimization for an instance
rootVolumeSize
integer
RootVolumeSize is the size of the EBS root volume to use, in GB
rootVolumeType
string
RootVolumeType is the type of the EBS root volume to use (e.g. gp2)
subnets
string array
Subnets is the names of the Subnets (as specified in the Cluster) where machines in this instance group should be placed
taints
string array
Taints indicates the kubernetes taints for nodes in this group
tenancy
string
Describes the tenancy of the instance group. Can be either default or dedicated. Currently only applies to AWS.

InstanceGroupList v1alpha2 kops

Field Description
apiVersion
string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
items
InstanceGroup array
kind
string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
metadata
ListMeta

Definitions


APIGroup v1 meta

Group Version Kind
meta v1 APIGroup

APIGroup contains the name, the supported versions, and the preferred version of a group.

Field Description
apiVersion
string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
kind
string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
name
string
name is the name of the group.
preferredVersion
GroupVersionForDiscovery
preferredVersion is the version preferred by the API server, which probably is the storage version.
serverAddressByClientCIDRs
ServerAddressByClientCIDR array
a map of client CIDR to server address that is serving this group. This is to help clients reach servers in the most network-efficient way possible. Clients can use the appropriate server address as per the CIDR that they match. In case of multiple matches, clients should use the longest matching CIDR. The server returns only those CIDRs that it thinks that the client can match. For example: the master will return an internal IP CIDR only, if the client reaches the server using an internal IP. Server looks at X-Forwarded-For header or X-Real-Ip header or request.RemoteAddr (in that order) to get the client IP.
versions
GroupVersionForDiscovery array
versions are the versions supported in this group.

APIResource v1 meta

Group Version Kind
meta v1 APIResource

APIResource specifies the name of a resource and whether it is namespaced.

Field Description
categories
string array
categories is a list of the grouped resources this resource belongs to (e.g. 'all')
kind
string
kind is the kind for the resource (e.g. 'Foo' is the kind for a resource 'foo')
name
string
name is the plural name of the resource.
namespaced
boolean
namespaced indicates if a resource is namespaced or not.
shortNames
string array
shortNames is a list of suggested short names of the resource.
singularName
string
singularName is the singular name of the resource. This allows clients to handle plural and singular opaquely. The singularName is more correct for reporting status on a single item and both singular and plural are allowed from the kubectl CLI interface.
verbs
string array
verbs is a list of supported kube verbs (this includes get, list, watch, create, update, patch, delete, deletecollection, and proxy)

AccessSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 AccessSpec
Field Description
dns
DNSAccessSpec
loadBalancer
LoadBalancerAccessSpec

AlwaysAllowAuthorizationSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 AlwaysAllowAuthorizationSpec
Field Description

AuthenticationSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 AuthenticationSpec
Field Description
kopeio
KopeioAuthenticationSpec

AuthorizationSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 AuthorizationSpec
Field Description
alwaysAllow
AlwaysAllowAuthorizationSpec
rbac
RBACAuthorizationSpec

BastionSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 BastionSpec
Field Description
bastionPublicName
string
idleTimeoutSeconds
integer
IdleTimeoutSeconds is the bastion's Loadbalancer idle timeout

CNINetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 CNINetworkingSpec

CNI is the specification for networking that is implemented by a Daemonset Networking is not managed by kops - we can create options here that directly configure e.g. weave but this is useful for arbitrary network modes or for modes that don't need additional configuration.

Field Description

CalicoNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 CalicoNetworkingSpec

Calico declares that we want Calico networking

Field Description
crossSubnet
boolean

CanalNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 CanalNetworkingSpec

Canal declares that we want Canal networking

Field Description

ClassicNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 ClassicNetworkingSpec

ClassicNetworkingSpec is the specification of classic networking mode, integrated into kubernetes

Field Description

CloudConfiguration v1alpha2 kops

Group Version Kind
kops v1alpha2 CloudConfiguration
Field Description
disableSecurityGroupIngress
boolean
AWS cloud-config options
elbSecurityGroup
string
multizone
boolean
GCE cloud-config options
nodeInstancePrefix
string
nodeTags
string
vSphereCoreDNSServer
string
vSphereDatacenter
string
vSphereDatastore
string
vSpherePassword
string
vSphereResourcePool
string
vSphereServer
string
vSphereUsername
string
vSphere cloud-config specs

ClusterSubnetSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 ClusterSubnetSpec
Field Description
cidr
string
egress
string
id
string
ProviderID is the cloud provider id for the objects associated with the zone (the subnet on AWS)
name
string
type
string
zone
string

DNSAccessSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 DNSAccessSpec
Field Description

DNSSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 DNSSpec
Field Description
type
string

DeleteOptions v1 meta

Group Version Kind
meta v1 DeleteOptions

DeleteOptions may be provided when deleting an API object.

Field Description
apiVersion
string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
gracePeriodSeconds
integer
The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.
kind
string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
orphanDependents
boolean
Deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the "orphan" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both.
preconditions
Preconditions
Must be fulfilled before a deletion is carried out. If not possible, a 409 Conflict status will be returned.
propagationPolicy
string
Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy.

DockerConfig v1alpha2 kops

Group Version Kind
kops v1alpha2 DockerConfig
Field Description
bridge
string
bridgeIP
string
The bridge cidr (--bip) flag
insecureRegistry
string
ipMasq
boolean
ipTables
boolean
logDriver
string
logLevel
string
logOpt
string array
mtu
integer
registryMirrors
string array
Set mirrors for dockerd, benefiting cluster provisioning and image pulling
storage
string
Storage maps to the docker storage flag But nodeup will also process a comma-separate list, selecting the first supported option
version
string
The version of docker to install Be careful if changing this; not all docker versions are validated, and they will break in bad ways.

Duration v1 meta

Group Version Kind
meta v1 Duration

Duration is a wrapper around time.Duration which supports correct marshaling to YAML and JSON. In particular, it marshals into strings, which can be used as map keys in json.

Field Description
Duration
integer

EtcdClusterSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 EtcdClusterSpec
Field Description
etcdMembers
EtcdMemberSpec array
EtcdMember stores the configurations for each member of the cluster (including the data volume)
name
string
Name is the name of the etcd cluster (main, events etc)

EtcdMemberSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 EtcdMemberSpec
Field Description
encryptedVolume
boolean
instanceGroup
string
kmsKeyId
string
name
string
Name is the name of the member within the etcd cluster
volumeSize
integer
volumeType
string

ExecContainerAction v1alpha2 kops

Group Version Kind
kops v1alpha2 ExecContainerAction
Field Description
command
string array
image
string
Docker image name.

ExternalNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 ExternalNetworkingSpec

ExternalNetworkingSpec is the specification for networking that is implemented by a Daemonset It also uses kubenet

Field Description

FlannelNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 FlannelNetworkingSpec

Flannel declares that we want Flannel networking

Field Description

GroupVersionForDiscovery v1 meta

Group Version Kind
meta v1 GroupVersionForDiscovery

GroupVersion contains the "group/version" and "version" string of a version. It is made a struct to keep extensibility.

Field Description
groupVersion
string
groupVersion specifies the API group and version in the form "group/version"
version
string
version specifies the version in the form of "version". This is to save the clients the trouble of splitting the GroupVersion.

HookSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 HookSpec
Field Description
execContainer
ExecContainerAction

Initializer v1 meta

Group Version Kind
meta v1 Initializer

Initializer is information about an initializer that has not yet completed.

Field Description
name
string
name of the process that is responsible for initializing this object.

Initializers v1 meta

Group Version Kind
meta v1 Initializers

Initializers tracks the progress of initialization.

Field Description
pending
Initializer array
Pending is a list of initializers that must execute in order before this object is visible. When the last pending initializer is removed, and no failing result is set, the initializers struct will be set to nil and the object is considered as initialized and visible to all clients.
result
Status
If result is set with the Failure field, the object will be persisted to storage and then deleted, ensuring that other clients can observe the deletion.

KopeioAuthenticationSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 KopeioAuthenticationSpec
Field Description

KopeioNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 KopeioNetworkingSpec

Kopeio declares that we want Kopeio networking

Field Description

KubeAPIServerConfig v1alpha2 kops

Group Version Kind
kops v1alpha2 KubeAPIServerConfig
Field Description
address
string
admissionControl
string array
allowPrivileged
boolean
anonymousAuth
boolean
apiServerCount
integer
auditLogMaxAge
integer
The maximum number of days to retain old audit log files based on the timestamp encoded in their filename.
auditLogMaxBackups
integer
The maximum number of old audit log files to retain.
auditLogMaxSize
integer
The maximum size in megabytes of the audit log file before it gets rotated. Defaults to 100MB.
auditLogPath
string
If set, all requests coming to the apiserver will be logged to this file.
authenticationTokenWebhookCacheTtl
Duration
The duration to cache responses from the webhook token authenticator. Default is 2m. (default 2m0s)
authenticationTokenWebhookConfigFile
string
File with webhook configuration for token authentication in kubeconfig format. The API server will query the remote service to determine authentication for bearer tokens.
authorizationMode
string
authorizationRbacSuperUser
string
basicAuthFile
string
clientCAFile
string
cloudProvider
string
etcdServers
string array
etcdServersOverrides
string array
image
string
insecurePort
integer
kubeletClientCertificate
string
kubeletClientKey
string
kubeletPreferredAddressTypes
string array
logLevel
integer
oidcCAFile
string
If set, the OpenID server's certificate will be verified by one of the authorities in the oidc-ca-file otherwise the host's root CA set will be used.
oidcClientID
string
The client ID for the OpenID Connect client, must be set if oidc-issuer-url is set.
oidcGroupsClaim
string
If provided, the name of a custom OpenID Connect claim for specifying user groups. The claim value is expected to be a string or array of strings.
oidcIssuerURL
string
The URL of the OpenID issuer, only HTTPS scheme will be accepted. If set, it will be used to verify the OIDC JSON Web Token (JWT).
oidcUsernameClaim
string
The OpenID claim to use as the user name. Note that claims other than the default ('sub') is not guaranteed to be unique and immutable.
pathSrvKubernetes
string
pathSrvSshproxy
string
runtimeConfig
object
keys and values in RuntimeConfig are parsed into the --runtime-config parameter for KubeAPIServer, concatenated with commas. ex: --runtime-config=key1=value1,key2=value2. Use this to enable alpha resources on kube-apiserver
securePort
integer
serviceClusterIPRange
string
storageBackend
string
tlsCertFile
string
tlsPrivateKeyFile
string
tokenAuthFile
string

KubeControllerManagerConfig v1alpha2 kops

Group Version Kind
kops v1alpha2 KubeControllerManagerConfig
Field Description
allocateNodeCIDRs
boolean
allocateNodeCIDRs enables CIDRs for Pods to be allocated and, if ConfigureCloudRoutes is true, to be set on the cloud provider.
attachDetachReconcileSyncPeriod
Duration
ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop wait between successive executions. Is set to 1 min by kops by default
cloudProvider
string
cloudProvider is the provider for cloud services.
clusterCIDR
string
clusterCIDR is CIDR Range for Pods in cluster.
clusterName
string
clusterName is the instance prefix for the cluster.
configureCloudRoutes
boolean
configureCloudRoutes enables CIDRs allocated with allocateNodeCIDRs to be configured on the cloud provider.
image
string
leaderElection
LeaderElectionConfiguration
leaderElection defines the configuration of leader election client.
logLevel
integer
master
string
pathSrvKubernetes
string
rootCAFile
string
rootCAFile is the root certificate authority will be included in service account's token secret. This must be a valid PEM-encoded CA bundle.
serviceAccountPrivateKeyFile
string
terminatedPodGCThreshold
integer
terminatedPodGCThreshold is the number of terminated pods that can exist before the terminated pod garbage collector starts deleting terminated pods. If <= 0, the terminated pod garbage collector is disabled.
useServiceAccountCredentials
boolean
UseServiceAccountCredentials controls whether we use individual service account credentials for each controller.

KubeDNSConfig v1alpha2 kops

Group Version Kind
kops v1alpha2 KubeDNSConfig
Field Description
domain
string
image
string
Image is the name of the docker image to run
replicas
integer
serverIP
string

KubeProxyConfig v1alpha2 kops

Group Version Kind
kops v1alpha2 KubeProxyConfig
Field Description
clusterCIDR
string
clusterCIDR is the CIDR range of the pods in the cluster. It is used to bridge traffic coming from outside of the cluster. If not provided, no off-cluster bridging will be performed.
cpuRequest
string
hostnameOverride
string
hostnameOverride, if non-empty, will be used as the identity instead of the actual hostname. Note: We recognize some additional values: @aws uses the hostname from the AWS metadata service
image
string
logLevel
integer
master
string
master is the address of the Kubernetes API server (overrides any value in kubeconfig)

KubeSchedulerConfig v1alpha2 kops

Group Version Kind
kops v1alpha2 KubeSchedulerConfig
Field Description
image
string
leaderElection
LeaderElectionConfiguration
leaderElection defines the configuration of leader election client.
logLevel
integer
master
string

KubeletConfigSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 KubeletConfigSpec
Field Description
allowPrivileged
boolean
allowPrivileged enables containers to request privileged mode. Defaults to false.
anonymousAuth
boolean
AnonymousAuth chooses if you want anonymous auth on the kubelet api
apiServers
string
not used for clusters version 1.6 and later
babysitDaemons
boolean
The node has babysitter process monitoring docker and kubelet. Removed as of 1.7
cgroupRoot
string
cgroupRoot is the root cgroup to use for pods. This is handled by the container runtime on a best effort basis.
clientCaFile
string
The client CA which the requestes for the above must be signed by
cloudProvider
string
cloudProvider is the provider for cloud services.
clusterDNS
string
clusterDNS is the IP address for a cluster DNS server. If set, kubelet will configure all containers to use this for DNS resolution in addition to the host's DNS servers
clusterDomain
string
clusterDomain is the DNS domain for this cluster. If set, kubelet will configure all containers to search this domain in addition to the host's search domains.
configureCbr0
boolean
configureCBR0 enables the kublet to configure cbr0 based on Node.Spec.PodCIDR.
enableCustomMetrics
boolean
enable gathering custom metrics.
enableDebuggingHandlers
boolean
enableDebuggingHandlers enables server endpoints for log collection and local running of containers and commands
enforceNodeAllocatable
string
Enforce Allocatable across pods whenever the overall usage across all pods exceeds Allocatable.
evictionHard
string
Comma-delimited list of hard eviction expressions. For example, 'memory.available<300Mi'.
evictionMaxPodGracePeriod
integer
Maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met.
evictionMinimumReclaim
string
Comma-delimited list of minimum reclaims (e.g. imagefs.available=2Gi) that describes the minimum amount of resource the kubelet will reclaim when performing a pod eviction if that resource is under pressure.
evictionPressureTransitionPeriod
Duration
Duration for which the kubelet has to wait before transitioning out of an eviction pressure condition.
evictionSoft
string
Comma-delimited list of soft eviction expressions. For example, 'memory.available<300Mi'.
evictionSoftGracePeriod
string
Comma-delimited list of grace periods for each soft eviction signal. For example, 'memory.available=30s'.
featureGates
object
FeatureGates is set of key=value pairs that describe feature gates for alpha/experimental features.
hairpinMode
string
How should the kubelet configure the container bridge for hairpin packets. Setting this flag allows endpoints in a Service to loadbalance back to themselves if they should try to access their own Service. Values: "promiscuous-bridge": make the container bridge promiscuous. "hairpin-veth": set the hairpin flag on container veth interfaces. "none": do nothing. Setting --configure-cbr0 to false implies that to achieve hairpin NAT one must set --hairpin-mode=veth-flag, because bridge assumes the existence of a container bridge named cbr0.
hostnameOverride
string
hostnameOverride is the hostname used to identify the kubelet instead of the actual hostname. Note: We recognize some additional values: @aws uses the hostname from the AWS metadata service
imageGCHighThresholdPercent
integer
imageGCHighThresholdPercent is the percent of disk usage after which image garbage collection is always run.
imageGCLowThresholdPercent
integer
imageGCLowThresholdPercent is the percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to.
kubeReserved
object
Resource reservation for kubernetes system daemons like the kubelet, container runtime, node problem detector, etc.
kubeReservedCgroup
string
Control group for kube daemons.
kubeconfigPath
string
kubeconfigPath is the path to the kubeconfig file with authorization information and API server location kops will only use this for clusters version 1.6 and later
kubeletCgroups
string
KubeletCgroups is the absolute name of cgroups to isolate the kubelet in.
logLevel
integer
maxPods
integer
maxPods is the number of pods that can run on this Kubelet.
networkPluginMTU
integer
networkPluginMTU is the MTU to be passed to the network plugin, and overrides the default MTU for cases where it cannot be automatically computed (such as IPSEC).
networkPluginName
string
networkPluginName is the name of the network plugin to be invoked for various events in kubelet/pod lifecycle
nodeLabels
object
nodeLabels to add when registering the node in the cluster.
nonMasqueradeCIDR
string
nonMasqueradeCIDR configures masquerading: traffic to IPs outside this range will use IP masquerade.
nvidiaGPUs
integer
nvidiaGPUs is the number of NVIDIA GPU devices on this node.
podCIDR
string
The CIDR to use for pod IP addresses, only used in standalone mode. In cluster mode, this is obtained from the master.
podManifestPath
string
reconcileCIDR
boolean
reconcileCIDR is Reconcile node CIDR with the CIDR specified by the API server. No-op if register-node or configure-cbr0 is false.
registerSchedulable
boolean
registerSchedulable tells the kubelet to register the node as schedulable. No-op if register-node is false.
requireKubeconfig
boolean
resolvConf
string
ResolverConfig is the resolver configuration file used as the basis for the container DNS resolution configuration."), []
runtimeCgroups
string
Cgroups that container runtime is expected to be isolated in.
systemCgroups
string
SystemCgroups is absolute name of cgroups in which to place all non-kernel processes that are not already in a container. Empty for no container. Rolling back the flag requires a reboot.
systemReserved
object
Capture resource reservation for OS system daemons like sshd, udev, etc.
systemReservedCgroup
string
Parent control group for OS system daemons.
taints
string array
Taints to add when registering a node in the cluster
volumePluginDirectory
string
The full path of the directory in which to search for additional third party volume plugins

KubenetNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 KubenetNetworkingSpec

KubenetNetworkingSpec is the specification for kubenet networking, largely integrated but intended to replace classic

Field Description

KuberouterNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 KuberouterNetworkingSpec

Kuberouter declares that we want Canal networking

Field Description

LeaderElectionConfiguration v1alpha2 kops

Group Version Kind
kops v1alpha2 LeaderElectionConfiguration

LeaderElectionConfiguration defines the configuration of leader election clients for components that can run with leader election enabled.

Field Description
leaderElect
boolean
leaderElect enables a leader election client to gain leadership before executing the main loop. Enable this when running replicated components for high availability.

ListMeta v1 meta

Group Version Kind
meta v1 ListMeta

ListMeta describes metadata that synthetic resources must have, including lists and various status objects. A resource may have only one of {ObjectMeta, ListMeta}.

Field Description
resourceVersion
string
String that identifies the server's internal version of this object that can be used by clients to determine when objects have changed. Value must be treated as opaque by clients and passed unmodified back to the server. Populated by the system. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
selfLink
string
SelfLink is a URL representing this object. Populated by the system. Read-only.

LoadBalancerAccessSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 LoadBalancerAccessSpec
Field Description
idleTimeoutSeconds
integer
type
string

NetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 NetworkingSpec

NetworkingSpec allows selection and configuration of a networking plugin

Field Description
calico
CalicoNetworkingSpec
canal
CanalNetworkingSpec
classic
ClassicNetworkingSpec
cni
CNINetworkingSpec
external
ExternalNetworkingSpec
flannel
FlannelNetworkingSpec
kopeio
KopeioNetworkingSpec
kubenet
KubenetNetworkingSpec
kuberouter
KuberouterNetworkingSpec
weave
WeaveNetworkingSpec

ObjectMeta v1 meta

Group Version Kind
meta v1 ObjectMeta

ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create.

Field Description
annotations
object
Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations
clusterName
string
The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.
creationTimestamp
Time
CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC. Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
deletionGracePeriodSeconds
integer
Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only.
deletionTimestamp
Time
DeletionTimestamp is RFC 3339 date and time at which this resource will be deleted. This field is set by the server when a graceful deletion is requested by the user, and is not directly settable by a client. The resource is expected to be deleted (no longer visible from resource lists, and not reachable by name) after the time in this field. Once set, this value may not be unset or be set further into the future, although it may be shortened or the resource may be deleted prior to this time. For example, a user may request that a pod is deleted in 30 seconds. The Kubelet will react by sending a graceful termination signal to the containers in the pod. After that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL) to the container and after cleanup, remove the pod from the API. In the presence of network partitions, this object may still exist after this timestamp, until an administrator or automated process can determine the resource is fully terminated. If not set, graceful deletion of the object has not been requested. Populated by the system when a graceful deletion is requested. Read-only. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
finalizers
string array
patch type: merge
Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed.
generateName
string
GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server. If this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header). Applied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
generation
integer
A sequence number representing a specific generation of the desired state. Populated by the system. Read-only.
initializers
Initializers
An initializer is a controller which enforces some system invariant at object creation time. This field is a list of initializers that have not yet acted on this object. If nil or empty, this object has been completely initialized. Otherwise, the object is considered uninitialized and is hidden (in list/watch and get calls) from clients that haven't explicitly asked to observe uninitialized objects. When an object is created, the system will populate this list with the current set of initializers. Only privileged users may set or modify this list. Once it is empty, it may not be modified further by any user.
labels
object
Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: http://kubernetes.io/docs/user-guide/labels
name
string
Name must be unique within a namespace. Is required when creating resources, although some resources may allow a client to request the generation of an appropriate name automatically. Name is primarily intended for creation idempotence and configuration definition. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/identifiers#names
namespace
string
Namespace defines the space within each name must be unique. An empty namespace is equivalent to the "default" namespace, but "default" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty. Must be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces
ownerReferences
OwnerReference array
patch type: merge
patch merge key: uid
List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.
resourceVersion
string
An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources. Populated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
selfLink
string
SelfLink is a URL representing this object. Populated by the system. Read-only.
uid
string
UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations. Populated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids

OwnerReference v1 meta

Group Version Kind
meta v1 OwnerReference

OwnerReference contains enough information to let you identify an owning object. Currently, an owning object must be in the same namespace, so there is no namespace field.

Field Description
apiVersion
string
API version of the referent.
blockOwnerDeletion
boolean
If true, AND if the owner has the "foregroundDeletion" finalizer, then the owner cannot be deleted from the key-value store until this reference is removed. Defaults to false. To set this field, a user needs "delete" permission of the owner, otherwise 422 (Unprocessable Entity) will be returned.
controller
boolean
If true, this reference points to the managing controller.
kind
string
Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
name
string
Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names
uid
string
UID of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#uids

Patch v1 meta

Group Version Kind
meta v1 Patch

Patch is provided to give a concrete name and type to the Kubernetes PATCH request body.

Field Description

Preconditions v1 meta

Group Version Kind
meta v1 Preconditions

Preconditions must be fulfilled before an operation (update, delete, etc.) is carried out.

Field Description
uid
string
Specifies the target UID.

RBACAuthorizationSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 RBACAuthorizationSpec
Field Description

ServerAddressByClientCIDR v1 meta

Group Version Kind
meta v1 ServerAddressByClientCIDR

ServerAddressByClientCIDR helps the client to determine the server address that they should use, depending on the clientCIDR that they match.

Field Description
clientCIDR
string
The CIDR with which clients can match their IP to figure out the server address that they should use.
serverAddress
string
Address of this server, suitable for a client that matches the above CIDR. This can be a hostname, hostname:port, IP or IP:port.

Status v1 meta

Group Version Kind
meta v1 Status

Status is a return value for calls that don't return other objects.

Field Description
apiVersion
string
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources
code
integer
Suggested HTTP return code for this status, 0 if not set.
details
StatusDetails
Extended data associated with the reason. Each reason may define its own extended details. This field is optional and the data returned is not guaranteed to conform to any schema except that defined by the reason type.
kind
string
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
message
string
A human-readable description of the status of this operation.
metadata
ListMeta
Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
reason
string
A machine-readable description of why this operation is in the "Failure" status. If this value is empty there is no information available. A Reason clarifies an HTTP status code but does not override it.
status
string
Status of the operation. One of: "Success" or "Failure". More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status

StatusCause v1 meta

Group Version Kind
meta v1 StatusCause

StatusCause provides more information about an api.Status failure, including cases when multiple errors are encountered.

Field Description
field
string
The field of the resource that has caused this error, as named by its JSON serialization. May include dot and postfix notation for nested attributes. Arrays are zero-indexed. Fields may appear more than once in an array of causes due to fields having multiple errors. Optional. Examples: "name" - the field "name" on the current resource "items[0].name" - the field "name" on the first array entry in "items"
message
string
A human-readable description of the cause of the error. This field may be presented as-is to a reader.
reason
string
A machine-readable description of the cause of the error. If this value is empty there is no information available.

StatusDetails v1 meta

Group Version Kind
meta v1 StatusDetails

StatusDetails is a set of additional properties that MAY be set by the server to provide additional information about a response. The Reason field of a Status object defines what attributes will be set. Clients must ignore fields that do not match the defined type of each attribute, and should assume that any attribute may be empty, invalid, or under defined.

Field Description
causes
StatusCause array
The Causes array includes more details associated with the StatusReason failure. Not all StatusReasons may provide detailed causes.
group
string
The group attribute of the resource associated with the status StatusReason.
kind
string
The kind attribute of the resource associated with the status StatusReason. On some operations may differ from the requested resource Kind. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
name
string
The name attribute of the resource associated with the status StatusReason (when there is a single name which can be described).
retryAfterSeconds
integer
If specified, the time in seconds before the operation should be retried.
uid
string
UID of the resource. (when there is a single resource which can be described). More info: http://kubernetes.io/docs/user-guide/identifiers#uids

Time v1 meta

Group Version Kind
meta v1 Time
Field Description

TopologySpec v1alpha2 kops

Group Version Kind
kops v1alpha2 TopologySpec
Field Description
bastion
BastionSpec
Bastion provide an external facing point of entry into a network containing private network instances. This host can provide a single point of fortification or audit and can be started and stopped to enable or disable inbound SSH communication from the Internet, some call bastion as the "jump server".
dns
DNSSpec
DNS configures options relating to DNS, in particular whether we use a public or a private hosted zone
masters
string
The environment to launch the Kubernetes masters in public private
nodes
string
The environment to launch the Kubernetes nodes in public private

WatchEvent v1 meta

Group Version Kind
meta v1 WatchEvent

Event represents a single event to a watched resource.

Field Description
object Object is: If Type is Added or Modified: the new state of the object. If Type is Deleted: the state of the object immediately before deletion. If Type is Error: Status is recommended; other types may make sense depending on context.
type
string

WeaveNetworkingSpec v1alpha2 kops

Group Version Kind
kops v1alpha2 WeaveNetworkingSpec

Weave declares that we want Weave networking

Field Description
mtu
integer

Old Versions