Documentation ¶
Index ¶
Constants ¶
const QuarantineNodeRemoveLabel = "revert"
const QuarantinePodLabelKey = "quarantine"
const QuarantinePodLabelPrefix = "ops.soer3n.info/"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Daemonset ¶
Daemonset represents a configuration for a daemonset whose pod which is on an affected node should be isolated
type Deployment ¶
Deployment represents a configuration for a deployment whose pod which is on an affected node should be isolated
type Node ¶
type Node struct { Name string Debug Debug Isolate bool Daemonsets []Daemonset Deployments []Deployment IOStreams genericclioptions.IOStreams Flags *drain.Helper Logger logr.Logger // contains filtered or unexported fields }
Node represents configuration for isolating a node
type Quarantine ¶
type Quarantine struct { Nodes []*Node MarkedNodes []*Node Debug Debug Client kubernetes.Interface Conditions []metav1.Condition Logger logr.Logger // contains filtered or unexported fields }
Quarantine represents current state of isolation
func New ¶
func New(s *v1alpha1.Quarantine, c kubernetes.Interface, f util.Factory, reqLogger logr.Logger) (*Quarantine, error)
New represents an initialization of a quarantine struct
func (Quarantine) IsActive ¶
func (q Quarantine) IsActive() bool
IsActive represents returning state of a quarantine
func (*Quarantine) Prepare ¶
func (q *Quarantine) Prepare() error
Prepare represents the tasks before a quarantine can be started
func (*Quarantine) Start ¶
func (q *Quarantine) Start() error
Start represents the tasks to start isolating resources on nodes
func (*Quarantine) Stop ¶
func (q *Quarantine) Stop() error
Stop represents the tasks for uncordon nodes, rescheduling resources and deleting debug resources
func (*Quarantine) Update ¶
func (q *Quarantine) Update() error
Update represents the tasks which are not yet executed