[ixpmanager] Issue getting birdseye up

Paul Emmons paul at ninja-ix.net
Mon Apr 11 03:00:54 IST 2022


I'm trying to get Birdseye deployed On Ubuntu 20.02 LTS.   Got lighttpd 
responding but having an issue getting birdseye running.

*I am getting access restricted when I run from command line:
*

root at ric-as112:/srv/birdseye# /usr/bin/sudo /srv/birdseye/bin/birdc -2 
-s /var/run/bird/bird-ric-as112-ipv4.ctl ?
BIRD 2.0.7 ready.
Access restricted*

*

*Do I need to setup a cache key?*

https://github.com/inex/birdseye/blob/master/bootstrap/app.php*
*

*
*

*lighttpd is listening:*

netstat -ntulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         
State       PID/Program name
tcp        0      0 0.0.0.0:80 0.0.0.0:*               LISTEN      
242141/lighttpd
tcp        0      0 0.0.0.0:179 0.0.0.0:*               LISTEN      938/bird

*
*

*
*

*Cant pull up the api:*

curl -v http://as112.ric.nix-ops.net/api/status
*   Trying 23.152.192.13:80...
* TCP_NODELAY set
* Connected to as112.ric.nix-ops.net (23.152.192.13) port 80 (#0)
 > GET /api/status HTTP/1.1
 > Host: as112.ric.nix-ops.net
 > User-Agent: curl/7.68.0
 > Accept: */*
 >
* Mark bundle as not supporting multiuse
< HTTP/1.1 500 Internal Server Error
< Content-type: text/html; charset=UTF-8
< Content-Length: 0
< Date: Mon, 11 Apr 2022 01:43:07 GMT
< Server: lighttpd/1.4.55
<
* Connection #0 to host as112.ric.nix-ops.net left intact



*Running tasks:*

bird         744  0.0  0.2   7468  4316 ?        SLs  00:05   0:00 
/usr/sbin/bird -f -u bird -g bird
root         949  0.0  0.1   7648  3416 ?        Ss   00:05 0:02 
/usr/sbin/bird -c /usr/local/etc/bird/bird-ric-as112-ipv4.conf -s 
/var/run/bird/bird-ric-as112-ipv4.ctl
root         957  0.0  0.1   7644  3272 ?        Ss   00:05 0:01 
/usr/sbin/bird -c /usr/local/etc/bird/bird-ric-as112-ipv6.conf -s 
/var/run/bird/bird-ric-as112-ipv6.ctl


*Here is /srv/birdseye/birdseye-ric-as112-ipv4.env*

# Bird's Eye - see https://github.com/inex/birdseye
#
# Values that are commented show their default setting.

# To query Bird securely, we use a wrapper script
BIRDC="/usr/bin/sudo /srv/birdseye/bin/birdc -2 -s /usr/local/etc/bird"

# We use caching as a natural API -> birdc rate limiter
# Changing to 'array' will disable the cache but this is strongly 
discouraged
# [this is Memcache for 127.0.0.1:11211 by default]
CACHE_DRIVER=file

# A cache key is required only if relying on a default .env configuration.
# If you're relying on the automated configuration discovery detailed at:
# https://github.com/inex/birdseye#configuration
# then this is set automatically and appropriatly.
# BIRDSEYE_CACHE_KEY="SomeCacheKey"

# Set to true for testing / debugging.
# This will provide stack dumps and reveal internal logic / configuration.
# It also added "env" and "cache_disabled" to the api section of responses.
# APP_DEBUG=false
APP_DEBUG=true

# For testing, we have including some real Bird IPv4 dumps.
# Setting to true makes Bird's Eye use those rather than querying a 
local Bird daemon
# USE_BIRD_DUMMY=false

# Time (in monutes - Lumen restriction) to store cache objects for:
# CACHE_SHOW_STATUS=1
# CACHE_SHOW_SYMBOLS=5
# CACHE_PROTOCOLS=2
# CACHE_ROUTES=5

# Maximum routes that will be sent back in an API query. We have not 
created pagination yet so this will be
# a hard limit. The looking glass implementation does not add links for 
tables / protocols exceeding this.
# Aborts with a 403 when a table/protocol route list has more than this. 
Uses 'show route ... count' internally.
# MAX_ROUTES=1000

# Maximum API requests per client per minute
# THROTTLE_PER_MIN=20

# This micro server also includes a built in looking glass which can be 
enabled by setting this to true
# The loogking glass is really just to deomostrate the API and uses the 
same API calls internally as
# are publically available. If enabled, it's available under /lg
#LOOKING_GLASS_ENABLED=false
LOOKING_GLASS_ENABLED=true

# Page title for looking glass [note: {!VERSION!} will be replaced with 
the actual version]
# LOOKING_GLASS_TITLE="Bird's Eye Looking Glass - API V{!VERSION!}"

# The LG displays the BGP protocol description. These can sometimes be 
internal
# machine generated / unwieldy strings. If you want to pluck out just a 
bit of
# this you can set a regex here and, when valid and matches against the 
description,
# it plucks the first subpattern match (i.e. (xxx) ) and sets that in
# the API response as description_short. The frontend LG will also 
prefer this if set.
#
# Note that the system adds anchors and Bird output matching so the 
evaluated regex is:
#      '/^\s+Description:\s+' . env( 'PARSER_PROTOCOL_BGP_DESCRIPTION' ) 
. '$/'
#
# E.g. to pluck 'ppp-rb01' out of 'RR Client - ppp-rb01', you might use:
#     PARSER_PROTOCOL_BGP_DESCRIPTION=".*\s+([a-zA-Z0-9\-_]+)"
#
#PARSER_PROTOCOL_BGP_DESCRIPTION=""

*
*

*/etc/lightpad/lightpad.conf*

# Sample Bird's Eye Lighttpd config - just added a small amount to
# the standard Lighttpd configuration.

server.modules = (
     "mod_access",
     "mod_alias",
     "mod_compress",
     "mod_redirect",
     "mod_rewrite",
)

server.document-root        = "/srv/birdseye/public"
server.upload-dirs          = ( "/var/cache/lighttpd/uploads" )
server.errorlog             = "/var/log/lighttpd/error.log"
server.pid-file             = "/var/run/lighttpd.pid"
server.username             = "www-data"
server.groupname            = "www-data"
server.port                 = 80
#server.bind                 = "23.152.129.13"

index-file.names            = ( "index.php", "index.html", 
"index.lighttpd.html" )
url.access-deny             = ( "~", ".inc" )
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )

compress.cache-dir          = "/var/cache/lighttpd/compress/"
compress.filetype           = ( "application/javascript", "text/css", 
"text/html", "text/plain" )

# default listening port for IPv6 falls back to the IPv4 port
## Use ipv6 if available
#include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
#include_shell "/usr/share/lighttpd/create-mime.assign.pl"


include_shell "/usr/share/lighttpd/create-mime.conf.pl"

include "/etc/lighttpd/conf-enabled/*.conf"
#include_shell "/usr/share/lighttpd/include-conf-enabled.pl"

url.redirect = ()

url.rewrite-once = (
# 
"^/(css|img|js|fonts)/.*\.(jpg|jpeg|gif|png|swf|avi|mpg|mpeg|mp3|flv|ico|css|js|woff|ttf)$" 
=> "$0",
#        "^/(favicon\.ico|robots\.txt|sitemap\.xml)$" => "$0",
#        "^/test\.php$" => "$0",
#        "^/[^\?]*(\?.*)?$" => "index.php/$1"
"^/(css|img|js|fonts)/.*\.(jpg|jpeg|gif|png|swf|avi|mpg|mpeg|mp3|flv|ico|css|js|woff|ttf)$" 
=> "/$0",
"^/(favicon\.ico|robots\.txt|sitemap\.xml)$" => "/$0", 
"^/[^\?]*(\?.*)?$" => "/index.php/$1"
)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.inex.ie/pipermail/ixpmanager/attachments/20220410/fa34cb90/attachment.htm>


More information about the ixpmanager mailing list