diff --git a/deployments/helm-chart-dos-arbitrator/.helmignore b/deployments/helm-chart-dos-arbitrator/.helmignore deleted file mode 100644 index c1347c2c27..0000000000 --- a/deployments/helm-chart-dos-arbitrator/.helmignore +++ /dev/null @@ -1,2 +0,0 @@ -# Patterns to ignore when building packages. -*.png diff --git a/deployments/helm-chart-dos-arbitrator/Chart.yaml b/deployments/helm-chart-dos-arbitrator/Chart.yaml deleted file mode 100644 index 0aabca8340..0000000000 --- a/deployments/helm-chart-dos-arbitrator/Chart.yaml +++ /dev/null @@ -1,17 +0,0 @@ -name: nginx-appprotect-dos-arbitrator -version: 0.1.0 -appVersion: 1.1.0 -apiVersion: v1 -kubeVersion: ">= 1.22.0-0" -description: NGINX App Protect Dos arbitrator -icon: https://raw.githubusercontent.com/nginxinc/kubernetes-ingress/v3.0.2/deployments/helm-chart-dos-arbitrator/chart-icon.png -home: https://github.com/nginxinc/kubernetes-ingress -sources: - - https://github.com/nginxinc/kubernetes-ingress/tree/v3.0.2/deployments/helm-chart-dos-arbitrator -keywords: - - appprotect-dos - - nginx - - arbitrator -maintainers: - - name: nginxinc - email: kubernetes@nginx.com diff --git a/deployments/helm-chart-dos-arbitrator/README.md b/deployments/helm-chart-dos-arbitrator/README.md deleted file mode 100644 index 82094ea720..0000000000 --- a/deployments/helm-chart-dos-arbitrator/README.md +++ /dev/null @@ -1,95 +0,0 @@ -# NGINX App Protect DoS Arbitrator Helm Chart - -## Introduction - -This chart deploys the NGINX App Protect DoS Arbitrator in your Kubernetes cluster. - -## Prerequisites - - - A [Kubernetes Version Supported by the Ingress Controller](https://docs.nginx.com/nginx-ingress-controller/technical-specifications/#supported-kubernetes-versions) - - Helm 3.0+. - - Git. - -## Getting the Chart Sources - -This step is required if you're installing the chart using its sources. Additionally, the step is also required for managing the custom resource definitions (CRDs), which the Ingress Controller requires by default, or for upgrading/deleting the CRDs. - -1. Clone the Ingress Controller repo: - ```console - $ git clone https://github.com/nginxinc/kubernetes-ingress.git --branch v3.0.2 - ``` -2. Change your working directory to /deployments/helm-chart-dos-arbitrator: - ```console - $ cd kubernetes-ingress/deployments/helm-chart-dos-arbitrator - ``` - -## Adding the Helm Repository - -This step is required if you're installing the chart via the helm repository. - -```console -$ helm repo add nginx-stable https://helm.nginx.com/stable -$ helm repo update -``` - -## Installing the Chart - -### Installing via Helm Repository - -To install the chart with the release name my-release-dos (my-release-dos is the name that you choose): - -```console -$ helm install my-release-dos nginx-stable/nginx-appprotect-dos-arbitrator -``` - - -### Installing Using Chart Sources - -To install the chart with the release name my-release-dos (my-release-dos is the name that you choose): - -```console -$ helm install my-release-dos . -``` - -The command deploys the App Protect DoS Arbitrator in your Kubernetes cluster in the default configuration. The configuration section lists the parameters that can be configured during installation. - -## Upgrading the Chart - -### Upgrading the Release - -To upgrade the release `my-release-dos`: - -#### Upgrade Using Chart Sources: - -```console -$ helm upgrade my-release-dos . -``` - -#### Upgrade via Helm Repository: - -```console -$ helm upgrade my-release-dos nginx-stable/nginx-appprotect-dos-arbitrator -``` - -## Uninstalling the Chart - -### Uninstalling the Release - -To uninstall/delete the release `my-release-dos`: - -```console -$ helm uninstall my-release-dos -``` - -The command removes all the Kubernetes components associated with the release and deletes the release. - -## Configuration - -The following tables lists the configurable parameters of the NGINX App Protect DoS Arbitrator chart and their default values. - -Parameter | Description | Default ---- | --- | --- -`arbitrator.resources` | The resources of the Arbitrator pods. | limits:
cpu: 500m
memory: 128Mi -`arbitrator.image.repository` | The image repository of the Arbitrator image. | docker-registry.nginx.com/nap-dos/app_protect_dos_arb -`arbitrator.image.tag` | The tag of the Arbitrator image. | 1.1.0 -`arbitrator.image.pullPolicy` | The pull policy for the Arbitrator image. | IfNotPresent diff --git a/deployments/helm-chart-dos-arbitrator/chart-icon.png b/deployments/helm-chart-dos-arbitrator/chart-icon.png deleted file mode 100644 index 52961c9a6f..0000000000 Binary files a/deployments/helm-chart-dos-arbitrator/chart-icon.png and /dev/null differ diff --git a/deployments/helm-chart-dos-arbitrator/templates/_helpers.tpl b/deployments/helm-chart-dos-arbitrator/templates/_helpers.tpl deleted file mode 100644 index 02714455be..0000000000 --- a/deployments/helm-chart-dos-arbitrator/templates/_helpers.tpl +++ /dev/null @@ -1,18 +0,0 @@ -{{/* vim: set filetype=mustache: */}} - -{{/* -Expand the name of the chart. -*/}} -{{- define "arbitrator.name" -}} -{{- printf "%s-%s" .Release.Name .Chart.Name | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create labels -*/}} -{{- define "arbitrator.labels" -}} -app.kubernetes.io/name: {{ include "arbitrator.name" . }} -helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} diff --git a/deployments/helm-chart-dos-arbitrator/templates/controller-deployment.yaml b/deployments/helm-chart-dos-arbitrator/templates/controller-deployment.yaml deleted file mode 100644 index 66d448a4ba..0000000000 --- a/deployments/helm-chart-dos-arbitrator/templates/controller-deployment.yaml +++ /dev/null @@ -1,30 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "arbitrator.name" . }} - namespace: {{ .Release.Namespace }} - labels: {{- include "arbitrator.labels" . | nindent 4 }} -spec: - replicas: 1 - selector: - matchLabels: - app: {{ include "arbitrator.name" . }} - template: - metadata: - labels: - app: {{ include "arbitrator.name" . }} - spec: - containers: - - name: {{ include "arbitrator.name" . }} - image: "{{ .Values.arbitrator.image.repository }}:{{ .Values.arbitrator.image.tag }}" - imagePullPolicy: "{{ .Values.arbitrator.image.pullPolicy }}" - resources: -{{ toYaml .Values.arbitrator.resources | indent 12 }} - ports: - - containerPort: 3000 - securityContext: - allowPrivilegeEscalation: false - runAsUser: 1001 - capabilities: - drop: - - ALL diff --git a/deployments/helm-chart-dos-arbitrator/templates/controller-service.yaml b/deployments/helm-chart-dos-arbitrator/templates/controller-service.yaml deleted file mode 100644 index f55a9fd8d2..0000000000 --- a/deployments/helm-chart-dos-arbitrator/templates/controller-service.yaml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: svc-appprotect-dos-arb - namespace: {{ .Release.Namespace }} - labels: {{- include "arbitrator.labels" . | nindent 4 }} -spec: - selector: - app: {{ include "arbitrator.name" . }} - ports: - - name: arb - port: 3000 - protocol: TCP - targetPort: 3000 - clusterIP: None diff --git a/deployments/helm-chart-dos-arbitrator/values.yaml b/deployments/helm-chart-dos-arbitrator/values.yaml deleted file mode 100644 index eeacd9d3cf..0000000000 --- a/deployments/helm-chart-dos-arbitrator/values.yaml +++ /dev/null @@ -1,16 +0,0 @@ -arbitrator: - ## The resources of the Arbitrator pods. - resources: - limits: - cpu: 500m - memory: 128Mi - - image: - ## The image repository of the Arbitrator. - repository: docker-registry.nginx.com/nap-dos/app_protect_dos_arb - - ## The tag of the Arbitrator image. - tag: "1.1.0" - - ## The pull policy for the Arbitrator image. - pullPolicy: IfNotPresent diff --git a/deployments/helm-chart/README.md b/deployments/helm-chart/README.md index 5f2fd8183d..78ffe0791b 100644 --- a/deployments/helm-chart/README.md +++ b/deployments/helm-chart/README.md @@ -13,7 +13,7 @@ This chart deploys the NGINX Ingress Controller in your Kubernetes cluster. - Alternatively, pull an Ingress Controller image with NGINX Plus and push it to your private registry by following the instructions from [here](https://docs.nginx.com/nginx-ingress-controller/installation/pulling-ingress-controller-image). - Alternatively, you can build an Ingress Controller image with NGINX Plus and push it to your private registry by following the instructions from [here](https://docs.nginx.com/nginx-ingress-controller/installation/building-ingress-controller-image). - Update the `controller.image.repository` field of the `values-plus.yaml` accordingly. - - If you’d like to use App Protect DoS, please install App Protect DoS Arbitrator helm chart. Make sure to install in the same namespace as the NGINX Ingress Controller. Note that if you install multiple NGINX Ingress Controllers in the same namespace, they will need to share the same Arbitrator because it is not possible to install more than one Arbitrator in a single namespace. + - If you’d like to use App Protect DoS, please install App Protect DoS Arbitrator [helm chart](https://github.com/nginxinc/nap-dos-arbitrator-helm-chart). Make sure to install in the same namespace as the NGINX Ingress Controller. Note that if you install multiple NGINX Ingress Controllers in the same namespace, they will need to share the same Arbitrator because it is not possible to install more than one Arbitrator in a single namespace. ## CRDs diff --git a/docs/content/app-protect-dos/installation-with-helm-dos-arbitrator.md b/docs/content/app-protect-dos/installation-with-helm-dos-arbitrator.md deleted file mode 100644 index 6c70cd9a16..0000000000 --- a/docs/content/app-protect-dos/installation-with-helm-dos-arbitrator.md +++ /dev/null @@ -1,98 +0,0 @@ ---- -title: Installation with Helm App Protect DoS Arbitrator -description: -weight: 1900 -doctypes: [""] -toc: true -docs: "DOCS-582" ---- - -## Prerequisites - - - A [Kubernetes Version Supported by the Ingress Controller](https://docs.nginx.com/nginx-ingress-controller/technical-specifications/#supported-kubernetes-versions) - - Helm 3.0+. - - Git. - -## Getting the Chart Sources - -This step is required if you're installing the chart using its sources. Additionally, the step is also required for managing the custom resource definitions (CRDs), which the Ingress Controller requires by default, or for upgrading/deleting the CRDs. - -1. Clone the Ingress Controller repo: - ```console - $ git clone https://github.com/nginxinc/kubernetes-ingress.git --branch v3.0.2 - ``` -2. Change your working directory to /deployments/helm-chart-dos-arbitrator: - ```console - $ cd kubernetes-ingress/deployments/helm-chart-dos-arbitrator - ``` - -## Adding the Helm Repository - -This step is required if you're installing the chart via the helm repository. - -```console -$ helm repo add nginx-stable https://helm.nginx.com/stable -$ helm repo update -``` - -## Installing the Chart - -### Installing via Helm Repository - -To install the chart with the release name my-release-dos (my-release-dos is the name that you choose): - -```console -$ helm install my-release-dos nginx-stable/nginx-appprotect-dos-arbitrator -``` - - -### Installing Using Chart Sources - -To install the chart with the release name my-release-dos (my-release-dos is the name that you choose): - -```console -$ helm install my-release-dos . -``` - -The command deploys the App Protect DoS Arbitrator in your Kubernetes cluster in the default configuration. The configuration section lists the parameters that can be configured during installation. - -## Upgrading the Chart - -### Upgrading the Release - -To upgrade the release `my-release-dos`: - -#### Upgrade Using Chart Sources: - -```console -$ helm upgrade my-release-dos . -``` - -#### Upgrade via Helm Repository: - -```console -$ helm upgrade my-release-dos nginx-stable/nginx-appprotect-dos-arbitrator -``` - -## Uninstalling the Chart - -### Uninstalling the Release - -To uninstall/delete the release `my-release-dos`: - -```console -$ helm uninstall my-release-dos -``` - -The command removes all the Kubernetes components associated with the release and deletes the release. - -## Configuration - -The following tables lists the configurable parameters of the NGINX App Protect DoS Arbitrator chart and their default values. - -Parameter | Description | Default ---- | --- | --- -`arbitrator.resources` | The resources of the Arbitrator pods. | limits:
cpu: 500m
memory: 128Mi -`arbitrator.image.repository` | The image repository of the Arbitrator image. | docker-registry.nginx.com/nap-dos/app_protect_dos_arb -`arbitrator.image.tag` | The tag of the Arbitrator image. | latest -`arbitrator.image.pullPolicy` | The pull policy for the Arbitrator image. | IfNotPresent diff --git a/docs/content/app-protect-dos/installation.md b/docs/content/app-protect-dos/installation.md index e0fb8787f0..3b7cb1e589 100644 --- a/docs/content/app-protect-dos/installation.md +++ b/docs/content/app-protect-dos/installation.md @@ -23,13 +23,26 @@ This document provides an overview of the steps required to use NGINX App Protec $ cd kubernetes-ingress/deployments ``` -## Create the namespace and service account +## Install the App Protect DoS Arbitrator + +### Helm Chart + +The App Protect DoS Arbitrator can be installed using the [NGINX App Protect DoS Helm Chart](https://github.com/nginxinc/nap-dos-arbitrator-helm-chart). +If you have the NGINX Helm Repository already added, you can install the App Protect DoS Arbitrator by running the following command: ```bash - kubectl apply -f common/ns-and-sa.yaml +helm install my-release-dos nginx-stable/nginx-appprotect-dos-arbitrator ``` -## Install the App Protect DoS Arbitrator +### YAML Manifests + +Alternatively, you can install the App Protect DoS Arbitrator using the YAML manifests provided in the Ingress Controller repo. + +- Create the namespace and service account + +```bash + kubectl apply -f common/ns-and-sa.yaml +``` - Deploy the app protect dos arbitrator ```bash diff --git a/hack/common-release-prep.sh b/hack/common-release-prep.sh index 95675c846c..b22bf9fdbd 100755 --- a/hack/common-release-prep.sh +++ b/hack/common-release-prep.sh @@ -22,8 +22,6 @@ FILES_TO_UPDATE_IC_VERSION=( deployments/helm-chart/values-nsm.yaml deployments/helm-chart/values-plus.yaml deployments/helm-chart/values.yaml - deployments/helm-chart-dos-arbitrator/Chart.yaml - deployments/helm-chart-dos-arbitrator/README.md ) FILE_TO_UPDATE_HELM_CHART_VERSION=(deployments/helm-chart/Chart.yaml)