Documentation
¶
Overview ¶
Package controller implements the Kubernetes controller for managing AWS Elastic Network Interfaces (ENIs) for nodes.
The NodeENI controller watches NodeENI custom resources and automatically creates, attaches, and manages ENIs for nodes that match the specified selectors. It supports multiple subnets and security groups, and handles the lifecycle of ENIs including creation, attachment, detachment, and deletion.
Index ¶
Constants ¶
const (
// NodeENIFinalizer is the finalizer added to NodeENI resources
NodeENIFinalizer = "nodeeni.networking.k8s.aws/finalizer"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type NodeENIReconciler ¶
type NodeENIReconciler struct {
client.Client
Log logr.Logger
Scheme *runtime.Scheme
Recorder record.EventRecorder
AWS awsutil.EC2Interface
Config *config.ControllerConfig
}
NodeENIReconciler reconciles a NodeENI object
func NewNodeENIReconciler ¶
func NewNodeENIReconciler(mgr manager.Manager) (*NodeENIReconciler, error)
NewNodeENIReconciler creates a new NodeENI controller
func (*NodeENIReconciler) Reconcile ¶
Reconcile handles NodeENI resources +kubebuilder:rbac:groups=networking.k8s.aws,resources=nodeenis,verbs=get;list;watch;create;update;patch;delete +kubebuilder:rbac:groups=networking.k8s.aws,resources=nodeenis/status,verbs=get;update;patch +kubebuilder:rbac:groups=core,resources=nodes,verbs=get;list;watch +kubebuilder:rbac:groups=core,resources=events,verbs=create;patch
func (*NodeENIReconciler) SetupWithManager ¶
func (r *NodeENIReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager sets up the controller with the Manager