Skip to content

Commit

Permalink
docs: ingressClass (#1076)
Browse files Browse the repository at this point in the history
* docs: ingressClass

* add link to proposal
  • Loading branch information
akshaysngupta committed Dec 1, 2020
1 parent 029e76f commit 4b836fb
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 0 deletions.
37 changes: 37 additions & 0 deletions docs/features/custom-ingress-class.md
@@ -0,0 +1,37 @@
# Custom Ingress Class
> **Minimum version:** 1.3.0
Custom ingress class allows you to customize the ingress class selector that AGIC will use when filtering the ingress manifests. AGIC uses `azure/application-gateway` as default ingress class. This will allow you to target multiple AGICs on a single namespace as each AGIC can now use it's own ingress class.

For instance, AGIC with ingress class `agic-public` can serves public traffic, and AGIC wit `agic-private` can serve "internal" traffic.

To use a custom ingress class,

1. Install AGIC by providing a value for `kubernetes.ingressClass` in helm config.
```bash
helm install ./helm/ingress-azure \
--name ingress-azure \
-f helm-config.yaml
--set kubernetes.ingressClass arbitrary-class
```

2. Then, change your ingress manifest's `kubernetes.io/ingress.class` annotation to match the value provided to AGIC.
```yaml
kind: Ingress
metadata:
name: go-server-ingress-affinity
namespace: test-ag
annotations:
kubernetes.io/ingress.class: arbitrary-class
spec:
rules:
- http:
paths:
- path: /hello/
backend:
serviceName: go-server-service
servicePort: 80
```

## Reference
* [Proposal Document](../../proposals\multiple-gateways-single-cluster.md)
1 change: 1 addition & 0 deletions docs/helm-values-documenation.md
Expand Up @@ -17,6 +17,7 @@
| `kubernetes.nodeSelector` | `{}` | Scheduling node selector |
| `kubernetes.tolerations` | `[]` | Scheduling tolerations |
| `kubernetes.affinity` | `{}` | Scheduling affinity |
| `kubernetes.ingressClass` | `azure/application-gateway` | Specify a [custom ingress class](features\custom-ingress-class.md) which will be used to match `kubernetes.io/ingress.class` in ingress manifest |
| `rbac.enabled` | false | Specify true if kubernetes cluster is rbac enabled |
| `armAuth.type` | | could be `aadPodIdentity` or `servicePrincipal` |
| `armAuth.identityResourceID` | | Resource ID of the Azure Managed Identity |
Expand Down

0 comments on commit 4b836fb

Please sign in to comment.