Documentation ¶
Index ¶
- Constants
- type Config
- type ConfigWrapper
- type Duration
- type MesosCloud
- func (c *MesosCloud) AddSSHKeyToAllInstances(user string, keyData []byte) error
- func (c *MesosCloud) Clusters() (cloudprovider.Clusters, bool)
- func (c *MesosCloud) CurrentNodeName(hostname string) (types.NodeName, error)
- func (c *MesosCloud) ExternalID(nodeName types.NodeName) (string, error)
- func (c *MesosCloud) InstanceID(nodeName types.NodeName) (string, error)
- func (c *MesosCloud) InstanceType(nodeName types.NodeName) (string, error)
- func (c *MesosCloud) Instances() (cloudprovider.Instances, bool)
- func (c *MesosCloud) List(filter string) ([]types.NodeName, error)
- func (c *MesosCloud) ListClusters() ([]string, error)
- func (c *MesosCloud) ListWithoutKubelet() ([]string, error)
- func (c *MesosCloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
- func (c *MesosCloud) Master(clusterName string) (string, error)
- func (c *MesosCloud) MasterURI() string
- func (c *MesosCloud) NodeAddresses(nodeName types.NodeName) ([]api.NodeAddress, error)
- func (c *MesosCloud) ProviderName() string
- func (c *MesosCloud) Routes() (cloudprovider.Routes, bool)
- func (c *MesosCloud) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string)
- func (c *MesosCloud) Zones() (cloudprovider.Zones, bool)
Constants ¶
const ( DefaultMesosMaster = "localhost:5050" DefaultHttpClientTimeout = time.Duration(10) * time.Second DefaultStateCacheTTL = time.Duration(5) * time.Second )
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 ConfigWrapper ¶
type ConfigWrapper struct {
Mesos_Cloud Config
}
type Duration ¶
func (*Duration) UnmarshalText ¶
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) (types.NodeName, error)
Implementation of Instances.CurrentNodeName
func (*MesosCloud) ExternalID ¶
func (c *MesosCloud) ExternalID(nodeName types.NodeName) (string, error)
ExternalID returns the cloud provider ID of the instance with the specified nodeName (deprecated).
func (*MesosCloud) InstanceID ¶
func (c *MesosCloud) InstanceID(nodeName types.NodeName) (string, error)
InstanceID returns the cloud provider ID of the instance with the specified nodeName.
func (*MesosCloud) InstanceType ¶
func (c *MesosCloud) InstanceType(nodeName types.NodeName) (string, error)
InstanceType returns the type of the instance with the specified nodeName.
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) ([]types.NodeName, 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) LoadBalancer ¶
func (c *MesosCloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
LoadBalancer 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) 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(nodeName types.NodeName) ([]api.NodeAddress, error)
NodeAddresses returns the addresses of the instance with the specified nodeName.
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) 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).