Documentation
¶
Index ¶
- func GetReplicaAddress(replica *corev1alpha2.ProxyReplicaStatus, ...) string
- func ReplicaToEndpoint(ctx context.Context, replica *corev1alpha2.ProxyReplicaStatus) (lwtunnel.Endpoint, error)
- func SetupWithManager(ctx context.Context, mgr ctrl.Manager, r *ProxyTunnelReconciler) error
- type ProxyTunnelReconciler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetReplicaAddress ¶
func GetReplicaAddress(replica *corev1alpha2.ProxyReplicaStatus, addrType corev1alpha2.ReplicaAddressType) string
GetReplicaAddress returns the address of the given type from a replica, or empty string if not found.
func ReplicaToEndpoint ¶
func ReplicaToEndpoint(ctx context.Context, replica *corev1alpha2.ProxyReplicaStatus) (lwtunnel.Endpoint, error)
ReplicaToEndpoint converts a ProxyReplicaStatus to a Geneve tunnel endpoint. Returns an error if the replica doesn't have required addresses or they are invalid.
func SetupWithManager ¶
SetupWithManager sets up the controller with the Controller Manager.
Types ¶
type ProxyTunnelReconciler ¶
type ProxyTunnelReconciler struct {
// contains filtered or unexported fields
}
ProxyTunnelReconciler reconciles Proxy objects and manages L3 Geneve tunnels to proxy replicas.
func NewProxyTunnelReconciler ¶
func NewProxyTunnelReconciler(localPrivAddr netip.Addr) *ProxyTunnelReconciler
NewProxyTunnelReconciler creates a new reconciler for managing proxy tunnels.
func NewProxyTunnelReconcilerWithGeneve ¶
func NewProxyTunnelReconcilerWithGeneve( localPrivAddr netip.Addr, gnv *lwtunnel.Geneve, ) *ProxyTunnelReconciler
NewProxyTunnelReconcilerWithGeneve creates a new reconciler with a custom Geneve device. This is useful for multicluster scenarios where each cluster needs its own device.
func (*ProxyTunnelReconciler) ReconcileWithClient ¶
func (r *ProxyTunnelReconciler) ReconcileWithClient(ctx context.Context, c client.Client, request ctrl.Request) (ctrl.Result, error)
ReconcileWithClient reconciles a Proxy using the provided client. This method can be used by both standard reconcilers and multicluster reconcilers.
func (*ProxyTunnelReconciler) TearDown ¶
func (r *ProxyTunnelReconciler) TearDown() error
TearDown removes the Geneve interface managed by this reconciler.