Packages
kubelb.k8c.io/v1alpha1
Package v1alpha1 contains API Schema definitions for the kubelb.k8c.io v1alpha1 API group
Resource Types
Config
Config is the object that represents the Config for the KubeLB management controller.
Appears in:
Field | Description |
---|
apiVersion string | kubelb.k8c.io/v1alpha1 |
kind string | Config |
metadata ObjectMeta | Refer to Kubernetes API documentation for fields of metadata . |
spec ConfigSpec | |
Back to top
ConfigList
ConfigList contains a list of Config
Field | Description |
---|
apiVersion string | kubelb.k8c.io/v1alpha1 |
kind string | ConfigList |
metadata ListMeta | Refer to Kubernetes API documentation for fields of metadata . |
items Config array | |
Back to top
ConfigSpec
ConfigSpec defines the desired state of the Config
Appears in:
Field | Description |
---|
envoyProxy EnvoyProxy | EnvoyProxy defines the desired state of the Envoy Proxy |
propagatedAnnotations object (keys:string, values:string) | PropagatedAnnotations defines the list of annotations(key-value pairs) that will be propagated to the LoadBalancer service. Keep the value empty to allow any value. Annotations specified at the namespace level will have a higher precedence than the annotations specified at the Config level. |
propagateAllAnnotations boolean | PropagateAllAnnotations defines whether all annotations will be propagated to the LoadBalancer service. If set to true, PropagatedAnnotations will be ignored. |
Back to top
EndpointAddress
EndpointAddress is a tuple that describes single IP address.
Appears in:
Field | Description |
---|
ip string | The IP of this endpoint. May not be loopback (127.0.0.0/8), link-local (169.254.0.0/16), or link-local multicast ((224.0.0.0/24). |
hostname string | The Hostname of this endpoint |
Back to top
EndpointPort
EndpointPort is a tuple that describes a single port.
Appears in:
Field | Description |
---|
name string | The name of this port. This must match the ’name’ field in the corresponding ServicePort. Must be a DNS_LABEL. Optional only if one port is defined. |
port integer | The port number of the endpoint. |
protocol Protocol | The IP protocol for this port. Must be TCP. Default is TCP. |
Back to top
EnvoyProxy
EnvoyProxy defines the desired state of the EnvoyProxy
Appears in:
Field | Description |
---|
topology EnvoyProxyTopology | Topology defines the deployment topology for Envoy Proxy. Valid values are: shared, dedicated, and global. |
useDaemonset boolean | UseDaemonset defines whether Envoy Proxy will run as daemonset. By default, Envoy Proxy will run as deployment. If set to true, Replicas will be ignored. |
replicas integer | Replicas defines the number of replicas for Envoy Proxy. This field is ignored if UseDaemonset is set to true. |
singlePodPerNode boolean | SinglePodPerNode defines whether Envoy Proxy pods will be spread across nodes. This ensures that multiple replicas are not running on the same node. |
nodeSelector object (keys:string, values:string) | NodeSelector is used to select nodes to run Envoy Proxy. If specified, the node must have all the indicated labels. |
tolerations Toleration array | Tolerations is used to schedule Envoy Proxy pods on nodes with matching taints. |
resources ResourceRequirements | Resources defines the resource requirements for Envoy Proxy. |
affinity Affinity | Affinity is used to schedule Envoy Proxy pods on nodes with matching affinity. |
Back to top
LoadBalancer
LoadBalancer is the Schema for the loadbalancers API
Appears in:
Back to top
LoadBalancerEndpoints
LoadBalancerEndpoints is a group of addresses with a common set of ports. The expanded set of endpoints is the Cartesian product of Addresses x Ports. For example, given:
{ Addresses: [{“ip”: “10.10.1.1”}, {“ip”: “10.10.2.2”}], Ports: [{“name”: “a”, “port”: 8675}, {“name”: “b”, “port”: 309}] }
The resulting set of endpoints can be viewed as:
a: [ 10.10.1.1:8675, 10.10.2.2:8675 ], b: [ 10.10.1.1:309, 10.10.2.2:309 ]
Appears in:
Field | Description |
---|
addresses EndpointAddress array | IP addresses which offer the related ports that are marked as ready. These endpoints should be considered safe for load balancers and clients to utilize. |
ports EndpointPort array | Port numbers available on the related IP addresses. |
Back to top
LoadBalancerList
LoadBalancerList contains a list of LoadBalancer
Field | Description |
---|
apiVersion string | kubelb.k8c.io/v1alpha1 |
kind string | LoadBalancerList |
metadata ListMeta | Refer to Kubernetes API documentation for fields of metadata . |
items LoadBalancer array | |
Back to top
LoadBalancerPort
LoadBalancerPort contains information on service’s port.
Appears in:
Field | Description |
---|
name string | The name of this port within the service. This must be a DNS_LABEL. All ports within a Spec must have unique names. When considering the endpoints for a Service, this must match the ’name’ field in the EndpointPort. Optional if only one ServicePort is defined on this service. |
protocol Protocol | The IP protocol for this port. Supports “TCP”. Default is TCP. |
port integer | The port that will be exposed by the LoadBalancer. |
Back to top
LoadBalancerSpec
LoadBalancerSpec defines the desired state of LoadBalancer
Appears in:
Field | Description |
---|
endpoints LoadBalancerEndpoints array | Sets of addresses and ports that comprise an exposed user service on a cluster. |
ports LoadBalancerPort array | The list of ports that are exposed by the load balancer service. only needed for layer 4 |
type ServiceType | type determines how the Service is exposed. Defaults to ClusterIP. Valid options are ExternalName, ClusterIP, NodePort, and LoadBalancer. “ExternalName” maps to the specified externalName. “ClusterIP” allocates a cluster-internal IP address for load-balancing to endpoints. Endpoints are determined by the selector or if that is not specified, by manual construction of an Endpoints object. If clusterIP is “None”, no virtual IP is allocated and the endpoints are published as a set of endpoints rather than a stable IP. “NodePort” builds on ClusterIP and allocates a port on every node which routes to the clusterIP. “LoadBalancer” builds on NodePort and creates an external load-balancer (if supported in the current cloud) which routes to the clusterIP. More info: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types |
Back to top
LoadBalancerStatus
LoadBalancerStatus defines the observed state of LoadBalancer
Appears in:
Field | Description |
---|
loadBalancer LoadBalancerStatus | LoadBalancer contains the current status of the load-balancer, if one is present. |
service ServiceStatus | Service contains the current status of the LB service. |
Back to top
ServicePort
ServicePort contains information on service’s port.
Appears in:
Field | Description |
---|
ServicePort ServicePort | |
upstreamTargetPort integer | |
Back to top
ServiceStatus
Appears in:
Back to top