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
type PortMapping ¶
type PortMapping struct {
Name string
HostPort int32
ContainerPort int32
Protocol v1.Protocol
HostIP string
}
PortMapping represents a network port in a container
Source Files
¶
Click to show internal directories.
Click to hide internal directories.