Skip to content

Commit ec4c7e4

Browse files
Merge branch 'master' into pr/fredi/gw_failover
2 parents 0d487dc + e036f91 commit ec4c7e4

12 files changed

Lines changed: 465 additions & 554 deletions

File tree

docs/concepts/overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Wiring Diagram consists of the following resources:
3333
* __Server__: *any* physical server attached to the Fabric including Control Nodes
3434
* __Connection__: *any* logical connection for devices
3535
* usually it's a connection between two or more ports on two different devices
36-
* for example: MCLAG Peer Link, Unbundled/MCLAG server connections, Fabric connection between spine and leaf
36+
* for example: Fabric connection between spine and leaf, and server connections like Unbundled, Bundled, MCLAG, or ESLAG.
3737
* __VLANNamespace__ -> non-overlapping VLAN ranges for attaching servers
3838
* __IPv4Namespace__ -> non-overlapping IPv4 ranges for VPC subnets
3939

docs/install-upgrade/build-wiring.md

Lines changed: 10 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ spec:
4242

4343
1. See the [list](../reference/profiles.md) of profile names
4444
2. More information in the [User Guide](../user-guide/profiles.md#port-naming)
45-
3. Could be MCLAG, ESLAG or nothing, more details in [Redundancy
45+
3. Could be ESLAG or nothing, more details in [Redundancy
4646
Groups](../user-guide/devices.md#redundancy-groups)
4747

4848
## Design Discussion
@@ -79,12 +79,11 @@ A connection represents the physical wires in your data center. They connect swi
7979

8080
#### Server Connections
8181

82-
A server connection is a connection used to connect servers to the fabric. The fabric will configure the server-facing port according to the type of the connection (MLAG, Bundle, etc). The configuration of the actual server needs to be done by the server administrator. The server port names are not validated by the fabric and used as metadata to identify the connection. A server connection can be one of:
82+
A server connection is a connection used to connect servers to the fabric. The fabric will configure the server-facing port according to the type of the connection (Unbundled, Bundled, ESLAG, etc.). The configuration of the actual server needs to be done by the server administrator. The server port names are not validated by the fabric and used as metadata to identify the connection. A server connection can be one of:
8383

8484
- *Unbundled* - A single cable connecting switch to server.
8585
- *Bundled* - Two or more cables going to a single switch, a LAG or similar.
86-
- *MCLAG* - Two cables going to two different switches, also called dual homing. The switches will need a fabric link between them.
87-
- *ESLAG* - Two to four cables going to different switches, also called multi-homing. If four links are used there will need to be four switches connected to a single server with four NIC ports.
86+
- *ESLAG* - Two to four cables going to different switches, also called multi-homing (EVPN-MH). If four links are used there will need to be four switches connected to a single server with four NIC ports.
8887

8988
``` mermaid
9089
graph TD
@@ -95,45 +94,33 @@ graph TD
9594
L3([Leaf 3])
9695
L4([Leaf 4])
9796
L5([Leaf 5])
98-
L6([Leaf 6])
99-
L7([Leaf 7])
10097
10198
TS1[Server1]
10299
TS2[Server2]
103100
TS3[Server3]
104-
TS4[Server4]
105101
106-
S1 & S2 ---- L1 & L2 & L3 & L4 & L5 & L6 & L7
102+
S1 & S2 ---- L1 & L2 & L3 & L4 & L5
107103
L1 <-- Bundled --> TS1
108104
L1 <-- Bundled --> TS1
109105
L1 <-- Unbundled --> TS2
110-
L2 <-- MCLAG --> TS3
111-
L3 <-- MCLAG --> TS3
112-
L4 <-- ESLAG --> TS4
113-
L5 <-- ESLAG --> TS4
114-
L6 <-- ESLAG --> TS4
115-
L7 <-- ESLAG --> TS4
106+
L2 <-- ESLAG --> TS3
107+
L3 <-- ESLAG --> TS3
108+
L4 <-- ESLAG --> TS3
109+
L5 <-- ESLAG --> TS3
116110
117111
subgraph VPC 1
118112
TS1
119113
TS2
120114
TS3
121-
TS4
122-
end
123-
124-
subgraph MCLAG
125-
L2
126-
L3
127115
end
128116
129117
subgraph ESLAG
118+
L2
130119
L3
131120
L4
132121
L5
133-
L6
134-
L7
135122
end
136-
123+
137124
```
138125
#### Fabric Connections
139126

docs/reference/gateway-api.md.gen

Lines changed: 0 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,6 @@ GatewaySpec defines the desired state of Gateway.
199199

200200
_Appears in:_
201201
- [Gateway](#gateway)
202-
- [GatewayAgentSpec](#gatewayagentspec)
203202

204203
| Field | Description | Default | Validation |
205204
| --- | --- | --- | --- |
@@ -346,7 +345,6 @@ PeeringSpec defines the desired state of Peering.
346345

347346

348347
_Appears in:_
349-
- [GatewayAgentSpec](#gatewayagentspec)
350348
- [Peering](#peering)
351349

352350
| Field | Description | Default | Validation |
@@ -426,7 +424,6 @@ VPCInfoSpec defines the desired state of VPCInfo.
426424

427425
_Appears in:_
428426
- [VPCInfo](#vpcinfo)
429-
- [VPCInfoData](#vpcinfodata)
430427

431428
| Field | Description | Default | Validation |
432429
| --- | --- | --- | --- |
@@ -444,7 +441,6 @@ VPCInfoStatus defines the observed state of VPCInfo.
444441

445442
_Appears in:_
446443
- [VPCInfo](#vpcinfo)
447-
- [VPCInfoData](#vpcinfodata)
448444

449445
| Field | Description | Default | Validation |
450446
| --- | --- | --- | --- |
@@ -460,7 +456,6 @@ _Appears in:_
460456

461457

462458
_Appears in:_
463-
- [VPCInfoData](#vpcinfodata)
464459
- [VPCInfoSpec](#vpcinfospec)
465460

466461
| Field | Description | Default | Validation |
@@ -662,48 +657,9 @@ GatewayAgent is the Schema for the gatewayagents API.
662657
| `apiVersion` _string_ | `gwint.githedgehog.com/v1alpha1` | | |
663658
| `kind` _string_ | `GatewayAgent` | | |
664659
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | | |
665-
| `spec` _[GatewayAgentSpec](#gatewayagentspec)_ | | | |
666660
| `status` _[GatewayAgentStatus](#gatewayagentstatus)_ | | | |
667661

668662

669-
#### GatewayAgentSpec
670-
671-
672-
673-
GatewayAgentSpec defines the desired state of GatewayAgent.
674-
675-
676-
677-
_Appears in:_
678-
- [GatewayAgent](#gatewayagent)
679-
680-
| Field | Description | Default | Validation |
681-
| --- | --- | --- | --- |
682-
| `agentVersion` _string_ | AgentVersion is the desired version of the gateway agent to trigger generation changes on controller upgrades | | |
683-
| `gateway` _[GatewaySpec](#gatewayspec)_ | | | |
684-
| `vpcs` _object (keys:string, values:[VPCInfoData](#vpcinfodata))_ | | | |
685-
| `peerings` _object (keys:string, values:[PeeringSpec](#peeringspec))_ | | | |
686-
| `groups` _object (keys:string, values:[GatewayGroupInfo](#gatewaygroupinfo))_ | | | |
687-
| `communities` _object (keys:string, values:string)_ | | | |
688-
| `config` _[GatewayAgentSpecConfig](#gatewayagentspecconfig)_ | | | |
689-
690-
691-
#### GatewayAgentSpecConfig
692-
693-
694-
695-
696-
697-
698-
699-
_Appears in:_
700-
- [GatewayAgentSpec](#gatewayagentspec)
701-
702-
| Field | Description | Default | Validation |
703-
| --- | --- | --- | --- |
704-
| `fabricBFD` _boolean_ | FabricBFD defines if fabric-facing links should be configured with BFD | | |
705-
706-
707663
#### GatewayAgentStatus
708664

709665

@@ -724,40 +680,6 @@ _Appears in:_
724680
| `state` _[GatewayState](#gatewaystate)_ | State represents collected data from the dataplane API that includes FRR as well | | |
725681

726682

727-
#### GatewayGroupInfo
728-
729-
730-
731-
732-
733-
734-
735-
_Appears in:_
736-
- [GatewayAgentSpec](#gatewayagentspec)
737-
738-
| Field | Description | Default | Validation |
739-
| --- | --- | --- | --- |
740-
| `members` _[GatewayGroupMember](#gatewaygroupmember) array_ | | | |
741-
742-
743-
#### GatewayGroupMember
744-
745-
746-
747-
748-
749-
750-
751-
_Appears in:_
752-
- [GatewayGroupInfo](#gatewaygroupinfo)
753-
754-
| Field | Description | Default | Validation |
755-
| --- | --- | --- | --- |
756-
| `name` _string_ | | | |
757-
| `priority` _integer_ | | | |
758-
| `vtepIP` _string_ | | | |
759-
760-
761683
#### GatewayState
762684

763685

@@ -799,24 +721,6 @@ _Appears in:_
799721
| `pps` _float_ | PktsPerSecond is the number of packets sent per second on the peering | | |
800722

801723

802-
#### VPCInfoData
803-
804-
805-
806-
807-
808-
809-
810-
_Appears in:_
811-
- [GatewayAgentSpec](#gatewayagentspec)
812-
813-
| Field | Description | Default | Validation |
814-
| --- | --- | --- | --- |
815-
| `subnets` _object (keys:string, values:[VPCInfoSubnet](#vpcinfosubnet))_ | Subnets is a map of all subnets in the VPC (incl. CIDRs, VNIs, etc) keyed by the subnet name | | |
816-
| `vni` _integer_ | VNI is the VNI for the VPC | | |
817-
| `internalID` _string_ | | | |
818-
819-
820724
#### VPCStatus
821725

822726

docs/reference/profiles.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@ features and port naming scheme.
2828

2929
## Switch Feature Matrix
3030

31+
!!! warning "MCLAG Deprecation"
32+
MCLAG is being deprecated in favor of ESLAG (EVPN Multi-Homing) for multi-homing. While still supported, it is recommended to use ESLAG for new deployments.
33+
3134
The following table shows which features are supported by each switch profile:
3235

3336
| Switch Profile | Subinterfaces | ACLs | L2VNI | L3VNI | RoCE | MCLAG | ESLAG | QPN |

docs/troubleshooting/overview.md

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,20 @@ command:
1010
```console
1111
core@control-1 ~ $ kubectl fabric inspect fabric
1212
Switches:
13-
NAME PROFILE ROLE GROUPS SERIAL STATE GEN APPLIED HEARTBEAT
14-
leaf-01 Virtual Switch server-leaf mclag-1 000000000 Ready 1/1 4 minutes ago 15 seconds ago
15-
leaf-02 Virtual Switch server-leaf mclag-1 000000000 Ready 1/1 3 minutes ago 19 seconds ago
16-
leaf-03 Virtual Switch server-leaf eslag-1 000000000 Ready 2/2 5 minutes ago 12 seconds ago
17-
leaf-04 Virtual Switch server-leaf eslag-1 000000000 Ready 2/2 3 minutes ago 17 seconds ago
18-
leaf-05 Virtual Switch server-leaf 000000000 Ready 2/2 5 minutes ago 9 seconds ago
19-
spine-01 Virtual Switch spine 000000000 Ready 1/1 3 minutes ago 19 seconds ago
20-
spine-02 Virtual Switch spine 000000000 Ready 2/2 4 minutes ago 1 second ago
13+
NAME PROFILE ROLE GROUPS SERIAL STATE GEN APPLIED HEARTBEAT
14+
leaf-01 Virtual Switch server-leaf eslag-1 0000000000000000000 Ready 1/1 10 minutes ago 22 seconds ago
15+
leaf-02 Virtual Switch server-leaf eslag-1 0000000000000000000 Ready 1/1 21 minutes ago 19 seconds ago
16+
leaf-03 Virtual Switch server-leaf 0000000000000000000 Ready 1/1 38 minutes ago 10 seconds ago
17+
spine-01 Virtual Switch spine 0000000000000000000 Ready 1/1 15 minutes ago 10 seconds ago
18+
spine-02 Virtual Switch spine 0000000000000000000 Ready 1/1 45 minutes ago 24 seconds ago
2119
```
2220

2321
The output above is from the virtual testing environment. In a deployment of physical
2422
switches, the profile would match the profile of the switch, and the correct
2523
serial number would be displayed.
2624

2725
The `GROUP` column will be populated if you have redundancy configured on the
28-
switches, either MCLAG, or ESLAG.
26+
switches, such as ESLAG (EVPN Multi-Homing).
2927

3028
The `GEN` column shows the applied/current generation. If the numbers are equal
3129
then there are no pending changes for the switches.

0 commit comments

Comments
 (0)