kubernetes: k8s.io/kubernetes/pkg/registry/core/pod/storage Index | Files

package storage

import "k8s.io/kubernetes/pkg/registry/core/pod/storage"

Index

Package Files

eviction.go storage.go

Constants

const (
    // MaxDisruptedPodSize is the max size of PodDisruptionBudgetStatus.DisruptedPods. API server eviction
    // subresource handler will refuse to evict pods covered by the corresponding PDB
    // if the size of the map exceeds this value. It means a large number of
    // evictions have been approved by the API server but not noticed by the PDB controller yet.
    // This situation should self-correct because the PDB controller removes
    // entries from the map automatically after the PDB DeletionTimeout regardless.
    MaxDisruptedPodSize = 2000
)

Variables

var EvictionsRetry = wait.Backoff{
    Steps:    20,
    Duration: 500 * time.Millisecond,
    Factor:   1.0,
    Jitter:   0.1,
}

EvictionsRetry is the retry for a conflict where multiple clients are making changes to the same resource.

type BindingREST Uses

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

BindingREST implements the REST endpoint for binding pods to nodes when etcd is in use.

func (*BindingREST) Create Uses

func (r *BindingREST) Create(ctx context.Context, obj runtime.Object, createValidation rest.ValidateObjectFunc, options *metav1.CreateOptions) (out runtime.Object, err error)

Create ensures a pod is bound to a specific host.

func (*BindingREST) NamespaceScoped Uses

func (r *BindingREST) NamespaceScoped() bool

NamespaceScoped fulfill rest.Scoper

func (*BindingREST) New Uses

func (r *BindingREST) New() runtime.Object

New creates a new binding resource

type EvictionREST Uses

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

EvictionREST implements the REST endpoint for evicting pods from nodes

func (*EvictionREST) Create Uses

func (r *EvictionREST) Create(ctx context.Context, obj runtime.Object, createValidation rest.ValidateObjectFunc, options *metav1.CreateOptions) (runtime.Object, error)

Create attempts to create a new eviction. That is, it tries to evict a pod.

func (*EvictionREST) GroupVersionKind Uses

func (r *EvictionREST) GroupVersionKind(containingGV schema.GroupVersion) schema.GroupVersionKind

GroupVersionKind specifies a particular GroupVersionKind to discovery

func (*EvictionREST) New Uses

func (r *EvictionREST) New() runtime.Object

New creates a new eviction resource

type PodStorage Uses

type PodStorage struct {
    Pod         *REST
    Binding     *BindingREST
    Eviction    *EvictionREST
    Status      *StatusREST
    Log         *podrest.LogREST
    Proxy       *podrest.ProxyREST
    Exec        *podrest.ExecREST
    Attach      *podrest.AttachREST
    PortForward *podrest.PortForwardREST
}

PodStorage includes storage for pods and all sub resources

func NewStorage Uses

func NewStorage(optsGetter generic.RESTOptionsGetter, k client.ConnectionInfoGetter, proxyTransport http.RoundTripper, podDisruptionBudgetClient policyclient.PodDisruptionBudgetsGetter) PodStorage

NewStorage returns a RESTStorage object that will work against pods.

type REST Uses

type REST struct {
    *genericregistry.Store
    // contains filtered or unexported fields
}

REST implements a RESTStorage for pods

func (*REST) Categories Uses

func (r *REST) Categories() []string

Categories implements the CategoriesProvider interface. Returns a list of categories a resource is part of.

func (*REST) ResourceLocation Uses

func (r *REST) ResourceLocation(ctx context.Context, name string) (*url.URL, http.RoundTripper, error)

ResourceLocation returns a pods location from its HostIP

func (*REST) ShortNames Uses

func (r *REST) ShortNames() []string

ShortNames implements the ShortNamesProvider interface. Returns a list of short names for a resource.

type StatusREST Uses

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

StatusREST implements the REST endpoint for changing the status of a pod.

func (*StatusREST) Get Uses

func (r *StatusREST) Get(ctx context.Context, name string, options *metav1.GetOptions) (runtime.Object, error)

Get retrieves the object from the storage. It is required to support Patch.

func (*StatusREST) New Uses

func (r *StatusREST) New() runtime.Object

New creates a new pod resource

func (*StatusREST) Update Uses

func (r *StatusREST) Update(ctx context.Context, name string, objInfo rest.UpdatedObjectInfo, createValidation rest.ValidateObjectFunc, updateValidation rest.ValidateObjectUpdateFunc, forceAllowCreate bool, options *metav1.UpdateOptions) (runtime.Object, bool, error)

Update alters the status subset of an object.

Package storage imports 31 packages (graph) and is imported by 7 packages. Updated 2019-07-18. Refresh now. Tools for package owners.