types

package
v0.0.0-...-2690dc0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 27, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetAbsoluteNodeName

func GetAbsoluteNodeName() string

GetAbsoluteNodeName returns the absolute node name combined of both (prefixed)cluster name and the local node name in case of clustered environments otherwise returns the name of the local node.

func GetKeyNodeName

func GetKeyNodeName(cluster, node string) string

GetKeyNodeName constructs the API name for the given cluster and node name.

func GetName

func GetName() string

GetName returns the name of the local node. The value returned was either previously set with SetName(), retrieved via `os.Hostname()`, or as a last resort is hardcoded to "localhost".

func SetName

func SetName(name string)

SetName sets the name of the local node. This will overwrite the value that is automatically retrieved with `os.Hostname()`.

Note: This function is currently designed to only be called during the bootstrapping procedure of the agent where no parallelism exists. If you want to use this function in later stages, a mutex must be added first.

Types

type Address

type Address struct {
	Type addressing.AddressType
	IP   net.IP
}

Address is a node address which contains an IP and the address type.

+k8s:deepcopy-gen=true

func (*Address) DeepCopy

func (in *Address) DeepCopy() *Address

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Address.

func (*Address) DeepCopyInto

func (in *Address) DeepCopyInto(out *Address)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Identity

type Identity struct {
	Name    string
	Cluster string
}

Identity represents the node identity of a node.

func (Identity) String

func (nn Identity) String() string

String returns the string representation on NodeIdentity.

type Node

type Node struct {
	// Name is the name of the node. This is typically the hostname of the node.
	Name string

	// Cluster is the name of the cluster the node is associated with
	Cluster string

	IPAddresses []Address

	// IPv4AllocCIDR if set, is the IPv4 address pool out of which the node
	// allocates IPs for local endpoints from
	IPv4AllocCIDR *cidr.CIDR

	// IPv4SecondaryAllocCIDRs contains additional IPv4 CIDRs from which this
	//node allocates IPs for its local endpoints from
	IPv4SecondaryAllocCIDRs []*cidr.CIDR

	// IPv6AllocCIDR if set, is the IPv6 address pool out of which the node
	// allocates IPs for local endpoints from
	IPv6AllocCIDR *cidr.CIDR

	// IPv6SecondaryAllocCIDRs contains additional IPv6 CIDRs from which this
	// node allocates IPs for its local endpoints from
	IPv6SecondaryAllocCIDRs []*cidr.CIDR

	// ClusterID is the unique identifier of the cluster
	ClusterID string

	// Node labels
	Labels      map[string]string
	Annotations map[string]string
}

Node contains the nodes name, the list of addresses to this address

+k8s:deepcopy-gen=true

func ParseNetResourceSet

func ParseNetResourceSet(n *ccev2.NetResourceSet) (node Node)

ParseNetResourceSet parses a NetResourceSet custom resource and returns a Node instance. Invalid IP and CIDRs are silently ignored

func (*Node) DeepCopy

func (in *Node) DeepCopy() *Node

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Node.

func (*Node) DeepCopyInto

func (in *Node) DeepCopyInto(out *Node)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Node) DeepKeyCopy

func (n *Node) DeepKeyCopy() *Node

DeepKeyCopy creates a deep copy of the LocalKey

func (*Node) Fullname

func (n *Node) Fullname() string

Fullname returns the node's full name including the cluster name if a cluster name value other than the default value has been specified

func (*Node) GetCCEInternalIP

func (n *Node) GetCCEInternalIP(ipv6 bool) net.IP

GetCCEInternalIP returns the CCEInternalIP e.g. the IP associated with cce_host on the node.

func (*Node) GetExternalIP

func (n *Node) GetExternalIP(ipv6 bool) net.IP

GetExternalIP returns ExternalIP of k8s Node. If not present, then it returns nil;

func (*Node) GetIPByType

func (n *Node) GetIPByType(addrType addressing.AddressType, ipv6 bool) net.IP

func (*Node) GetIPv4AllocCIDRs

func (n *Node) GetIPv4AllocCIDRs() []*cidr.CIDR

func (*Node) GetIPv6AllocCIDRs

func (n *Node) GetIPv6AllocCIDRs() []*cidr.CIDR

func (*Node) GetK8sNodeIP

func (n *Node) GetK8sNodeIP() net.IP

GetK8sNodeIPs returns k8s Node IP (either InternalIP or ExternalIP or nil; the former is preferred).

func (*Node) GetKeyName

func (n *Node) GetKeyName() string

GetKeyName returns the kvstore key to be used for the node

func (*Node) GetModel

func (n *Node) GetModel() *models.NodeElement

GetModel returns the API model representation of a node.

func (*Node) GetNodeIP

func (n *Node) GetNodeIP(ipv6 bool) net.IP

GetNodeIP returns one of the node's IP addresses available with the following priority: - NodeInternalIP - NodeExternalIP - other IP address type

func (*Node) Identity

func (n *Node) Identity() Identity

Identity returns the identity of the node

func (*Node) IsLocal

func (n *Node) IsLocal() bool

IsLocal returns true if this is the node on which the agent itself is running on

func (*Node) Marshal

func (n *Node) Marshal() ([]byte, error)

Marshal returns the node object as JSON byte slice

func (*Node) ToNetResourceSet

func (n *Node) ToNetResourceSet() *ccev2.NetResourceSet

ToNetResourceSet converts the node to a NetResourceSet

func (*Node) Unmarshal

func (n *Node) Unmarshal(data []byte) error

Unmarshal parses the JSON byte slice and updates the node receiver

type RegisterNode

type RegisterNode struct {
	Node
}

RegisterNode overloads GetKeyName to ignore the cluster name, as cluster name may not be stable during node registration.

+k8s:deepcopy-gen=true

func (*RegisterNode) DeepCopy

func (in *RegisterNode) DeepCopy() *RegisterNode

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegisterNode.

func (*RegisterNode) DeepCopyInto

func (in *RegisterNode) DeepCopyInto(out *RegisterNode)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegisterNode) GetKeyName

func (n *RegisterNode) GetKeyName() string

GetKeyName Overloaded key name w/o cluster name

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL