62 Commits

Author SHA1 Message Date
Nick Huber
c965896f2e Merge pull request #16 in PAR/yap from DEV-3068-write-up-a-document-on-converting-yap-to-6.5 to master
* commit '7ce9202e5aaa6cf8240d3997c978e2f8dfdec079':
  Note minimum version for migrating off YAP
  Fix formatting typo in documentation
  Add documentation on migrating to managed mesh
2020-01-06 15:39:26 -08:00
Ben Tremblay
7ce9202e5a Note minimum version for migrating off YAP
Specifically mention all aggregators carrying space traffic must be
version 6.5 or later to migrate a space off YAP.

DEV-3068
2020-01-06 15:03:25 -08:00
Ben Tremblay
9f6a714f84 Fix formatting typo in documentation
Missing space after a bullet point.

DEV-3068
2020-01-06 10:40:34 -08:00
Ben Tremblay
3f998e57cf Add documentation on migrating to managed mesh
DEV-3068
2020-01-06 10:32:41 -08:00
Emily Prachnau
d2649aea9a Merge pull request #15 in PAR/yap from bugfix/DEV-2560-bird-controller-unable-to-start-due-to-leftover-yap-configuration-file to master
* commit 'a2fe2e66133a97c325feda4f9e53e2523cccd366':
  Don't echo "Stopping $space" on restart
  Also remove the generated space configured when trying to restart
  Also cleanup teh space configuration in the stop function
  Always clean up space bird configuration
2019-08-08 16:03:03 -07:00
Nick Huber
a2fe2e6613 Don't echo "Stopping $space" on restart
DEV-2560
2019-08-08 15:08:48 -07:00
Nick Huber
7ec7208ad3 Also remove the generated space configured when trying to restart
The actual restart might fail in such a way that it doesn't get into the
other parts of the code, so just preempt this by removing the
configuration early.

DEV-2560
2019-08-08 10:57:08 -07:00
Nick Huber
6720cb8180 Also cleanup teh space configuration in the stop function
DEV-2560
2019-08-06 15:28:09 -07:00
Nick Huber
5a56a06148 Always clean up space bird configuration
Also silence some output from errors on deleting links and rules that
may not exist.

DEV-2560
2019-08-02 14:48:28 -07:00
Emily Prachnau
a9e02455b2 Merge pull request #14 in PAR/yap from bugfix/DEV-2509-yap-custom-bird-config-is-not-included-at-runtime to master
* commit '939030669a1cef3b726a8bc19e7953e0e4258531':
  Restart space after updating bird config instead of reloading
2019-07-16 15:39:53 -07:00
Ben Friesen
939030669a Restart space after updating bird config instead of reloading
DEV-2509
2019-07-16 13:42:26 -07:00
Nick Huber
f945a696c2 Merge pull request #13 in PAR/yap from bugfix/DEV-2512-yap-hangs-forever-on-trying-to-start-some-spaces-on-aggregators to master
* commit 'f37d8699652a5fb63a1d6dd47c61865b545cf247':
  Support running check-policy-rules for a specific space
  Update docs to show systemd template usage
  Switch to systemd service templates for space management
2019-07-15 14:56:47 -07:00
Brandon Cazander
f37d869965 Support running check-policy-rules for a specific space
DEV-2512
2019-07-12 15:11:24 -07:00
Brandon Cazander
a9e1264524 Update docs to show systemd template usage
The yap service on aggregators also no longer runs `yap
check-policy-rules` as this would almost always log the following on
boot:

    Unable to connect to server control socket (/var/run/bonding/pwan-outside-bird.sock): No such file or directory

The individual space services run this check after start on their
specific space.

DEV-2512
2019-07-12 15:03:41 -07:00
Brandon Cazander
ac1c94e1c0 Switch to systemd service templates for space management
There is a new service template for yap spaces:

    systemctl status yap-space@<space key>.service

The running of the services is managed by the main yap service still,
which reads the configuration expressed through salt and runs the
relevant systemctl commands to start/stop spaces as required. See:
https://www.freedesktop.org/software/systemd/man/systemd.service.html#Service%20Templates

Some other fixes included:
- Remove empty lines in /etc/yap/config file with jinja2 control characters
- Fix `stop_unknown` function which previously wouldn't remove leftover ip
  rules
- Specifically lock around bulk operations like `start_all` instead of
  around running yap in any capacity. Running operations on specific
  spaces will also not lock anymore so that multiple spaces can be
  started simultaneously.
- Defer adding VLAN interfaces until space is up and running in bird to
  avoid having to clean this up if it fails.

Fixes DEV-2512
2019-07-12 14:45:42 -07:00
Emily Prachnau
dea80797db Merge pull request #12 in PAR/yap from feature/DEV-2481-add-upgrade-command-to-yap to master
* commit 'f7ef72194f1b3e861bd4bd3020d41ac897aa2670':
  Fix format of docs
  Disable super verbose output
  Add upgrade command to yap for easier upgrading of nodes
2019-06-27 15:45:37 -07:00
Nick Huber
f7ef72194f Fix format of docs
DEV-2481
2019-06-27 15:27:23 -07:00
Nick Huber
3fd0335b49 Disable super verbose output
DEV-2481
2019-06-27 15:21:12 -07:00
Nick Huber
2ba180ea6c Add upgrade command to yap for easier upgrading of nodes
DEV-2481
2019-06-27 12:03:03 -07:00
Emily Prachnau
082c607ecf Merge pull request #11 in PAR/yap from bugfix/DEV-2457-yap-should-always-try-to-restart to master
* commit '352822b91617421067f1348485fb0efcfea4a263':
  Remove and ignore vscode files
  Use a simple type with Restart=on-failure to be more resllient
2019-06-21 15:59:23 -07:00
Nick Huber
352822b916 Remove and ignore vscode files
DEV-2457
2019-06-21 15:49:44 -07:00
Nick Huber
662ad04fbd Use a simple type with Restart=on-failure to be more resllient
The 'start-all' had to be moved to an ExecStartPre so that the service
can detect a failure, since anything in ExecStart will be considered a
success due to RemainAfterExit=True. See
https://github.com/systemd/systemd/issues/3396 for more details.

DEV-2457
2019-06-21 11:37:49 -07:00
Nick Huber
459bbc0148 Merge pull request #10 in PAR/yap from bugfix/DEV-2459-yap-tries-to-access-invalid-space-field-when-generating-aggregator-s-config to master
* commit '570012443c11296679cea6af442804d1b0b9fb4c':
  Don't try to enable spaces that don't have a VLAN set
2019-06-20 16:56:13 -07:00
Brandon Cazander
570012443c Don't try to enable spaces that don't have a VLAN set
Also clean up the custom IP/bird configuration on an aggregator when
deleting a space.

DEV-2459
2019-06-20 16:25:07 -07:00
Brandon Cazander
8c463bebc7 Merge pull request #9 in PAR/yap from bugfix/DEV-2458-yap-failed-to-change-space-config to master
* commit '4605133dbf206bc6a3aad34ae8564af1395b8e76':
  Use a file lock to ensure only 1 yap command is running at a time
2019-06-20 15:29:30 -07:00
Nick Huber
4605133dbf Use a file lock to ensure only 1 yap command is running at a time
This prevents some conditions that can occur between the timer trying to
fix ip rules and the ip rules being initially created.

DEV-2458
2019-06-20 14:54:57 -07:00
Emily Prachnau
e6158937ed Merge pull request #8 in PAR/yap from bugfix/DEV-2456-yap-still-restarts-on-some-space-config-actions to master
* commit '00b5b4c8101f08bfc64a06da58cd2375dddc63f4':
  Only restart specific space when a space IP is set or removed
2019-06-19 14:04:59 -07:00
Nick Huber
00b5b4c810 Only restart specific space when a space IP is set or removed
This reduces downtime on space changes to only a single space, instead
of every space on the aggregator.

DEV-2456
2019-06-19 12:01:07 -07:00
Emily Prachnau
b7887a0c9a Merge pull request #7 in PAR/yap from bugfix/DEV-2446-yap-restarts-on-aggregators-when-space-config-is-changed-causing-customer-outages to master
* commit '3ba97c385f2426310e7723c9d50185264613456e':
  Update usage and method of sending a command to bird
  Only reconfigure bid on some actions
2019-06-17 09:33:27 -07:00
Nick Huber
3ba97c385f Update usage and method of sending a command to bird
DEV-2446
2019-06-17 09:30:04 -07:00
Nick Huber
364df3a508 Only reconfigure bid on some actions
agg-set-space-bird-config and agg-remove-space-bird-config don't need to
restart all of yap to apply their changes, so just update the files and
reconfigure bird instead to save on some outage time.

DEV-2446
2019-06-14 14:47:46 -07:00
Brandon Cazander
a528e00a53 Merge pull request #6 in PAR/yap from bugfix/DEV-2312-yap-starts-too-early-on-aggregators-and-makes-bird-fail to master
* commit '79daa0a1ec06e5c6a7a50b6b2de4681c74c1e47c':
  Make yap bind to and start after node
  Make yap be 'PartOf' node instead of 'After'
  Added IP version and safety-quotes to table grep DEV-2312
  Wait for space-specific table in bird to start yap DEV-2312
2019-05-24 14:25:11 -07:00
ben
79daa0a1ec Make yap bind to and start after node
This should make YAP run if and only if node is running, which is the
desired behaviour.

This commit also includes making the yap-policy-checker bind to and
start after yap for similar reasons.

DEV-2312
2019-05-24 09:05:44 -07:00
ben
022cf30ada Make yap be 'PartOf' node instead of 'After'
Change yap service dependency type on node from 'After' to 'PartOf'.

DEV-2312
2019-05-23 09:45:53 -07:00
ben
37c9553881 Added IP version and safety-quotes to table grep
DEV-2312
2019-05-23 09:44:12 -07:00
ben
474f5f07c1 Wait for space-specific table in bird to start yap
DEV-2312
2019-05-17 15:28:14 -07:00
Brandon Cazander
bfaf516b9f Merge pull request #5 in PAR/yap from bugfix/DEV-2259-missing-config-on-yap-vxrs to master
* commit 'a24e3a6a9d8373921765027e483b694579397a82':
  Fix firewall not restarting when a new VXR is made
  Manage sysctl ip forwarding in vxr salt state
2019-04-18 14:54:50 -07:00
ben
a24e3a6a9d Fix firewall not restarting when a new VXR is made
DEV-2259
2019-04-17 16:46:15 -07:00
ben
5fa8de0346 Manage sysctl ip forwarding in vxr salt state
DEV-2259
2019-04-17 15:50:59 -07:00
Emily Scoular
21779a7891 Merge pull request #4 in PAR/yap from bugfix/DEV-2250-data-failed-to-compile-for-non-yap-aggregators to master
* commit 'bdd76c9550cd856eab51998acfa94424e53a6890':
  Skip yap states for aggregators without yap key in their pillars. DEV-2250
2019-04-11 10:47:00 -07:00
Emily Scoular
bdd76c9550 Skip yap states for aggregators without yap key in their pillars. DEV-2250 2019-04-11 09:50:44 -07:00
James Oakley
0d8ecfacb7 Add method of setting global ospf interface settings 2019-04-10 14:36:14 -07:00
James Oakley
f32da53b3f Fix global interface check 2019-04-10 14:05:13 -07:00
James Oakley
83d2fee0e1 Fix global start 2019-04-10 14:00:42 -07:00
James Oakley
1b2a4a26c1 Add support for global OSPF on VXRs 2019-04-10 13:54:33 -07:00
Emily Scoular
2fda8e7224 Update README. 2019-04-05 12:12:09 -07:00
Emily Scoular
0f34fd6d00 Fix help text and bird config permissions. 2019-04-05 11:26:56 -07:00
Emily Scoular
68c84fc274 Add support for configuring VLAN IPs and not overwriting custom BIRD protocols. 2019-04-03 16:12:01 -07:00
Emily Scoular
ba3d260ae8 Fix add space command in README. 2019-01-08 14:08:39 -08:00
Emily Scoular
ffa181670a Merge pull request #3 in PAR/yap from bugfix/DEV-2031-yap-service-fails-on-start-of-6.4-aggregator to master
* commit '97b8c07b312d43ed68a9f3dcaf38152a8fad8397':
  Don't run pwanbirdc disable on an empty output from bird. DEV-2031
2019-01-08 13:37:42 -08:00