v2.1.1 Changes:

  • Fix vpnv6/l3vpn next-hop decoding
  • Fix ip_rib_log enabling compression to be after hypertable creation
  • Add pg_cron to postgres container
  • Upgraded postgres container to timescaledb 2.6.0-pg14
  • Fix sequence ordering issue with ip_rib_log compression
  • Fix psql consumer from being stuck on exit when postgres goes down
  • Fix default config to include l3vpn topic to consume

v2.1.0 Changes:

  • Adds L3VPN support
    • L3VPN grafana dashboards
    • L3VPN DB tables, including stats tables to track by peer, RD, and prefix
  • Adds a new whois daemon that runs on port 4300 by default whois daemon is a whois interface into the looking glass.
  • Adds shm_size to compose to resolve issue with postgres shared memory problems
  • Fixes issue with collector crashing with vpnv4 AFI/SAFI messages
  • Fixes incorrect RD value for both evpn and l3vpn
  • Add peeringdb script to cron job in psql-app container
  • Changes collector to no longer accept messages unless router INIT is first received. Messages will be processed if they are valid BMP, but messages will not be added to
    DB/kafka until the router init is received. This addresses the issue with port scaner and similar clients connecting to the listening port, resulting in invalid routers and peers
  • obmp-collector container now logs to STDOUT instead of /var/log/openbmpd.log Use docker logs obmp-collector to view the collector logs
  • Various other bug fixes

Upgrade

Danger

If you haven’t upgraded to 2.0.3 yet, you will need to follow the Fresh Upgrade instructions.

Upgrading from 2.0.3

Warning

Only supported for 2.0.3 or greater

  1. Set the data root
      export OBMP_DATA_ROOT=/var/openbmp
    
  2. Upgrade Grafana by copying over the latest provisioning data

     git clone https://github.com/OpenBMP/obmp-grafana.git
     # OR git pull
    
     cp -r obmp-grafana/dashboards obmp-grafana/provisioning ${OBMP_DATA_ROOT}/grafana/
     sudo chmod o+rx -R ${OBMP_DATA_ROOT}/grafana/
       
     docker restart obmp-grafana
    

    Make sure the files copied are owned by the container user. If not, provisioning will not load.

  3. Upgrade docker compose file to include the latest versions

     # Get latest compose file  - Your previous file will be saved as docker-compose.yml.<N>
     wget --backups=3 https://raw.githubusercontent.com/OpenBMP/obmp-docker/main/docker-compose.yml  
    
  4. Update the docker-compose.yml file variables and volumes based on your previous compose file. You can use diff to see the differences that need to be merged/updated. diff -u docker-compose.yml.1 docker-compose.yml

  5. Update psql-app configuration The psql-app container uses a persistent configuration ${OBMP_DATA_ROOT}/config/obmp-psql.yml.
    You will need to update this file to uncomment the subscribe_topic_patterns list item - "openbmp[.]parsed[.]l3vpn".

  6. Run docker compose to recreate the containers

     OBMP_DATA_ROOT=${OBMP_DATA_ROOT} docker-compose -p obmp up -d
    

Notes on upgrade

When psql-app container starts, it'll check if l3vpn_rib table exists. If it does not exist, it will apply the l3vpn schema changes as well as all the other upgrades. This should upgrade the current postgres DB.

Some of the upgrade changes rebuild indexes. This can take several minutes

Use docker logs -f obmp-psql-app to monitor the progress