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) Initialize(clientBuilder controller.ControllerClientBuilder)
- func (c *MesosCloud) InstanceID(nodeName types.NodeName) (string, error)
- func (c *MesosCloud) InstanceType(nodeName types.NodeName) (string, error)
- func (c *MesosCloud) InstanceTypeByProviderID(providerID string) (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) ([]v1.NodeAddress, error)
- func (c *MesosCloud) NodeAddressesByProviderID(providerID string) ([]v1.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) Initialize ¶
func (c *MesosCloud) Initialize(clientBuilder controller.ControllerClientBuilder)
Initialize passes a Kubernetes clientBuilder interface to the cloud provider
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) InstanceTypeByProviderID ¶
func (c *MesosCloud) InstanceTypeByProviderID(providerID string) (string, error)
InstanceTypeByProviderID returns the cloudprovider instance type of the node with the specified unique providerID This method will not be called from the node that is requesting this ID. i.e. metadata service and other local methods cannot be used here
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) ([]v1.NodeAddress, error)
NodeAddresses returns the addresses of the instance with the specified nodeName.
func (*MesosCloud) NodeAddressesByProviderID ¶
func (c *MesosCloud) NodeAddressesByProviderID(providerID string) ([]v1.NodeAddress, error)
NodeAddressesByProviderID returns the node addresses of an instances with the specified unique providerID This method will not be called from the node that is requesting this ID. i.e. metadata service and other local methods cannot be used here
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).