node

package
v0.0.2-pre Latest Latest
Warning

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

Go to latest
Published: Jul 23, 2022 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MaintainStatusAnnotationKey = "harvesterhci.io/maintain-status"
	MaintainStatusComplete      = "completed"
	MaintainStatusRunning       = "running"
)
View Source
const (
	KubeNodeRoleLabelPrefix      = "node-role.kubernetes.io/"
	KubeMasterNodeLabelKey       = KubeNodeRoleLabelPrefix + "master"
	KubeControlPlaneNodeLabelKey = KubeNodeRoleLabelPrefix + "control-plane"

	HarvesterLabelAnnotationPrefix      = "harvesterhci.io/"
	HarvesterManagedNodeLabelKey        = HarvesterLabelAnnotationPrefix + "managed"
	HarvesterPromoteNodeLabelKey        = HarvesterLabelAnnotationPrefix + "promote-node"
	HarvesterPromoteStatusAnnotationKey = HarvesterLabelAnnotationPrefix + "promote-status"

	PromoteStatusComplete = "complete"
	PromoteStatusRunning  = "running"
	PromoteStatusUnknown  = "unknown"
	PromoteStatusFailed   = "failed"
)

Variables

View Source
var (
	ConditionJobComplete = condition.Cond(batchv1.JobComplete)
	ConditionJobFailed   = condition.Cond(batchv1.JobFailed)
)

Functions

func MaintainRegister

func MaintainRegister(ctx context.Context, management *config.Management, options config.Options) error

MaintainRegister registers the node controller

func NodeDownRegister

func NodeDownRegister(ctx context.Context, management *config.Management, options config.Options) error

NodeDownRegister registers a controller to delete VMI when node is down

func PromoteRegister

func PromoteRegister(ctx context.Context, management *config.Management, options config.Options) error

PromoteRegister registers the node controller

Types

type PromoteHandler

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

PromoteHandler

func (*PromoteHandler) OnJobChanged

func (h *PromoteHandler) OnJobChanged(key string, job *batchv1.Job) (*batchv1.Job, error)

OnJobChanged If the node corresponding to the promote job has been removed, delete the job. If the promote job executes successfully, the node's promote status will be marked as complete and schedulable If the promote job fails, the node's promote status will be marked as failed.

func (*PromoteHandler) OnJobRemove

func (h *PromoteHandler) OnJobRemove(key string, job *batchv1.Job) (*batchv1.Job, error)

OnJobRemove If the running promote job is deleted, the node's promote status will be marked as unknown

func (*PromoteHandler) OnNodeChanged

func (h *PromoteHandler) OnNodeChanged(key string, node *corev1.Node) (*corev1.Node, error)

OnNodeChanged automate the upgrade of node roles If the number of managements in the cluster is less than spec number, the harvester oldest node will be automatically promoted to be management.

Jump to

Keyboard shortcuts

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