Skip to content

Commit 33ad0f3

Browse files
committed
[#7231] Add support for multi flow exporter targets via CRDs.
This change uses the `FlowExporterDestination` CRD to determine which Flow Aggregator to send flows to. The logic for polling inside the ConntrackConnectionStore is pulled out and the connections are forwarded to the different "destinations". The destinations if using gRPC or TLS with IPFIX will no longer translate the <namespace>/<service>:<port> into the dns address. It is the responsibility of whoever creates the resource to properly set the server name. For the static destination it will be populated automatically. Additionally, a static destination will be created based on the Antrea Agent ConfigMap. The `flowExporter.enable` key in the Antrea Agent config is used to turn on/off the static destination. From the config, only the `pollInterval` and `staleConnectionTimeout` are shared between all the destinations. Signed-off-by: Andrew Su <[email protected]>
1 parent 95920a7 commit 33ad0f3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+3079
-1081
lines changed

build/charts/antrea/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ Kubernetes: `>= 1.23.0-0`
9999
| enableBridgingMode | bool | `false` | Enable bridging mode of Pod network on Nodes, in which the Node's transport interface is connected to the OVS bridge. |
100100
| featureGates | object | `{}` | To explicitly enable or disable a FeatureGate and bypass the Antrea defaults, add an entry to the dictionary with the FeatureGate's name as the key and a boolean as the value. |
101101
| flowExporter.activeFlowExportTimeout | string | `"5s"` | timeout after which a flow record is sent to the collector for active flows. |
102-
| flowExporter.enable | bool | `false` | Enable the flow exporter feature. |
102+
| flowExporter.enable | bool | `false` | Enable the static flow exporter. |
103103
| flowExporter.flowCollectorAddr | string | `"flow-aggregator/flow-aggregator:14739:grpc"` | IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>]. If the collector is running in-cluster as a Service, set <HOST> to <Service namespace>/<Service name>. |
104104
| flowExporter.flowPollInterval | string | `"5s"` | Determines how often the flow exporter polls for new connections. |
105105
| flowExporter.idleFlowExportTimeout | string | `"15s"` | timeout after which a flow record is sent to the collector for idle flows. |

build/charts/antrea/conf/antrea-agent.conf

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -254,10 +254,10 @@ enablePrometheusMetrics: {{ .Values.agent.enablePrometheusMetrics }}
254254

255255
flowExporter:
256256
{{- with .Values.flowExporter }}
257-
# Enable FlowExporter, a feature used to export polled conntrack connections as
258-
# IPFIX flow records from each agent to a configured collector. To enable this
259-
# feature, you need to set "enable" to true, and ensure that the FlowExporter
260-
# feature gate is also enabled.
257+
# Enable a flow exporter destination with the configuration specified here.
258+
# This can be disabled which means only `FlowExporterDestination` resources
259+
# will be considered for exporting. The FlowExporter feature flag determines
260+
# whether FlowExporter is enabled.
261261
enable: {{ .enable }}
262262
# Provide the IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>].
263263
# HOST can either be the DNS name, IP, or Service name of the Flow Collector. If

build/charts/antrea/values.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,7 @@ controller:
422422
memory: "100Mi"
423423

424424
flowExporter:
425-
# -- Enable the flow exporter feature.
425+
# -- Enable the static flow exporter.
426426
enable: false
427427
# -- IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>].
428428
# If the collector is running in-cluster as a Service, set <HOST> to

build/yamls/antrea-aks.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4455,10 +4455,10 @@ data:
44554455
enablePrometheusMetrics: true
44564456
44574457
flowExporter:
4458-
# Enable FlowExporter, a feature used to export polled conntrack connections as
4459-
# IPFIX flow records from each agent to a configured collector. To enable this
4460-
# feature, you need to set "enable" to true, and ensure that the FlowExporter
4461-
# feature gate is also enabled.
4458+
# Enable a flow exporter destination with the configuration specified here.
4459+
# This can be disabled which means only `FlowExporterDestination` resources
4460+
# will be considered for exporting. The FlowExporter feature flag determines
4461+
# whether FlowExporter is enabled.
44624462
enable: false
44634463
# Provide the IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>].
44644464
# HOST can either be the DNS name, IP, or Service name of the Flow Collector. If
@@ -5725,7 +5725,7 @@ spec:
57255725
kubectl.kubernetes.io/default-container: antrea-agent
57265726
# Automatically restart Pods with a RollingUpdate if the ConfigMap changes
57275727
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5728-
checksum/config: 19cea71ebb0d852621308d71c5ee31a965d1fd7c0bc6a4c04bd09aa7ac2c1687
5728+
checksum/config: eed9d539ae0688b75c0c1c470ba33ef49ada415c7c6736d2bbf791100694b2f6
57295729
labels:
57305730
app: antrea
57315731
component: antrea-agent
@@ -5973,7 +5973,7 @@ spec:
59735973
annotations:
59745974
# Automatically restart Pod if the ConfigMap changes
59755975
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5976-
checksum/config: 19cea71ebb0d852621308d71c5ee31a965d1fd7c0bc6a4c04bd09aa7ac2c1687
5976+
checksum/config: eed9d539ae0688b75c0c1c470ba33ef49ada415c7c6736d2bbf791100694b2f6
59775977
labels:
59785978
app: antrea
59795979
component: antrea-controller

build/yamls/antrea-eks.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4451,10 +4451,10 @@ data:
44514451
enablePrometheusMetrics: true
44524452
44534453
flowExporter:
4454-
# Enable FlowExporter, a feature used to export polled conntrack connections as
4455-
# IPFIX flow records from each agent to a configured collector. To enable this
4456-
# feature, you need to set "enable" to true, and ensure that the FlowExporter
4457-
# feature gate is also enabled.
4454+
# Enable a flow exporter destination with the configuration specified here.
4455+
# This can be disabled which means only `FlowExporterDestination` resources
4456+
# will be considered for exporting. The FlowExporter feature flag determines
4457+
# whether FlowExporter is enabled.
44584458
enable: false
44594459
# Provide the IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>].
44604460
# HOST can either be the DNS name, IP, or Service name of the Flow Collector. If
@@ -5721,7 +5721,7 @@ spec:
57215721
kubectl.kubernetes.io/default-container: antrea-agent
57225722
# Automatically restart Pods with a RollingUpdate if the ConfigMap changes
57235723
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5724-
checksum/config: 19cea71ebb0d852621308d71c5ee31a965d1fd7c0bc6a4c04bd09aa7ac2c1687
5724+
checksum/config: eed9d539ae0688b75c0c1c470ba33ef49ada415c7c6736d2bbf791100694b2f6
57255725
labels:
57265726
app: antrea
57275727
component: antrea-agent
@@ -5970,7 +5970,7 @@ spec:
59705970
annotations:
59715971
# Automatically restart Pod if the ConfigMap changes
59725972
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5973-
checksum/config: 19cea71ebb0d852621308d71c5ee31a965d1fd7c0bc6a4c04bd09aa7ac2c1687
5973+
checksum/config: eed9d539ae0688b75c0c1c470ba33ef49ada415c7c6736d2bbf791100694b2f6
59745974
labels:
59755975
app: antrea
59765976
component: antrea-controller

build/yamls/antrea-gke.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4451,10 +4451,10 @@ data:
44514451
enablePrometheusMetrics: true
44524452
44534453
flowExporter:
4454-
# Enable FlowExporter, a feature used to export polled conntrack connections as
4455-
# IPFIX flow records from each agent to a configured collector. To enable this
4456-
# feature, you need to set "enable" to true, and ensure that the FlowExporter
4457-
# feature gate is also enabled.
4454+
# Enable a flow exporter destination with the configuration specified here.
4455+
# This can be disabled which means only `FlowExporterDestination` resources
4456+
# will be considered for exporting. The FlowExporter feature flag determines
4457+
# whether FlowExporter is enabled.
44584458
enable: false
44594459
# Provide the IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>].
44604460
# HOST can either be the DNS name, IP, or Service name of the Flow Collector. If
@@ -5712,7 +5712,7 @@ spec:
57125712
kubectl.kubernetes.io/default-container: antrea-agent
57135713
# Automatically restart Pods with a RollingUpdate if the ConfigMap changes
57145714
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5715-
checksum/config: 850a3f0b6a90ccc8380a7c5681a989b0d0204183d289c8d75fd76eab8cd1161a
5715+
checksum/config: 71cd66c19196855acf9ced6ce83d6ddf99250fa270d934364cfd3772ecfc7fb4
57165716
labels:
57175717
app: antrea
57185718
component: antrea-agent
@@ -5958,7 +5958,7 @@ spec:
59585958
annotations:
59595959
# Automatically restart Pod if the ConfigMap changes
59605960
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5961-
checksum/config: 850a3f0b6a90ccc8380a7c5681a989b0d0204183d289c8d75fd76eab8cd1161a
5961+
checksum/config: 71cd66c19196855acf9ced6ce83d6ddf99250fa270d934364cfd3772ecfc7fb4
59625962
labels:
59635963
app: antrea
59645964
component: antrea-controller

build/yamls/antrea-ipsec.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4464,10 +4464,10 @@ data:
44644464
enablePrometheusMetrics: true
44654465
44664466
flowExporter:
4467-
# Enable FlowExporter, a feature used to export polled conntrack connections as
4468-
# IPFIX flow records from each agent to a configured collector. To enable this
4469-
# feature, you need to set "enable" to true, and ensure that the FlowExporter
4470-
# feature gate is also enabled.
4467+
# Enable a flow exporter destination with the configuration specified here.
4468+
# This can be disabled which means only `FlowExporterDestination` resources
4469+
# will be considered for exporting. The FlowExporter feature flag determines
4470+
# whether FlowExporter is enabled.
44714471
enable: false
44724472
# Provide the IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>].
44734473
# HOST can either be the DNS name, IP, or Service name of the Flow Collector. If
@@ -5725,7 +5725,7 @@ spec:
57255725
kubectl.kubernetes.io/default-container: antrea-agent
57265726
# Automatically restart Pods with a RollingUpdate if the ConfigMap changes
57275727
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5728-
checksum/config: bd3bfe0a3cf17f563005ab065f7a981e07285271165795d9f1ab81bb9c0dc1e3
5728+
checksum/config: 1c72cbaf56a90e604a9cd0f4e2f3a60056bf33266d5743f028b92a3f3d6cfb06
57295729
checksum/ipsec-secret: d0eb9c52d0cd4311b6d252a951126bf9bea27ec05590bed8a394f0f792dcb2a4
57305730
labels:
57315731
app: antrea
@@ -6017,7 +6017,7 @@ spec:
60176017
annotations:
60186018
# Automatically restart Pod if the ConfigMap changes
60196019
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
6020-
checksum/config: bd3bfe0a3cf17f563005ab065f7a981e07285271165795d9f1ab81bb9c0dc1e3
6020+
checksum/config: 1c72cbaf56a90e604a9cd0f4e2f3a60056bf33266d5743f028b92a3f3d6cfb06
60216021
labels:
60226022
app: antrea
60236023
component: antrea-controller

build/yamls/antrea.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4451,10 +4451,10 @@ data:
44514451
enablePrometheusMetrics: true
44524452
44534453
flowExporter:
4454-
# Enable FlowExporter, a feature used to export polled conntrack connections as
4455-
# IPFIX flow records from each agent to a configured collector. To enable this
4456-
# feature, you need to set "enable" to true, and ensure that the FlowExporter
4457-
# feature gate is also enabled.
4454+
# Enable a flow exporter destination with the configuration specified here.
4455+
# This can be disabled which means only `FlowExporterDestination` resources
4456+
# will be considered for exporting. The FlowExporter feature flag determines
4457+
# whether FlowExporter is enabled.
44584458
enable: false
44594459
# Provide the IPFIX collector address as a string with format <HOST>:[<PORT>][:<PROTO>].
44604460
# HOST can either be the DNS name, IP, or Service name of the Flow Collector. If
@@ -5712,7 +5712,7 @@ spec:
57125712
kubectl.kubernetes.io/default-container: antrea-agent
57135713
# Automatically restart Pods with a RollingUpdate if the ConfigMap changes
57145714
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5715-
checksum/config: ce43af869242f2d5f0787dd0b9643a42f005e0426c4bfd7e3f38abda8b7718bc
5715+
checksum/config: 3dc3c5d6a6f96bb9c892fe7ee131eccf08bf4bcd5a785a80c1277aa661890492
57165716
labels:
57175717
app: antrea
57185718
component: antrea-agent
@@ -5958,7 +5958,7 @@ spec:
59585958
annotations:
59595959
# Automatically restart Pod if the ConfigMap changes
59605960
# See https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments
5961-
checksum/config: ce43af869242f2d5f0787dd0b9643a42f005e0426c4bfd7e3f38abda8b7718bc
5961+
checksum/config: 3dc3c5d6a6f96bb9c892fe7ee131eccf08bf4bcd5a785a80c1277aa661890492
59625962
labels:
59635963
app: antrea
59645964
component: antrea-controller

ci/kind/test-e2e-kind.sh

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,18 @@ FLOWAGGREGATOR_YML_CMD="$THIS_DIR/../../hack/generate-manifest-flow-aggregator.s
6464
FLOW_VISIBILITY_HELM_VALUES="$THIS_DIR/values-flow-exporter.yml"
6565
CH_OPERATOR_YML="$THIS_DIR/../../build/yamls/clickhouse-operator-install-bundle.yml"
6666
FLOW_VISIBILITY_CHART="$THIS_DIR/../../test/e2e/charts/flow-visibility"
67+
KUSTOMIZATION_DIR="$THIS_DIR/../../test/e2e/kustomize"
68+
69+
if [ -z "$KUSTOMIZE" ]; then
70+
KUSTOMIZE=$(
71+
source $THIS_DIR/../../hack/verify-kustomize.sh
72+
verify_kustomize
73+
)
74+
elif ! $KUSTOMIZE version > /dev/null 2>&1; then
75+
echoerr "$KUSTOMIZE does not appear to be a valid kustomize binary"
76+
print_help
77+
exit 1
78+
fi
6779

6880
function quit {
6981
result=$?
@@ -419,23 +431,30 @@ function run_test {
419431

420432
if $flow_visibility; then
421433
timeout="45m"
422-
flow_visibility_args="-run=TestFlowAggregator --flow-visibility"
434+
flow_visibility_args="-run=^(TestFlowExporter|TestFlowAggregator) --flow-visibility"
423435
# This is needed so that the FlowAggregator is already configured to mount the Secrets
424436
# necessary for (m)TLS testing. The Secret names must match the ones expected by the e2e tests.
425-
flow_visibility_manifest_args="--extra-helm-values flowCollector.tls.clientSecretName=ipfix-client-cert,flowCollector.tls.caSecretName=ipfix-server-ca"
437+
coverage_flag=""
426438
if $coverage; then
427-
$FLOWAGGREGATOR_YML_CMD --coverage $flow_visibility_manifest_args | docker exec -i kind-control-plane dd of=/root/flow-aggregator-coverage.yml
428-
else
429-
$FLOWAGGREGATOR_YML_CMD $flow_visibility_manifest_args | docker exec -i kind-control-plane dd of=/root/flow-aggregator.yml
439+
coverage_flag="--coverage"
430440
fi
441+
flow_visibility_manifest_default_args=("--extra-helm-values" "flowCollector.tls.clientSecretName=ipfix-client-cert,flowCollector.tls.caSecretName=ipfix-server-ca")
442+
$FLOWAGGREGATOR_YML_CMD "${flow_visibility_manifest_default_args[@]}" ${coverage_flag} | docker exec -i kind-control-plane dd of=/root/flow-aggregator.yml
443+
$FLOWAGGREGATOR_YML_CMD --extra-helm-values "aggregatorTransportProtocol=tcp" ${coverage_flag} > "$KUSTOMIZATION_DIR"/multi-flow-aggregator/base/manifest.yaml
444+
$KUSTOMIZE build "$KUSTOMIZATION_DIR"/multi-flow-aggregator/overlays/flow-aggregator-1 | docker exec -i kind-control-plane dd of=/root/flow-aggregator-1.yml
445+
$KUSTOMIZE build "$KUSTOMIZATION_DIR"/multi-flow-aggregator/overlays/flow-aggregator-2 | docker exec -i kind-control-plane dd of=/root/flow-aggregator-2.yml
446+
rm "$KUSTOMIZATION_DIR"/multi-flow-aggregator/base/manifest.yaml
447+
431448
$HELM template "$FLOW_VISIBILITY_CHART" | docker exec -i kind-control-plane dd of=/root/flow-visibility.yml
432449
$HELM template "$FLOW_VISIBILITY_CHART" --set "secureConnection.enable=true" | docker exec -i kind-control-plane dd of=/root/flow-visibility-tls.yml
433450

434-
curl -o $CH_OPERATOR_YML https://raw.githubusercontent.com/Altinity/clickhouse-operator/release-0.21.0/deploy/operator/clickhouse-operator-install-bundle.yaml
435-
sed -i -e "s|\"image\": \"clickhouse/clickhouse-server:22.3\"|\"image\": \"antrea/clickhouse-server:23.4\"|g" $CH_OPERATOR_YML
436-
sed -i -e "s|image: altinity/clickhouse-operator:0.21.0|image: antrea/clickhouse-operator:0.21.0|g" $CH_OPERATOR_YML
437-
sed -i -e "s|image: altinity/metrics-exporter:0.21.0|image: antrea/metrics-exporter:0.21.0|g" $CH_OPERATOR_YML
438-
cat $CH_OPERATOR_YML | docker exec -i kind-control-plane dd of=/root/clickhouse-operator-install-bundle.yml
451+
curl -o "$CH_OPERATOR_YML" https://raw.githubusercontent.com/Altinity/clickhouse-operator/release-0.21.0/deploy/operator/clickhouse-operator-install-bundle.yaml
452+
sed -i -e "s|\"image\": \"clickhouse/clickhouse-server:22.3\"|\"image\": \"antrea/clickhouse-server:23.4\"|g" "$CH_OPERATOR_YML"
453+
sed -i -e "s|image: altinity/clickhouse-operator:0.21.0|image: antrea/clickhouse-operator:0.21.0|g" "$CH_OPERATOR_YML"
454+
sed -i -e "s|image: altinity/metrics-exporter:0.21.0|image: antrea/metrics-exporter:0.21.0|g" "$CH_OPERATOR_YML"
455+
cat "$CH_OPERATOR_YML" | docker exec -i kind-control-plane dd of=/root/clickhouse-operator-install-bundle.yml
456+
457+
printf '%s' "$flow_visibility_protocol" | docker exec -i kind-control-plane dd of=/root/test-flow-visibility-protocol.txt
439458
fi
440459

441460
if [[ "$kube_proxy_mode" == "none" ]]; then

cmd/antrea-agent/agent.go

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ func run(o *Options) error {
132132
endpointSliceInformer := informerFactory.Discovery().V1().EndpointSlices()
133133
namespaceInformer := informerFactory.Core().V1().Namespaces()
134134
nodeLatencyMonitorInformer := crdInformerFactory.Crd().V1alpha1().NodeLatencyMonitors()
135+
flowExporterDestinationInformer := crdInformerFactory.Crd().V1alpha1().FlowExporterDestinations()
135136

136137
// Create Antrea Clientset for the given config.
137138
antreaClientProvider, err := client.NewAntreaClientProvider(o.config.AntreaClientConnection, k8sClient)
@@ -160,7 +161,7 @@ func run(o *Options) error {
160161
enableMulticlusterGW := features.DefaultFeatureGate.Enabled(features.Multicluster) && o.config.Multicluster.EnableGateway
161162
_, multiclusterEncryptionMode := config.GetTrafficEncryptionModeFromStr(o.config.Multicluster.TrafficEncryptionMode)
162163
enableMulticlusterNP := features.DefaultFeatureGate.Enabled(features.Multicluster) && o.config.Multicluster.EnableStretchedNetworkPolicy
163-
enableFlowExporter := features.DefaultFeatureGate.Enabled(features.FlowExporter) && o.config.FlowExporter.Enable
164+
enableFlowExporter := features.DefaultFeatureGate.Enabled(features.FlowExporter)
164165
var nodeIPTracker *nodeip.Tracker
165166
if o.nodeType == config.K8sNode {
166167
nodeIPTracker = nodeip.NewTracker(nodeInformer)
@@ -714,37 +715,39 @@ func run(o *Options) error {
714715
if enableFlowExporter {
715716
podStore = objectstore.NewPodStore(localPodInformer.Get())
716717
flowExporterOptions := &flowexporteroptions.FlowExporterOptions{
717-
FlowCollectorAddr: o.flowCollectorAddr,
718-
FlowCollectorProto: o.flowCollectorProto,
719-
ActiveFlowTimeout: o.activeFlowTimeout,
720-
IdleFlowTimeout: o.idleFlowTimeout,
721-
StaleConnectionTimeout: o.staleConnectionTimeout,
722-
PollInterval: o.pollInterval,
723-
ConnectUplinkToBridge: connectUplinkToBridge,
724-
ProtocolFilter: o.config.FlowExporter.ProtocolFilter,
718+
EnableStaticDestination: o.config.FlowExporter.Enable,
719+
FlowCollectorAddr: o.flowCollectorAddr,
720+
FlowCollectorProto: o.flowCollectorProto,
721+
ActiveFlowTimeout: o.activeFlowTimeout,
722+
IdleFlowTimeout: o.idleFlowTimeout,
723+
StaleConnectionTimeout: o.staleConnectionTimeout,
724+
PollInterval: o.pollInterval,
725+
ConnectUplinkToBridge: connectUplinkToBridge,
726+
ProtocolFilter: o.config.FlowExporter.ProtocolFilter,
725727
}
726728
flowExporter, err = flowexporter.NewFlowExporter(
727-
podStore,
728-
proxyQuerier,
729729
k8sClient,
730+
flowExporterDestinationInformer,
731+
nodeConfig,
730732
nodeRouteController,
733+
podStore,
734+
proxyQuerier,
735+
egressController,
736+
networkPolicyController,
737+
podNetworkWait,
731738
networkConfig.TrafficEncapMode,
732-
nodeConfig,
733739
v4Enabled,
734740
v6Enabled,
735741
serviceCIDRNet,
736742
serviceCIDRNetv6,
737743
ovsDatapathType,
738744
o.enableAntreaProxy,
739-
networkPolicyController,
740745
flowExporterOptions,
741-
egressController,
742-
podNetworkWait,
743746
)
744747
if err != nil {
745748
return fmt.Errorf("error when creating IPFIX flow exporter: %v", err)
746749
}
747-
networkPolicyController.SetDenyConnStore(flowExporter.GetDenyConnStore())
750+
networkPolicyController.SetPublisher(flowExporter.GetDenyConnPublisher())
748751
}
749752

750753
log.StartLogFileNumberMonitor(stopCh)

0 commit comments

Comments
 (0)