Skip to content
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions content/nim/support/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: "Support"
description: "How to get Support for F5 NGINX Management Suite"
weight: 999
url: /nginx-instance-manager/support/
---
103 changes: 103 additions & 0 deletions content/nim/support/contact-support.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
---
docs: DOCS-817
doctypes:
- concept
tags:
- docs
title: Where to go for support
toc: true
weight: 300
---

## Support policy

F5 NGINX Instance Manager follows the support policy detailed in the knowledge base article: [K000140156](https://my.f5.com/manage/s/article/K000140156).

{{<important>}}
Support licenses for NGINX Instance Manager **do not include** support for the NGINX instances being managed.

Community support is available for NGINX Open Source instances on the [NGINX mailing list](http://mailman.nginx.org/mailman/listinfo). If you need support for NGINX Plus or [prebuilt NGINX Open Source packages](https://nginx.org/en/linux_packages.html), you must [purchase an NGINX license](https://www.nginx.com/purchase-nginx/).
{{</important>}}

---

## Contact NGINX support

For help with installing, troubleshooting, or using the NGINX Instance Manager, contact support through the [MyF5 Customer Portal](https://account.f5.com/myf5).

---

## Support script

The Support team might ask you to run one or both of the following scripts to troubleshoot issues. Attach the script outputs to your support case.

- `/usr/share/nginx-manager` – for troubleshooting issues with the NGINX Instance Manager host.
- `/usr/share/nginx-agent` – for troubleshooting issues with a data plane instance running the NGINX Agent.

### Run the support script on the NGINX Instance Manager host

1. Open an SSH connection to the NGINX Instance Manager host and log in.
2. Run the following command:

```bash
/usr/share/nginx-manager/support.sh
```

### Run the script on a data plane instance

1. Open an SSH connection to the data plane instance and log in.
2. Run the following command:

```bash
/usr/share/nginx-agent/support.sh
```

### Collected information

The scripts collect the following information:

- System details (`/etc/os-release`).
- Checks for installed NGINX, NGINX Instance Manager, and NGINX Agent instances.
- NGINX data:
- `nginx -T` (current configuration).
- `nginx -V` (version and runtime details).
- `/var/log/nginx/*` (log files).
- NGINX Instance Manager log files:
- `/var/log/nginx-manager/*`
- API queries from NGINX Instance Manager:
- `GET /api/v0/instances`
- `GET /api/v0/scan`
- `GET /api/v0/about/system`
- `GET /api/v0/about/license`
- NGINX Agent log files:
- `/var/log/nginx-agent/*`

### Output file

The script creates a file in the `/tmp` directory, such as `/tmp/nginx-manager-log.tar.gz`. Review the file and **remove confidential information** before sharing it with F5.

For example, if your `/etc/nginx-manager` directory contains private keys or certificates, remove them using:

```bash
gzip -d /tmp/nginx-manager-log.tar.gz

tar -f /tmp/nginx-manager-log.tar.gz \
--delete /etc/nginx-manager/example.key \
--delete /etc/nginx-manager/example.crt

gzip -9 /tmp/nginx-manager-log.tar.gz
```

{{<note>}}Files shared with F5 are protected under the [F5 Support and Maintenance Privacy Statement](https://www.f5.com/company/policies/support-and-maintenance-privacy-statement).{{</note>}}

---

## Additional resources

### AskF5 knowledge base

Find solutions to common issues and corner cases on [AskF5](https://support.f5.com/csp/knowledge-center/software/NGINX?module=NGINX%20Instance%20Manager).

### NGINX training and professional services

Get expert guidance and hands-on support from [NGINX Professional Services](https://www.nginx.com/services/#package_detail_section).
150 changes: 150 additions & 0 deletions content/nim/support/k8s-support-package.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
---
docs: DOCS-1123
doctypes:
- reference
- task
tags:
- docs
title: Create a support package from a Helm installation
toc: true
weight: 200
---

{{< include "/nim/decoupling/note-legacy-nms-references.md" >}}

## Overview

Use the Kubernetes support package script to collect system and service information for troubleshooting and debugging. The script packages the data into a tar archive that you can share with [NGINX Customer Support]({{< relref "nim/support/contact-support.md" >}}).

---

## Before you begin

To follow this guide, ensure you have:

- `bash` 4.0 or higher.

---

## Usage

The F5 NGINX Instance Manager Helm chart includes the `k8s-support-package.sh` script located at:

- `/support-package/k8s-support-package.sh`.

### Steps to create a support package

1. Download the latest NGINX Instance Manager Helm chart:

```bash
helm repo add nginx-stable https://helm.nginx.com/stable
helm repo update
helm pull nginx-stable/nms
tar zxvf nms-<version>.tgz
```

2. Run the Kubernetes support package script. For available options, refer to the [arguments](#arguments) section:

```bash
bash ./nms/charts/nms-hybrid/support-package/k8s-support-package.sh
```

The support package is saved in the directory where the script is run.

3. Extract the package using the `tar` command:

```bash
tar -xvf k8s-support-pkg-<timestamp>.tar.gz
```

---

## Arguments

The table below lists arguments available for the Kubernetes support package script.

| Short | Long | Description | Example | Default |
|-------|------------------------|------------------------------------------------------------|---------------|----------|
| `-h` | `--help` | Prints information about the script arguments to `stdout`. | `--help` | N/A |
| `-o` | `--output_dir` | Specifies the output directory for the tar archive. | `-o ~/output` | `$(pwd)` |
| `-n` | `--namespace` | Specifies the namespace of the Helm installation. | `-n nms` | `<none>` |
| `-xd` | `--exclude_databases` | Excludes Dqlite database backup data. | `-xd` | `False` |
| `-xt` | `--exclude_timeseries` | Excludes ClickHouse time series data. | `-xt` | `False` |
| `-m` | `--modules` | Includes specific modules in Dqlite database backup data. | `-m acm` | `False` |

---

## Package contents

The Kubernetes support package includes directories with detailed information about your cluster, namespace, application, and database state.

### k8s-support-package.log

A log of all output generated by the `k8s-support-package.sh` script.

### chart-files

A snapshot of the Helm chart files in the parent directory, excluding the directory where the script runs.

### version-info

Versions of:

- Helm chart
- `kubectl` tool
- `helm` tool
- NGINX gateway
- ClickHouse

### cluster-info

Cluster-related data, including:

- Cluster details
- Node information
- Storage class configurations

### namespace-info

Namespace-specific details, including:

- General namespace data
- Events
- API version
- API services and resources

### app-info

Application-related information for NGINX Instance Manager:

- Deployments
- Services
- Persistent Volumes and Claims
- Secrets and Configmaps
- Pods

### pod-logs

Logs of processes for NGINX Instance Manager, NGINX gateway, and ClickHouse. Files in this directory follow the naming convention: `pod_name-<timestamp>.logs`.

### pod-system-info

Status and state details for each pod, including:

- Operating system version
- Environment variables
- Running processes

### dqlite

The script uses the `dqlite-backup` executable (located in `/etc/nms/scripts/` within relevant containers) to collect database dumps. Data is saved in:

- `dqlite/core`
- `dqlite/dpm`
- `dqlite/integrations`

If the `--modules` flag is specified, data is saved to `dqlite/<moduleName>`.

### timeseries

Contains metrics, events, and statistics from the `nms` ClickHouse database.
Loading
Loading