Installing ImpulseDB Postgres — step-by-step

Upload the archive, activate the addon, paste your license key, configure providers, set up a plan, and verify on Core's Overview tab. Most installs are done in ~10 minutes.

Last updated 20 days ago

Installing ImpulseDB Postgres — step-by-step

ImpulseDB Postgres is a dependent module of ImpulseCore. Get Core installed and active first, then come back here.

Before you start

  • ImpulseCore 1.6.0+ installed and active. ImpulseDB Postgres depends on it for project membership, hook dispatch, the cron runner, audit, and the Security & Maintenance pipeline.
  • WHMCS 8.4 or later on PHP 8.1+ (PHP 8.3 recommended).
  • ionCube Loader 13+ for your PHP version. The distributed files are encoded.
  • Shell access to the WHMCS server — you'll install crons and verify paths.
  • An SSH key pair readable by the WHMCS PHP user.
  • A VPS provider account (Vultr, Hetzner Cloud, DigitalOcean, or Linode) with an API token that can create / destroy VPS.
  • A DNS provider account (Cloudflare recommended) for per-server hostname records and Let's Encrypt DNS-01 challenges.
  • Your `IPGRES-` license key. The module ships license-gated — only the Overview tab works until the key is verified.

1. Upload the files

Extract the release archive into the WHMCS root:

cd /path/to/whmcs unzip /tmp/impulsedb-postgres-1.10.x.zip

You'll get modules/servers/impulsepostgres/ (server module), modules/addons/impulsepostgres_addon/ (admin UI), and two cron scripts under crons/:

  • impulsepostgres_provision.php — runs every 2 minutes, advances in-flight resources through cloud-init → DNS → Let's Encrypt → online.
  • impulsepostgres_usage.php — runs at 02:00 daily, collects usage and runs nightly backups.

Make sure the WHMCS web user can read everything.

2. Activate the addon

In WHMCS Admin:

  1. Open System Settings → Addon Modules.
  2. Find ImpulseDB Postgres in the list and click Activate.
  3. Set Access Control → Full Administrator (or whichever admin role(s) should see the addon).
  4. Click Save Changes.

Activation creates every mod_impulsepostgres_* table, seeds four example plans you can edit or delete, registers WHMCS hooks, registers the module manifest with ImpulseCore, and auto-discovers the SecurityCollector / SecurityActuator / ServerCollector / ServerActuator classes so the Security & Maintenance pipeline lights up on the next Core cron tick.

3. Enter your license key

Open the addon (Addons → ImpulseDB Postgres). Until verified, every tab except Overview redirects to the license form with a banner.

  1. Click Tools → License.
  2. Paste your key (starts with IPGRES-) into the License Key field.
  3. Click Verify License.
  4. You should see a green Active badge with your registered domain and expiry.

Verification caches for 1 hour with a 7-day grace period on licensing-server errors. The rest of the addon unlocks immediately.

4. Configure providers and the first plan

Back on Overview, the First-Time Setup panel detects what's configured and what's still missing. Work through it in order:

  • WHMCS server IPs (so the database firewall on each shared host opens to the WHMCS host).
  • SSH key path + public key.
  • VPS provider credentials.
  • DNS provider + Let's Encrypt email.
  • System cron entries — the two-line crontab snippet shown on the form.
  • At least one configured (non-example) plan.

Each checklist item links straight to the right form. Plan configuration lives under the Plans tab; provider credentials under Settings → VPS Providers.

5. Install the crons

Add these two lines to the WHMCS server's crontab:

# ImpulseDB Postgres — provisioning poller (every 2 minutes) */2 * * * * /usr/bin/php /path/to/whmcs/crons/impulsepostgres_provision.php # ImpulseDB Postgres — usage + nightly backups (02:00 daily) 0 2 * * * /usr/bin/php /path/to/whmcs/crons/impulsepostgres_usage.php

Replace /usr/bin/php with your PHP CLI binary. On Plesk: /opt/plesk/php/8.3/bin/php. On cPanel: /opt/cpanel/ea-php83/root/usr/bin/php. On a vanilla LAMP install: /usr/bin/php or whatever which php returns. Replace /path/to/whmcs with your install dir.

Both scripts auto-detect the WHMCS root by walking up from their own location; set WHMCS_ROOT in the crontab if auto-detect ever fails.

6. Verify on Core's Overview tab

Open Addons → ImpulseCore → Overview. ImpulseDB Postgres should appear in the Modules registered table within seconds of activation, with its version and manifest path. If it's missing, the manifest registration didn't fire — deactivate and reactivate the addon.

Common installation issues

  • Class not found: ImpulseCore when activating ImpulseDB Postgres. Core isn't installed or active. See Installing ImpulseCore.
  • Blank page after activation. ionCube Loader missing for your PHP version. Install it and restart PHP-FPM.
  • Every tab redirects to Tools → License. Expected — the module is license-gated. Paste your IPGRES- key and click Verify.

Related