Bloxtools on a linux server

Posts: 181
3049     0

On the old version of the forums there was a lenghty thread on how to setup bloxtools on a stand alone (non infoblox) server.   That thread appears to have not made the transision over ot the new forums.  
Is that information still available?

I'm working on some development for on ib-grapher as the Trinzic Reporting tool is still lacking many of the features provided by IB-Graph.  I need to spin up a second development bloxtools \ib-graph server.

Re: Bloxtools on a linux server

Posts: 181
3050     0

I had to set up another server for bloxtools and saw that no one ever replied to this thread. 


I found this in the google cache of the old thread of how to set it up when I posted this question ~3 years ago.  I've edited it to include a few different items.  It was originally written for Ubuntu but I've been able to use it sucesfully on Redhat.


Its not a great how to and I'm not the original author of the majority of it but its a great starting point.


Required Ubuntu packages

These packages must all be installed (apt-get install):

Once installed, you need to check which child model apache is using. The bloxTools setup is incompatible with the default "mpm-worker" model. At a shell type:

dpkg -l | grep apache2-mpm
You should get a line that reads:

ii  apache2-mpm-prefork                  2.2.14-5ubuntu8.2                               Apache HTTP Server - traditional non-threade
If it reads apache2-mpm-worker you need to install the prefork model instead:

apt-get install apache2-mpm-prefork
You will get some warnings about mpm-worker being removed, these can safely be ignored.

Required Perl packages

There are only a few and they're easily installed via cpan. The first time you run cpan you'll be spammed with loads of stuff... just work your way through it, you should be given the choice to use a default config for cpan at some point. If you are asked at any point whether to follow dependencies and install them do that. In general, it's safe to install whatever cpan thinks is necessary.

Simply type cpan at a shell prompt, then the following commands:

install YAML
install Crypt::SSLeay
install CGI::Session
The YAML package is not strictly necessary but you get data persistance (download stats, etc) across CPAN sessions if you have it installed. Also it get rids of the annoying notes about it not being installed ;-)

CGI::Session is required for BDK.

Setup Apache

Edit /etc/apache2/sites-enabled/000-default and change it so it looks like this:

<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /portal

        <Directory /portal/>
                Order allow,deny
                Allow from all

        ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined

        Include /portal/conf/snapins/*
Then restart apache (at a shell, run service apache2 restart). If you get messages about how the server can't resolve its own name and it's defaulting to, add this line to /etc/apache2/httpd.conf:


Copy Bloxtools from the Infoblox appliance.
You have to start bloxtools on one of the appliances and FTP \ SCP to it and copy everything below the portal directory to the apache /portal/ directory you created.

Because this is a local dev box I don't really care about security, just that It Works (TM), so I run:

chmod -R 777 /portal
Any snapins added later by snapinstall will be owned by the webserver. Simply edit the files as root or run the chmod command above after installing a new snapin to allow your normal user access.

Install the infoblox API

This step had me stomped at first. Basically, there's two ways to do this. A really complex way involving cpan and using one of your infoblox appliances as a cpan repository, and the easy one which just requires you to download a file from an appliance and running a few commands. Naturally, I chose the easy way :P

Quoted from the infoblox appliance docs (https://<ip_addr>/api/doc/):

To install the Infoblox DMAPI packages on a UNIX management system, first download and install the API package from:

where ip_addr is the IP address of the appliance. Then locate and download the file Infoblox-xxxxxxx.tar.gz where xxxxxxx is an integer depending on your API package version.

After you download the package, extract it to a temporary directory with:

tar xvfz Infoblox-xxxxxxx.tar.gz
Then execute the following commands:

cd Infoblox-xxxxxxx/
perl Makefile.PL
make install
Optionally, before you install, test the package by running:

make test
Install snapinstall

Snapinstall is a great snapin that makes installing other snapin a lot easier. It is also a very good test of the basic functionality of your bloxTools dev box (and your understanding of it). Any problems with it are easily detected and fixed.

You will need to edit the $GRID_MASTER_IP variable in both cgi-bin/snapinstall.cgi and cgi-bin/snapuninstall.cgi to point to the correct IP address.

Generally about snapins

All of them will try to load mod_perl via their apache conf file. This is not necessary since we already load mod_perl as part of the core apache setup (/etc/apache2/mods-enabled/perl.load does this). So after installing a snapin, you will need to go into the conf file and uncomment the line that loads mod_perl. If you don't you'll get warnings whenever you (re)start apache.

Furthermore, you will have to edit cgi-bin/ or, if the snapin is not BDK-enabled, go through each file manually and change any references to GRID_MASTER to the external IP address of your GRID master appliance.

At this point you should be able to hit the bloxtools web site and use the tools normally without putting the load on any of your members.




Showing results for 
Search instead for 
Did you mean: 

Recommended for You