scheduler

package
v0.0.0-...-b13ab0d Latest Latest
Warning

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

Go to latest
Published: Aug 24, 2020 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	IngressError = errors.New("Error with Ingress-")
)

Functions

func GenerateName

func GenerateName(name string, planID int64, collectionID int64, projectID int64, engineNo int) string

Types

type AllNodesInfo

type AllNodesInfo map[string]*NodesInfo

type K8sClientManager

type K8sClientManager struct {
	*config.ExecutorConfig
	// contains filtered or unexported fields
}

func NewK8sClientManager

func NewK8sClientManager() *K8sClientManager

func (*K8sClientManager) CreateIngress

func (kcm *K8sClientManager) CreateIngress(ingressClass, ingressName, serviceName string, collectionID, projectID int64) error

func (*K8sClientManager) CreateRoleBinding

func (kcm *K8sClientManager) CreateRoleBinding() error

func (*K8sClientManager) CreateService

func (kcm *K8sClientManager) CreateService(serviceName string, engine appsv1.Deployment) error

func (*K8sClientManager) DeployEngine

func (kcm *K8sClientManager) DeployEngine(engineName, serviceName, ingressClass, ingressName string,
	planID, collectionID, projectID int64, containerConfig *config.ExecutorContainer) error

func (*K8sClientManager) DeployIngressController

func (kcm *K8sClientManager) DeployIngressController(igName string, collectionID, projectID int64) (string, error)

func (*K8sClientManager) DownloadPodLog

func (kcm *K8sClientManager) DownloadPodLog(collectionID, planID int64) (string, error)

func (*K8sClientManager) FetchLogFromPod

func (kcm *K8sClientManager) FetchLogFromPod(pod apiv1.Pod) (string, error)

func (*K8sClientManager) GetAllNodesInfo

func (kcm *K8sClientManager) GetAllNodesInfo() (AllNodesInfo, error)

func (*K8sClientManager) GetDeployedCollections

func (kcm *K8sClientManager) GetDeployedCollections() (map[int64]time.Time, error)

func (*K8sClientManager) GetIngressUrl

func (kcm *K8sClientManager) GetIngressUrl(igName string) (string, error)

func (*K8sClientManager) GetNodesByCollection

func (kcm *K8sClientManager) GetNodesByCollection(collectionID string) ([]apiv1.Node, error)

func (*K8sClientManager) GetPods

func (kcm *K8sClientManager) GetPods(labelSelector, fieldSelector string) ([]apiv1.Pod, error)

func (*K8sClientManager) GetPodsByCollection

func (kcm *K8sClientManager) GetPodsByCollection(collectionID int64, fieldSelector string) []apiv1.Pod

func (*K8sClientManager) GetPodsByCollectionPlan

func (kcm *K8sClientManager) GetPodsByCollectionPlan(collectionID, planID int64) ([]apiv1.Pod, error)

func (*K8sClientManager) GetPodsMetrics

func (kcm *K8sClientManager) GetPodsMetrics(collectionID, planID int64) (map[string]apiv1.ResourceList, error)

func (*K8sClientManager) PodReady

func (kcm *K8sClientManager) PodReady(label string) int

func (*K8sClientManager) PurgeCollection

func (kcm *K8sClientManager) PurgeCollection(collectionID int64) error

func (*K8sClientManager) ServiceReachable

func (kcm *K8sClientManager) ServiceReachable(ingressClass, serviceName string) bool

type NodesInfo

type NodesInfo struct {
	Size       int       `json:"size"`
	LaunchTime time.Time `json:"launch_time"`
}

Jump to

Keyboard shortcuts

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