Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewFakeIPTables ¶
func NewFakeIPTables() *fakeIPTables
Types ¶
type HostPortManager ¶
type HostPortManager interface { // Add implements port mappings. // id should be a unique identifier for a pod, e.g. podSandboxID. // podPortMapping is the associated port mapping information for the pod. // natInterfaceName is the interface that localhost used to talk to the given pod. Add(id string, podPortMapping *PodPortMapping, natInterfaceName string) error // Remove cleans up matching port mappings // Remove must be able to clean up port mappings without pod IP Remove(id string, podPortMapping *PodPortMapping) error }
HostPortManager is an interface for adding and removing hostport for a given pod sandbox.
func NewHostportManager ¶
func NewHostportManager(iptables utiliptables.Interface) HostPortManager
type HostportSyncer ¶
type HostportSyncer interface { // SyncHostports gathers all hostports on node and setup iptables rules to enable them. // On each invocation existing ports are synced and stale rules are deleted. SyncHostports(natInterfaceName string, activePodPortMappings []*PodPortMapping) error // OpenPodHostportsAndSync opens hostports for a new PodPortMapping, gathers all hostports on // node, sets up iptables rules enable them. On each invocation existing ports are synced and stale rules are deleted. // 'newPortMapping' must also be present in 'activePodPortMappings'. OpenPodHostportsAndSync(newPortMapping *PodPortMapping, natInterfaceName string, activePodPortMappings []*PodPortMapping) error }
HostportSyncer takes a list of PodPortMappings and implements hostport all at once
func NewHostportSyncer ¶
func NewHostportSyncer(iptables utiliptables.Interface) HostportSyncer
type PodPortMapping ¶
type PodPortMapping struct { Namespace string Name string PortMappings []*PortMapping HostNetwork bool IP net.IP }
PodPortMapping represents a pod's network state and associated container port mappings
Source Files ¶
Click to show internal directories.
Click to hide internal directories.