mesos

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 3, 2016 License: Apache-2.0, Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultMesosMaster       = "localhost:5050"
	DefaultHttpClientTimeout = time.Duration(10) * time.Second
	DefaultStateCacheTTL     = time.Duration(5) * time.Second
)
View Source
const (
	ProviderName = "mesos"

	// KubernetesExecutorName is shared between contrib/mesos and Mesos cloud provider.
	// Because cloud provider -> contrib dependencies are forbidden, this constant
	// is defined here, not in contrib.
	KubernetesExecutorName = "Kubelet-Executor"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	MesosMaster            string   `gcfg:"mesos-master"`
	MesosHttpClientTimeout Duration `gcfg:"http-client-timeout"`
	StateCacheTTL          Duration `gcfg:"state-cache-ttl"`
}

type ConfigWrapper

type ConfigWrapper struct {
	Mesos_Cloud Config
}

type Duration

type Duration struct {
	Duration time.Duration `gcfg:"duration"`
}

func (*Duration) UnmarshalText

func (d *Duration) UnmarshalText(data []byte) error

type MesosCloud

type MesosCloud struct {
	// contains filtered or unexported fields
}
var (
	CloudProvider *MesosCloud
)

func (*MesosCloud) AddSSHKeyToAllInstances

func (c *MesosCloud) AddSSHKeyToAllInstances(user string, keyData []byte) error

func (*MesosCloud) Clusters

func (c *MesosCloud) Clusters() (cloudprovider.Clusters, bool)

Clusters returns a copy of the Mesos cloud Clusters implementation. Mesos does not provide support for multiple clusters.

func (*MesosCloud) CurrentNodeName

func (c *MesosCloud) CurrentNodeName(hostname string) (string, error)

Implementation of Instances.CurrentNodeName

func (*MesosCloud) ExternalID

func (c *MesosCloud) ExternalID(instance string) (string, error)

ExternalID returns the cloud provider ID of the specified instance (deprecated).

func (*MesosCloud) InstanceID

func (c *MesosCloud) InstanceID(name string) (string, error)

InstanceID returns the cloud provider ID of the specified instance.

func (*MesosCloud) Instances

func (c *MesosCloud) Instances() (cloudprovider.Instances, bool)

Instances returns a copy of the Mesos cloud Instances implementation. Mesos natively provides minimal cloud-type resources. More robust cloud support requires a combination of Mesos and cloud-specific knowledge.

func (*MesosCloud) List

func (c *MesosCloud) List(filter string) ([]string, error)

List lists instances that match 'filter' which is a regular expression which must match the entire instance name (fqdn).

func (*MesosCloud) ListClusters

func (c *MesosCloud) ListClusters() ([]string, error)

ListClusters lists the names of the available Mesos clusters.

func (*MesosCloud) ListWithoutKubelet

func (c *MesosCloud) ListWithoutKubelet() ([]string, error)

ListWithKubelet list those instance which have no running kubelet, i.e. the Kubernetes executor.

func (*MesosCloud) Master

func (c *MesosCloud) Master(clusterName string) (string, error)

Master gets back the address (either DNS name or IP address) of the leading Mesos master node for the cluster.

func (*MesosCloud) MasterURI

func (c *MesosCloud) MasterURI() string

func (*MesosCloud) NodeAddresses

func (c *MesosCloud) NodeAddresses(name string) ([]api.NodeAddress, error)

NodeAddresses returns the addresses of the specified instance.

func (*MesosCloud) ProviderName

func (c *MesosCloud) ProviderName() string

ProviderName returns the cloud provider ID.

func (*MesosCloud) Routes

func (c *MesosCloud) Routes() (cloudprovider.Routes, bool)

Routes always returns nil, false in this implementation.

func (*MesosCloud) ScrubDNS

func (c *MesosCloud) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string)

ScrubDNS filters DNS settings for pods.

func (*MesosCloud) TCPLoadBalancer

func (c *MesosCloud) TCPLoadBalancer() (cloudprovider.TCPLoadBalancer, bool)

TCPLoadBalancer always returns nil, false in this implementation. Mesos does not provide any type of native load balancing by default, so this implementation always returns (nil, false).

func (*MesosCloud) Zones

func (c *MesosCloud) Zones() (cloudprovider.Zones, bool)

Zones always returns nil, false in this implementation. Mesos does not provide any type of native region or zone awareness, so this implementation always returns (nil, false).

Jump to

Keyboard shortcuts

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