MCPcopy
hub / github.com/antrea-io/antrea

github.com/antrea-io/antrea @v2.6.2 sqlite

repository ↗ · DeepWiki ↗ · release v2.6.2 ↗
17,028 symbols 75,063 edges 1,407 files 7,112 documented · 42%
README

Antrea

Antrea Logo

Build Status Go Report Card CII Best Practices License GitHub release FOSSA Status

Overview

Antrea is a Kubernetes networking solution intended to be Kubernetes native. It operates at Layer 3/4 to provide networking and security services for a Kubernetes cluster, leveraging Open vSwitch as the networking data plane.

Antrea Overview

Open vSwitch is a widely adopted high-performance programmable virtual switch; Antrea leverages it to implement Pod networking and security features. For instance, Open vSwitch enables Antrea to implement Kubernetes Network Policies in a very efficient manner.

Prerequisites

Antrea has been tested with Kubernetes clusters running version 1.23 or later.

  • NodeIPAMController must be enabled in the Kubernetes cluster.\ When deploying a cluster with kubeadm the --pod-network-cidr <cidr> option must be specified. Alternately, NodeIPAM feature of Antrea Controller should be enabled and configured.
  • Open vSwitch kernel module must be present on every Kubernetes node.

Getting Started

Getting started with Antrea is very simple, and takes only a few minutes. See how it's done in the Getting started document.

Contributing

The Antrea community welcomes new contributors. We are waiting for your PRs!

Community

Also check out @ProjectAntrea on Twitter!

Features

  • Kubernetes-native: Antrea follows best practices to extend the Kubernetes APIs and provide familiar abstractions to users, while also leveraging Kubernetes libraries in its own implementation.
  • Powered by Open vSwitch: Antrea relies on Open vSwitch to implement all networking functions, including Kubernetes Service load-balancing, and to enable hardware offloading in order to support the most demanding workloads.
  • Run everywhere: Run Antrea in private clouds, public clouds and on bare metal, and select the appropriate traffic mode (with or without overlay) based on your infrastructure and use case.
  • Comprehensive policy model: Antrea provides a comprehensive network policy model, which builds upon Kubernetes Network Policies with new features such as policy tiering, rule priorities, cluster-level policies, and Node policies. Refer to the Antrea Network Policy documentation for a full list of features.
  • Windows Node support: Thanks to the portability of Open vSwitch, Antrea can use the same data plane implementation on both Linux and Windows Kubernetes Nodes.
  • Multi-cluster networking: Federate multiple Kubernetes clusters and benefit from a unified data plane (including multi-cluster Services) and a unified security posture. Refer to the Antrea Multi-cluster documentation to get started.
  • Troubleshooting and monitoring tools: Antrea comes with CLI and UI tools which provide visibility and diagnostics capabilities (packet tracing, policy analysis, flow inspection). It exposes Prometheus metrics and supports exporting network flow information to collectors and analyzers.
  • Network observability and analytics: Antrea + Theia enable fine-grained visibility into the communication among Kubernetes workloads. Theia provides visualization for Antrea network flows in Grafana dashboards, and recommends Network Policies to secure the workloads.
  • Network Policies for virtual machines: Antrea-native policies can be enforced on non-Kubernetes Nodes including VMs and baremetal servers. Project Nephe implements security policies for VMs across clouds, leveraging Antrea-native policies.
  • Encryption: Encryption of inter-Node Pod traffic with IPsec or WireGuard tunnels.
  • Easy deployment: Antrea is deployed by applying a single YAML manifest file.

To explore more Antrea features and their usage, check the Getting started document and user guides in the Antrea documentation folder. Refer to the Changelogs for a detailed list of features introduced for each version release.

Adopters

For a list of Antrea Adopters, please refer to ADOPTERS.md.

Roadmap

We are adding features very quickly to Antrea. Check out the list of features we are considering on our Roadmap page. Feel free to throw your ideas in!

License

Antrea is licensed under the Apache License, version 2.0

FOSSA Status

Extension points exported contracts — how you extend this code

ClusterIdentityProvider (Interface)
ClusterIdentityProvider is an interface used to retrieve the cluster identity information (UUID), as provided by the use [36 …
pkg/clusteridentity/clusteridentity.go
IPPoolLister (Interface)
IPPoolLister helps list IPPools. All objects returned here must be treated as read-only. [20 implementers]
pkg/client/listers/crd/v1beta1/ippool.go
IPFIXBufferedExporter (Interface)
IPFIXBufferedExporter interface is added to facilitate unit testing without involving the code from go-ipfix library. [8 …
pkg/ipfix/ipfix_exporter.go
InternalEvent (Interface)
InternalEvent is an internal event that can be converted to *watch.Event based on watcher's Selectors. For example, an i [9 …
pkg/apiserver/storage/interfaces.go
S3UploaderAPI (Interface)
Define a wrapper interface S3UploaderAPI to assist unit testing. [6 implementers]
pkg/flowaggregator/s3uploader/s3uploader.go
Manager (Interface)
Manager is an interface to track the status of the IPsec certificate controller. [18 implementers]
pkg/agent/controller/ipseccertificate/ipsec_certificate_controller.go
CommonArea (Interface)
CommonArea is an interface that provides access to the Common Area of a ClusterSet. Common Area of a ClusterSet is a Nam [6 …
multicluster/controllers/multicluster/commonarea/interfaces.go
ClusterSetNamespaceLister (Interface)
ClusterSetNamespaceLister helps list and get ClusterSets. All objects returned here must be treated as read-only. [20 …
multicluster/pkg/client/listers/multicluster/v1alpha2/clusterset.go

Core symbols most depended-on inside this repo

String
called by 1489
third_party/proxy/endpoint.go
Equal
called by 1222
pkg/util/ip/ip.go
Equal
called by 996
pkg/agent/util/winnet/types.go
Run
called by 895
pkg/agent/route/interfaces.go
Run
called by 572
third_party/proxy/types.go
Action
called by 489
pkg/ovs/openflow/interfaces.go
Add
called by 483
pkg/agent/cniserver/ipam/ipam_service.go
EXPECT
called by 478
pkg/agent/cniserver/testing/mock_cniserver.go

Shape

Method 9,014
Function 5,750
Struct 1,611
Interface 434
TypeAlias 173
FuncType 46

Languages

Go100%

Modules by API surface

pkg/ovs/openflow/testing/mock_openflow.go454 symbols
pkg/apiserver/openapi/zz_generated.openapi.go438 symbols
pkg/apis/controlplane/v1beta2/generated.pb.go348 symbols
pkg/ovs/openflow/interfaces.go243 symbols
pkg/apis/controlplane/v1beta2/zz_generated.conversion.go200 symbols
pkg/apis/flow/v1alpha1/flow.pb.go189 symbols
test/e2e/framework.go186 symbols
pkg/apis/crd/v1beta1/zz_generated.deepcopy.go176 symbols
pkg/agent/openflow/testing/mock_openflow.go156 symbols
pkg/agent/openflow/client.go148 symbols
test/e2e/antreapolicy_test.go135 symbols
pkg/agent/openflow/network_policy.go127 symbols

Dependencies from manifests, versioned

antrea.io/arpv0.0.0-2026052002404 · 1×
antrea.io/ethernetv0.0.0-2026052002160 · 1×
antrea.io/libOpenflowv0.17.0 · 1×
antrea.io/ndpv0.0.0-2026052002085 · 1×
antrea.io/ofnetv0.15.0 · 1×
antrea.io/packetv0.0.0-2026051506445 · 1×
cel.dev/exprv0.25.1 · 1×
github.com/Azure/go-ansitermv0.0.0-2023012417243 · 1×
github.com/ClickHouse/ch-gov0.71.0 · 1×
github.com/DATA-DOG/go-sqlmockv1.5.2 · 1×
github.com/MakeNowJust/heredocv1.0.0 · 1×

For agents

$ claude mcp add antrea \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact