Moving NATS4
We at Too Much Media offer the service of moving your NATS installation to a new server; this can be done for a cost of $300. If you would like your server to be moved by TMM techs, please submit a support ticket. Although we recommend that you use this service, we also offer instructions for moving your NATS installation by yourself.
The following instructions describe how to move NATS on your own. Although you can forgo our service fee by doing it yourself, please keep in mind that there will be an hourly charge for any support required during this process. The rate of support is $120/hr
Note: These steps require some down time, but they will guarantee database consistency, as well as consistent service during the DNS switch-over.
Setting up NATS on the New Server
Before you move your server:
- Make sure you meet all of the Requirements.
- If you use any Targeting or Exclude Rules in your biller cascades, you need to test the Maxmind GeoIP software. Please see our GeoIP wiki article for more information on how to test GeoIP.
Please refer to the following wiki article for MySQL setup: NATS4_MySQL_Settings
- MySQL must also be accessible from the CLI, which may require changes to the my.cnf file
- Ensure that NO_UNSIGNED_SUBTRACTION is enabled
- Copy all NATS files to your new server. You can use the program rsync to facilitate the process.
- Please be sure to check to make sure all the correct symbolic links (symlinks) are set up in your nats/www/ directory. These symbolic links should be:
track strack qtrack ttrack gallery banner include
- If any of these symbolic links are not available or not set up correctly in your nats/www/ directory, please put in a support ticket
- Get a NATS license for your new server. Please open a new ticket and tell us your the zendid if you are using Zend, or the MAC address if you are using IonCube.
- If you have Zend, you may need to set up the path to the zend license in your php.ini file by adding the following line:
zend_optimizer.license_path=/path to nats/licenses/
- Change the paths in the includes/config.php file to be correct on the new server.
- Change the MySQL connection information for the includes/config.php file on the new server so it can connect to the database on the original server, then test that NATS is working correctly by using the IP address of the new server.
At this point, NATS should work correctly on both servers and will use the database on the original server.
Moving the Database to the New Server
Your NATS program will be down during these steps.
- Shut down the database on your original server. This will make NATS stop working for the time being.
- Copy the database to the your server.
- Change the config.php file on your new server to use the new database and check that NATS is working correctly.
- Change the config.php file on your original server to connect to the new server's database.
At this point, NATS should work correctly on both servers and will use the database on the new server.
Set up Crons and Billers
- Remove the NATS cron from the old server
- Set up a new cron on the new server; use the correct paths to nats and php:
*/15 * * * * cd /<nats_installation_dir>/processes; /path/to/php nats_cron.php; */3 * * * * cd /<nats_installation_dir>/processes; /path/to/php run_mail_queue.php;
- Please make sure that the php mail function or the mail function that you are trying to use is working.
- If you do use the Mailing Admin, you can test a mailer by going to the Mailing admin and go to the Active Mailing and click on the gear to send a test email to yourself.
- If you are using the emails for affiliates and/or members, please do signup and once the initial transaction has been processed, the member and/or affiliate should get the email.
Biller
- Tell your billers about your new IP address
- If you are using Epoch, please have your host setup a new user on the new database and setup the following grants for the following tables:
grant insert, select on <database>.EpochTransStats to <username>@'<IP Address Range>' identified by '<password>'; grant insert, select on <database>.MemberCancelStats to <username>@'<IP Address Range>' identified by '<password>'; flush privileges;
- If you are using WTS, please let them know of the new work directory. It should be /<path to nats>/nats/work
Switch the DNS
- Have your host switch the DNS name to the new server. Please open a new ticket when the DNS change is complete so we can update your NATS license.