Skip to content

feat: NGINX One Console use-case based home page #595

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 22 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
docs:
---

With this option, You can incorporate [Managed certificates]({{< ref "/nginx-one/how-to/certificates/manage-certificates.md#managed-and-unmanaged-certificates" >}}).
With this option, you can incorporate [Managed certificates]({{< ref "/nginx-one/nginx-configs/certificates/manage-certificates.md#managed-and-unmanaged-certificates" >}}).
In the **Choose Certificate** drop-down, select the managed certificate of your choice, and select **Add**. You can then:

1. Review details of the certificate. The next steps depend on whether the certificate is a CA bundle or a certificate / key pair.
Expand Down
27 changes: 27 additions & 0 deletions content/includes/nginx-one/how-to/add-instance.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
docs:
files:
- content/nginx-one/nginx-configs/add-instance.md
- content/nginx-one/getting-started.md
---
<!-- Note: I still want to set this up in getting-started.md. (has not happened yet) -->

You can add an instance to NGINX One Console in the following ways:

- Directly, under **Instances**
- Indirectly, by selecting a Config Sync Group, and selecting **Add Instance to Config Sync Group**

In either case, NGINX One Console gives you a choice for data plane keys:

- Create a new key
- Use an existing key

NGINX One Console takes the option you use, and adds the data plane key to a command that you'd use to register your target instance. You should see the command in the **Add Instance** screen in the console.

Connect to the host where your NGINX instance is running. Run the provided command to [install NGINX Agent]({{< ref "/nginx-one/getting-started#install-nginx-agent" >}}) dependencies and packages on that host.

```bash
curl https://agent.connect.nginx.com/nginx-agent/install | DATA_PLANE_KEY="<data_plane_key>" sh -s -- -y
```

Once the process is complete, you can configure that instance in your NGINX One Console.
39 changes: 39 additions & 0 deletions content/includes/use-cases/monitoring/n1c-dashboard-overview.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
docs:
files:
- content/nginx-one/metrics/enable-metrics.md
- content/nginx-one/getting-started.md
---

Navigating the dashboard:

- **Drill down into specifics**: For in-depth information on a specific metric, like expiring certificates, select the relevant link in the metric's card to go to a detailed overview page.
- **Refine metric timeframe**: Metrics show the last hour's data by default. To view data from a different period, select the time interval you want from the menu.

<span style="display: inline-block; margin-top: 20px; margin-bottom: 50px;">
{{< img src="nginx-one/images/nginx-one-dashboard.png">}}
</span>

{{<bootstrap-table "table table-striped table-bordered">}}
**NGINX One dashboard metrics**
| Metric | Description | Details |
|---|---|---|
| <i class="fas fa-heartbeat"></i> **Instance availability** | Understand the operational status of your NGINX instances. | - **Online**: The NGINX instance is actively connected and functioning properly. <br> - **Offline**: NGINX Agent is connected but the NGINX instance isn't running, isn't installed, or can't communicate with NGINX Agent. <br> - **Unavailable**: The connection between NGINX Agent and NGINX One has been lost or the instance has been decommissioned. <br> - **Unknown**: The current state can't be determined at the moment. |
| <i class="fas fa-code-branch"></i> **NGINX versions by instance** | See which NGINX versions are in use across your instances. | |
| <i class="fas fa-desktop"></i> **Operating systems** | Find out which operating systems your instances are running on. | |
| <i class="fas fa-certificate"></i> **Certificates** | Monitor the status of your SSL certificates to know which are expiring soon and which are still valid. | |
| <i class="fas fa-cogs"></i> **Config recommendations** | Get configuration recommendations to optimize your instances' settings. | |
| <i class="fas fa-shield-alt"></i> **CVEs (Common Vulnerabilities and Exposures)** | Evaluate the severity and number of potential security threats in your instances. | - **Major**: Indicates a high-severity threat that needs immediate attention. <br> - **Medium**: Implies a moderate threat level. <br> - **Minor** and **Low**: Represent less critical issues that still require monitoring. <br> - **Other**: Encompasses any threats that don't fit the standard categories. |
| <i class="fas fa-microchip"></i> **CPU utilization** | Track CPU usage trends and pinpoint instances with high CPU demand. | |
| <i class="fas fa-memory"></i> **Memory utilization** | Watch memory usage patterns to identify instances using significant memory. | |
| <i class="fas fa-hdd"></i> **Disk space utilization** | Monitor how much disk space your instances are using and identify those nearing capacity. | |
| <i class="fas fa-exclamation-triangle"></i> **Unsuccessful response codes** | Look for instances with a high number of HTTP server errors and investigate their error codes. | |
| <i class="fas fa-tachometer-alt"></i> **Top network usage** | Review the network usage and bandwidth consumption of your instances. | |

{{</bootstrap-table>}}






2 changes: 1 addition & 1 deletion content/nginx-one/about.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: ''
docs: DOCS-1392
title: About
title: Manage your NGINX fleet
toc: true
weight: 10
type:
Expand Down
6 changes: 3 additions & 3 deletions content/nginx-one/api/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: API
title: Automate with the NGINX One API
description:
weight: 1000
weight: 700
url: /nginx-one/api
---
---
10 changes: 5 additions & 5 deletions content/nginx-one/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,8 @@ You can:
- Remove a deployed certificate from a Config Sync Group

For more information, including warnings about risks, see our documentation on how you can:
- [Add a file]({{< ref "/nginx-one/how-to/nginx-configs/add-file.md" >}})
- [Manage certificates]({{< ref "/nginx-one/how-to/certificates/manage-certificates.md" >}})
- [Add a file]({{< ref "/nginx-one/nginx-configs/add-file.md" >}})
- [Manage certificates]({{< ref "/nginx-one/nginx-configs/certificates/manage-certificates.md" >}})

### Revert a configuration

Expand All @@ -108,15 +108,15 @@ From the NGINX One Console you can now:
- Ensure that your certificates are current and correct.
- Manage your certificates from a central location. This can help you simplify operations and remotely update, rotate, and deploy those certificates.

For more information, see the full documentation on how you can [Manage Certificates]({{< ref "/nginx-one/how-to/certificates/manage-certificates.md" >}}).
For more information, see the full documentation on how you can [Manage Certificates]({{< ref "/nginx-one/nginx-configs/certificates/manage-certificates.md" >}}).

## August 22, 2024

### Config Sync Groups

Config Sync Groups are now available in the F5 NGINX One Console. This feature allows you to manage and synchronize NGINX configurations across multiple instances as a single entity, ensuring consistency and simplifying the management of your NGINX environment.

For more information, see the full documentation on [Managing Config Sync Groups]({{< ref "/nginx-one/how-to/config-sync-groups/manage-config-sync-groups.md" >}}).
For more information, see the full documentation on [Managing Config Sync Groups]({{< ref "/nginx-one/nginx-configs/config-sync-groups/manage-config-sync-groups.md" >}}).

## August 8, 2024

Expand All @@ -136,7 +136,7 @@ Select the link for each CVE to see the details, including the CVE's publish dat

### Edit NGINX configurations

You can now make configuration changes to your NGINX instances. For more details, see [View and edit NGINX configurations]({{< ref "/nginx-one/how-to/nginx-configs/view-edit-nginx-configurations.md" >}}).
You can now make configuration changes to your NGINX instances. For more details, see [View and edit NGINX configurations]({{< ref "/nginx-one/nginx-configs/view-edit-nginx-configurations.md" >}}).

## May 28, 2024

Expand Down
6 changes: 6 additions & 0 deletions content/nginx-one/connect-instances/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
description:
title: Connect your instances to the console
weight: 200
url: /nginx-one/connect-instances/
---
6 changes: 6 additions & 0 deletions content/nginx-one/connect-instances/containers/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
description:
title: Connect your containers
weight: 300
url: /nginx-one/connect-instances/containers
---
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ This guide explains how to set up an F5 NGINX Plus Docker container with NGINX A
Before you start, make sure you have:

- A valid JSON Web Token (JWT) for your NGINX subscription.
- [A data plane key from NGINX One]({{< ref "/nginx-one/how-to/data-plane-keys/create-manage-data-plane-keys.md" >}}).
- [A data plane key from NGINX One]({{< ref "/nginx-one/connect-instances/data-plane-keys/create-manage-data-plane-keys.md" >}}).
- Docker installed and running on your system.

#### Download your JWT license from MyF5
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
description:
title: Set up data plane keys
weight: 100
url: /nginx-one/connect-instances/data-plane-keys
---
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
description:
title: Proxy setup
weight: 600
url: /nginx-one/how-to/settings/nginx-as-proxy
url: /nginx-one/connect-instances/proxy-setup
---
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ This guide explains how to set up NGINX as a proxy for other NGINX instances to
## Before you start

- [Install NGINX Open Source or NGINX Plus]({{< ref "/nginx/admin-guide/installing-nginx/" >}}).
- [Get a Data Plane Key from NGINX One]({{< ref "/nginx-one/how-to/data-plane-keys/create-manage-data-plane-keys.md" >}}).
- [Get a Data Plane Key from NGINX One]({{< ref "/nginx-one/connect-instances/data-plane-keys/create-manage-data-plane-keys.md" >}}).

---

Expand Down Expand Up @@ -61,7 +61,7 @@ In this step, we'll configure an NGINX instance to act as a proxy server for NGI

---

## Configure NGINX Agent to use the proxy instance
## Configure NGINX Agent to use the proxy

To set up your other NGINX instances to use the proxy instance to connect to NGINX One, update the NGINX Agent configuration on those instances to use the proxy NGINX instance's IP address. See the example NGINX Agent configuration below.

Expand Down Expand Up @@ -95,7 +95,7 @@ To set up your other NGINX instances to use the proxy instance to connect to NGI

For more information, refer to the following resources:

- [Installing NGINX and NGINX Plus]({{< ref "/nginx/admin-guide/installing-nginx/" >}})
- [Create and manage data plane keys]({{< ref "/nginx-one/how-to/data-plane-keys/create-manage-data-plane-keys.md" >}})
- [Install NGINX and NGINX Plus]({{< ref "/nginx/admin-guide/installing-nginx/" >}})
- [Create and manage data plane keys]({{< ref "/nginx-one/connect-instances/data-plane-keys/create-manage-data-plane-keys.md" >}})
- [NGINX Agent Installation and upgrade](https://docs.nginx.com/nginx-agent/installation-upgrade/)
- [NGINX Agent Configuration](https://docs.nginx.com/nginx-agent/configuration/)
- [NGINX Agent Configuration](https://docs.nginx.com/nginx-agent/configuration/)
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
description:
title: Settings
weight: 500
url: /nginx-one/how-to/settings
url: /nginx-one/connect-instances/settings
draft: true
---
49 changes: 15 additions & 34 deletions content/nginx-one/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,10 @@ To get started using NGINX One, enable the service on F5 Distributed Cloud.

Next, add your NGINX instances to NGINX One. You'll need to create a data plane key and then install NGINX Agent on each instance you want to monitor.

### Add an instance

Depending on whether this is your first time using NGINX One Console or you've used it before, follow the appropriate steps to add an instance:
The following instructions include minimal information, sufficient to "get started." See the following links for detailed instructions:

- **For first-time users:** On the welcome screen, select **Add Instance**.
- **For returning users:** If you've added instances previously and want to add more, select **Instances** on the left menu, then select **Add Instance**.
- [Create and manage data plane keys]({{< ref "nginx-one/connect-instances/data-plane-keys/create-manage-data-plane-keys.md" >}})
- [Add an NGINX instance]({{< ref "nginx-one/nginx-configs/add-instance.md" >}})

### Generate a data plane key {#generate-data-plane-key}

Expand All @@ -43,11 +41,18 @@ To generate a data plane key:
{{<call-out "caution" "Data plane key guidelines" "fas fa-key" >}}
Data plane keys are displayed only once and cannot be retrieved later. Be sure to copy and store this key securely.

Data plane keys expire after one year. You can change this expiration date later by [editing the key]({{< ref "nginx-one/how-to/data-plane-keys/create-manage-data-plane-keys.md#change-expiration-date" >}}).
Data plane keys expire after one year. You can change this expiration date later by [editing the key]({{< ref "nginx-one/connect-instances/data-plane-keys/create-manage-data-plane-keys.md#change-expiration-date" >}}).

[Revoking a data plane key]({{< ref "nginx-one/how-to/data-plane-keys/create-manage-data-plane-keys.md#revoke-data-plane-key" >}}) disconnects all instances that were registered with that key.
[Revoking a data plane key]({{< ref "nginx-one/connect-instances/data-plane-keys/create-manage-data-plane-keys.md#revoke-data-plane-key" >}}) disconnects all instances that were registered with that key.
{{</call-out>}}

### Add an instance

Depending on whether this is your first time using NGINX One Console or you've used it before, follow the appropriate steps to add an instance:

- **For first-time users:** On the welcome screen, select **Add Instance**.
- **For returning users:** If you've added instances previously and want to add more, select **Instances** on the left menu, then select **Add Instance**.


### Install NGINX Agent

Expand Down Expand Up @@ -134,37 +139,11 @@ If you followed the [Installation and upgrade](https://docs.nginx.com/nginx-agen

---

## Enable NGINX metrics reporting

The NGINX One Console dashboard relies on APIs for NGINX Plus and NGINX Open Source Stub Status to report traffic and system metrics. The following sections show you how to enable those metrics.

### Enable NGINX Plus API

<!-- possible future include: "/use-cases/monitoring/enable-nginx-plus-api.md" -->
To collect metrics for NGINX Plus, add the following to your NGINX Plus configuration file:

```nginx
# Enable the /api/ location with appropriate access control
# to use the NGINX Plus API.
#
location /api/ {
api write=on;
allow 127.0.0.1;
deny all;
}
```

This configuration:

- Enables the NGINX Plus API.
- Allows requests only from `127.0.0.1` (localhost).
- Blocks all other requests for security.

After saving the changes, reload NGINX to apply the new configuration:

```shell
nginx -s reload
```
{{< include "/use-cases/monitoring/enable-nginx-plus-api.md" >}}

### Enable NGINX Open Source Stub Status API

Expand All @@ -183,6 +162,8 @@ After connecting your NGINX instances to NGINX One, you can monitor their perfor

### Overview of the NGINX One dashboard

{{< include "/use-cases/monitoring/n1c-dashboard-overview.md" >}}

Navigating the dashboard:

- **Drill down into specifics**: For in-depth information on a specific metric, like expiring certificates, click on the relevant link in the metric's card to go to a detailed overview page.
Expand Down
4 changes: 2 additions & 2 deletions content/nginx-one/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ description: ''
docs: DOCS-1396
title: Glossary
toc: true
weight: 1000
weight: 800
type:
- reference
---
Expand All @@ -14,7 +14,7 @@ This glossary defines terms used in the F5 NGINX One Console and F5 Distributed
{{<bootstrap-table "table table-striped table-bordered">}}
| Term | Definition |
|-------------|-------------|
| **Config Sync Group** | A group of NGINX systems (or instances) with identical configurations. They may also share the same certificates. However, the instances in a Config Sync Group could belong to different systems and even different clusters. For more information, see this explanation of [Important considerations]({{< ref "/nginx-one/how-to/config-sync-groups/manage-config-sync-groups.md#important-considerations" >}}) |
| **Config Sync Group** | A group of NGINX systems (or instances) with identical configurations. They may also share the same certificates. However, the instances in a Config Sync Group could belong to different systems and even different clusters. For more information, see this explanation of [Important considerations]({{< ref "/nginx-one/nginx-configs/config-sync-groups/manage-config-sync-groups.md#important-considerations" >}}) |
| **Data Plane** | The data plane is the part of a network architecture that carries user traffic. It handles tasks like forwarding data packets between devices and managing network communication. In the context of NGINX, the data plane is responsible for tasks such as load balancing, caching, and serving web content. |
| **Instance** | An instance is an individual system with NGINX installed. You can group the instances of your choice in a Config Sync Group. When you add an instance to NGINX One, you need to use a data plane key. |
| **Namespace** | In F5 Distributed Cloud, a namespace groups a tenant’s configuration objects, similar to administrative domains. Every object in a namespace must have a unique name, and each namespace must be unique to its tenant. This setup ensures isolation, preventing cross-referencing of objects between namespaces. You'll see the namespace in the NGINX One Console URL as `/namespaces/<namespace name>/` |
Expand Down
6 changes: 0 additions & 6 deletions content/nginx-one/how-to/_index.md

This file was deleted.

6 changes: 0 additions & 6 deletions content/nginx-one/how-to/certificates/_index.md

This file was deleted.

6 changes: 0 additions & 6 deletions content/nginx-one/how-to/config-sync-groups/_index.md

This file was deleted.

6 changes: 0 additions & 6 deletions content/nginx-one/how-to/containers/_index.md

This file was deleted.

6 changes: 0 additions & 6 deletions content/nginx-one/how-to/data-plane-keys/_index.md

This file was deleted.

6 changes: 0 additions & 6 deletions content/nginx-one/how-to/nginx-configs/_index.md

This file was deleted.

Loading
Loading