Documentation ¶
Overview ¶
Package wireguard implements the Wireguard tunnels to be used as vpn technology to interconnect clusters.
Index ¶
- Constants
- Variables
- func NewDriver(k8sClient k8s.Interface, namespace string, config tunnel.Config) (tunnel.Driver, error)
- type ResolverFunc
- type Wireguard
- func (w *Wireguard) Close() error
- func (w *Wireguard) Collect(ch chan<- prometheus.Metric)
- func (w *Wireguard) ConnectToEndpoint(ctx context.Context, tep *netv1alpha1.TunnelEndpoint, ...) (*netv1alpha1.Connection, error)
- func (w *Wireguard) Describe(ch chan<- *prometheus.Desc)
- func (w *Wireguard) DisconnectFromEndpoint(tep *netv1alpha1.TunnelEndpoint) error
- func (w *Wireguard) GetLink() netlink.Link
- func (w *Wireguard) Init() error
- func (w *Wireguard) SetNewClient() error
Constants ¶
const ( // Userspace implementation of wireguard. Userspace implementation = "userspace" // Kernel implementation of wireguard. Kernel implementation = "kernel" )
Variables ¶
var ( // WgUserImpl is the metric that reports if wireguard is running in userspace mode. WgUserImpl = prometheus.NewDesc( "liqo_wireguard_implementation", "Wireguard used implementation", []string{metrics.MetricsLabels[0], implLabel}, nil, ) )
Functions ¶
Types ¶
type ResolverFunc ¶ added in v0.3.0
ResolverFunc type of function that knows how to resolve an ip address belonging to ipv4 or ipv6 family.
type Wireguard ¶ added in v0.3.0
type Wireguard struct { metrics.Metrics Connchecker *conncheck.ConnChecker Implementation implementation // contains filtered or unexported fields }
Wireguard a wrapper for the wireguard device and its configuration.
func (*Wireguard) Collect ¶ added in v0.6.0
func (w *Wireguard) Collect(ch chan<- prometheus.Metric)
Collect implements prometheus.Collector.
func (*Wireguard) ConnectToEndpoint ¶ added in v0.3.0
func (w *Wireguard) ConnectToEndpoint(ctx context.Context, tep *netv1alpha1.TunnelEndpoint, updateStatus conncheck.UpdateFunc) (*netv1alpha1.Connection, error)
ConnectToEndpoint connects to a remote cluster described by the given tep. updateStatusCallback is a function used by conncheck to update TunnelEndpoint connected status.
func (*Wireguard) Describe ¶ added in v0.7.1
func (w *Wireguard) Describe(ch chan<- *prometheus.Desc)
Describe implements prometheus.Collector.
func (*Wireguard) DisconnectFromEndpoint ¶ added in v0.3.0
func (w *Wireguard) DisconnectFromEndpoint(tep *netv1alpha1.TunnelEndpoint) error
DisconnectFromEndpoint disconnects a remote cluster described by the given tep.
func (*Wireguard) GetLink ¶ added in v0.3.0
GetLink returns the netlink.Link referred to the wireguard device.
func (*Wireguard) SetNewClient ¶ added in v0.3.0
SetNewClient set a new client used to interact with the wireguard device.