kubemark

package
v0.0.0-...-a6372ab Latest Latest
Warning

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

Go to latest
Published: Aug 23, 2017 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ProviderName is the cloud provider name for kubemark
	ProviderName = "kubemark"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type KubemarkCloudProvider

type KubemarkCloudProvider struct {
	// contains filtered or unexported fields
}

KubemarkCloudProvider implements CloudProvider interface for kubemark

func BuildKubemarkCloudProvider

func BuildKubemarkCloudProvider(kubemarkController *kubemark.KubemarkController, specs []string) (*KubemarkCloudProvider, error)

BuildKubemarkCloudProvider builds a CloudProvider for kubemark. Builds node groups from passed in specs.

func (*KubemarkCloudProvider) GetAvilableMachineTypes

func (kubemark *KubemarkCloudProvider) GetAvilableMachineTypes() ([]string, error)

GetAvilableMachineTypes get all machine types that can be requested from the cloud provider. Implementation optional.

func (*KubemarkCloudProvider) Name

func (kubemark *KubemarkCloudProvider) Name() string

Name returns name of the cloud provider.

func (*KubemarkCloudProvider) NewNodeGroup

func (kubemark *KubemarkCloudProvider) NewNodeGroup(name string, machineType string, labels map[string]string, extraResources map[string]resource.Quantity) (cloudprovider.NodeGroup, error)

NewNodeGroup builds a theoretical node group based on the node definition provided.

func (*KubemarkCloudProvider) NodeGroupForNode

func (kubemark *KubemarkCloudProvider) NodeGroupForNode(node *apiv1.Node) (cloudprovider.NodeGroup, error)

NodeGroupForNode returns the node group for the given node.

func (*KubemarkCloudProvider) NodeGroups

func (kubemark *KubemarkCloudProvider) NodeGroups() []cloudprovider.NodeGroup

NodeGroups returns all node groups configured for this cloud provider.

func (*KubemarkCloudProvider) Pricing

Pricing returns pricing model for this cloud provider or error if not available.

type NodeGroup

type NodeGroup struct {
	Name string
	// contains filtered or unexported fields
}

NodeGroup implements NodeGroup interfrace.

func (*NodeGroup) Create

func (nodeGroup *NodeGroup) Create() error

Create creates the node group on the cloud provider side.

func (*NodeGroup) Debug

func (nodeGroup *NodeGroup) Debug() string

Debug returns a debug string for the nodegroup.

func (*NodeGroup) DecreaseTargetSize

func (nodeGroup *NodeGroup) DecreaseTargetSize(delta int) error

DecreaseTargetSize decreases the target size of the node group. This function doesn't permit to delete any existing node and can be used only to reduce the request for new nodes that have not been yet fulfilled. Delta should be negative.

func (*NodeGroup) Delete

func (nodeGroup *NodeGroup) Delete() error

Delete deletes the node group on the cloud provider side.

func (*NodeGroup) DeleteNodes

func (nodeGroup *NodeGroup) DeleteNodes(nodes []*apiv1.Node) error

DeleteNodes deletes the specified nodes from the node group.

func (*NodeGroup) Exist

func (nodeGroup *NodeGroup) Exist() (bool, error)

Exist checks if the node group really exists on the cloud provider side.

func (*NodeGroup) Id

func (nodeGroup *NodeGroup) Id() string

Id returns nodegroup name.

func (*NodeGroup) IncreaseSize

func (nodeGroup *NodeGroup) IncreaseSize(delta int) error

IncreaseSize increases NodeGroup size.

func (*NodeGroup) MaxSize

func (nodeGroup *NodeGroup) MaxSize() int

MaxSize returns maximum size of the node group.

func (*NodeGroup) MinSize

func (nodeGroup *NodeGroup) MinSize() int

MinSize returns minimum size of the node group.

func (*NodeGroup) Nodes

func (nodeGroup *NodeGroup) Nodes() ([]string, error)

Nodes returns a list of all nodes that belong to this node group.

func (*NodeGroup) TargetSize

func (nodeGroup *NodeGroup) TargetSize() (int, error)

TargetSize returns the current TARGET size of the node group. It is possible that the number is different from the number of nodes registered in Kuberentes.

func (*NodeGroup) TemplateNodeInfo

func (nodeGroup *NodeGroup) TemplateNodeInfo() (*schedulercache.NodeInfo, error)

TemplateNodeInfo returns a node template for this node group.

Jump to

Keyboard shortcuts

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