GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  APP::NETDISCO::MANUAL::DEPLOYMENT (3)

.ds Aq ’

NAME

App::Netdisco::Manual::Deployment - Tips and Tricks for Deployment

CONTENTS

Init and Run Control Scripts

The Netdisco applications will generate RC scripts suitable for Linux systems:



 bin/netdisco-web get_init_file
 bin/netdisco-daemon get_init_file



If you’d like to send a patch for BSD, please submit it against the Daemon::Control distribution.

Enable MD5 authentication to PostgreSQL

Some installations of PostgreSQL don’t have MD5 authentication enabled by default, which blocks database connections with the default Netdisco configuration.

If your database and Netdisco are on the same system, then the easiest solution is to comment out the "host:" line in your deployment.yml file.

Alternatively, reconfigure PostgreSQL to permit MD5 auth for TCP connections by adding the following to your system’s "pg_hba.conf" file (and restarting the database service):



 # TYPE  DATABASE  USER  ADDRESS       METHOD
 host    all       all   127.0.0.1/32  md5



Connect to PostgreSQL database on non-standard port

The standard port for PostgreSQL is 5432. To connect on a different port you need to use the host option under database: config in your ~/environments/deployment.yml file. For example if connecting to a database on the local server:



 database:
   name: netdisco
   user: changeme
   pass: changeme
   host: localhost;port=5432



Obviously, substitute the user, pass, and actual port number for your local values. Note the separator character is a semicolon.

Deploy without Internet access

The netdisco-deploy script asks for Internet access but it is possible to install off-line. You should download the following two files:
o http://standards.ieee.org/develop/regauth/oui/oui.txt
o http://downloads.sourceforge.net/project/netdisco/netdisco-mibs/latest-snapshot/netdisco-mibs-snapshot.tar.gz
Run the netdisco-deploy script but pass the OUI file name as a parameter on the command line:



 ~/bin/netdisco-deploy ./oui.txt



Then answer yes to questions, even though you’re not connected to the Internet. For the MIBs you can simply extract the downloaded archive to the home directory of Netdisco.

Relocating the Installation

The installation process installs Netdisco self-contained to your home directory. The target directory can easily be changed by setting the NETDISCO_HOME environment variable, for example:



 export NETDISCO_HOME=/opt/netdisco



Obviously, you’ll need to substitute this wherever you see "~" in the installation instructions. The Netdisco application will use this setting itself to locate files and configuration.

Pass Options to the Web Frontend Daemon

Simply add any options after the "start" command. See other sections of this document for some examples.

Non-root Hosting

Netdisco will assume its web site is hosted at the apex of your server - that is, the document root. To relocate the web application, pass the --path parameter to the web startup script:



 ~/bin/netdisco-web start --path=/netdisco2



Alternatively, can set the path configuration option in your deployment.yml file:



 path: /netdisco2



Listening Port for the Web Frontend

Pass the --port parameter to any of the web scripts. For example:



 ~/bin/netdisco-web start --port=8080



Listening Address for the Web Frontend

Pass the --host parameter to any of the web scripts. For example:



 ~/bin/netdisco-web start --host=127.0.0.1



Behind a Proxy

By default the web application daemon starts listening on port 5000 and goes into the background. This is ideal for hosting behind a web proxy (e.g. Apache with mod_proxy).

After enabling the headers, proxy and proxy_http modules in Apache, a suitable configuration would be:



 ProxyPreserveHost On
 ProxyPass / http://localhost:5000/ retry=0 timeout=60
 ProxyPassReverse / http://localhost:5000/

 ProxyRequests Off
 <Proxy *>
   Order allow,deny
   Allow from all
 </Proxy>



To combine this with Non-root Hosting as above, simply change the paths referenced in the configuration, and set path in your deployment.yml as discussed above. Note there is no trailing slash in the Apache config:



 ProxyPass /netdisco2 http://localhost:5000/netdisco2 retry=0 timeout=60
 ProxyPassReverse /netdisco2 http://localhost:5000/netdisco2



To delegate user authentication to Apache, use the trust_remote_user or trust_x_remote_user settings. See App::Netdisco::Manual::Configuration for more details.

SSL Support

There is no SSL support in the built-in web server. This is because it’s not straightforward to support all the SSL options, and using port 443 requires root privilege, which the Netdisco application should not have.

You are instead recommended to run netdisco-web behind a reverse proxy as described elsewhere in this document. Apache can easily act as an SSL reverse proxy.

Database Backups

We recommend you backup the Netdisco database regularly. You could put the following commands into a shell script and call it nightly from cron:



 DATE=`date +%Y%m%d`
 /usr/bin/pg_dump -F c --create -f /path/to/backups/netdisco-pgsql-$DATE.dump netdisco
 gzip -9f /path/to/backups/netdisco-pgsql-$DATE.dump
 /usr/bin/find /path/to/backups/ -type f -ctime +30 -exec rm {} \;



This will keep 30 days of backups. You don’t need to stop Netdisco during the backup.

Display all Table Rows as Default

Add the following to your configuration:



 table_pagesize: -1



Further Reading...

Other ways to run and host the web application can be found in the Dancer::Deployment page. See also the plackup and starman documentation.
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 APP::NETDISCO::MANUAL::DEPLOYMENT (3) 2015-07-13

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.