Documentation
¶
Index ¶
- Constants
- Variables
- func DeepCopy_policy_Eviction(in interface{}, out interface{}, c *conversion.Cloner) error
- func DeepCopy_policy_PodDisruptionBudget(in interface{}, out interface{}, c *conversion.Cloner) error
- func DeepCopy_policy_PodDisruptionBudgetList(in interface{}, out interface{}, c *conversion.Cloner) error
- func DeepCopy_policy_PodDisruptionBudgetSpec(in interface{}, out interface{}, c *conversion.Cloner) error
- func DeepCopy_policy_PodDisruptionBudgetStatus(in interface{}, out interface{}, c *conversion.Cloner) error
- func Kind(kind string) unversioned.GroupKind
- func RegisterDeepCopies(scheme *runtime.Scheme) error
- func Resource(resource string) unversioned.GroupResource
- type Eviction
- type PodDisruptionBudget
- type PodDisruptionBudgetList
- type PodDisruptionBudgetSpec
- type PodDisruptionBudgetStatus
Constants ¶
const GroupName = "policy"
GroupName is the group name use in this package
Variables ¶
var (
SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
AddToScheme = SchemeBuilder.AddToScheme
)
var SchemeGroupVersion = unversioned.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func DeepCopy_policy_Eviction ¶ added in v1.4.0
func DeepCopy_policy_Eviction(in interface{}, out interface{}, c *conversion.Cloner) error
func DeepCopy_policy_PodDisruptionBudget ¶
func DeepCopy_policy_PodDisruptionBudget(in interface{}, out interface{}, c *conversion.Cloner) error
func DeepCopy_policy_PodDisruptionBudgetList ¶
func DeepCopy_policy_PodDisruptionBudgetList(in interface{}, out interface{}, c *conversion.Cloner) error
func DeepCopy_policy_PodDisruptionBudgetSpec ¶
func DeepCopy_policy_PodDisruptionBudgetSpec(in interface{}, out interface{}, c *conversion.Cloner) error
func DeepCopy_policy_PodDisruptionBudgetStatus ¶
func DeepCopy_policy_PodDisruptionBudgetStatus(in interface{}, out interface{}, c *conversion.Cloner) error
func Kind ¶
func Kind(kind string) unversioned.GroupKind
Kind takes an unqualified kind and returns a Group qualified GroupKind
func RegisterDeepCopies ¶ added in v1.4.0
func RegisterDeepCopies(scheme *runtime.Scheme) error
RegisterDeepCopies adds deep-copy functions to the given scheme. Public to allow building arbitrary schemes.
Types ¶
type Eviction ¶ added in v1.4.0
type Eviction struct {
unversioned.TypeMeta `json:",inline"`
// ObjectMeta describes the pod that is being evicted.
// +optional
api.ObjectMeta `json:"metadata,omitempty"`
// DeleteOptions may be provided
// +optional
DeleteOptions *api.DeleteOptions `json:"deleteOptions,omitempty"`
}
Eviction evicts a pod from its node subject to certain policies and safety constraints. This is a subresource of Pod. A request to cause such an eviction is created by POSTing to .../pods/<pod name>/eviction.
func (*Eviction) CodecDecodeSelf ¶ added in v1.4.0
func (x *Eviction) CodecDecodeSelf(d *codec1978.Decoder)
func (*Eviction) CodecEncodeSelf ¶ added in v1.4.0
func (x *Eviction) CodecEncodeSelf(e *codec1978.Encoder)
type PodDisruptionBudget ¶
type PodDisruptionBudget struct {
unversioned.TypeMeta `json:",inline"`
// +optional
api.ObjectMeta `json:"metadata,omitempty"`
// Specification of the desired behavior of the PodDisruptionBudget.
// +optional
Spec PodDisruptionBudgetSpec `json:"spec,omitempty"`
// Most recently observed status of the PodDisruptionBudget.
// +optional
Status PodDisruptionBudgetStatus `json:"status,omitempty"`
}
PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods
func (*PodDisruptionBudget) CodecDecodeSelf ¶
func (x *PodDisruptionBudget) CodecDecodeSelf(d *codec1978.Decoder)
func (*PodDisruptionBudget) CodecEncodeSelf ¶
func (x *PodDisruptionBudget) CodecEncodeSelf(e *codec1978.Encoder)
type PodDisruptionBudgetList ¶
type PodDisruptionBudgetList struct {
unversioned.TypeMeta `json:",inline"`
// +optional
unversioned.ListMeta `json:"metadata,omitempty"`
Items []PodDisruptionBudget `json:"items"`
}
PodDisruptionBudgetList is a collection of PodDisruptionBudgets.
func (*PodDisruptionBudgetList) CodecDecodeSelf ¶
func (x *PodDisruptionBudgetList) CodecDecodeSelf(d *codec1978.Decoder)
func (*PodDisruptionBudgetList) CodecEncodeSelf ¶
func (x *PodDisruptionBudgetList) CodecEncodeSelf(e *codec1978.Encoder)
type PodDisruptionBudgetSpec ¶
type PodDisruptionBudgetSpec struct {
// An eviction is allowed if at least "minAvailable" pods selected by
// "selector" will still be available after the eviction, i.e. even in the
// absence of the evicted pod. So for example you can prevent all voluntary
// evictions by specifying "100%".
// +optional
MinAvailable intstr.IntOrString `json:"minAvailable,omitempty"`
// Label query over pods whose evictions are managed by the disruption
// budget.
// +optional
Selector *unversioned.LabelSelector `json:"selector,omitempty"`
}
PodDisruptionBudgetSpec is a description of a PodDisruptionBudget.
func (*PodDisruptionBudgetSpec) CodecDecodeSelf ¶
func (x *PodDisruptionBudgetSpec) CodecDecodeSelf(d *codec1978.Decoder)
func (*PodDisruptionBudgetSpec) CodecEncodeSelf ¶
func (x *PodDisruptionBudgetSpec) CodecEncodeSelf(e *codec1978.Encoder)
type PodDisruptionBudgetStatus ¶
type PodDisruptionBudgetStatus struct {
// Most recent generation observed when updating this PDB status. PodDisruptionsAllowed and other
// status informatio is valid only if observedGeneration equals to PDB's object generation.
// +optional
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// DisruptedPods contains information about pods whose eviction was
// processed by the API server eviction subresource handler but has not
// yet been observed by the PodDisruptionBudget controller.
// A pod will be in this map from the time when the API server processed the
// eviction request to the time when the pod is seen by PDB controller
// as having been marked for deletion (or after a timeout). The key in the map is the name of the pod
// and the value is the time when the API server processed the eviction request. If
// the deletion didn't occur and a pod is still there it will be removed from
// the list automatically by PodDisruptionBudget controller after some time.
// If everything goes smooth this map should be empty for the most of the time.
// Large number of entries in the map may indicate problems with pod deletions.
DisruptedPods map[string]unversioned.Time `json:"disruptedPods" protobuf:"bytes,5,rep,name=disruptedPods"`
// Number of pod disruptions that are currently allowed.
PodDisruptionsAllowed int32 `json:"disruptionsAllowed"`
// current number of healthy pods
CurrentHealthy int32 `json:"currentHealthy"`
// minimum desired number of healthy pods
DesiredHealthy int32 `json:"desiredHealthy"`
// total number of pods counted by this disruption budget
ExpectedPods int32 `json:"expectedPods"`
}
PodDisruptionBudgetStatus represents information about the status of a PodDisruptionBudget. Status may trail the actual state of a system.
func (*PodDisruptionBudgetStatus) CodecDecodeSelf ¶
func (x *PodDisruptionBudgetStatus) CodecDecodeSelf(d *codec1978.Decoder)
func (*PodDisruptionBudgetStatus) CodecEncodeSelf ¶
func (x *PodDisruptionBudgetStatus) CodecEncodeSelf(e *codec1978.Encoder)
Source Files
¶
Directories
¶
Path | Synopsis |
---|---|
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery.
|
Package install installs the experimental API group, making it available as an option to all of the API encoding/decoding machinery. |
Package policy is for any kind of policy object.
|
Package policy is for any kind of policy object. |
Package policy is for any kind of policy object.
|
Package policy is for any kind of policy object. |