Commit Graph

601 Commits

Author SHA1 Message Date
lguohan
9f6f3e4046
[docker-saiserver]: build docker-saiserver (#2244)
* build docker-saiserver

Signed-off-by: Guohan Lu <gulv@microsoft.com>

* add docker saiserver mlnx/bfn/cavm

* set nephos to 1.3.5

Signed-off-by: Guohan Lu <gulv@microsoft.com>
2018-11-14 01:15:31 -08:00
zhenggen-xu
51a76614a3 Restore neighbor table to kernel during system warm-reboot (#2213)
* Restore neighbor table to kernel during system warm-reboot

Added a service: "restore_neighbors" to restore neighbor table into
kernel during system warm reboot. The service is started by supervisord
in swss docker when the docker is started.

In case system warm reboot is enabled, it will try to restore the neighbor
table from appDB into kernel through netlink API calls and update the neighbor
table by sending arp/ns requests to all neighbor entries, then it sets the
stateDB flag for neighsyncd to continue the reconciliation process.

-- Added tcpdump python-scapy debian package into orchagent and vs dockers.
-- Added python module: pyroute2 netifaces into orchagent and vc dockers.
-- Workarounded tcpdump issue in the vs docker

Signed-off-by: Zhenggen Xu <zxu@linkedin.com>

* Move the restore_neighbors.py to sonic-swss submodule
Made changes to makefiles accordingly

Make dockerfile.j2 changes and supervisord config changes

Add python monotonic lib for time access

Signed-off-by: Zhenggen Xu <zxu@linkedin.com>

* Added PYTHON_SWSSCOMMON as swss runtime dependency

Signed-off-by: Zhenggen Xu <zxu@linkedin.com>
2018-11-09 17:06:09 -08:00
pavel-shirshov
61fe8fd2b5
Add /host filesystem into teamd docker (#2235) 2018-11-09 16:14:03 -08:00
stepanblyschak
f4cf54fe4f [ipinip] Fix ipinip.json.j2 for mlnx platform (#2210)
Signed-off-by: Stepan Blyschak <stepanb@mellanox.com>
2018-10-30 11:02:06 -07:00
Joe LeVeque
1e1add90f9
Remove Arista-specific service ACL solution; All platforms now use caclmgrd (#2202) 2018-10-29 10:25:18 -07:00
Taoyu Li
6a37365d93 [zebra.conf] Avoid zebra crash upon empty configuration (#2203) 2018-10-28 22:32:31 -07:00
Prince Sunny
b954fa9c13 [ipdecap]: Setup decap destination IP based on platform (#2191) 2018-10-25 13:13:26 -07:00
Qi Luo
709cd5a9f5
Set swssconfig.sh startsecs=0 for quick exit (#2181)
The default startsecs is 1 second. However, swssconfig.sh will quickly
exit with expected exit code 0 during warm starting. This case should
not be treated as a failure
2018-10-22 23:40:24 -07:00
Shuotian Cheng
7313e7d9bc [teamd]: Add teammgrd in docker-teamd (#2064)
Remove the teamd.j2 templates used for starting the teamd. Add
teammgrd instead to manage all port channel related configuration
changes. Remove front panel port related configurations in
interfaces.j2 templates as well.

Remove teamd.sh script and use teammgrd to start all the teamd
processes. Remove all the logics in the start.sh script as well.

Update the sonic-swss submodule.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2018-10-19 03:41:53 -07:00
pavel-shirshov
3e1b9e17b4 [teamd] Force team device recreation in case it already exists (#2168)
* Force team device recreation in case it already exists
2018-10-18 15:22:26 -07:00
Prince Sunny
4a22de42c6 Encap src_ip is not required for the IPinIP decap tunnels (#2162)
* Encap src_ip is not required for the IPinIP decap tunnels

* Removed unused variables
2018-10-17 18:31:19 -07:00
stepanblyschak
7757bc2ddf [docker-snmp]: Remove alias_map json since it is not needed anymore (#2159)
Signed-off-by: Stepan Blyschak <stepanb@mellanox.com>
2018-10-16 09:33:58 -07:00
Taoyu Li
36ca171c6e
[ipinip config] Add v6 ip and peering ip besides currect v4 loopback (#2145)
[ipinip config] Add v6 ip and peering ip besides currect v4 loopback
2018-10-15 13:00:57 -07:00
lguohan
d3a9eed21e
[docker-sonic-mgmt]: fix azure kusto library version to 0.0.13 (#2138)
Signed-off-by: Guohan Lu <gulv@microsoft.com>
2018-10-11 16:36:00 -07:00
zhenggen-xu
673bb6580e [sonic-frr]: FRR 4.0 integration with SONiC (#2099)
* FRR 4.0 integration with SONiC

-- Uses SONiC FRR repo frr/4.0 (which has SONiC support) to build image
-- Makefile changes to make frr4.0 builtable.
-- Updated/Added FRR configuration files
-- bgpd jinja template fixes

To build SONiC images with FRR4.0, simply edit rules/config file and change
routing stack to following:

SONIC_ROUTING_STACK = frr

and then build images as usual.

* Used integrated-vtysh-config in FRR
Changed to single template: frr.conf.j2 for configuration and added tests
2018-10-02 10:24:59 -07:00
Jipan Yang
dedd5624a0 Adapt to the new WARM_RESTART_TABLE table schema: change from restart… (#2083)
* Adapt to the new WARM_RESTART_TABLE table schema: change from restart_count to restore_count

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Update variable and function name to match restore_count name change

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Update swss submodule for warm restart schema change

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>
2018-10-02 06:08:26 -07:00
Ying Xie
542b4332c8 [hwsku-init] Introduce mechanism to run HWSKU specific initialization code (#2072)
When there is HWSKU specific initialization needs to be performed, please
add hwsku-init script under device folder, it will be invoked by swss
before any subsequent initializations.

Signed-off-by: Ying Xie <ying.xie@microsoft.com>
2018-09-25 10:07:32 +00:00
Marian Pritsak
8a5e6ac47d [docker-orchagent]: Add vrfmgrd to supervisorctl (#2055)
* [docker-orchagent]: Add vrfmgrd to supervisorctl

Signed-off-by: Marian Pritsak <marianp@mellanox.com>

* [sonic-vs]: Add vrfmgrd to supervisorctl

Signed-off-by: Marian Pritsak <marianp@mellanox.com>
2018-09-19 22:18:39 -07:00
Marian Pritsak
51a8d8ecfa [docker-orchagent]: Upgrade iproute2 to v4.9 (#2052)
Signed-off-by: Marian Pritsak <marianp@mellanox.com>
2018-09-16 17:10:03 -07:00
Jipan Yang
3f049d33bf Warm reboot: Don't load json conifg like copp, ininip, ports and switch again upon… (#1939)
* Don't load json conifg like copp, ininip, ports and switch again upon swss warm start

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* double check DB data exists in case only swss warm restart is configured at system reboot

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Double check existence of db data before skipping json load, and format update

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>
2018-09-07 12:25:38 -07:00
Shuotian Cheng
9413fa9a7b
[interfaces]: Move IP/MTU information from interfaces file into database (#1908)
- Move front panel ports and port channels MTU and IP configurations out of
the current /etc/network/interfaces file and store them in the configuration
database.

- The default MTU value for both front panel ports and the port channels is
9100. They are set via the minigraph or 9100 by default.

- Introduce portmgrd which will pick up the MTU configurations from the
configuration database.

- The updated intfmgrd will pick up IP address changes from the configuration
database.

- Update sonic-swss submodule

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2018-08-20 11:19:16 -07:00
lguohan
0cd4ef0c85
[socat]: build socat with readline (#1919)
support readline in bcmsh

Signed-off-by: Guohan Lu <gulv@microsoft.com>
2018-08-13 01:12:58 -07:00
lguohan
f3ca7c422f
[rsyslog]: use # to separate container name and program name in syslog message (#1918)
Previously use / to separate container name and program name.

However, in rsyslogd:

Precisely, the programname is terminated by either (whichever occurs first):

end of tag
nonprintable character
‘:’
‘[‘
‘/’
The above definition has been taken from the FreeBSD syslogd sources.

Signed-off-by: Guohan Lu <gulv@microsoft.com>
2018-08-12 22:23:58 -07:00
yangbashuang
eefd3f4ddb [platform]: update centec platform drivers and sai (#1702) 2018-08-12 17:22:08 -07:00
zhenggen-xu
d761630f73 Fix potential blackholing/looping traffic when link-local was used and refresh ipv6 neighbor to avoid CPU hit (#1904)
* Fix potential blackholing/looping traffic and refresh ipv6 neighbor to avoid CPU hit

In case ipv6 global addresses were configured on L3 interfaces and used for peering,
and routing protocol was using link-local addresses on the same interfaces as prefered nexthops,
the link-local addresses could be aged out after a while due to no activities towards the link-local
addresses themselves. And when we receive new routes with the link-local nexthops, SONiC won't insert
them to the HW, and thus cause looping or blackholing traffic.

Global ipv6 addresses on L3 interfaces between switches are refreshed by BGP keeplive and other messages.

On server facing side, traffic may hit fowarding plane only, and no refresh for the ipv6 neighbor entries regularly.
This could age-out the linux kernel ipv6 neighbor entries, and HW neighbor table entries could be removed,
and thus traffic going to those neighbors would hit CPU, and cause traffic drop and temperary CPU high load.

Also, if link-local addresses were not learned, we may not get them at all later.

It is intended to fix all above issues.

Changes:
Add ndisc6 package in swss docker and use it for ipv6 ndp ping to update the neighbors' state on Vlan interfaces
Change the default ipv6 neighbor reachable timer to 30mins
Add periodical ipv6 multicast ping to ff02::11 to get/refresh link-local neighbor info.

* Fix review comments:
Add PORTCHANNEL_INTERFACE interface for ipv6 multicast ping
format issue

* Combine regular L3 interface and portchannel interface for looping

* Add ndisc6 package to vs docker
2018-08-12 03:14:55 -07:00
paavaanan
ecfca8bf23 [devices]: DellEMC new platform support for z9264f - 64x100 (#26)
* Added new platform support DellEMC - Z92264f - 64x100

* Includes changes with Makefiles, sfputil, eeprom and default minigraph

* Led support for Z9264f platform

* Includes changes on default minigraph

* ipmitool implementation in pmon docker. platform_sensors script is inclued in pmon startup
2018-08-11 09:09:03 +00:00
Joe LeVeque
7aefa185d4 Download newer version (8.23.0-2) of rsyslog from jessie-backports in hopes of eliminating memory leaks (#1912) 2018-08-09 23:56:41 -07:00
Qi Luo
4d784d82ce
Upgrade azure-keyvault to known compatible version (#1906)
* Upgrade azure-keyvault to known compatible version
* (fix typo)
2018-08-08 18:29:17 -07:00
Kebo Liu
38beca654c [docker-platform-monitor] make file and supervisord conf change for new xcvrd deamon (#1840)
* [docker-platform-monitor] make file and supervisord conf change for new xcvrd deamon

* make file change for the new daemon
* supervisord conf change for the new daemon

signed-off-by Liu Kebo kebol@mellanox.com

* make xcvrd start sequence aligned with the supervisord conf

* update submodules to include xcvrd modification
2018-08-03 16:33:56 -07:00
pavel-shirshov
10b4bbcae8 [swss]: Start counter from swss container (#1875)
* sonic-quagga update. Don't spam with 'Vtysh connected from' message

* Enable counters inside swss container. systemd is not flexible enough to follow our business rules
2018-07-26 13:39:08 -07:00
Sagar Balani
93905d3d82 [barefoot]: Support for platforms based on Barefoot Networks' device (#1796)
* Initial commit

* Add Ingrasys S9180-32X platform dirver.

Signed-off-by: Wade He <chihen.he@gmail.com>

* Add bfn.service for init barefoot.

Signed-off-by: Wade He <chihen.he@gmail.com>

* [Barefoot Beta] Add some functions and fixed some bugs.

1. Update sensors.conf.
2. Fixed IO expander init.
3. Fixed PSU EEPROM.
4. Fixed MB EEPROM.
5. Add fancontrol and fan init.
6. Add SYS LED control (sys, fan, fan tray).
7. 2.5V compute and setup max and min.
8. Fixed typo MB eeprom delete address.
9. Remove coretemp to BMC.
10. Add active CPLD.
11. Modify SFP+ GPIO slave address.
12. Modify tmp75 Near Port 32 slave address.

Signed-off-by: Wade He <chihen.he@gmail.com>

* Add bfn script in /etc/init.d/

Signed-off-by: Wade He <chihen.he@gmail.com>

* Add bfn service in debian

Signed-off-by: Wade He <chihen.he@gmail.com>

* Fixed CPLD switch LED behavior.

Signed-off-by: Wade He <chihen.he@gmail.com>

* [Barefoot Beta] Fixed sensors and hwmon order.
1. Fixed ignore sensors Vbat.
2. Reorg hwmon order.

Signed-off-by: Wade He <chihen.he@gmail.com>

* Fixed PSU1 and PSU2 EEPROM order.

Signed-off-by: Wade He <chihen.he@gmail.com>

* initial barefoot checkin october 2017

* update refpoint

* update refpoints

* update refpoints to bf-master

* update refpoint

* update refpoint to tested version

* change to platform from asic

* update refpoint for swss

* revert core creation setting

* update refpoints

* add telnet for debug shell

* update refpoints 11/17/17

* missed change in file on previous merge

* [CPLD] Fixed blink LED issue.

* Fixed blink LED mask set error.

Signed-off-by: Wade He <chihen.he@gmail.com>

* Update bf_kdrv.c for 6.0.2.39

* Update bf kernel driver

* Add bf_fun kernel module.

* Update bf_tun for fixed build error

* merge with Azure master (12/12/17)

* update swss refpoint

* update refpoint of swss

* library dependency for stack unroll

* update refpoint to bf-master

* [DHCP relay]: Fix circuit ID and remote ID bugs (#1248)

* [DHCP relay]: Fix circuit ID and remote ID bugs

* Set circuit_id_len after setting circuit_id_len to ip->name

* [Platform] Add Psuutil and update sensors.conf for S9100-32X, S8810-32Q and S9200-64X (#1272)

* Add I2C CPLD kernel module for psuutil.
 * Support psuutil script.
 * Add voltage min and max threshold.
 * Update sensors.conf for tmp75.

Signed-off-by: Wade He <chihen.he@gmail.com>

* Allow multi platform support - infra (more changes to follow)

* update relative path to include platform for clarity

* [Platform] Add Ingrasys S9130-32X and S9230-64X with Nephos Switch ASIC for "branch 201712" (#1274)

- What I did
Add switch ASIC vendor: Nephos
Add Nephos platforms: Ingrasys S9130-32X, Ingrasys S9230-64X

- How I did it
Add platform/nephos files
Add platform/nephos/sonic-platform-modules-ingrasys submodule
Add device/ingrasys/x86_64-ingrasys_s9130_32x-r0 files
Add device/ingrasys/x86_64-ingrasys_s9230_64x-r0 files
Add SONiC to support Nephos platform
Update Head of submodule src/sonic-sairedis to "3b817bb"

- How to verify it
To build SONiC installer image and docker images, run the following commands:

make configure PLATFORM=nephos
make target/sonic-nephos.bin
Check system and network feature is worked as well

- Description for the changelog
Add switch ASIC vendor and platforms for Nephos

- A picture of a cute animal (not mandatory but encouraged)

Signed-off-by: Sam Yang <yang.kaiyu@gmail.com>

* change source of files to github (from dropbox), update sairedis refpoint

* update refpoint of sairedis

* [centec] support CENTEC SAI 1.0 on 201712 branch and update e582-48x6q board   (#1269)

* [marvel]: Marvell's updates for SONiC.201712 & SAI v1.0 (#1287)

* update sairedis (fast-boot refpoint)

* fix syncd rpc make files

* update refpoint to handle Makefile change (no functional change)

* [Marvell]: Add support for SLM5401-54x device (#1307)

* Marvell's updates for SONiC.201712 & SAI v1.0
* [Platform] Add Marvell's SLM5401-54x for branch 201712

* [Broadcom]: Update Boradcom SAI package to 3.0.3.3-3 (#1312) (#1321)

- update Arista 7050-QX32S config.bcm file
- update Accton th-as771*-32x100G.config.bcm files

* update refpoint for Makefile chnage in sairedis

* update refpoint - sairedis

* update sairedis to older refpoint till we debug clean build

* export asic platform for build

* update refpoint for makefiles

* [PLATFORM] Centec update E582 driver fan/epprom/sensor (#1332)

* Upload wnc-osw1800

* Modify for Barefoot suggest

* Revert bfn-platform.mk

* Update bfn-platform-wnc.mk

Update parameter name

* Update parameter name

* initial support for WNC platform

* change switch name to "switch"

* Delete bf modules for rel_7_0

* Add Ingrasys S9180 platform

Signed-off-by: Wade He <chihen.he@gmail.com>

* Modify bfnsdk for Ingrasys S9180 platform

Signed-off-by: Wade He <chihen.he@gmail.com>

* Resolved the conflict.

* Resolved the conflict.

* Update submodule path and url.

* Delete unused file.

* Update PSU GPIO and EEPROM for psuutil.

* Add psuutil in S9180-32X

Signed-off-by: Wade He <chihen.he@gmail.com>

* update refpoint

* update refpoint

* change contact email, update refpoint

* cleanup and update kernel modules

* updates based on review

* update refpoint

* update refpoint

* fix typo in config script to check for platforms

* remove stale file

* resolve conflicts

* cleanup diffs with Azure repo and update SDK debs

* update refpoints to Azure

* address review comments

* revert refpoint of swss-common

* porting the build fix from master

* porting build fix from master

* Minor Fix

* Minor fix

* Temp to sde deb packages url

* Update sonic - sairedis,swss & swss-common refpoints

* Update git modules url path to bfn repo

* updated paths for swss, swss-common & sairedis

* Update refpoint for sonic-swss to local bfn repo

* Update URL for downloading sde debian packages

* porting fix links of debian git server from master

* porting fix links of debian git server from master

* [Ingrasys] Add platform support for S9280-64X with Barefoot ASIC

* Update ref points for swss, swss-common and sairedis repos

* Add sonic platform scripts for bfn montara/maverick

* Call sh scripts instead of calling py scripts

* Address upstream PR Comments (#10)

* Update bf-master with azure/master
* Undo changes to some files

* Revert "Address upstream PR Comments (#10)"

This reverts commit a7fddb83ca.

* Address upstream comments (#11)

* Remove all non bfn specific changes from upstream PR

* Revert "Address upstream comments (#11)"

This reverts commit 559132103e.

* Undo non bfn changes

* Little more cleanup

* Add back code removed in merge

* export CONFIGURED_PLATFORM

* Update sairedis and swss refpoints

* Address Upstream PR comment

* change deb pkg dependency from 3.16.0-4-amd64 to 3.16.0-5-amd64

* Set default tx queue len for usb0 interface to 64

* Update sairedis refpoint

* Update swss ref point

* Add bfn buffer cfg files for montara/maverick as per new design

* Update buffer cfg templates for bfn montara

* add non zero size to buffer profile
* add macro to generate port lists

* Update buffer cfg templates for bfn mavericks

* add non zero size for buffer profiles
* add port generation macro

* Add missing psmisc package

* BGP docker seems to be missing killall utility being used by fast-reboot script. This is causing non graceful termination of BGP sessions.
Adding psmisc to resolve this issue.

* Update swss ref point

* Update swss ref point

* Update sairedis refpoint

* Update sairedis refpoint

* Update sairedis refpoint

* Update sairedis refpoint

* Update refpoint for sairedis and swss

* sairedis to azure master
* swss to latest bfn bf-master

* Update gitmodules

Update url for sairedis to azure master

* Correct typo in bfn platform script

* Update swss and sairedis ref points

* Update swss ref point

* Address Review comments

* Update swws path in gitmodules to azure master
* update swss refpoint
* update base docker j2 file -remove psmisc package (could be a concern, would cause fast reboot to not work correctly will fix in another PR)

* Fix sairedis refpoint broken in by previous merge

* Remove psmisc from docker base image

* This will break fast reboot as killall is required for killing bgp process and initiating graceful termination of BGP session.
Will fix this in a seperate PR. Need this for SONIC upstreaming

* Address upstream comments

* Remove bmc interface from interface jinja template and sample output interfaces file
* Add bmc interface at boot time to network interfaces for bfn bmc based platforms

* Remove autogen ingrasys debian files

* Revert "Remove autogen ingrasys debian files"

* Buffer and qos config template fix for bfn platforms (#21)

SWI-1509 Buffer and qos config template fix for bfn platforms

* Fix qos config files for montara & mavericks (#22)

* Reference only ppg 3,4 in qos files as no profiles are attached to 0,1 in buffer configs

* Fix vs test (#23)
2018-07-24 10:23:12 -07:00
Andriy Moroz
dadc17d9e6 [Mellanox] Use MAC from EEPROM for PortChannels and VLAN Interfaces (#1793)
* Use MAC from EEPROM for PortChannels

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Use MAC from EEPROM in DEVICE_METADATA

Will affect MAC for VLAN interfaces

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Get MAC via decode-syseeprom

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* hw-management is now a service

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Add error handling for MAC fetch process

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2018-07-23 15:51:03 -07:00
pavel-shirshov
c52fb762dd
Convert arp_update into a 'start-it-once' mode (#1864)
* Run arp_update just once, don't restart it. It will run continuosly with 5 min pauses
2018-07-18 13:04:57 -07:00
Qi Luo
5ad7d24d16
[mgmt] Fix pycparser installation (#1820) 2018-06-29 08:39:12 -07:00
Qi Luo
7ba08e5bf6
Prefix docker container name to syslog syslogtag (program name) (#1810) 2018-06-25 10:48:42 -07:00
Serhey Popovych
bac572229e [docker-fpm-frr]: Fix build with frr used for routing stack (#1728)
After commit 832be7b8f4 ("[dockers] Prevent apt-get from installing
suggested and recommended packages by default (#1666)") SONiC fails
to build when FRR is used for routing stack (e.g. SONIC_ROUTING_STACK
is set to frr in rules/config).

To fix issue just replicate changes from docker-fpm-quagga to
docker-fpm-frr to make dependencies installed correctly after above
change to package installing behaviour.

Signed-off-by: Sergey Popovich <sergey.popovich@ordnance.co>
2018-06-22 18:46:05 -07:00
pavel-shirshov
a2a6aead4c [bgp]: Enable bgp soft-reconfiguration inbound for quagga templates (#1803)
* Enable bgp soft-reconfiguration inbound for quagga templates
2018-06-22 18:04:18 -07:00
pavel-shirshov
bbca58329b
Manually send SIGHUP to vtysh when the current session was disconnected (#1801)
* Manually send SIGHUP to vtysh when the current session was disconnected

* Address comments
2018-06-20 12:15:09 -07:00
Qi Luo
1c8bacb007
Fix comment typos (#1794)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2018-06-14 21:53:31 -07:00
pavel-shirshov
fae346f586
Don't create a pty to run vtysh inside of the docker container (#1792) 2018-06-14 12:11:29 -07:00
Shuotian Cheng
b58a94dc53
[sonic-mgmt]: Install the latest Microsoft Azure Kusto Library for Python (#1756)
https://github.com/Azure/azure-kusto-python

azure-kusto-data Package provides the capability to query Kusto clusters with Python.
azure-kusto-ingest Package allows sending data to Kusto service - i.e. ingest data.

The removed package adal is a dependent of the Azure Kusto Library.
The removed azure-storage is deprecated and being replaced with new packages that are
also the dependents of the Azure Kusto Library. (https://github.com/Azure/azure-storage-python)

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2018-06-01 11:33:13 -07:00
Joe LeVeque
6b8e340558
[dhcp_relay] Only attempt to start 'isc-dhcp-relay' group if it is not empty (#1713) 2018-05-16 14:32:42 -07:00
Joe LeVeque
1102acec48 [ledd] Exit with code 0 if we fail to find a platform-specific led_control module; no autorestart (#1688) 2018-05-10 01:20:22 -07:00
Qi Luo
f3f8b9ff57
[syncd]: Add socat and bcmsh wrapper (#1657)
* [syncd]: Add socat and bcmsh wrapper
* Install socat in docker-base
* Add hint banner, add host wrapper
* Refine banner message
2018-05-04 09:27:01 -07:00
Joe LeVeque
832be7b8f4
[dockers] Prevent apt-get from installing suggested and recommended packages by default (#1666)
* [docker-base] Instruct apt-get to NOT install 'recommended' or 'suggested' packages

* Modify docker-fpm-quagga, docker-snmp-sv2 and docker-sonic-vs Dockerfile templates in order to properly install .deb dependencies

* REDIS_SERVER depends on REDIS_TOOLS; ensure REDIS_TOOLS is always installed before REDIS_SERVER
2018-05-02 11:46:21 -07:00
Shuotian Cheng
e082cd6d91 [swss]: Change the hash seed to 0 for ToR and 10 for Leaf routers (#1667)
Due to some ASIC platform limitations, the hash seed range is from 0
to 15. Thus the switch.json.j2 template is updated so that ToRRouter
is using hash seed 0 and LeafRouter is using hash seed 10.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2018-05-01 21:58:33 -07:00
Taoyu Li
bebb7a0fa2 [zebra.conf] Fix template issue with multiple lo addresses (#1662)
* [zebra.conf] Fix template issue with multiple lo addresses

* Add unitest for Loopback1
2018-05-01 20:53:47 -07:00
Qi Luo
5817e99520 Revert "Remove snmpd hw_fsys module, remove disk monitoring which is not in use" (#1665)
* Revert "[swss]: update swss submodule (#1664)"

This reverts commit c74be37ae0.

* Revert "Remove snmpd hw_fsys module, remove disk monitoring which are not in use (#1663)"

This reverts commit 3d61df9d75.
2018-05-01 18:32:49 -07:00
Qi Luo
3d61df9d75 Remove snmpd hw_fsys module, remove disk monitoring which are not in use (#1663)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2018-04-30 23:06:51 -07:00
pavel-shirshov
1ae4db3af7
Quagga: Use bgp keepalive and holdtime timers from configdb (#1661) 2018-04-30 16:52:22 -07:00
pavel-shirshov
18e97fba2c [docker-lldpd]: Various fixes (#1650)
* We don't need configure anything until we have interfaces created

* Don't run lldpcli for a port, until a port is up and running

* Remove lldpd socket before starting lldpd

* Fix sample files for lldpd configuration

* Another attempt to make the test working

* Quick fix for lldpd paused after start bug
2018-04-26 19:01:33 -07:00
Joe LeVeque
f7151e8ddb
[radvd] Ensure at least one interface is specified in radvd.conf before starting radvd (#1636) 2018-04-24 15:13:51 -07:00
Qi Luo
0adbf782b4
[sonic-mgmt]: Install more azure packages (#1635)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2018-04-24 00:14:19 -07:00
yurypm
509e1c4749 [snmpd]: Fix typo in is_platform_arista (#1634) 2018-04-23 08:52:21 -07:00
Samuel Angebault
1f05332e5a [snmp]: Fix a race between snmpd-config-updater and snmpd (#1628)
There is a small window in which snmpd might not have registered a
callback for SIGHUP and which will result in its death if
snmpd-config-updater send this signal meant for a config reload.
2018-04-20 22:19:01 -07:00
Joe LeVeque
1df7c9a993
[docker-platform-monitor] Convert ledd from polling-based to subscription-based model (#1623) 2018-04-20 10:42:19 -07:00
Volodymyr Samotiy
61793dd05a [ip-in-ip]: Fix config template to apply correct platform depended values (#1619)
Signed-off-by: Volodymyr Samotiy <volodymyrs@mellanox.com>
2018-04-18 09:37:27 -07:00
pavel-shirshov
8a714c88c7
Use refactored Selectables from sonic-swss-common (#1604) 2018-04-16 18:38:48 -07:00
Qi Luo
b097b9672c
Fix syntax error in snmpd.conf.j2 (#1597)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2018-04-13 10:50:58 -07:00
Joe LeVeque
291321d851 Incorporate swss-common Table Name Separator Changes (#1584)
* Table name separator now determined by database ID, no longer passed manually upon table creation

* Update submodules to include table name separator changes
2018-04-11 01:50:17 -07:00
Taoyu Li
856fc830b5 [snmp] support multiple community strings (proposal 2) (#1583)
* [snmp] support multiple community strings

* Use community old if communities is absent
2018-04-10 20:20:35 -07:00
Qi Luo
ccff73bb33 [snmp]: Bind snmpd to all ip addresses (#1587)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2018-04-10 20:15:20 -07:00
Joe LeVeque
c626dc921f
Allow one Service ACL to bind to multiple services (#1576)
* [caclmgrd] Also ignore IP protocol if found in rule; we will only use our predefined protocols
2018-04-10 18:14:12 -07:00
pavel-shirshov
83f81c9676
Use eth0 interface only to generate lldpd SystemId (#1577) 2018-04-10 13:37:46 -07:00
Joe LeVeque
30466b27c1 [router advertiser] Only start radvd process if device role is 'ToRRouter' (#1569) 2018-04-06 19:24:18 -07:00
pavel-shirshov
f43580492f
quagga container processes could be restarted within a second (#1541) 2018-03-28 12:34:46 -07:00
Jipan Yang
f74de8914b [telemetry]: SONiC system telemetry Support (#1526)
* SONiC system telemetry Support

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Update package name from telemetry to sonic-telemetry

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>
2018-03-27 13:39:04 -07:00
Rodny Molina
957e6c0b6d Fixing lldp issue displaying mac-addr instead of ports (#1515)
Current lldp.conf.j2 template demands the presence of MGMT_INTERFACE attribute in configDB, and by extension, also in config_db.json file. However, MGMT_INTERFACE configuration attribute is optional, so lldp shouldn't bail out if this one isn't provided in configuration.

For this reason, no lldp.conf file is ever created in lldp's container, and lldpd defaults to advertise the mac-address of the connected interface, instead of the interface name.

The fix is to simply relax this jinja2 statement to verify if MGMT_INTERFACE attribute is present.
2018-03-20 11:25:31 -07:00
Joe LeVeque
e1cb2ace36 [base image files] All 'docker exec' wrapper scripts now dynamically adjust their flags depending on whether or not they are run on a terminal (#1507) 2018-03-17 00:43:29 -07:00
sihuihan88
243a87d6e6 [devices]: remove Dell S6100 qos config via swssconfig (#1483)
Signed-off-by: Sihui Han <sihan@microsoft.com>
2018-03-13 13:07:39 -07:00
Rodny Molina
913a62c33c [configdb]: Sorting all json config-elements residing in config_db.json (#1454)
Just a simple change to make sonic's user life a little bit easier. Displaying the multiple elements of config_db.json in an orderly fashion allows a more intuitive user-experience.

For this change i'm simply intercepting the config-state that is about to be dumped to config_db.json, and i'm placing it in an ordered-dictionary, so that information is pushed to file in natural/alphanumerical ordering.

Example:

admin@lnos-x1-a-csw01:~$ sudo sonic-cfggen -m /etc/sonic/minigraph.xml --print-data
{
...
      "PORT": {
        "Ethernet0": {
             "alias": "Eth1/1",
             "lanes": "65"
},
        "Ethernet1": {
             "alias": "Eth1/2",
             "lanes": "66"
},
        "Ethernet2": {
             "alias": "Eth1/3",
             "lanes": "67"
},
        "Ethernet3": {
            "alias": "Eth1/4",
            "lanes": "68"
},
        "Ethernet4": {
             "alias": "Eth2/1",
             "lanes": "69"
},
...
...
    "INTERFACE": {
       "Ethernet0|10.0.0.0/31": {},
       "Ethernet1|10.0.0.2/31": {},
       "Ethernet2|10.0.0.4/31": {},
       "Ethernet3|10.0.0.6/31": {},
       "Ethernet4|10.0.0.8/31": {},
2018-03-09 23:51:33 -08:00
Joe LeVeque
c161de406a
[lldpmgrd] Fix potential race condition when interfaces are created (#1469) 2018-03-07 17:08:45 -08:00
Wenda Ni, Ph.D
ef683848af [devices]: A7050 qx32 mmuconfig (#1463)
* Apply MMU config (buffers, qos) to Arista-7050-QX32

Signed-off-by: Wenda <wenni@microsoft.com>
2018-03-07 07:21:41 -08:00
Joe LeVeque
c689253b3f
[LLDP] Add lldpmgrd Daemon to Manage LLDP Configuration (#1428) 2018-03-02 16:46:22 -08:00
sihuihan88
1e6576c5b8 [devices]: Update qos and buffer configuration for Dell S6000 (#1441)
Signed-off-by: Sihui Han <sihan@microsoft.com>
2018-03-01 20:56:12 -08:00
pavel-shirshov
ec537be065
[Submodule update]: Update submodule sonic-utilities (#1407)
* Update submodule sonic-utilities

* Copy fast-reboot json dumps from /host filesystem

* Update sonic-utilities to latest

* Fix typo
2018-02-26 11:23:29 -08:00
Taoyu Li
04b694454a
[sonic-cfggen] Remove machine.conf info and add get_system_mac support (#1397)
[sonic-cfggen] Remove machine.conf info and add get_system_mac support
2018-02-20 14:38:13 -08:00
pavel-shirshov
f6deaa22f7 [fast-reboot]: Dump default routes before fast-reboot procedure (#1392)
* Insert default routes into the APPL DB in fast-reboot proceduce

Update sonic-utilities submodule
2018-02-14 19:09:28 -08:00
nikos-li
971be65546 [docker-base]: Upgrade supervisord to 3.3.3 and fix supervisord.conf (#1390) 2018-02-14 09:40:26 +08:00
Joe LeVeque
6ccd1601b8
Modify Arista service ACL solution to listen to ACL changes in ConfigDB (#1385) 2018-02-12 11:10:01 -08:00
byu343
ecf5c8d311 ssh and snmp allow list (#1363)
- Service ACL framework for Arista platforms
2018-02-08 17:43:52 -08:00
pavel-shirshov
175bae84b9
Remove /var/run/rsyslogd.pid otherwise rsyslogd will not start in database container (#1355) 2018-01-30 11:54:58 -08:00
Andriy Moroz
58d8302b53 Buffers configuration update on port speed change (#1345)
* Move buffer configuration to ConfigDB

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Converted Dell and Arista configs

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Add buffer configs for ACS-MSN2740

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Updated buffers template

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Fixed j2 unit test

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update buffers config for Force10-S6100

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update VS docker to support speed and buffers test

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update buffers config generation

- fixed support of sonic-to-sonic install

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update submodules pointers for buffers config

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2018-01-29 08:11:05 -08:00
Ying Xie
2b91c9681d Revert "Buffers configuration update on port speed change (#1250)" (#1340)
This reverts commit 814e50fd5e.
2018-01-26 10:13:43 -08:00
Andriy Moroz
814e50fd5e Buffers configuration update on port speed change (#1250)
* Move buffer configuration to ConfigDB

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Converted Dell and Arista configs

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Add buffer configs for ACS-MSN2740

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Updated buffers template

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Fixed j2 unit test

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update buffers config for Force10-S6100

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update VS docker to support speed and buffers test

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update buffers config generation

- fixed support of sonic-to-sonic install

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2018-01-26 08:09:31 -08:00
Joe LeVeque
ab26a5c589
Install sonic-platform-common package in platform-monitor docker for ledd (#1330)
* Install sonic-platform-common package in platform-monitor docker for ledd

* Specify Python wheel dependencies in docker-platform-monitor.mk; Remove explicit specifications from Dockerfile.j2
2018-01-22 10:52:52 -08:00
pavel-shirshov
5e01fb366e Prevent supervisor from restarting configdb-load.sh (#1324) 2018-01-18 21:52:24 -08:00
Qi Luo
33157dc2ad
Install azure cli into docker-sonic-mgmt (#1322)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2018-01-18 15:35:38 -08:00
Joe LeVeque
134707f822
Move platform-specific hardware plugin base packages to sonic-platform-common submodule (#1301) 2018-01-17 17:11:31 -08:00
Qi Luo
a836fc42ac [device]: Fix Mellanox sku check (#1303)
Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2018-01-13 03:43:14 -08:00
Andriy Moroz
16763dcc77 [mellanox]: Update Mellanox buffers configuration (#1263)
Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2018-01-08 18:10:40 -08:00
kaiyu22
63de341dd6 [Platform] Add Ingrasys S9130-32X and S9230-64X with Nephos Switch ASIC (#1245)
* Add switch ASIC vendor and platforms for Nephos

- What I did
Add switch ASIC vendor: Nephos
Add Nephos platforms: Ingrasys S9130-32X, Ingrasys S9230-64X

- How I did it
Add platform/nephos files
Add platform/nephos/sonic-platform-modules-ingrasys submodule
Add device/ingrasys/x86_64-ingrasys_s9130_32x-r0 files
Add device/ingrasys/x86_64-ingrasys_s9230_64x-r0 files
Add SONiC to support Nephos platform

- How to verify it
To build SONiC installer image and docker images, run the following commands:
make configure PLATFORM=nephos
make target/sonic-nephos.bin
Check system and network feature is worked as well

- Description for the changelog
Add switch ASIC vendor and platforms for Nephos

- A picture of a cute animal (not mandatory but encouraged)

Signed-off-by: Sam Yang <yang.kaiyu@gmail.com>

* Advance sonic-sairedis submodule to include #271 (Add Nephos ASIC)
2017-12-22 10:04:29 -08:00
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
Shuotian Cheng
1859f53206 [swss]: Fix missing comma in the ports.json.j2 file (#1217)
Add J2 test case as well as a sample output

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-12-08 09:06:22 -08:00
Qi Luo
4b2225bca5 [docker-snmpd]: asyncsnmp depends on sonic-utilities so it is possible to import sonic_psu (#1212)
* asyncsnmp depends on sonic-utilities so it is possible to import sonic_psu

Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>

* Ignore sonic_utilities test during build
2017-12-07 13:08:23 -08:00
Rodny Molina
4213b2dcc7 [sonic-utilities]: Final code-drop for interface-description and interface-status enhancements (#1207)
* Final code-drop for interface-description and interface-status enhancements.

Here i'm adding minor extensions to support "show interface description" command. Please refer to PR#158 for more details: https://github.com/Azure/sonic-utilities/pull/158

* Add interface-description UT and adjust logic to have 'description' field being optional

RB=
G=lnos-reviewers
R=ntrianta,rjonnadu,rmolina,sfardeen,zxu
A=

* Updating reference to sonic-utilities to collect latest changes
2017-12-06 21:45:45 -08:00
Taoyu Li
2e31a38617 [LLDP] Send interface name instead of mac as PORT_ID for mgmt interface (#1204)
* Send interface name instead of mac thru lldp for mgmt interface

* Fix j2 template test failure
2017-12-04 14:28:43 -08:00
Andriy Moroz
7e457564da [mellanox]: Update Mellanox buffer profiles config (#1198)
Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2017-12-04 02:45:24 -08:00
lguohan
b907e4e9f5
[vs]: add vlan configuration support in virtual switch (#1200) 2017-11-30 14:59:25 -08:00
pavel-shirshov
d39dd396b5
Move tcpdump into /usr/bin Otherwise it's impossible to run tcpdump due to a docker bug (#1195) 2017-11-29 16:36:26 -08:00
zhenggen-xu
6e57e1d272 [FRR]: Fix FRR tempelate for router-id (#1187) 2017-11-28 14:52:26 -08:00
Taoyu Li
dd7e9240c8 [dockers] Remove dependency to minigraph (#1179)
* Remove dependency to minigraph

* Remove -m in swssconfig.sh
2017-11-23 16:31:37 -08:00
Andriy Moroz
6d0329af3d Move QoS configuration to Config DB (#1178)
* Move Mellanox QoS configuration to config DB

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Move qos.json to hwsku subfolder

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Remove copying of old qos config

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Update WRED threshold values

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* hwsku2

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Fix syntax error in json

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Add qos config for some Dell and Arista platforms

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Fix inital qos config on clean boot

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>

* Updated swss-common and swss pointers (QoS in Config DB)

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2017-11-22 08:58:22 -08:00
Joe LeVeque
1f9107d044
[DHCP relay]: Wait for all interfaces to be assigned IPv4 addresses before starting relay agent(s) (#1173) 2017-11-20 21:07:28 -08:00
Shuotian Cheng
c93c008bae
Revert "[docker-teamd]: Manage teamd and teamsyncd processes with supervisor (#1137)" (#1156)
This reverts commit a6edef2fa5.

The reason to revert this commit is that it breaks the current nightly test as
no port channel interfaces are get created after boot. teamd failed to start and
complained about 'Cannot allocate memory' possibly due to nlmsg_alloc function
failure.

Will revert this commit to investigate it further before moving to supervisor.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-11-16 10:30:41 -08:00
Joe LeVeque
cea87e985c
Add docker-router-advertiser to support IPv6 router advertisements (#1103) 2017-11-14 14:40:15 -08:00
Joe LeVeque
a6edef2fa5
[docker-teamd]: Manage teamd and teamsyncd processes with supervisor (#1137) 2017-11-13 14:16:19 -08:00
Harish Venkatraman
aa09bdc2c2 [docker-orchagent]: ADD PFC Broadcom recommended MMU Settings (#1136)
This commit adds new code to support PFC and broadcom recommended
MMU setting for PFC feature.

Verified by running checking the hardware setting after the switch
was booted.

Signed-off-by: Harish Venkatraman <Harish_Venkatraman@dell.com>
2017-11-13 11:30:16 -08:00
nikos-li
f18ed0d35c [bgp]: Auto-completion, help (?), cmd navigation (up arrow) not working in vtysh on host system. (#1124) 2017-11-13 09:39:10 -08:00
JipanYanga
7406d3709b [configdb]: Add support for vlanconfd and intfconfd (#1063)
* Add support for vlanconfd and intfconfd

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Change name to vlanmgrd and intfmgrd

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Add missing vlan_members for parse_dpg result

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Remove cfgmgr debug CLI from image

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>

* Update swss and swss-common submodules for VLAN trunk support

Signed-off-by: Jipan Yang <jipan.yang@alibaba-inc.com>
2017-11-05 22:37:16 -08:00
Andriy Moroz
4e1fb6850f Update Mellanox buffers profile to use single pool for lossless (#1101)
Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2017-11-03 16:31:02 -07:00
Oleksandr Ivantsiv
29f67ebe58 [acl-loader]: acl-loader integration. (#1000)
* [acl-loader]: acl-loader integration.

acl-loader was inplemented based on translate_acl source code. acl-loader
can't be tested with unittest. Same testcases will be covered with testbed tests.

- Remove translate_acl utility and tests.
- Remove mirror template.
- Do not run ACL rules and mirror configuration generators.
- Adopt minigraph parser to work with acl-loader.

* Update sonic-swss-common and sonic-swss submodules.

Enable ACL dynamic config feature.

* Update sonic-utilities submodule.

Include fix for acl-loader incremental update command.

* [sonic-cfggen]: Add test for everflow cfggen configuration.
2017-11-02 15:09:27 -07:00
Shuotian Cheng
1a81715275
[swss]: Add switch.json.j2 to set the hash seed according to the switch type (#1089)
Set the ECMP/LAG hash seed to 10 when the switch is a ToR, 20 when the switch
is a Leaf, 0 otherwise.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-10-29 11:50:57 -07:00
Shuotian Cheng
d1156ca3b2 [teamd]: Bring down all member interfaces before starting teamd (#1081)
teamd requires all members to be set down before adding as a team port

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-10-26 14:20:44 -07:00
Shuotian Cheng
7f7ddc80a3 [swss]: Change the env name from ASIC to platform (#1033) 2017-10-25 17:57:28 -07:00
Andriy Moroz
2ae29caa03 Update QoS config name for Mellanox platform (#1077)
Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2017-10-25 09:09:30 -07:00
Shuotian Cheng
fd34d907ff [lldp]: Get all interfaces from the database (#1069)
The previous implementation only supports EthernetX while X
varies from 0 - 124. Remove such hard coded logics and use
the information from the database instead.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-10-23 19:53:10 -07:00
Shuotian Cheng
b6cc73a0ad [dockers]: Remove deprecated docker-lldp and docker-snmp (#1068)
Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-10-23 13:20:37 -07:00
Joe LeVeque
def0f2e4de [sensors]: Workaround for apparent bug in lm-sensors (#1058) 2017-10-20 11:01:26 -07:00
Taoyu Li
8bc6b55331 [bgpd.conf] Fix template issue with multiple lo addresses (#1060) 2017-10-20 07:15:11 -07:00
pavel-shirshov
bdbede51e0 [docker ptf]: Install tcpdump (#1059)
* Always start with Forwarding State flag set for bgpd

* Install tcpdump into ptf container
2017-10-20 05:09:37 -07:00
Shuotian Cheng
2a56479187 [sonic-cfggen]: Add DEVICE_NEIGHBOR_METADATA field and move msn27xx template (#1025)
This field contains all neighbor devices information using the device
hostname as the key and having lo_addr, mgmt_addr, hwsku, type as the
attributes.

Move the file msn27xx.32ports.buffers.json.j2 from sonic-swss repository to
this repository so that we could add unit test for this file.

Unit test is added for platform ACS-MSN2700.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-10-19 00:38:25 -07:00
Taoyu Li
7a0a2ea5d0 [bgpd.conf] Advertise /64 prefix for ipv6 lo addresses (#1050) 2017-10-17 18:28:27 -07:00
Shuotian Cheng
1a748ee0bb Revert "Update QoS config name for Mellanox platform" (#1039) 2017-10-13 01:27:15 -07:00
nikos-li
51ebdf43ac [frr]: Support for nhopself, keepalive and holdtime timers, prefer global ebgp nexthop (#1024)
* RR client support in minigraph for FRR
* Fix python warning from previous rrclient commit and move config handling to a more relevant place for this cmd
* Add config support for nhopself, keepalive and holdtime timers.
* Add route-map to prefer global nexthops for ebgp learned prefixes.
2017-10-11 15:31:38 -07:00
Shuotian Cheng
6c15acc49b [swss]: Export ASIC as the env variable (#1030)
- the env variable 'platform' is not universal across different platforms
  this line will be removed once the related code in sonic-swss is refactored

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-10-11 15:11:26 -07:00
Andriy Moroz
fc7246f418 [swss]: Update QoS config file name for Mellanox platform (#1028)
Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2017-10-10 19:45:17 -07:00
Shuotian Cheng
04814cb135 [dockers]: Remove deprecated sswsyncd dockers (#1026) 2017-10-09 22:50:08 -07:00
Joe LeVeque
1d16a37d48 [DHCP Relay]: Support Multiple VLANs (Separate DHCP Relay Agents, One Per VLAN) (#999)
* [DHCP Relay]: Support new <DhcpRelays> minigraph tag; support multiple VLANs

* Don't start dhcrelay in quiet mode so as to get startup output in syslog

* Update sonic-cfggen tests to support new '<DhcpRelays>' tag

* <DhcpRelays> tag is only present for VLANs which require a DHCP relay agent -- only parse if present

* Don't attempt to configure a DHCP relay agent for VLANs without specified DHCP servers

* Modify to work with Taoyu's minigraph/DB changes (#942)

* Reduce number of DHCP servers in sonic-cfggen unit tests from 4 to 2

* Remove isc-dhcp-relay sample output file from sonic-cfggen test, as we no longer generate that file

* Update Option 82 isc-dhcp-relay patch to load all interface name-alias maps into memory once at start instead of calling sonic-cfggen on each packet we relay

* Remove executable permission from Jinja2 template

* Set max hop count to 1 so that DHCP relay will only relay packets with a hop count of zero

* Replace tabs with spaces

* Modify overlooked sonic-cfggen call, use Config DB instead of minigraph

* Also ensure > 1 VLAN requires a DHCP relay agent before outputting to template

* Generate port name-alias map file using sonic-cfggen and parse that in lieu of parsing port_config.ini directly

* No longer drop packets with hop count > 0; Instead, drop packets which already contain agent info
2017-10-04 23:35:43 -07:00
Qi Luo
554114cfaa Make swssconfig status FATAL when it fails (#1009)
* Make supervisor controlled one-shot program autorestart 0 time, so the status will become FATAL instead of EXITED if failure happens

Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>

* Make swssconfig.sh strictly exit on any failure

Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>

* Tune startretries, tested in supervisor 3.3.2-1

Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2017-10-04 01:02:30 -07:00
Shuotian Cheng
72e947621c [config-engine]: Fix bug multiple ports connecting to same neighbor (#1005)
The current DEVICE_NEIGHBOR format doesn't support multiple different
ports connecting with same neighbor. Thus the lldpd.conf file is not
generated correctly, causing missing information for LAG members.

This fix reverts the data structure in the previous version of
minigraph parser - using local port as the key and remote port/device
as the value of the map. Sample format is:

DEVICE_NEIGHBOR['Ethernet124'] = {
    'name': 'ARISTA04T1',
    'port': 'Ethernet1/1'
}

The corresponding unit test in test_cfggen is updated.
Add one more unit test for lldpd.conf.j2 verification.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-10-03 16:23:19 -07:00
Shuotian Cheng
486dfef732 [swss]: Update the ipinip.j2 template to specify the IPv4 loopback address (#998)
Use ipv4_loopback_addresses variable to store all IPv4 loopback addresses.
The source IP for encapsulation is chosen from one of the addresses.
The destination IPs for decapsulation is the list of the addresses.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-09-30 11:03:32 -07:00
Joe LeVeque
bbf1d6624b [docker-platform-monitor]: Remove stale fancontrol.pid file (if exists) before starting fancontrol (#1002) 2017-09-30 10:55:03 -07:00
Andriy Moroz
9efcc9c333 [swss]: Update swss/common submodules (#988)
* Update swss submodule reference
* Update swss-common submodule reference

This pull request introduces changes including
1. Use unified buffer configurations fro all Mellanox 27xx platforms
2. Refactor TableConsumable and optimize popping empty logics
3. Add SwitchOrch to deal with switch attributes changes
4. Refactor doAclTableTask and doAclRuleTask
5. Add PFC watchdog tables and runRedisScript function in common library

Signed-off-by: Andriy Moroz <c_andriym@mellanox.com>
2017-09-29 14:44:55 -07:00
Qi Luo
bec99f257a Disable snmpd module disk_hw, so no syslog messages about unavailable disks (#977)
* Revert "snmpd ignores unavailable disks (#607)"

This reverts commit d70e973496.

* Disable snmpd module disk_hw, so no syslog messages about unavailable disks

Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>

* Strip white spaces

Signed-off-by: Qi Luo <qiluo-msft@users.noreply.github.com>
2017-09-21 17:31:39 -07:00
Shuotian Cheng
0f6c8c14e8 [teamd]: Remove deprecated blocking logic before starting teamd (#976)
With the fixes in /etc/network/interfaces file, host interfaces
could be added into the corresponding LAGs automatically. Thus,
the logic of checking if port initialization is ready is no longer
needed.

Signed-off-by: Shu0T1an ChenG <shuche@microsoft.com>
2017-09-21 14:56:16 -07:00
pavel-shirshov
9139c7fe64 Always start with Forwarding State flag set for bgpd (#963) 2017-09-19 12:27:18 -07:00
Shuotian Cheng
a376c86b5c [swss]: Fix the command to get HWSKU with sonic-cfggen (#964) 2017-09-18 17:23:19 -07:00
Shuotian Cheng
aa549f208c [bgp]: Fix the deployment_id with DEVICE_METADATA (#962) 2017-09-18 13:04:29 -07:00
Shu0T1an ChenG
5e9b0a1207 Merge branch 'v1.0.3-backup' into github 2017-09-15 11:30:23 -07:00
Taoyu Li
2e3975d6ed [config] Fix an issue that bgp asn data type is not consistent (#953)
* Fix an issue that bgp asn data type is not consistent from minigraph parser and DB

* Fix test typo
2017-09-13 21:23:06 -07:00
nikos-li
686e227dcc [frr]: RR client support in minigraph for FRR (#923) 2017-09-12 15:48:38 -07: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
sihuihan88
127a73aac3 [quagga]: Disable ipv4 over ipv6 and enable ipv6 over ipv4 peer group (#922)
* [bgpd]:disable ipv4 over ipv6 and enable ipv6 over ipv4 peer group

* update as comments
2017-08-30 13:06:02 -07:00
Taoyu Li
e4502527d0 Revert "Migrate DEVICE_METADATA to db (#919)" (#928)
This reverts commit 44502b217b.
2017-08-29 17:03:31 -07:00
Taoyu Li
44502b217b Migrate DEVICE_METADATA to db (#919) 2017-08-29 10:47:25 -07:00
Shu0T1an ChenG
521de84830 Merge remote-tracking branch 'github/master' into v1.0.3-backup 2017-08-28 17:05:14 -07:00
Taoyu Li
3638dcad28 [translate-acl] Specify pyangbind version to not introduce new dependency (#915) 2017-08-24 18:38:47 -07:00
Andriy Moroz
48b0beb7ff Port speed (#879)
* Add port speed configuration

* Add DeviceInfos support in minigraph parser

* Add cfggen test 'test_minigraph_ethernet_interfaces'

* Fixed PR comments

* Update sonic-swss submodule reference
2017-08-23 19:41:14 -07:00
Shu0T1an ChenG
a95f062a08 Merge remote-tracking branch 'github/master' into v1.0.3-backup 2017-08-23 12:05:22 -07:00
nikos-li
34377f2561 IPv4 prefixes shouldn't be sent by default over IPv6 session with FRR. (#905)
RB=
G=lnos-reviewers
R=ntrianta,rjonnadu,rmolina,sfardeen,zxu
A=
2017-08-23 02:50:39 -07:00
Joe LeVeque
ed66588473 [docker-fpm-quagga]: Manage Quagga processes (zebra, bgpd) using supervisor instead of watchquagga (#900) 2017-08-21 13:55:59 -07:00
Rodny Molina
78ce6b951f Fixing a couple of issues to enable FRR to run with latest SONiC code. (#895)
* Adjusting FRR's jinja template to meet latest sonic-cfgen requirements. Basically, i'm just extending #448 changes into FRR.

    * Eliminate FRR's integrated-config file to prevent daemons from bypassing their own config files. FRR daemons now default to an integrated-config file for config-parsing purposes. But we are still interested in having each daemon looking in their specific config file (bgpd.conf, zebra.conf, etc). So here i'm just deleting this integrating-config file to prevent FRR from running from a bogus config-file.

RB=
G=lnos-reviewers
R=ntrianta,rjonnadu,rmolina,sfardeen,zxu
A=
2017-08-16 21:13:01 -07:00
zhenggen-xu
c52e876697 Fix the network command for ipv6 vlan interfaces (#894) 2017-08-16 21:12:32 -07:00
Shu0T1an ChenG
adbc9d102a Merge remote-tracking branch 'github/master' into v1.0.3-backup 2017-08-15 13:53:25 -07:00
Joe LeVeque
3a8f5be19a [docker-database]: Start rsyslogd to allow supervisor to log to syslog (#890) 2017-08-15 10:38:49 -07:00
Joe LeVeque
f938f3ecaf [docker-platform-monitor]: Prevent supervisor from logging unexpected exits from processes known to exit in < 1 second (#889) 2017-08-15 10:38:22 -07:00
Shu0T1an ChenG
e13789c5af Merge remote-tracking branch 'github/master' into v1.0.3
Conflicts:
	platform/mellanox/mlnx-fw-upgrade.sh
	src/sonic-sairedis
	src/sonic-swss
2017-08-10 18:52:01 -07:00
Taoyu Li
a2fe0212be [ConfigDB] Move all BGP configuration into DB (#861)
- BGP data read from minigraph.py now match DB schema
- BGP templates are updated
- bgpcfgd can now deal with runtime neighbor create/delete
2017-08-08 16:23:58 -07:00
Qi Luo
e1f2a2dd75 [lldp] No need to config on port with no minigraph_neighbor, such as port in vlan (#864) 2017-08-02 20:28:00 -07:00
Qi Luo
618b25f18c Squash merge v1.0.3 branch onto master 2017-08-02 22:28:17 +00:00
Taoyu Li
b6efe438b5 Introduce ConfigDB (#808)
* [cfggen] Support reading from and writing to configdb
* [bgp] Move bgp_admin_state to configdb, support dynamic admin state change
* [sonic-utilities] Adapt configDB for admin status, support config save and config load
2017-08-01 19:02:00 -07:00
Oleksandr Ivantsiv
c1fd0b1ae5 [orchagent]: Export platform information before orchagent run. (#835)
Export platform information in environment to be able to write vendor
specific code.
2017-07-25 10:05:27 +03:00
pavel-shirshov
d898011b2e [docker-ptf]: Update entrypoint entry for docker-ptf (#836)
* Updated entrypoint for docker-ptf container

* Add main supervisord.conf file under /etc/supervisor. Run supervisord with option -c
2017-07-24 13:36:40 -07:00
pavel-shirshov
2201bf3496 [docker-ptf]: Install yaml module for python (#821)
* Install yaml python module in docker-ptf container
2017-07-19 23:21:03 -07:00
lguohan
3fd2014e93 [sonic-mgmt]: move sonic-mgmt docker build into sonic-slave (#819)
need to install sonic-device-data into sonic-mgmt docker
2017-07-19 08:10:45 -07:00
sihuihan88
1176508858 [bgpd]: support multiple peer range in single peer group (#807) 2017-07-13 15:03:10 -07:00
Joe LeVeque
f49cac086f Remove extra trailing newlines at EOF (#804)
Files now end with a single newline
2017-07-12 20:54:37 -07:00
Oleksandr Ivantsiv
96fe120265 [mlnx]: Add support of Mellanox SN2740 platform. (#786)
- Update SAI (added support of SN2740 profile).
- Update SDK to version 4.2.3130.
- Update FW to version 13.1224.0140.
- Update HW MGMT to version 1.0.0160.
2017-07-07 14:26:53 +03: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
Joe LeVeque
a697e8efcf [docker-base]: Build supervisor package from source in order to update to v3.3.2 (#777)
- Resolves issue #762
2017-07-06 10:32:27 -07:00
pavel-shirshov
7792f09437 [docker-ptf]: Install python modules from pypi (#788) 2017-07-06 02:27:05 -07:00
Joe LeVeque
bce5446dc4 [LLDP]: Port description (TLV 4) now contains '<neighbor_host_name>:<port_name>' (#772) 2017-06-29 16:37:37 -07:00
Joe LeVeque
3798262c1a [DHCP Relay]: Fix Option 82 string - Remove quotes; add MAC address of receiving port as remote_id (#763) 2017-06-27 17:59:36 -07:00
Joe LeVeque
017eea8a87 [DHCP Relay]: Add support for custom Option 82 circuit_id of the form '<hostname>:<portname>' (#747)
* Add docker-dhcp-relay/Dockerfile to .gitignore

* Add isc-dhcp-relay .deb package to image build process, along with my Option 82 patch

* Install custom isc-dhcp-relay in dhcp_relay docker

* Install isc-dhcp-relay build dependencies in sonic-slave Docker container

* Copy the built .deb package to the destination directory

* Add dependencies for isc-dhcp-relay

* Change Option 82 string to '<hostname>:<portname>'

* Install dependencies of .deb files implicitly in Dockerfile

* Remove unused line

* Remove unnecessary space
2017-06-24 12:05:04 -07:00
Joe LeVeque
22819d9983 [docker-platform-monitor]: Add fancontrol (#735) 2017-06-23 15:23:00 -07:00
Shuotian Cheng
d1b12dc0ca [swss]: Sleep 5 min regardless of arp_update return code (#743)
- arp_update return code is not guaranteed to be true/false.
  When there is no VLAN, arp_update will return true.
  When there are VLANs, arp_update will return false because the
  command arping returns 1 due to the option '-w 0'.
- This script should be run every 5 minutes regardless of the return
  code.
2017-06-22 21:26:33 -07:00
lguohan
4bdcac8e4f [bgp]: move allowas-in into ipv6 section to enable allowas-in for ipv6 (#741) 2017-06-22 19:50:24 -07:00
sihuihan88
3268946de5 [BGPD]: add bgp dynamic neighbor configuration (#708)
* add bgp dynamic neighbor configuration

* [bgpd]: update as comments

* update as comment

* update to deployment_id_asn_map

* minor change
2017-06-21 18:52:50 -07:00
Taoyu Li
95906a6490 [installer] Copy old config files rather than only minigraph (#730) 2017-06-21 11:02:25 -07:00
sihuihan88
6867458058 [docker-ptf]: Install exabgp in docker ptf (#709) 2017-06-16 07:25:40 -07:00
Taoyu Li
5e6620e19e [bgp] Save bgp admin state (#690)
* [bgp] Save admin state and set default state to shutdown

* Set default behavior to no shutdown

* Add build option SHUTDOWN_BGP_ON_START

* Script change for default admin state to be on

* Address CR comments to bgp_neighbor script

* Fix script bug
2017-06-12 11:05:22 -07:00
Joe LeVeque
d094ceecc2 [docker-platform-monitor]: Add LED control daemon and plugin for x86_64-arista_7050_qx32 platform (#691)
* Add files for building ledd package; add ledd to docker-platform-monitor; Control platform monitor docker using supervisord

* Add sonic-platform-daemons submodule

* Rename ledd.mk -> sonic-ledd.mk

* Add led_control.py plugin for x86_64-arista_7050_qx32 platform

* Rename Dockerfile -> Dockerfile.j2

* Fix build

* Remove blank line
2017-06-10 22:05:11 -07:00
pavel-shirshov
390591de90 [docker-bgp]: Use address-family ipv6 for ipv6 vlan addresses (#692)
* Fix SAI submodule id

* Fix bgpd template. Use v6 address family for vlan ipv6 addr
2017-06-10 17:05:48 -07:00
lguohan
bc5bca66cc [dockerbase]: remove apt-get clean (#685) 2017-06-08 02:47:53 -07:00
Marian Pritsak
3903b45d41 [teamd.sh]: Remove LAG interfaces on exit (#643)
Use -k option for teamd to properly remove LAG interfaces when docker is
exiting.

Signed-off-by: marian-pritsak <marianp@mellanox.com>
2017-06-08 01:53:51 -07:00
lguohan
a7de6ebe24 [dockerbase]: make sure /var/cache/apt/archives directory exists (#684) 2017-06-08 00:26:42 -07:00
Qi Luo
ec273c8892 Disable snmpd native ipCidrRouteTable implementation (#675)
The SNMP subagent implements ipCidrRouteTable. If there is no nexthops
for default route, ie. switch isolated, the SNMP subagent will response
'no instance'. Then snmpd will response kernel routes, which include
non-front panel interfaces. To remove snmpd native implementation, we
only expose SNMP subagent's implementation.
2017-06-06 22:58:58 -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
d8c55840d0 [swss]: Update swss/common and add --batch_size 8192 option to orchagent (#668) 2017-06-04 01:35:47 -07:00
Shuotian Cheng
c3aa513dae [swss]: Update orchagent.sh script to use asic_type to add arguments (#667)
- Right now Broadcom and Cavium platforms need to set MAC address when
  starting orchagent daemon.
2017-06-03 13:49:33 -07:00
Shuotian Cheng
8944ee64f5 [Facebook]: Add Facebook Wedge 100 support (#666)
- Add a sample minigraph and Facebook-W100-C32 HWSKU
- update orchagent.sh script
2017-06-03 12:44:34 -07:00
Joe LeVeque
e0d22acc9e [DHCP Relay]: Wait for all interfaces to come up before starting DHCP relay (#660) 2017-06-01 18:38:33 -07:00
Shuotian Cheng
8adc490fe6 [swss]: Exiting orchagent with unsupported HWSKU (#650)
Echo error message to stderr and exit orchagent.sh starting script
2017-05-31 10:57:31 -07:00
lguohan
26f98559b0 [docker-ptf]: add hping3 into docker-ptf (#651) 2017-05-31 10:49:31 -07:00
Joe LeVeque
b8c11bccf2 [DHCP Relay]: Listen on all front panel, VLAN and PortChannel interfaces with IPv4 addresses (#645)
* DHCP relay now listens on all front panel, VLAN and PortChannel interfaces with IPv4 addresses
* Add sample isc-dhcp-relay output file
2017-05-30 18:29:18 -07:00
pavel-shirshov
122c03caee [docker-ptf]: Overwrite ubuntu scapy with version from p4lang (#639)
* Install scapy from p4lang

* Overwrite standard scapy version
2017-05-26 18:32:52 -07:00
Shuotian Cheng
e6bb4b20a1 [swss]: Update submodules and mount /var/log to swss docker (#636)
- [swss]: Update sairedis/swss/common submodules
- [orchagent]: Mount /var/log folder and use the folder to save recording files
- [orchagent]: Use -d to specify the folder path
2017-05-26 17:56:29 -07:00
pavel-shirshov
f3312b8e0b [docker-ptf-*]: Use buildimage infrastructure to build docker-ptf-* (#638)
* Add files to build docker-ptf-{platform}
2017-05-26 17:18:11 -07:00
pavel-shirshov
edab38e321 Install ipython from packages (#637) 2017-05-26 13:31:33 -07:00
sihuihan88
13c18ed045 [device]: Add support for SKU Force10-S6000-Q32 (#624) 2017-05-24 11:59:01 -07:00
pavel-shirshov
519802ec09 [docker-swss]: Restore FDB and ARP entries after fast reboot (#621)
* Restore FDB and ARP entries right after fast reboot to minimize traffic corruption

* Fix typo
2017-05-24 11:57:33 -07:00
pavel-shirshov
867670665f [docker-ptf]: Add less, ipython, and python ssh libraries (#625) 2017-05-24 01:34:37 -07:00
wadelnn
fb4cd63ac5 [Ingrasys] Add Ingrasys S8900 series platform (#569)
* Add Ingrasys S8900 series platform

* Add Ingrasys S8900-54XC platform driver
* Add Ingrasys S8900-64XC platform driver
* Reorganized Ingrasys debian package
* Move fancontrol config to device-specific file directory
* QSFP transceivers init on S9100-32X
* Update Thermal Policy in sensors.conf
* Add new Ingrasys S8900 series platform for docker-orchagent/orchagent.sh

Signed-off-by: Wade He <chihen.he@gmail.com>
2017-05-18 11:05:49 -07:00
Qi Luo
d70e973496 snmpd ignores unavailable disks (#607) 2017-05-16 16:46:30 -07:00
Samuel Angebault
cb969fc843 [platform] Add Arista DCS-7050QX-32S and missing plugins (#597)
* Update sonic-platform-modules-arista submodule

* Add sensors.conf for Arista DCS-7050QX-32S

* Add plugin/eeprom.py for Arista DCS-7050QX-32S

* Add plugin/sfputil.py for Arista DCS-7050QX-32S

* Add port_config.ini for Arista DCS-7050QX-32S

* Add plugin/sfputil.py for Arista DCS-7060CX-32S

* Add plugin/eeprom.py for Arista DCS-7060CX-32S

* Update plugin/eeprom.py for Arista DCS-7050QX-32
2017-05-16 08:07:47 -07:00
Shuotian Cheng
8af03fd0f9 [orchagent]: Add ARP update script to maintain VLAN neighbors (#401)
- Extend ARP reachable time to 30min
- Add arping to docker-swss
- Add arp_update script to routinely probe neighbors

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-05-15 17:06:19 -07:00
pavel-shirshov
b26ec863e8 [docker-base]: Add less, strace, and configuration for vim (#591)
* Add less in docker-base. Add strace in docker_base_dbg.
* Make link vim to vim.tiny and have vim config file
2017-05-11 18:46:11 -07:00
Joe LeVeque
6e45307a49 [docker-orchagent]: Properly manage with supervisord (#589) 2017-05-11 11:18:10 -07:00
Joe LeVeque
d5c13c0a83 [dockers]: Disable autorestart on all supervisor processes inside containers (#580) 2017-05-09 17:37:08 -07:00
Joe LeVeque
8f348399f5 [Dockers]: Manage all Docker containers with Supervisord (#573)
- Consolidate config.sh and start.sh scripts into one script (start.sh)
 - Solve issue #435 - All dockers now run supervisord as their ENTRYPOINT
 - All stdout/stderr output from processes managed by supervisord is now sent to syslog instead of their own files
 - Supervisord log messages are now also sent to syslog
 - Removed unused smartmontools package from docker-platform-monitor
2017-05-08 15:43:31 -07:00
maggiemsft
4dfe2a26f3 [docker-ptf]replace ping utility from inetutils-ping to iputils-ping (#523)
* replace ping utility from inetutil-ping to iputils-ping

* fix dup typo

* change from package installing to using apt install

* remove unnecessary package handling line
2017-05-01 18:47:29 -07:00
Shuotian Cheng
c7d540cb2f [ptf]: Add pip install pysubnettree (#554)
>> import SubnetTree

This module is used for PTF FIB test to build LPM
2017-04-29 00:15:12 -07:00
pavel-shirshov
d083d7e79c [database]: Remove hard/soft limits for client-output-buffer in redis (#539)
* Remove hard/soft limits for client-output-buffer in redis

Otherwise when we have a lot of updates from orchagent to syncd latter
one can't process queues fast enough and redic-database disconnect both
orchagent and syncd. orchagent and syncd doesn't have logic to deal with
it and just crash
2017-04-26 12:07:18 -07:00
Oleksandr Ivantsiv
c7ea3470ed [swss]: Generate config files for Everflow and IPinIP from minigraph (#507)
[swss]: Generate config files for Everflow and IPinIP from minigraph
 - Add Everflow DST IP to minigraph file
 - Extend minigraph.py to support Everflow
 - Add templates file for Everflow and IPinIP configuration
 - Add config.sh for swss docker to generate config files
2017-04-21 14:28:29 -07:00
Joe LeVeque
6c202919b3 [System logs]: Eliminate duplicate log messages and attempt rotation more frequently (#520)
* Rename 'ACSFileFormat' -> 'SONiCFileFormat'

* Rename '00-acs.conf' -> '00-sonic.conf'

* Add logrotate.d and systemd-journald config files to image

* Log all SONiC process messages to /var/log/syslog; prevent duplicate logging to /var/log/messages

* Do not redirect cron and daemon logs to their own files, let them log to /var/log/syslog

* Log all teamd messages to /var/log/teamd.log; Add more SONiC program names to SONiC rules clause

* Remove duplicate code by condensing quagga programs into a list; Fix teamd log rule

* Kernel and LPR messages no longer getting duplicated to their own log files

* Now calling logrotate every minute via cron job

* Need full path to logrotate in cron job

* Add '.log' suffix to wildcards, otherwise logrotate will rotate already-rotated logs (e.g., bgpd.log.1.1.1.1.1...)

* Add microsecond granularity to syslog messages

* Don't overwrite system crontab, instead, install additional logrotate crontab file into /etc/cron.d

* Removed incomplete concept of per-process SONiC logs. We can revisit again later
2017-04-21 08:22:44 -07:00
Shuotian Cheng
7dc1045c26 [swss]: Export platform as env variable in docker-swss (#524)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-04-21 08:21:41 -07:00
Rodny Molina
d30fbf1d72 [build]: Adding support for Free-Range-Routing stack. (#510)
- Extending SONiC building infrastructure to provide users
           with greater flexibility, by allowing them to elect a
           routing-stack different than the default one (quagga). The desired
           routing-stack will be defined in rules/config file.

         - As part of these changes I'm adding support for
           Free-Range-Routing (FRR) stack. Quagga will continue to be
           the default routing-stack.

Signed-off-by: Rodny Molina <rodny@linkedin.com>
2017-04-20 09:12:27 -07:00
lguohan
b3e10d2093 [vas]: remove docker-vas (#499) 2017-04-13 06:08:28 -07:00
Marian Pritsak
6dbe979e5f [build]: Include SONiC version into installer. (#472)
* [build]: Include SONiC version into installer.

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

* Append dirty if contains local changes

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

* Update config

* Use correct name for kernel version field

* Update sysDescription.j2
2017-04-05 16:14:41 -07:00
Taoyu Li
8391d7f8b5 [snmp] Fix a bug in SNMP alias mapping (#473)
* [snmp] Fix a bug in SNMP alias mapping Which was introduced in #448.
2017-04-03 21:34:18 -07:00
Taoyu Li
8c76556efb Re-commit PR #432 (SHA 4546372) (#474)
* [config/acl] Get ACL config from DHCP and load it in swss container (#432)
* Temporarily disable DHCP option 226
2017-04-03 16:12:32 -07:00
Shuotian Cheng
9841f8338b [redis]: Disable snapshotting completely (#463)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-31 23:51:31 -07:00
Joe LeVeque
5604b59be5 Remove deprecated docker-bgp (#465) 2017-03-31 15:51:38 -07:00
pavel-shirshov
823bc36bd9 Enable graceful restart feature for ToR router (#466) 2017-03-31 13:25:39 -07:00
Taoyu Li
fed908fc6b [config-engine] minigraph.py refactoring (#448)
* Refactor minigraph.py
See description in https://github.com/Azure/sonic-buildimage/pull/448 for detail
2017-03-30 15:25:31 -07:00
Joe LeVeque
71d299bed4 [swsssdk]: Update nomenclature: 'sswsdk' -> 'swsssdk' (#445) 2017-03-30 11:51:05 -07:00
lguohan
94934f7b3b Revert 432 taoyl/acl dhcp (#457)
* Revert "[config/acl] Get ACL config from DHCP and load it in swss container (#432)"

This reverts commit 4546372f48.
2017-03-29 20:11:46 -07:00
pavel-shirshov
814fd87e63 Remove /var/run/rsyslogd.pid bofore starting rsyslog (#453) 2017-03-29 18:07:25 -07:00
Shuotian Cheng
7f703a9c8f [docker-lldp]: Do not use TTY mode on lldpctl command (#454)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-29 17:47:21 -07:00
Taoyu Li
4546372f48 [config/acl] Get ACL config from DHCP and load it in swss container (#432)
Get ACL config from DHCP and load it in swss container
2017-03-29 13:33:54 -07:00
Shuotian Cheng
27dae90726 [docker-teamd]: Clean /etc/teamd/ folder before adding new configurations (#451)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-28 15:49:48 -07:00
Qi Luo
7a2a374917 [docker-snmp]: Disable snmpd IP module and use snmp subagent implementation (#447)
* Disable snmpd ip module, will use snmp subagent implementation
* Update git submodule
2017-03-28 15:48:29 -07:00
pavel-shirshov
70cc4994ef Fix qos configuration for TD2 platform (#439) 2017-03-27 16:38:18 -07:00
Joe LeVeque
fcaba688f7 [database]: Fix ENTRYPOINT for docker-database to ensure redis-server starts as PID 1 (#442) 2017-03-27 15:27:20 -07:00
Nadiya
713f6fc318 [sonic-cfggen] Add check to generate valid bgpconfig (#440)
* [sonic-cfggen]Add check to generate valid bgpconfig

Signed-off-by: Nadiya.Stetskovych <Nadiya.Stetskovych@cavium.com>

* Use builtin none instead of None

Signed-off-by: Nadiya.Stetskovych <Nadiya.Stetskovych@cavium.com>
2017-03-27 14:22:04 -07:00
pavel-shirshov
5314230980 [docker-syncd-%-rpc]: Integrate syncd dockers with rpc (#431)
* Build docker-syncd-*-rpc for brcm and mlnx

* Fix errors

* Update make files for rpc

* Fix mistypes
2017-03-24 18:36:56 -07:00
Taoyu Li
f08874db36 [platform-monitor]: Fix sensors.conf file path (#426)
sensors.conf file was moved in #316.
2017-03-22 16:59:12 -07:00
pavel-shirshov
91cca8966d [docker-syncd-*-rpc]: Fix build (#423)
* Fix docker-syncd-brcm-rpc build
* Fix docker-syncd-mlnx-rpc build

* Rename docker-syncd-rpc to docker-syncd-brcm-rpc

* Add fix for mlnx platform too
2017-03-22 16:38:51 -07:00
Shuotian Cheng
6a6bc88dcb [interfaces]: Remove bridge-utils from swss docker and add it to base image (#417)
The reason is that /etc/network/interfaces file is in base image. After booting,
docker-swss is not ready and thus the empty VLAN interfaces cannot be created
when the brctl is pointing to the binary inside the swss docker.

Add the bridge-utils into the base image and add bridge_ports none to the
/etc/network/interfaces file so that after boot-up the empty VLAN interfaces
will be created to let the members to join later.

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-20 21:39:09 -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
3643281594 [cfggen] Add tool to translate openconfig acl into sonic format (#388)
* Build sonic-config-engine as whl instead of deb package
* Add tool to translate openconfig acl into sonic format
2017-03-17 14:51:42 -07:00
Shuotian Cheng
05e6b3611d [interfaces]: Combine vlan_interfaces and lag_interfaces file and add allow-hotplug (#381)
* [files]: Add allow-hotplug stanza to interfaces files

- start interface <interface_name> when the kernel detects
a hotplug event from the interface

ref: https://www.debian.org/doc/manuals/debian-reference/ch05.en.html

* [interfaces]: Combine vlan_interfaces and lag_interfaces file and add allow-hotplug

1. Remove vlan_interfaces and lag_interfaces file and members in teamd.j2
2. Add all interfaces to /etc/network/interfaces file
3. Add allow-hotplug stanza
4. Add up <command> to automatically add interfaces to VLAN and LAG
5. Add unique_name filter to minigraph.py to remove duplicate interface names
6. Add brctl to base image
7. Update sonic-swss submodule

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-16 11:22:40 -07:00
Joe LeVeque
d6bfa505b3 Wait for VLAN interface to come up before starting DHCP relay (#399) 2017-03-16 10:40:33 -07:00
Marian Pritsak
4c65682478 [orchagent]: Add swssloglevel shortcut in base image (#386)
Signed-off-by: marian-pritsak <marianp@mellanox.com>
2017-03-07 23:00:58 -08:00
Taoyu Li
bd6bf1ff9a [config] [oneimage & dhcp relay docker] Move ntp, rsyslog, and dhcp server information into minigraph (#374)
Move DHCP, rsyslog, and NTP server information into minigraph


* Fix dhcp relay template according to CR
2017-03-06 12:41:26 -08:00
Joe LeVeque
5dafa907b2 [dockers]: Add base image files to syncd-brcm, database and teamd (#380) 2017-03-06 12:22:42 -08:00
Min Yao
b9c624520e Support centec platform (#376) 2017-03-04 02:17:38 -08:00
Nadiya
701d5ddb8a Add cavm saiserver (#137) 2017-03-04 01:56:41 -08:00
lguohan
80e3dc0df7 [device]: add missing sai profile and minigraph for the supported devices (#362)
change orchagent start.sh to use mounted hwsku directory
2017-03-02 23:53:20 -08:00
Shuotian Cheng
f9d8137975 [teamd]: Add redis-tools as the dependency of docker-teamd and fix bugs (#363)
- Fix the if condition bug to wait till PORT_TABLE:ConfigDone before start

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-02 18:07:43 -08:00
Shuotian Cheng
f06dc5d3f9 [teamd]: Update the start.sh script to clean up the docker state (#351)
This change should be temporary because the current teamd cannot
re-create net devices acrosss restart. Basically, it will fail
when there're files in /var/run/teamd/ folder or the previously
created net devices are still there. Thus, the current workaround
is to remove the obsolete files to restart the docker-teamd.

This workaround cannot resolve the swss restart issue. Before
restarting swss, docker teamd needs to be stopped manually. After
swss starts, docker teamd needs to be restarted manually.

This change will only make sure that rebooting the switch will
make the switch at the correct state.

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-02 15:59:16 -08:00
pavel-shirshov
bac738f91f Add bgp container with gobgp (#358)
* Add go-1.7 into docker-slave

* Create container docker-fpm-gobgp with gobgpd inside
2017-03-02 11:33:46 -08:00
Shuotian Cheng
2a2af6a44e [orchagent]: Update start.sh to combine td2 qos/buffers config (#344)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-03-01 18:23:28 -08:00
Taoyu Li
903499000f [docker-teamd] fix a config bug introduced in #345 (#353) 2017-03-01 14:32:52 -08:00
Shuotian Cheng
ad1b581111 [docker]: Add -c option in teamd docker Dockerfile (#348)
CMD is not longer a file name but a command that needs to be executed,
thus /bin/bash is not enough for the entrypoint and -c is needed.

Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-02-28 13:36:59 -08:00
Taoyu Li
d9b1000e6c [cfggen] Add support in -v for jinja2 expression (#345)
* Add support in -v for jinja2 expression
* Format json output
2017-02-28 10:52:56 -08:00
lguohan
b21d26dfe0 [platform]: add support for Force10-Z9100 32x100G (#332)
* [platform]: add support for Force10-Z9100 32x100G

* update sonic-swss submodule

* [broadcom]: update broadcom sai/sdk
2017-02-24 08:35:11 -08:00
Taoyu Li
a16c780285 [teamd] Fix a bug in #305 that will break teamd (#329) 2017-02-23 14:47:51 -08:00
pavel-shirshov
151a7d2a90 Apply buffer/qos configuration for mlnx platform (#321) 2017-02-23 11:21:11 -08:00
Taoyu Li
95ad5c79fd Fix the reference in docker-snmp-sv2 to deprecated alias_map.json (#320) 2017-02-22 14:28:37 -08:00
kaiyu22
b5f9fcae99 [platform]: ingrasys-s9100: Add ingrasys switch s9100 (#318)
Signed-off-by: Sam Yang <yang.kaiyu@gmail.com>
2017-02-22 02:15:39 -08:00
antonpatenko
a2b4bcbb61 [docker-base]: Enabled common debug packages installation. (#292) 2017-02-21 19:04:43 -08:00
Samuel Angebault
f57fd0bee8 [platform] Add support configurations files for DCS-7060CX-32S (#313) 2017-02-21 13:37:07 -08:00
Taoyu Li
073c28bf15 Move template files to /usr/share/sonic/templates (#305) 2017-02-18 17:50:29 -08:00
pavel-shirshov
a845740543 [All Dockerfiles]: Prevent apt asking questions on the console (#300)
Add noninteractive setting into every Dockerfile in the repo

Signed-off-by: Pavel Shirshov pavelsh@microsoft.com
2017-02-16 21:48:49 -08:00
Shuotian Cheng
877291ae91 [docker-teamd]: Automatically start the processes after host interfaces are created (#278)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-02-15 08:54:10 -08:00
Taoyu Li
7e9f6b4e12 Remove /etc/default/snmpd from snmp docker (#294) 2017-02-13 17:52:29 -08:00
Taoyu Li
ecc9f0c6d8 Properly pull vlan subnet from minigraph when writing bgpd.conf (#293) 2017-02-13 14:17:22 -08:00
antonpatenko
6a6f5a66a8 [docker-base]: unsubmodule docker-base. (#275)
Convert docker-base from submodule into a regular directory.
2017-02-12 18:02:04 -08:00
Qi Luo
815bf53de7 snmpd disables inetCidrRouteTable module (#286) 2017-02-10 10:40:09 -08:00
Qi Luo
822680d21b Build python3.6 deb packages and install them into docker-snmp-sv2 (#245) 2017-02-08 22:02:21 -08:00
lguohan
b6753e7960 [docker-config-engine]: introduce docker sonic config engine (#274)
* [docker-config-engine]: introduce docker sonic config engine

sonic config engine provide the sonic configure engine for all sonic
dockers that rely on the engine to generate runtime configuration.
2017-02-07 18:11:19 -08:00
Oleksandr Ivantsiv
53a9792014 [Makefile]: Add possibility for docker containers to install files to base image (#240)
- Add vtysh/lldpctl/sensors to baseimage
2017-02-07 00:33:20 -08:00
Joe LeVeque
522585aadf [docker-fpm]: T0 devices receive routes containing one occurrence of their own ASN (#271) 2017-02-07 00:28:30 -08:00
Joe LeVeque
12fa107645 Revert "Revert "Conform with new Docker build method"" (#264) 2017-02-06 08:40:57 -08:00
Taoyu Li
b2e44834f1 SNMP will now bind on 0.0.0.0 if mgmt ip not specified in minigraph (#253)
Fix an issue that snmp will fail to start if mgmt ip is not specified in minigraph (e.g. default graph in oneimage where mgmt ip is from DHCP)
2017-02-03 21:01:34 -08:00
lguohan
68270f36df [build break]: Revert "Conform with new Docker build method" (#257) 2017-02-03 20:15:55 -08:00
Shuotian Cheng
00fe0784b4 [Broadcom]: Update Broadcom debian packages and m3000-r0 m3000-r1 config.bcm files (#251)
Signed-off-by: Shuotian Cheng <shuche@microsoft.com>
2017-02-03 19:44:00 -08:00
Taoyu Li
6f5262bc2c Fix config bug in snmp (#252)
1. Modify snmp user to Debian-snmp to fit snmpd 5.7.3
2. Fix a bug that cause sysLocation to be missing from snmpd.conf
2017-02-03 17:39:09 -08:00
Joe LeVeque
76cfd672d1 Conform with new Docker build method (#250) 2017-02-03 14:21:57 -08:00
Joe LeVeque
b85c8dc89e Fix isc-dhcp-relay template (#246) 2017-02-02 21:10:07 -08:00
Taoyu Li
60e1fc3c98 ONEImage - Read all platform dependent information from sonic-config-engine (#238)
Read all platform dependent information from sonic-config-engine
2017-02-02 20:34:34 -08:00
Joe LeVeque
4cd3d31946 Update APT package lists before first attempt to install (#241)
* Update APT package lists before first attempt to install
* Move setting of environment variable before first call to apt-get
2017-02-02 11:12:04 -08:00
Joe LeVeque
61d4509f0b Add new sonic-config dependencies to dhcp_relay Dockerfile (#237) 2017-02-01 21:29:50 -08:00
Andriy Moroz
ddbda4ce2e docker: Add ipaddress python module to the PTF docker (#231)
Needed for the FIB test
2017-02-01 12:49:43 -08:00
Taoyu Li
1c074367a1 Add daemon file which was missing in docker-fpm (#229) 2017-02-01 00:10:40 -08:00
Taoyu Li
be8ed80554 teamd: Use 75% links upperbound as min-links (#224) 2017-01-30 17:33:03 -08:00
Oleksandr Ivantsiv
f2eed8f8a0 Added support of ONIE version 2016.11-5.1.0001 for Mellanox platforms. (#218) 2017-01-29 11:34:12 -08:00
Oleksandr Ivantsiv
34ea91349c one image implementation (#215)
* Single image

* Fix review comments

* Update syncd service. Add HW mgmt to Mellanox single image.

* Add single image template for Broadcom platform.

SKU should be provided during configure:
make configure PLATFORM=broadcom SKU=Force10-S6000

* Add single image template for Cavium platform.

SKU should be provided during configure:
make configure PLATFORM=cavium SKU=AS7512

* Add description to sonic_debian_extension.j2 file.
2017-01-29 11:33:33 -08:00
Joe LeVeque
c18b65bc16 Refactor DHCP relay docker in sonicv2 style (#217)
* Refactor DHCP relay docker in sonicv2 style
2017-01-26 23:36:58 -08:00
Joe LeVeque
608980524f [docker]: Install dpkt Python package in PTF docker (#216) 2017-01-25 18:19:15 -08:00
Taoyu Li
e87498d16d Add platform config for 7050 and 6100 (#212)
* Add platform config for 7050 and 6100

* allow certain platform to have no sensors.conf file in sonic-cfggen
2017-01-25 18:18:25 -08:00
Taoyu Li
1b49499b65 [docker]: Add a status file to mark that the file is generated by sonic-config-engine (#211) 2017-01-24 19:16:55 -08:00
Taoyu Li
9b940c3b3d Remove apt purge which wrongly remove sonic-config-engine (#204) 2017-01-21 10:30:39 -08:00
Joe LeVeque
78f11a7ff3 [docker]: Make line breaks consistent in DHCP relay Dockerfile (#203) 2017-01-20 22:33:11 -08:00
Oleksandr Ivantsiv
ea65962fe4 Fix compilation issue. (#198)
Fix docker-platform-monitor compilation issue.
Update .gitignore file
2017-01-20 13:55:42 -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
Oleksandr Ivantsiv
80d0d2d43b Reduce docker images size. (#196)
* Reduce docker images size.

Install only required dependencies.

* Update Dockerfile.j2
2017-01-19 12:19:21 -08:00