Documentation

Index

Constants

View Source
const BootstrapAPIVersion = "bootstrap.kops.k8s.io/v1alpha1"

Variables

This section is empty.

Functions

This section is empty.

Types

type BootstrapRequest

type BootstrapRequest struct {
	// APIVersion defines the versioned schema of this representation of a request.
	APIVersion string `json:"apiVersion"`
	// Certs are the requested certificates and their respective public keys.
	Certs map[string]string `json:"certs"`
}

    BootstrapRequest is a request from nodeup to kops-controller for bootstrapping a node.

    type BootstrapResponse

    type BootstrapResponse struct {
    	// Certs are the issued certificates.
    	Certs map[string]string
    }

      BootstrapResponse is a response to a BootstrapRequest.

      type Config

      type Config struct {
      	// Assets are locations where we can find files to be installed
      	// TODO: Remove once everything is in containers?
      	Assets map[architectures.Architecture][]string `json:",omitempty"`
      	// Images are a list of images we should preload
      	Images map[architectures.Architecture][]*Image `json:"images,omitempty"`
      	// ConfigBase is the base VFS path for config objects
      	ConfigBase *string `json:",omitempty"`
      	// ClusterLocation is the VFS path to the cluster spec (deprecated: prefer ConfigBase)
      	ClusterLocation *string `json:",omitempty"`
      	// InstanceGroupName is the name of the instance group
      	InstanceGroupName string `json:",omitempty"`
      	// InstanceGroupRole is the instance group role.
      	InstanceGroupRole kops.InstanceGroupRole
      	// ClusterName is the name of the cluster
      	ClusterName string `json:",omitempty"`
      	// ProtokubeImage is the docker image to load for protokube (bootstrapping)
      	ProtokubeImage map[architectures.Architecture]*Image `json:"protokubeImage,omitempty"`
      	// Channels is a list of channels that we should apply
      	Channels []string `json:"channels,omitempty"`
      	// ApiserverAdditionalIPs are additional IP address to put in the apiserver server cert.
      	ApiserverAdditionalIPs []string `json:",omitempty"`
      
      	// Manifests for running etcd
      	EtcdManifests []string `json:"etcdManifests,omitempty"`
      
      	// DefaultMachineType is the first-listed instance machine type, used if querying instance metadata fails.
      	DefaultMachineType *string `json:",omitempty"`
      	// StaticManifests describes generic static manifests
      	// Using this allows us to keep complex logic out of nodeup
      	StaticManifests []*StaticManifest `json:"staticManifests,omitempty"`
      	// KubeletConfig defines the kubelet configuration.
      	KubeletConfig kops.KubeletConfigSpec
      	// SysctlParameters will configure kernel parameters using sysctl(8). When
      	// specified, each parameter must follow the form variable=value, the way
      	// it would appear in sysctl.conf.
      	SysctlParameters []string `json:",omitempty"`
      	// VolumeMounts are a collection of volume mounts.
      	VolumeMounts []kops.VolumeMountSpec `json:",omitempty"`
      }

        Config is the configuration for the nodeup binary

        func NewConfig

        func NewConfig(cluster *kops.Cluster, instanceGroup *kops.InstanceGroup) *Config

        type Image

        type Image struct {
        	// This is the name we would pass to "docker run", whereas source could be a URL from which we would download an image.
        	Name string `json:"name,omitempty"`
        	// Sources is a list of URLs from which we should download the image
        	Sources []string `json:"sources,omitempty"`
        	// Hash is the hash of the file, to verify image integrity (even over http)
        	Hash string `json:"hash,omitempty"`
        }

          Image is a docker image we should pre-load

          type StaticManifest

          type StaticManifest struct {
          	// Key identifies the static manifest
          	Key string `json:"key,omitempty"`
          	// Path is the path to the manifest
          	Path string `json:"path,omitempty"`
          }

            StaticManifest is a generic static manifest