Commit Graph

8 Commits

Author SHA1 Message Date
Haiyang Zheng
2abdf8dc58 [libteam] Add fallback support for single-member-port LAG (#1118)
* [libteam] Add fallback support for single-member-port LAG

* Allow the port to be selected if the LAG is configured
with fallback and port is in defaulted state due to missing
LACP PDUs from remote end
* Only enable port if LAG is admin up and the member port
is link up

* [team] Add lacp fallback config to teamd.j2 template

* [teamd] Resolve config conflict between fallback and minlink

* Remove min_link config if fallback is configured
* Add support for fallback config in minigraph

* [teamd] Only enable fallback if it is single-member-port LAG

Signed-off-by: Haiyang Zheng <haiyang.z@alibaba-inc.com>

* [teamd] Removing the admin status check in lacp_port_link_update

Will submit another pull request to fix this issue.

Signed-off-by: Haiyang Zheng <haiyang.z@alibaba-inc.com>
2017-12-16 11:28:18 -08:00
Taoyu Li
c9cc7aea41 [configdb] Migrate minigraph configurations to DB (#942)
Modify minigraph parser output format so it fit DB schema
Modify configuration templates to fit new schema
Systemd services dependencies are modified so database starts before any configuration consumer
2017-09-12 14:13:27 -07:00
Shuotian Cheng
a74b3a1eb7 [teamd]: Fix Jinja2 template for calculating min_ports (#791)
In Jinja2, '|' cannot be treated directly as piping operator. The
operator precedence of '|' is higher than '*'. The filter only applies
to the value just before it. Group the expression to make sure that the
filter is applied to the outcome of the expression.

Update the unit test to add such case.
2017-07-06 16:33:24 -07:00
Marian Pritsak
820e7aafd0 [docker-teamd]: Explicitly set LAG hwaddr (#664)
* [docker-teamd]: Explicitly set LAG hwaddr

Team device is initially created without any members and has a random HW
address, which is later changed to port's address. This configuration
sets team device's address explicitly to base MAC to avoid reassignment.

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Update teamd config tests with hwaddr

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Align HW addr byte for Centec and Mellanox

Signed-off-by: marian-pritsak <marianp@mellanox.com>

* Change HW addr to unicast in config tests

Signed-off-by: marian-pritsak <marianp@mellanox.com>
2017-06-06 16:13:38 -07:00
Shuotian Cheng
7b7a61693a [sonic-cfggen]: Add -p option and add teamd.j2 test (#414)
- Add -p --port-config option to feed sonic-cfggen with port_config.ini
  file when necessary.
- Update minigraph.py file to accept the -p option
- Add test_j2files.py test to test config.sh and all .j2 templates
  * Currently test_teamd is added to test both the config.sh and teamd.j2
    file works well with the t0 sample minigraph and sample port config
    file
  * The sample output is added to the folder sample_output for comparison

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-17 21:38:20 -07:00
Shuotian Cheng
783be14a5d [minigraph]: Add portchannels/vlans dictionary and update teamd templates (#408)
- minigraph_portchannel_interfaces and minigraph_vlan_interfaces are lists
  of interfaces and the name could duplicate due to multiple IPs
- Add minigraph_portchannels and minigraph_vlans dictionaries to support
  querying port channels and vlans via the name
- Update teamd.j2 template and config.sh file in docker-teamd
- Update zebra.conf.j2 template to add port channel interfaces

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-17 16:48:13 -07:00
Taoyu Li
be8ed80554 teamd: Use 75% links upperbound as min-links (#224) 2017-01-30 17:33:03 -08:00
Taoyu Li
4fe1bdcf87 sonic-cfggen with sonicv2 dockers (#190)
Add a sonic-config-engine to help generate config file based on minigraph and other data on runtime. Modify fpm, teamd, lldp, snmp, and platform-monitor docker to use sonic-config-engine to generate config in docker upon load.
2017-01-19 20:56:26 -08:00