Skip to content

Commit 22b9307

Browse files
authored
Update architecture doc for IPAM, Prometheus, and README for features (#3814)
Update the IPAM description and add Prometheus integration in the architecture doc. Update the encryption description in README and add a link to the Features section of the getting-started doc. Signed-off-by: Jianjun Shen <shenj@vmware.com>
1 parent 1886ecb commit 22b9307

2 files changed

Lines changed: 25 additions & 11 deletions

File tree

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,12 +98,14 @@ Also check out [@ProjectAntrea](https://twitter.com/ProjectAntrea) on Twitter!
9898
analysis, flow inspection). It exposes Prometheus metrics and supports
9999
exporting network flow information which can be visualized in Kibana
100100
dashboards.
101-
* **Encryption**: Encryption of inter-Node Pod traffic with IPsec tunnels when
102-
using an overlay Pod network.
101+
* **Encryption**: Encryption of inter-Node Pod traffic with IPsec or WireGuard
102+
tunnels.
103103
* **Easy deployment**: Antrea is deployed by applying a single YAML manifest
104104
file.
105105

106-
Refer to the [Changelogs](CHANGELOG/README.md) for a detailed list of features
106+
To explore more Antrea features and their usage, check the [Getting started](docs/getting-started.md#features)
107+
document and user guides in the [Antrea documentation folder](docs/). Refer to
108+
the [Changelogs](CHANGELOG/README.md) for a detailed list of features
107109
introduced for each version release.
108110

109111
## Adopters

docs/design/architecture.md

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -159,14 +159,14 @@ tunnels to other Nodes.
159159

160160
<img src="../assets/node.svg.png" width="300" alt="Antrea Node Network">
161161

162-
Each Node is assigned a single subnet, and all Pods on the Node get an IP from
163-
the subnet. Antrea leverages Kubernetes' `NodeIPAMController` for the Node
164-
subnet allocation, which sets the `podCIDR` field of the Kubernetes Node spec
165-
to the allocated subnet. Antrea Agent retrieves the subnets of Nodes from the
166-
`podCIDR` field. It reserves the first IP of the local Node's subnet to be the
167-
gateway IP and assigns it to the `antrea-gw0` port, and invokes the
168-
[host-local IPAM plugin](https://github.com/containernetworking/plugins/tree/master/plugins/ipam/host-local)
169-
to allocate IPs from the subnet to all local Pods. A local Pod is assigned an IP
162+
By default, Antrea leverages Kubernetes' `NodeIPAMController` to allocate a
163+
single subnet for each Kubernetes Node, and Antrea Agent on a Node allocates an
164+
IP for each Pod on the Node from the Node's subnet. `NodeIPAMController` sets
165+
the `podCIDR` field of the Kubernetes Node spec to the allocated subnet. Antrea
166+
Agent retrieves the subnets of Nodes from the `podCIDR` field. It reserves the
167+
first IP of the local Node's subnet to be the gateway IP and assigns it to the
168+
`antrea-gw0` port, and invokes the [host-local IPAM plugin](https://github.com/containernetworking/plugins/tree/master/plugins/ipam/host-local)
169+
to allocate IPs from the subnet to all Pods. A local Pod is assigned an IP
170170
when the CNI ADD command is received for that Pod.
171171

172172
`NodeIPAMController` can run in `kube-controller-manager` context, or within
@@ -176,6 +176,10 @@ For every remote Node, Antrea Agent adds an OVS flow to send the traffic to that
176176
Node through the appropriate tunnel. The flow matches the packets' destination
177177
IP against each Node's subnet.
178178

179+
In addition to Kubernetes NodeIPAM, Antrea also implements its own IPAM feature,
180+
which can allocate IPs for Pods from user-defined IP pools. For more
181+
information, please refer to the [Antrea IPAM documentation](../antrea-ipam.md).
182+
179183
### Traffic walk
180184

181185
<img src="../assets/traffic_walk.svg.png" width="600" alt="Antrea Traffic Walk">
@@ -354,6 +358,14 @@ using IPFIX. The exported network flows can be visualized using Elastic Stack
354358
and Kibana dashboards. For more information, refer to the [network flow
355359
visibility document](../network-flow-visibility.md).
356360

361+
### Prometheus integration
362+
363+
Antrea supports exporting metrics to Prometheus. Both Antrea Controller and
364+
Antrea Agent implement the `/metrics` API endpoint on their API server to expose
365+
various metrics generated by Antrea components or 3rd party components used by
366+
Antrea. Prometheus can be configured to collect metrics from the API endpoints.
367+
For more information, please refer to the [Prometheus integration document](../prometheus-integration.md).
368+
357369
### Windows Node
358370

359371
On a Windows Node, Antrea acts very much like it does on a Linux Node. Antrea

0 commit comments

Comments
 (0)