Skip to content

Commit

Permalink
Deprecate Antrea Octant Plugin (#4825)
Browse files Browse the repository at this point in the history
We start updating the documentation to remove some references to Octant
and the plugin, add some pointers to the Antrea web UI, and add some
deprecation notices. The plugin code itself and all the build
infrastructure are preserved, until after the Antrea v1.12 release.

See #4640

Signed-off-by: Antonin Bas <[email protected]>
  • Loading branch information
antoninbas authored Apr 25, 2023
1 parent eb7b3f0 commit a9e0a0c
Show file tree
Hide file tree
Showing 9 changed files with 1,515 additions and 341 deletions.
18 changes: 10 additions & 8 deletions ROADMAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,16 @@ We will continue to add more advanced NetworkPolicy features.

* **Network diagnostics and observability**
Network diagnostics and observability is one area we want to focus on. Antrea
already implements some useful features on this front, including [Octant UI
plugin](docs/octant-plugin-installation.md), [CLI](docs/antctl.md),
[Traceflow](docs/traceflow-guide.md), [network flow export and visualization](docs/network-flow-visibility.md),
[Prometheus metrics](docs/prometheus-integration.md), [OVS flow dumping](docs/antctl.md#dumping-ovs-flows)
and [packet tracing](docs/antctl.md#ovs-packet-tracing), [NetworkPolicy
diagnostics](docs/antctl.md#networkpolicy-commands). We will continue to
enhance existing features and add new features to help diagnose K8s networking
and NetworkPolicy implementation, and to provide good visibility into the Antrea
already implements some useful features on this front, including the [Antrea
UI](https://github.com/antrea-io/antrea-ui), [CLI](docs/antctl.md),
[Traceflow](docs/traceflow-guide.md), [network flow export and
visualization](docs/network-flow-visibility.md), [Prometheus
metrics](docs/prometheus-integration.md), [OVS flow
dumping](docs/antctl.md#dumping-ovs-flows) and [packet
tracing](docs/antctl.md#ovs-packet-tracing), [NetworkPolicy
diagnostics](docs/antctl.md#networkpolicy-commands). We will continue to enhance
existing features and add new features to help diagnose K8s networking and
NetworkPolicy implementation, and to provide good visibility into the Antrea
network.

* **NFV and Telco use cases**
Expand Down
1,758 changes: 1,455 additions & 303 deletions docs/assets/arch.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/assets/arch.svg.png
Binary file not shown.
2 changes: 0 additions & 2 deletions docs/contributors/github-labels.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@ The labels in this list originated within Kubernetes at
| area/component/cni | Issues or PRs related to the cni component | Any |
| area/component/controller | Issues or PRs related to the Controller component | Any |
| area/component/flow-aggregator | Issues or PRs related to the Flow Aggregator component | Any |
| area/component/octant-plugin | Issues or PRs related to the octant-plugin component | Any |
| area/dependency | Issues or PRs related to dependency changes | Any |
| area/endpoint/identity | Issues or PRs related to endpoint identity | Any |
| area/endpoint/selection | Issues or PRs related to endpoint selection | Any |
Expand All @@ -51,7 +50,6 @@ The labels in this list originated within Kubernetes at
| area/network-policy/lifecycle | Issues or PRs related to the network policy lifecycle | Any |
| area/network-policy/match | Issues or PRs related to matching packets | Any |
| area/network-policy/precedence | Issues or PRs related to network policy precedence | Any |
| area/octant | Issues or PRs related to Octant | Any |
| area/ops | Issues or PRs related to features which support network operations and troubleshooting | Any |
| area/ops/traceflow | Issues or PRs related to the Traceflow feature | Any |
| area/ovs/openflow | Issues or PRs related to Open vSwitch Open Flow | Any |
Expand Down
22 changes: 12 additions & 10 deletions docs/design/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,9 @@ init container that installs the CNI plugin - `antrea-cni` - on the Node and
ensures that the OVS kernel module is loaded and it is chained with the portmap
and bandwidth CNI plugins. All Antrea Controller, Agent, OVS daemons, and
`antrea-cni` bits are included in a single Docker image. Antrea also has a
command-line tool called `antctl`, and an [Octant](https://github.com/vmware-tanzu/octant)
UI plugin.
command-line tool called `antctl`.

<img src="../assets/arch.svg.png" width="600" alt="Antrea Architecture Overview">
<img src="../assets/arch.svg" width="600" alt="Antrea Architecture Overview">

### Antrea Controller

Expand Down Expand Up @@ -137,14 +136,17 @@ executed through `kubectl` as a `kubectl` plugin as well.
When accessing the Agent, `antctl` connects to the Agent's local REST endpoint,
and can only be executed locally in the Agent's container.

### Octant UI plugin
### Antrea web UI

Antrea also implements an Octant plugin which can show the Controller and
Agent's health and basic runtime information in the Octant UI. The Octant plugin
gets the Controller and Agent's information from the `AntreaControllerInfo` and
`AntreaAgentInfo` CRDs (Custom Resource Definition) in the Kubernetes API. The
CRDs are created by the Antrea Controller and each Antrea Agent to populate
their health and runtime information.
Antrea also comes with a web UI, which can show the Controller and Agent's
health and basic runtime information. The UI gets the Controller and Agent's
information from the `AntreaControllerInfo` and `AntreaAgentInfo` CRDs (Custom
Resource Definition) in the Kubernetes API. The CRDs are created by the Antrea
Controller and each Antrea Agent to populate their health and runtime
information.

The Antrea web UI provides additional capabilities. Please refer to the [Antrea
UI repository](https://github.com/antrea-io/antrea-ui) for more information.

## Pod Networking

Expand Down
9 changes: 5 additions & 4 deletions docs/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -212,11 +212,12 @@ are in different subnets, but does not encapsulate when the source and the
destination Nodes are in the same subnet. Refer to [this guide](noencap-hybrid-modes.md)
to learn how to configure Antrea with `NoEncap` or `Hybrid` mode.

### Octant UI
### Antrea Web UI

Antrea ships with an Octant UI plugin which can show runtime information of Antrea
components and perform Antrea Traceflow operations. Refer to [this guide](octant-plugin-installation.md)
to learn how to install Octant and the Antrea plugin.
Antrea comes with a web UI, which can show runtime information of Antrea
components and perform Antrea Traceflow operations. Please refer to the [Antrea
UI repository](https://github.com/antrea-io/antrea-ui) for installation
instructions and more information.

### OVS Hardware Offload

Expand Down
6 changes: 6 additions & 0 deletions docs/octant-plugin-installation.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Octant and antrea-octant-plugin installation

***Octant is no longer maintained and the antrea-octant-plugin is deprecated as
of Antrea v1.12. It will be removed completely in subsequent
releases. Please refer to [#4640](https://github.com/antrea-io/antrea/issues/4640)
for more information, and check out the [Antrea web UI](https://github.com/antrea-io/antrea-ui)
for an alternative.***

## Overview

There are two ways to deploy Octant and antrea-octant-plugin.
Expand Down
39 changes: 25 additions & 14 deletions docs/traceflow-guide.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# Traceflow User Guide

Antrea supports using Traceflow for network diagnosis. It can inject a packet
into OVS on a Node and trace the forwarding path of the packet across Nodes,
and it can also trace a matched packet of real traffic from or to a Pod. In
either case, a Traceflow operation is triggered by a Traceflow CRD which
specifies the type of Traceflow, the source and destination of the packet to
trace, and the headers of the packet. And the Traceflow results will be
populated to the `status` field of the Traceflow CRD, which include the
observations of the trace packet at various observations points in the
forwarding path. Besides creating the Traceflow CRD using kubectl, users can
also start a Traceflow using `antctl`, or from the Antrea Octant Plugin. When
using the Antrea Octant plugin, the Traceflow results can be visualized using a
into OVS on a Node and trace the forwarding path of the packet across Nodes, and
it can also trace a matched packet of real traffic from or to a Pod. In either
case, a Traceflow operation is triggered by a Traceflow CRD which specifies the
type of Traceflow, the source and destination of the packet to trace, and the
headers of the packet. And the Traceflow results will be populated to the
`status` field of the Traceflow CRD, which include the observations of the trace
packet at various observations points in the forwarding path. Besides creating
the Traceflow CRD using kubectl, users can also start a Traceflow using
`antctl`, or from the [Antrea web UI](https://github.com/antrea-io/antrea-ui).
When using the Antrea web UI, the Traceflow results can be visualized using a
graph.

## Table of Contents
Expand All @@ -22,7 +22,8 @@ graph.
- [Using kubectl and YAML file (IPv6)](#using-kubectl-and-yaml-file-ipv6)
- [Live-traffic Traceflow](#live-traffic-traceflow)
- [Using antctl](#using-antctl)
- [Using Octant with antrea-octant-plugin](#using-octant-with-antrea-octant-plugin)
- [Using the Antrea web UI](#using-the-antrea-web-ui)
- [Using Octant with antrea-octant-plugin (DEPRECATED)](#using-octant-with-antrea-octant-plugin-deprecated)
- [View Traceflow Result and Graph](#view-traceflow-result-and-graph)
- [View Traceflow CRDs](#view-traceflow-crds)
- [RBAC](#rbac)
Expand Down Expand Up @@ -51,8 +52,6 @@ is enabled in the Agent configuration:
AntreaProxy: true
```
For antrea-octant-plugin installation, please refer to [antrea-octant-installation](octant-plugin-installation.md).
## Start a New Traceflow
You can choose to use `kubectl` together with a YAML file, the `antctl traceflow`
Expand Down Expand Up @@ -172,7 +171,19 @@ spec:

Please refer to the corresponding [antctl page](antctl.md#traceflow).

### Using Octant with antrea-octant-plugin
### Using the Antrea web UI

Please refer to the [Antrea UI documentation](https://github.com/antrea-io/antrea-ui)
for installation instructions. Once you can access the UI in your browser,
navigate to the `Traceflow` page.

### Using Octant with antrea-octant-plugin (DEPRECATED)

***Octant is no longer maintained and the antrea-octant-plugin is deprecated as
of Antrea v1.12. It will be removed completely in subsequent
releases. Please refer to [#4640](https://github.com/antrea-io/antrea/issues/4640)
for more information, and check out the [Antrea web UI](https://github.com/antrea-io/antrea-ui)
for an alternative.***

<img src="https://downloads.antrea.io/static/tf_create.1.png" width="600" alt="Start a New Trace">

Expand Down
2 changes: 2 additions & 0 deletions plugins/octant/cmd/antrea-octant-plugin/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,8 @@ func main() {
// See https://github.com/vmware-tanzu/octant/issues/3012
logger.Info("antrea-octant-plugin is starting")
log.Printf("antrea-octant-plugin is starting")
logger.Info("***WARNING***: Octant is no longer maintained and this plugin is deprecated; it will be removed in the next Antrea release (see https://github.com/antrea-io/antrea/issues/4640)")
log.Printf("***WARNING***: Octant is no longer maintained and this plugin is deprecated; it will be removed in the next Antrea release (see https://github.com/antrea-io/antrea/issues/4640)")
p.Serve()
}

Expand Down

0 comments on commit a9e0a0c

Please sign in to comment.