app

package
v1.1.0-alpha.1....-f59a443 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 22, 2015 License: Apache-2.0 Imports: 36 Imported by: 0

Documentation

Overview

Package app implements a server that runs a set of active components. This includes replication controllers, service endpoints and nodes.

CAUTION: If you update code in this file, you may need to also update code

in contrib/mesos/pkg/controllermanager/controllermanager.go

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ProbeRecyclableVolumePlugins

func ProbeRecyclableVolumePlugins(flags VolumeConfigFlags) []volume.VolumePlugin

ProbeRecyclableVolumePlugins collects all persistent volume plugins into an easy to use list.

Types

type CMServer

type CMServer struct {
	Port                              int
	Address                           net.IP
	CloudProvider                     string
	CloudConfigFile                   string
	ConcurrentEndpointSyncs           int
	ConcurrentRCSyncs                 int
	ConcurrentDSCSyncs                int
	ConcurrentJobSyncs                int
	ServiceSyncPeriod                 time.Duration
	NodeSyncPeriod                    time.Duration
	ResourceQuotaSyncPeriod           time.Duration
	NamespaceSyncPeriod               time.Duration
	PVClaimBinderSyncPeriod           time.Duration
	VolumeConfigFlags                 VolumeConfigFlags
	HorizontalPodAutoscalerSyncPeriod time.Duration
	DeploymentControllerSyncPeriod    time.Duration
	RegisterRetryCount                int
	NodeMonitorGracePeriod            time.Duration
	NodeStartupGracePeriod            time.Duration
	NodeMonitorPeriod                 time.Duration
	NodeStatusUpdateRetry             int
	PodEvictionTimeout                time.Duration
	DeletingPodsQps                   float32
	DeletingPodsBurst                 int
	ServiceAccountKeyFile             string
	RootCAFile                        string

	ClusterName                   string
	ClusterCIDR                   net.IPNet
	AllocateNodeCIDRs             bool
	EnableProfiling               bool
	EnableHorizontalPodAutoscaler bool
	EnableDeploymentController    bool

	Master     string
	Kubeconfig string
}

CMServer is the main context object for the controller manager.

func NewCMServer

func NewCMServer() *CMServer

NewCMServer creates a new CMServer with a default config.

func (*CMServer) AddFlags

func (s *CMServer) AddFlags(fs *pflag.FlagSet)

AddFlags adds flags for a specific CMServer to the specified FlagSet

func (*CMServer) Run

func (s *CMServer) Run(_ []string) error

Run runs the CMServer. This should never exit.

type VolumeConfigFlags

type VolumeConfigFlags struct {
	PersistentVolumeRecyclerMinimumTimeoutNFS           int
	PersistentVolumeRecyclerPodTemplateFilePathNFS      string
	PersistentVolumeRecyclerIncrementTimeoutNFS         int
	PersistentVolumeRecyclerPodTemplateFilePathHostPath string
	PersistentVolumeRecyclerMinimumTimeoutHostPath      int
	PersistentVolumeRecyclerIncrementTimeoutHostPath    int
}

VolumeConfigFlags is used to bind CLI flags to variables. This top-level struct contains *all* enumerated CLI flags meant to configure all volume plugins. From this config, the binary will create many instances of volume.VolumeConfig which are then passed to the appropriate plugin. The ControllerManager binary is the only part of the code which knows what plugins are supported and which CLI flags correspond to each plugin.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL