Documentation ¶
Index ¶
- type CloudProvider
- func (r *CloudProvider) AddSSHKeyToAllInstances(user string, keyData []byte) error
- func (r *CloudProvider) Clusters() (cloudprovider.Clusters, bool)
- func (r *CloudProvider) CurrentNodeName(hostname string) (types.NodeName, error)
- func (r *CloudProvider) EnsureLoadBalancer(clusterName string, service *api.Service, nodes []*api.Node) (*api.LoadBalancerStatus, error)
- func (r *CloudProvider) EnsureLoadBalancerDeleted(clusterName string, service *api.Service) error
- func (r *CloudProvider) ExternalID(nodeName types.NodeName) (string, error)
- func (r *CloudProvider) GetLoadBalancer(clusterName string, service *api.Service) (status *api.LoadBalancerStatus, exists bool, retErr error)
- func (r *CloudProvider) GetSetting(key string) (string, bool)
- func (r *CloudProvider) GetZone() (cloudprovider.Zone, error)
- func (r *CloudProvider) Initialize(clientBuilder controller.ControllerClientBuilder)
- func (r *CloudProvider) InstanceID(nodeName types.NodeName) (string, error)
- func (r *CloudProvider) InstanceType(nodeName types.NodeName) (string, error)
- func (r *CloudProvider) InstanceTypeByProviderID(providerID string) (string, error)
- func (r *CloudProvider) Instances() (cloudprovider.Instances, bool)
- func (r *CloudProvider) List(filter string) ([]types.NodeName, error)
- func (r *CloudProvider) LoadBalancer() (cloudprovider.LoadBalancer, bool)
- func (r *CloudProvider) NodeAddresses(nodeName types.NodeName) ([]api.NodeAddress, error)
- func (r *CloudProvider) NodeAddressesByProviderID(providerID string) ([]api.NodeAddress, error)
- func (r *CloudProvider) ProviderName() string
- func (r *CloudProvider) Routes() (cloudprovider.Routes, bool)
- func (r *CloudProvider) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string)
- func (r *CloudProvider) UpdateLoadBalancer(clusterName string, service *api.Service, nodes []*api.Node) error
- func (r *CloudProvider) Zones() (cloudprovider.Zones, bool)
- type Host
- type PublicEndpoint
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CloudProvider ¶
type CloudProvider struct {
// contains filtered or unexported fields
}
CloudProvider implents Instances, Zones, and LoadBalancer
func (*CloudProvider) AddSSHKeyToAllInstances ¶
func (r *CloudProvider) AddSSHKeyToAllInstances(user string, keyData []byte) error
AddSSHKeyToAllInstances adds an SSH public key as a legal identity for all instances expected format for the key is standard ssh-keygen format: <protocol> <blob>
func (*CloudProvider) Clusters ¶
func (r *CloudProvider) Clusters() (cloudprovider.Clusters, bool)
Clusters not supported
func (*CloudProvider) CurrentNodeName ¶
func (r *CloudProvider) CurrentNodeName(hostname string) (types.NodeName, error)
CurrentNodeName returns the name of the node we are currently running on
func (*CloudProvider) EnsureLoadBalancer ¶
func (r *CloudProvider) EnsureLoadBalancer(clusterName string, service *api.Service, nodes []*api.Node) (*api.LoadBalancerStatus, error)
EnsureLoadBalancer is an implementation of LoadBalancer.EnsureLoadBalancer.
func (*CloudProvider) EnsureLoadBalancerDeleted ¶
func (r *CloudProvider) EnsureLoadBalancerDeleted(clusterName string, service *api.Service) error
EnsureLoadBalancerDeleted is an implementation of LoadBalancer.EnsureLoadBalancerDeleted.
func (*CloudProvider) ExternalID ¶
func (r *CloudProvider) ExternalID(nodeName types.NodeName) (string, error)
ExternalID returns the cloud provider ID of the specified instance (deprecated).
func (*CloudProvider) GetLoadBalancer ¶
func (r *CloudProvider) GetLoadBalancer(clusterName string, service *api.Service) (status *api.LoadBalancerStatus, exists bool, retErr error)
GetLoadBalancer is an implementation of LoadBalancer.GetLoadBalancer
func (*CloudProvider) GetSetting ¶
func (r *CloudProvider) GetSetting(key string) (string, bool)
func (*CloudProvider) GetZone ¶
func (r *CloudProvider) GetZone() (cloudprovider.Zone, error)
GetZone is an implementation of Zones.GetZone
func (*CloudProvider) Initialize ¶
func (r *CloudProvider) Initialize(clientBuilder controller.ControllerClientBuilder)
Initialize passes a Kubernetes clientBuilder interface to the cloud provider
func (*CloudProvider) InstanceID ¶
func (r *CloudProvider) InstanceID(nodeName types.NodeName) (string, error)
InstanceID returns the cloud provider ID of the specified instance.
func (*CloudProvider) InstanceType ¶
func (r *CloudProvider) InstanceType(nodeName types.NodeName) (string, error)
InstanceType returns the type of the specified instance. Note that if the instance does not exist or is no longer running, we must return ("", cloudprovider.InstanceNotFound)
func (*CloudProvider) InstanceTypeByProviderID ¶
func (r *CloudProvider) 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 (*CloudProvider) Instances ¶
func (r *CloudProvider) Instances() (cloudprovider.Instances, bool)
Instances returns an implementation of Instances for Rancher
func (*CloudProvider) List ¶
func (r *CloudProvider) 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 (*CloudProvider) LoadBalancer ¶
func (r *CloudProvider) LoadBalancer() (cloudprovider.LoadBalancer, bool)
LoadBalancer returns an implementation of LoadBalancer for Rancher
func (*CloudProvider) NodeAddresses ¶
func (r *CloudProvider) NodeAddresses(nodeName types.NodeName) ([]api.NodeAddress, error)
NodeAddresses returns the addresses of the specified instance. This implementation only returns the address of the calling instance. This is ok because the gce implementation makes that assumption and the comment for the interface states it as a todo to clarify that it is only for the current host
func (*CloudProvider) NodeAddressesByProviderID ¶
func (r *CloudProvider) NodeAddressesByProviderID(providerID string) ([]api.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 (*CloudProvider) ProviderName ¶
func (r *CloudProvider) ProviderName() string
ProviderName returns the cloud provider ID.
func (*CloudProvider) Routes ¶
func (r *CloudProvider) Routes() (cloudprovider.Routes, bool)
Routes not supported
func (*CloudProvider) ScrubDNS ¶
func (r *CloudProvider) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string)
ScrubDNS filters DNS settings for pods.
func (*CloudProvider) UpdateLoadBalancer ¶
func (r *CloudProvider) UpdateLoadBalancer(clusterName string, service *api.Service, nodes []*api.Node) error
UpdateLoadBalancer is an implementation of LoadBalancer.UpdateLoadBalancer.
func (*CloudProvider) Zones ¶
func (r *CloudProvider) Zones() (cloudprovider.Zones, bool)
Zones returns an implementation of Zones for Rancher