You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(source/f5-virtual-server): add host aliases support for Virtual … (#5745)
* feat(source/f5-virtual-server): add host aliases support for Virtual Server source
* fix: markdown lint
* fix: markdown lint
* refactor(source/f5_virtualserver): remove if check for array length, already taken care of by the iterator
Copy file name to clipboardExpand all lines: docs/sources/f5-virtualserver.md
+55-1Lines changed: 55 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@
3
3
This tutorial describes how to configure ExternalDNS to use the F5 Networks VirtualServer Source. It is meant to supplement the other provider-specific setup tutorials.
4
4
5
5
The F5 Networks VirtualServer CRD is part of [this](https://github.com/F5Networks/k8s-bigip-ctlr) project.
6
-
See more in-depth info regarding the VirtualServer CRD [here](https://github.com/F5Networks/k8s-bigip-ctlr/blob/master/docs/config_examples/customResource/CustomResource.md#virtualserver).
6
+
See more in-depth info regarding the VirtualServer CRD [in the official documentation](https://github.com/F5Networks/k8s-bigip-ctlr/blob/master/docs/config_examples/customResource/CustomResource.md#virtualserver).
7
7
8
8
## Start with ExternalDNS with the F5 Networks VirtualServer source
9
9
@@ -37,3 +37,57 @@ Note that, in case you're not installing via Helm, you'll need the following in
37
37
- list
38
38
- watch
39
39
```
40
+
41
+
## How it works
42
+
43
+
The F5 VirtualServer source creates DNS records based on the following fields:
44
+
45
+
- **`spec.host`**: The primary hostname for the virtual server
46
+
- **`spec.hostAliases`**: Additional hostnames that should also resolve to the same targets
47
+
- **`spec.virtualServerAddress`**: The IP address to use as the target (if no target annotation is set)
48
+
- **`status.vsAddress`**: The IP address from the status field (if no spec address or target annotation is set)
49
+
50
+
### Example VirtualServer with hostAliases
51
+
52
+
```yaml
53
+
apiVersion: cis.f5.com/v1
54
+
kind: VirtualServer
55
+
metadata:
56
+
name: example-vs
57
+
namespace: default
58
+
spec:
59
+
host: www.example.com
60
+
hostAliases:
61
+
- alias1.example.com
62
+
- alias2.example.com
63
+
virtualServerAddress: 192.168.1.100
64
+
```
65
+
66
+
This configuration will create DNS A records for:
67
+
68
+
- `www.example.com`→ `192.168.1.100`
69
+
- `alias1.example.com`→ `192.168.1.100`
70
+
- `alias2.example.com`→ `192.168.1.100`
71
+
72
+
### Target Priority
73
+
74
+
The source follows this priority order for determining targets:
0 commit comments