installing/enabling billing module

Discussion in 'Installation/Configuration' started by nhybgtvfr, Apr 28, 2015.

  1. nhybgtvfr

    nhybgtvfr Well-Known Member HowtoForge Supporter

    hi,

    I've just bought the billing module, and have tried installing it, which according to the instructions, should be really easy.
    i've uploaded the zip file, unzipped it, cd'd into the billing folder, and run php install.php as root, which returned:
    Warning: Using a password on the command line interface can be insecure.
    ISPConfig Billing module has been installed.

    i've logged into the control panel, gone to system, cp-user, and selected admin, but there's no billing module listed there for me to enable.

    this server is the main server in a multi-server install, built basically just to hold the full dbispconfig database, it has no apache2 server, so doesn't run the ispconfig interface, I have several other servers running the interface, connecting to the db on this main server.

    I'd assume that normally the billing module is installed only on the main server, so I'm wondering, in this case do I also have to install it on the servers running the ispconfig interface? or do I need to add billing into the available modules list in the config.inc.php file? if so, shouldn't this have been done by the install script?

    thanks
    lee.
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    The main server of a ISPConfig system is the one that runs the ISPConfig Interface, so the billing module has to be intalled on the server where the interface is installed.
     
  3. nhybgtvfr

    nhybgtvfr Well-Known Member HowtoForge Supporter

    ok,
    but i have the complete ispconfig database on a server that doesn't run the interface, i have eight member servers, configured as webservers only, all running the interface, with the interface config.inc.php pointing at the database on the server not running the interface, and webservers 2 to 8 are configured as mirrors of webserver1. the server config.inc.php points to the local database on each webserver.
    what will happen with sending invoices, will the client receive multiple invoices, or just 1?
     
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    The billing module has to be installed on the interface servers, if the mysql_clientdb.conf file on the interface servers does not contain the root login for the master db, then you might have to run the sql file of the billing module manually in the db as the installer does not support your kind of setup where the master db is not on the master server. The clients will receive only one invoice, but you should deactivate the invoice cronjob on all except one interface node by renaming the billing module cronjob file on all except one nodes. then you will have to take care that the directory where the invoice documents where stored is shared between all interface nodes.
     
  5. nhybgtvfr

    nhybgtvfr Well-Known Member HowtoForge Supporter

    ok, looks like it's my fault for trying to run an unusual configuration, i just wanted to minimize access to the server storing the full database :)

    i guess the easiest thing to do would be to install apache2 and add the interface to this server, is there an easy way to add the interface to the server? i tried re-running the ispconfig install, which said to run update instead, that gives the option to reconfigure services, which says it's configuring the database and updating ipsconfig, but doesn't actually let me choose to add anything.
    or do i just need to create/copy from another server, an ispconfig apache conf file an enable it?
     
  6. till

    till Super Moderator Staff Member ISPConfig Developer

    The interface code is already there on every node, so you just have to activate it by copying the ispconfig vhost file over from one of your other nodes. But the billing module code has to be installed on all nodes anyway as your system will be inconsistent when the code is missing on a interface node.
     
  7. nhybgtvfr

    nhybgtvfr Well-Known Member HowtoForge Supporter

    i was thinking more of just have the interface running on the one server with the full database and removing the interface from the others.

    your response does raise an interesting point though, i originally thought the billing module was just to be installed on the server with the complete database, whether or not it runs the interface, does it need to be installed on every ispconfig server, or only servers where the web interface is accessible?

    wondering because it seems the mysql_clientdb.conf file you mentioned is in /usr/local/ispconfig/server/lib rather than /usr/local/ispconfig/interface/lib
     
  8. till

    till Super Moderator Staff Member ISPConfig Developer

    This makes probably sense. Not sure how many thousadn simultanios logged in clients you expect but a single interface node with nginx should be handle 5000 concurrent users or even more, this just depends on your hardware.

    The billing module has to be installed on the master server and the master server is the one that runs the ispconfig interface. Installing the billing module on a database server makes no sense as the billing module is a interface module and part of the ispconfig interface.

    This file exist on any server where ispconfig is installed, it says nothing about the purpose this node is used for.
     

Share This Page