summaryrefslogtreecommitdiff
path: root/doc/user/installation.rst
AgeCommit message (Collapse)Author
2024-06-25doc: improve table-of-contents organizationQuentin Young
The current TOC organization is not really following Sphinx best practices and is resulting in a jumble of articles showing up in the sidebar. This change primarily organizes existing articles into three major sections: * Introduction - Contains system requirements, architecture & design, installation, basic setup * Basics - Covers basic commands, concepts, and some random things that don't fit elsewhere * Protocols - Contains all protocol documentation, and other miscellaneous daemon docs such as those on Zebra, watchfrr, mgmtd, etc. The appendix has been left as is, but the TOC now has a caption which has the effect of adding a section separator in the nav sidebar. In order to make the new structure make sense: * Some content has been lifted up from the "Overview" page into the index page * Most content has been pushed down from the "Overview" page into the "About" page (new) * BFD's page is now titled "BFD" for consistencty; it was the only one that had the full protocol name written out in the title And a couple drivebys: * BFD's intro description paragraph was rewritten to make more sense * Old language stating that we publish platform packages on the Github releases page was removed * References to source building instructions were consolidated into that section Signed-off-by: Quentin Young <qlyoung@qlyoung.net>
2024-06-11doc: Add reloading script into Python dependency sectionAlexander Trotsenko
Signed-off-by: Alexander Trotsenko <trotsenko93@mail.ru>
2024-03-15*: remove confd pluginIgor Ryzhov
ConfD is not supported anymore and its use is discouraged by developers: https://discuss.tail-f.com/t/confd-premium-no-longer-available-future-of-confd/4552/6 Remove the code and all mentions of ConfD from the documentation. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2024-03-04zebra: Add fpm_listenerDonald Sharp
Add a tiny fpm_listener program to allow FRR to test the fpm. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-02-05vtysh: Remove deprecated shell_access codeDonald Sharp
This code has been deprecated for over a year and frankly needs to be removed from the system. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2024-01-28zebra, build: disable irdp by defaultIgor Ryzhov
IRDP client (rdisc) was deleted from iputils more than 2 years ago. It's time to drop IRDP, but first let's stop building and including it in the packages by default to see if anyone will be complaining. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2024-01-27build: update packaging & docs for dir changesDavid Lamparter
`--sysconfdir` and `--localstatedir` now align with general autoconf practices. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2023-09-24lib: Drop deprecated enable-time-check, enable-cpu-time compile optionsDonatas Abraitis
Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2023-05-18doc: configure: add configure option to generate .ccls fileChristian Hopps
`ccls` needs information from FRR build configuration to work, so allow creation of a custom ccls config during autoconf. Paraphrasing the doc entry: ccls is a very powerful tool that allows dev environments to provide sophisticated IDE functionality, e.g., semantically aware jumps and code refactoring... Signed-off-by: Christian Hopps <chopps@labn.net>
2023-02-01vtysh: Schedule shell access for deprecationDonald Sharp
Schedule shell access for deprecation and removal in a years time. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-11-07lib: Add PCRE2 supportDonatas Abraitis
Some results: ``` ==== PCRE ==== % ./a.out "^65001" "65001" comparing: ^65001 / 65001 ret status: 0 [14:31] donatas-pc donatas /home/donatas % ./a.out "^65001_" "65001" comparing: ^65001_ / 65001 ret status: 0 ===== PCRE2 ===== % ./a.out "^65001" "65001" comparing: ^65001 / 65001 ret status: 0 [14:30] donatas-pc donatas /home/donatas % ./a.out "^65001_" "65001" comparing: ^65001_ / 65001 ret status: 1 ``` Seems that if using PCRE2, we need to escape outer `()` chars and `|`. Sounds like a bug. But this is only with some older PCRE2 versions. With >= 10.36, I wasn't able to reproduce this, everything is fine and working as expected. Adding _FRR_PCRE2_POSIX definition because pcre2posix.h does not have include's guard. Signed-off-by: Donatas Abraitis <donatas@opensourcerouting.org>
2022-06-23doc: Update doc w/ regards to realmsDonald Sharp
Update the documentation with realms and how they interact with nexthop groups that are installed into the kernel. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2022-06-02ospfclient: add ospfclient api python classChristian Hopps
Signed-off-by: Christian Hopps <chopps@labn.net>
2022-01-08Merge pull request #10242 from anlancs/fix-service-timeDonald Sharp
build: add "--with-service-timeout" in configure.ac
2022-01-06build: add "--with-service-timeout" in configure.acanlan_cs
On lower CPU with lots of static routes, it will cost more than 2 minutes. 2 minutes is the default timeout value, we can adjust it by configure: ./configure --with-service-timeout=<digit> Signed-off-by: anlan_cs <anlan_cs@tom.com>
2022-01-06doc: minor grammar correctionanlan_cs
Need one empty line. Signed-off-by: anlan_cs <anlan_cs@tom.com>
2021-06-29build, doc: extricate `--enable-systemd`David Lamparter
Ouch, that is a *lot* of places to update... Signed-off-by: David Lamparter <equinox@diac24.net>
2021-06-24doc: mark deprecated ./configure optionsDavid Lamparter
These aren't compile-time settings anymore. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-06-24build: remove --enable-exampledirDavid Lamparter
This is no longer used with the recent config example removal. Signed-off-by: David Lamparter <equinox@diac24.net>
2021-05-31doc: update VRF support descriptionIgor Ryzhov
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-02-22doc: automatically generate index entries for cliQuentin Young
- Generate index entries automatically - Remove manual command index entries - Clean up a few other manual index entries Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-12-01doc: add scripting docsQuentin Young
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-11-04doc: add crosslink to developer docsQuentin Young
for source build instructions Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-10-23build: add --disable-rpath option in configureEmanuele Bovisio
Add an option to remove RPATH entry from binary files. Useful for cross-compilation, otherwise libtool hardcodes the building path. Signed-off-by: Emanuele Bovisio <emanuele.bovisio@eolo.it>
2020-10-12nhrp: Make vici socket path configurableZoran Pericic
nhrp: Configure vici socket path using configure --with-vici-socket=/var/run/charon.vici If not specified default to /var/run/charon.vici Signed-off-by: Zoran Peričić <zpericic@netst.org>
2020-08-27Merge pull request #6989 from xThaid/remove_fuzzingQuentin Young
zebra: remove fuzzing stuff
2020-08-25zebra: remove fuzzing stuffJakub Urbańczyk
The fuzzing code that is in the master branch is outdated and unused, so it is worth to remove it to improve readablity of the code. All the code related to the fuzzing is in the `fuzz` branch. Signed-off-by: Jakub Urbańczyk <xthaid@gmail.com>
2020-08-25doc: vrf socket creation logicOleg A. Arkhangelsky
Fix grammar Signed-off-by: Oleg A. Arkhangelsky <sysoleg@yandex.ru>
2020-08-21doc: vrf socket creation logicOleg A. Arkhangelsky
Make documentation consistent with 0556fc3 changes. Signed-off-by: Oleg A. Arkhangelsky <sysoleg@yandex.ru>
2020-06-19build: Allow removal of build configs from version stringJafar Al-Gharaibeh
A new config option `--disable-version-build-config` allows you to show short version string by dropping "configured with:" and all of its build configs Signed-off-by: Jafar Al-Gharaibeh <jafar@atcorp.com>
2020-02-16doc: Update configure options in installation notesDonald Sharp
Add some missing configuration options in the installation notes. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-10-16*: Allow disabling of `getrusage` callsDonald Sharp
getrusage, in a heavily stressed system, can account for signficant running time due to process switching to the kernel. Allow the end-operator to specify `--disable-cpu-time` to avoid this call. Additionally we cause `show thread cpu` to not show up if this is selected. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-08-06docs: Add notes about limited MPLS-TE supportMark Stapp
Add notes to several docs about the limits to FRR's current MPLS-TE support, which is limited to some routing protocol LSA/TLV support. It wasn't very clear that FRR does not offer a complete TE/RSVP-TE solution at this time. Also removed some stale info about configure script options. Signed-off-by: Mark Stapp <mjs@voltanet.io>
2019-07-01build, lib: bump libyang requirement version to >= 0.16.105Renato Westphal
After ~4 months of deprecation period [1], drop support for older libyang versions that don't support embedded extensions. In addition to support for embedded extensions, libyang 0.16-r3 contains several bug fixes and performance improvements compared to libyang-0.16-r1. It was about time to update. Fixes: * Issue #3273 * Issue #3971 [1] See commit 68626e08. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2019-06-17doc: add config file name for mpls configMark Stapp
We say something about what needs to be configured - but don't name the file where the change needs to go. Signed-off-by: Mark Stapp <mjs@voltanet.io>
2019-06-04build: refactor & revamp python autoconf logicDavid Lamparter
Signed-off-by: David Lamparter <equinox@diac24.net>
2019-03-20doc: fix a couple of typosRuben Kerkhof
Found with https://github.com/codespell-project/codespell Signed-off-by: Ruben Kerkhof <ruben@rubenkerkhof.com>
2019-03-06doc: Update documentation about multipathDonald Sharp
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-01-24build, lib/yang: bake in extensions if possibleDavid Lamparter
Starting with libyang 0.16.74, we can load internally embedded yang extensions instead of going through the file system/dlopen. Detect support for this at build time and use if available. NB: the fallback mechanism will go away in a short while. Signed-off-by: David Lamparter <equinox@diac24.net>
2019-01-09doc: Add more documentation around configure optionsDonald Sharp
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-01-08doc: Fix typos and grammarAnand
Signed-off-by: Anand <anandakumar.u@gmail.com>
2018-10-28doc: strip trailing whitespaceQuentin Young
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2018-11-03doc: update libyang build instructionsRenato Westphal
The --with-yangmodelsdir and --with-libyang-pluginsdir build-time options pertain to FRR so they shouldn't be placed along with the libyang build instructions. Move these instructions to where they belong to avoid confusion. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2018-10-27lib: add a new northbound plugin for SysrepoRenato Westphal
This plugin leverages the northbound API to integrate FRR with Sysrepo, a YANG-based configuration and operational state data store. The plugin is linked to the libsysrepo library and communicates with the sysrepod daemon using GPB (Google Protocol Buffers) over AF_UNIX sockets. The integration consists mostly of glue code that calls the appropriate FRR northbound callbacks in response to events triggered by the sysrepod daemon (e.g. request to change the configuration or to fetch operational data). To build the sysrepo plugin, provide the --enable-sysrepo option to the configure script while building FRR (the libsysrepo library needs to be installed in the system). When installed, the sysrepo plugin will be available for all FRR daemons and can be loaded using the -M (or --module) command line option. Example: bgpd -M sysrepo. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2018-10-27lib: add a new northbound plugin for ConfDRenato Westphal
This plugin leverages the northbound API to integrate FRR with the ConfD management agent. The plugin is linked to the libconfd library and communicates with the confd daemon using local TCP sockets. The integration consists mostly of glue code that calls the appropriate FRR northbound callbacks in response to events triggered by the confd daemon (e.g. request to change the configuration or to fetch operational data). By integrating FRR with the libconfd library, FRR can be managed using all northbound interfaces provided by ConfD, including NETCONF, RESTCONF and their Web API. The ConfD CDB API is used to handle configuration changes and the ConfD Data Provider API is used to provide operational data, process RPCs and send notifications. Support for configuration management using the ConfD Data Provider API is not available at this point. The ConfD optional 'get_object()' and 'get_next_object()' callbacks were implemented for optimal performance when fetching operational data. This plugins requires ConfD 6.5 or later since it uses the new leaf-list API introduced in ConfD 6.5. To install the plugin, the --enable-confd option should be given to the configure script, specifying the location where ConfD is installed. Example: ./configure --enable-confd=/root/confd-6.6 When installed, the confd plugin will be available for all FRR daemons and can be loaded using the -M (or --module) command line option. Example: zebra -M confd. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2018-10-27lib: introduce new northbound APIRenato Westphal
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2018-09-05doc: add documentation for fabricdChristian Franke
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-08-08bfdd: add documentationRafael Zalamena
Add BFD daemon documentation: * commands; * man page; * manual / description; Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2018-07-04unit tests: support code coverage instrumentation and reportsArthur Jones
Currently, make check runs the unit tests and reports pass/fail, but we have no way to guage how much of the code is covered by these tests. gcov provides those statistics on a per source file basis, but requires special CFLAGS and LDFLAGS. Here, we add the --enable-gcov configure option to setup those options correctly. We also add a make target called check-coverage, which runs the unit tests, runs gcov and uploads the data to the codecov.io cloud service for display. Finally, we include a Dockerfile-coverage which creates a container image in alpine linux to run the tests. To create the image: $ docker build \ --build-arg commit=`git rev-parse HEAD` \ --build-arg token=<upload token from codecov.io> \ -t frr-gcov:latest \ -f docker/alpine/Dockerfile-coverage . and to create and upload the report: $ docker run -it --rm frr-gcov:latest Testing done: Created and uploaded a report from my fork using alpine linux 3.7. Non-coverage alpine 3.7 build still works. Issue: https://github.com/FRRouting/frr/issues/2442 Signed-off-by: Arthur Jones <arthur.jones@riverbed.com>
2018-06-23user: add 'Linux sysctl settings and kernel modules' installation considerationsLou Berger
Signed-off-by: Lou Berger <lberger@labn.net>