Show / Hide Table of Contents

Class V1EndpointSlice

EndpointSlice represents a set of service endpoints. Most EndpointSlices are created by the EndpointSlice controller to represent the Pods selected by Service objects. For a given service there may be multiple EndpointSlice objects which must be joined to produce the full set of endpoints; you can find all of the slices for a given service by listing EndpointSlices in the service's namespace whose kubernetes.io/service-name label contains the service's name.

Inheritance
object
V1EndpointSlice
Implements
IKubernetesObject<V1ObjectMeta>
IKubernetesObject
IMetadata<V1ObjectMeta>
IEquatable<V1EndpointSlice>
Inherited Members
object.GetType()
object.MemberwiseClone()
object.Equals(object, object)
object.ReferenceEquals(object, object)
Namespace: k8s.Models
Assembly: KubernetesClient.dll
Syntax
[KubernetesEntity(Group = "discovery.k8s.io", Kind = "EndpointSlice", ApiVersion = "v1", PluralName = "endpointslices")]
public record V1EndpointSlice : IKubernetesObject<V1ObjectMeta>, IKubernetesObject, IMetadata<V1ObjectMeta>, IEquatable<V1EndpointSlice>

Constructors

V1EndpointSlice()

Declaration
public V1EndpointSlice()

V1EndpointSlice(V1EndpointSlice)

Declaration
protected V1EndpointSlice(V1EndpointSlice original)
Parameters
Type Name Description
V1EndpointSlice original

Fields

KubeApiVersion

Declaration
public const string KubeApiVersion = "v1"
Field Value
Type Description
string

KubeGroup

Declaration
public const string KubeGroup = "discovery.k8s.io"
Field Value
Type Description
string

KubeKind

Declaration
public const string KubeKind = "EndpointSlice"
Field Value
Type Description
string

KubePluralName

Declaration
public const string KubePluralName = "endpointslices"
Field Value
Type Description
string

Properties

AddressType

addressType specifies the type of address carried by this EndpointSlice. All addresses in this slice must be the same type. This field is immutable after creation. The following address types are currently supported: * IPv4: Represents an IPv4 Address. * IPv6: Represents an IPv6 Address. * FQDN: Represents a Fully Qualified Domain Name. (Deprecated) The EndpointSlice controller only generates, and kube-proxy only processes, slices of addressType "IPv4" and "IPv6". No semantics are defined for the "FQDN" type.

Declaration
[JsonPropertyName("addressType")]
public string AddressType { get; set; }
Property Value
Type Description
string

ApiVersion

APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

Declaration
[JsonPropertyName("apiVersion")]
public string ApiVersion { get; set; }
Property Value
Type Description
string

Endpoints

endpoints is a list of unique endpoints in this slice. Each slice may include a maximum of 1000 endpoints.

Declaration
[JsonPropertyName("endpoints")]
public IList<V1Endpoint> Endpoints { get; set; }
Property Value
Type Description
IList<V1Endpoint>

EqualityContract

Declaration
protected virtual Type EqualityContract { get; }
Property Value
Type Description
Type

Kind

Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

Declaration
[JsonPropertyName("kind")]
public string Kind { get; set; }
Property Value
Type Description
string

Metadata

Standard object's metadata.

Declaration
[JsonPropertyName("metadata")]
public V1ObjectMeta Metadata { get; set; }
Property Value
Type Description
V1ObjectMeta

Ports

ports specifies the list of network ports exposed by each endpoint in this slice. Each port must have a unique name. Each slice may include a maximum of 100 ports. Services always have at least 1 port, so EndpointSlices generated by the EndpointSlice controller will likewise always have at least 1 port. EndpointSlices used for other purposes may have an empty ports list.

Declaration
[JsonPropertyName("ports")]
public IList<Discoveryv1EndpointPort> Ports { get; set; }
Property Value
Type Description
IList<Discoveryv1EndpointPort>

Methods

Equals(object?)

Declaration
public override bool Equals(object? obj)
Parameters
Type Name Description
object obj
Returns
Type Description
bool
Overrides
object.Equals(object)

Equals(V1EndpointSlice?)

Declaration
public virtual bool Equals(V1EndpointSlice? other)
Parameters
Type Name Description
V1EndpointSlice other
Returns
Type Description
bool

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
int
Overrides
object.GetHashCode()

PrintMembers(StringBuilder)

Declaration
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
Type Name Description
StringBuilder builder
Returns
Type Description
bool

ToString()

Declaration
public override string ToString()
Returns
Type Description
string
Overrides
object.ToString()

Operators

operator ==(V1EndpointSlice?, V1EndpointSlice?)

Declaration
public static bool operator ==(V1EndpointSlice? left, V1EndpointSlice? right)
Parameters
Type Name Description
V1EndpointSlice left
V1EndpointSlice right
Returns
Type Description
bool

operator !=(V1EndpointSlice?, V1EndpointSlice?)

Declaration
public static bool operator !=(V1EndpointSlice? left, V1EndpointSlice? right)
Parameters
Type Name Description
V1EndpointSlice left
V1EndpointSlice right
Returns
Type Description
bool

Implements

IKubernetesObject<TMetadata>
IKubernetesObject
IMetadata<T>
IEquatable<T>

Extension Methods

ModelExtensions.ApiGroup(IKubernetesObject)
ModelExtensions.ApiGroupAndVersion(IKubernetesObject)
ModelExtensions.ApiGroupVersion(IKubernetesObject)
ModelExtensions.GetApiGroupAndVersion(IKubernetesObject, out string, out string)
ModelExtensions.AddFinalizer(IMetadata<V1ObjectMeta>, string)
ModelExtensions.AddOwnerReference(IMetadata<V1ObjectMeta>, V1OwnerReference)
ModelExtensions.Annotations(IMetadata<V1ObjectMeta>)
ModelExtensions.CreationTimestamp(IMetadata<V1ObjectMeta>)
ModelExtensions.DeletionTimestamp(IMetadata<V1ObjectMeta>)
ModelExtensions.EnsureMetadata(IMetadata<V1ObjectMeta>)
ModelExtensions.Finalizers(IMetadata<V1ObjectMeta>)
ModelExtensions.FindOwnerReference(IMetadata<V1ObjectMeta>, Predicate<V1OwnerReference>)
ModelExtensions.FindOwnerReference(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.Generation(IMetadata<V1ObjectMeta>)
ModelExtensions.GetAnnotation(IMetadata<V1ObjectMeta>, string)
ModelExtensions.GetController(IMetadata<V1ObjectMeta>)
ModelExtensions.GetLabel(IMetadata<V1ObjectMeta>, string)
ModelExtensions.GetOwnerReference(IMetadata<V1ObjectMeta>, Predicate<V1OwnerReference>)
ModelExtensions.GetOwnerReference(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.HasFinalizer(IMetadata<V1ObjectMeta>, string)
ModelExtensions.IsOwnedBy(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.Labels(IMetadata<V1ObjectMeta>)
ModelExtensions.Name(IMetadata<V1ObjectMeta>)
ModelExtensions.Namespace(IMetadata<V1ObjectMeta>)
ModelExtensions.OwnerReferences(IMetadata<V1ObjectMeta>)
ModelExtensions.RemoveFinalizer(IMetadata<V1ObjectMeta>, string)
ModelExtensions.RemoveOwnerReference(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.RemoveOwnerReferences(IMetadata<V1ObjectMeta>, Predicate<V1OwnerReference>)
ModelExtensions.RemoveOwnerReferences(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.ResourceVersion(IMetadata<V1ObjectMeta>)
ModelExtensions.SetAnnotation(IMetadata<V1ObjectMeta>, string, string)
ModelExtensions.SetLabel(IMetadata<V1ObjectMeta>, string, string)
ModelExtensions.Uid(IMetadata<V1ObjectMeta>)
Extensions.GetKubernetesTypeMetadata<T>(T)
Extensions.Initialize<T>(T)
In this article
Back to top Generated by DocFX