Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClusterwideNetworkPolicyReconciler ¶
type ClusterwideNetworkPolicyReconciler struct {
client.Client
// contains filtered or unexported fields
}
ClusterwideNetworkPolicyReconciler reconciles a ClusterwideNetworkPolicy object +kubebuilder:rbac:groups=metal-stack.io,resources=events,verbs=create;patch
func NewClusterwideNetworkPolicyReconciler ¶ added in v1.2.0
func NewClusterwideNetworkPolicyReconciler(mgr ctrl.Manager) *ClusterwideNetworkPolicyReconciler
func (*ClusterwideNetworkPolicyReconciler) Reconcile ¶
func (r *ClusterwideNetworkPolicyReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
Reconcile ClusterwideNetworkPolicy and creates nftables rules accordingly +kubebuilder:rbac:groups=metal-stack.io,resources=clusterwidenetworkpolicies,verbs=get;list;watch;create;update;patch;delete +kubebuilder:rbac:groups=metal-stack.io,resources=clusterwidenetworkpolicies/status,verbs=get;update;patch
func (*ClusterwideNetworkPolicyReconciler) SetupWithManager ¶
func (r *ClusterwideNetworkPolicyReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager configures this controller to run in schedule
type ClusterwideNetworkPolicyValidationReconciler ¶ added in v1.2.0
type ClusterwideNetworkPolicyValidationReconciler struct {
client.Client
Log logr.Logger
Scheme *runtime.Scheme
// contains filtered or unexported fields
}
ClusterwideNetworkPolicyValidationReconciler validates a ClusterwideNetworkPolicy object +kubebuilder:rbac:groups=metal-stack.io,resources=events,verbs=create;patch
func (*ClusterwideNetworkPolicyValidationReconciler) Reconcile ¶ added in v1.2.0
func (r *ClusterwideNetworkPolicyValidationReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
Validates ClusterwideNetworkPolicy object +kubebuilder:rbac:groups=metal-stack.io,resources=clusterwidenetworkpolicies,verbs=get;list;watch;create;update;patch;delete +kubebuilder:rbac:groups=metal-stack.io,resources=clusterwidenetworkpolicies/status,verbs=get;update;patch
func (*ClusterwideNetworkPolicyValidationReconciler) SetupWithManager ¶ added in v1.2.0
func (r *ClusterwideNetworkPolicyValidationReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager configures this controller to watch for ClusterwideNetworkPolicy CRD
type CreateFirewall ¶ added in v1.2.0
type CreateFirewall = func( firewall firewallv1.Firewall, cwnps *firewallv1.ClusterwideNetworkPolicyList, svcs *corev1.ServiceList, cache nftables.FQDNCache, log logr.Logger, ) FirewallInterface
type DroptailerReconciler ¶
type DroptailerReconciler struct {
client.Client
Log logr.Logger
Scheme *runtime.Scheme
HostsFile string
// contains filtered or unexported fields
}
DroptailerReconciler reconciles a Droptailer object
func (*DroptailerReconciler) Reconcile ¶
func (r *DroptailerReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)
Reconcile droptailer with certificate and droptailer-server ip from pod inspection +kubebuilder:rbac:groups=metal-stack.io,resources=Droptailers,verbs=get;list;watch;create;update;patch;delete +kubebuilder:rbac:groups=metal-stack.io,resources=Droptailers/status,verbs=get;update;patch
func (*DroptailerReconciler) SetupWithManager ¶
func (r *DroptailerReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager configure this controller with required defaults
type FirewallInterface ¶ added in v1.2.0
type FirewallInterface interface {
Reconcile() (bool, error)
ReconcileNetconfTables() error
Flush() error
}
func NewFirewall ¶ added in v1.2.0
func NewFirewall( firewall firewallv1.Firewall, cwnps *firewallv1.ClusterwideNetworkPolicyList, svcs *corev1.ServiceList, cache nftables.FQDNCache, log logr.Logger, ) FirewallInterface
type FirewallReconciler ¶
type FirewallReconciler struct {
client.Client
Log logr.Logger
Scheme *runtime.Scheme
EnableIDS bool
EnableSignatureCheck bool
CAPubKey *rsa.PublicKey
// contains filtered or unexported fields
}
FirewallReconciler reconciles a Firewall object
func (*FirewallReconciler) Reconcile ¶
Reconcile reconciles a firewall by: - reading Services of type Loadbalancer - rendering nftables rules - updating the firewall object with nftable rule statistics grouped by action +kubebuilder:rbac:groups=metal-stack.io,resources=firewalls,verbs=get;list;watch;create;update;patch;delete +kubebuilder:rbac:groups=metal-stack.io,resources=firewalls/status,verbs=get;update;patch
func (*FirewallReconciler) SetupWithManager ¶
func (r *FirewallReconciler) SetupWithManager(mgr ctrl.Manager) error
SetupWithManager configures this controller to watch for the CRDs in a specific namespace