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 starting your server move:
- 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
- Make sure InnoDB engine is supported with MySQL. Run: "show engines;" to check.
- 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 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 your server.
- Please ensure the TRIGGER settings under the nats database user got transferred over from old database to new database. If the database user/host has changed from the old database to the new database, you may need to re-create the triggers with the correct user and host.
- 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.
- If you use the NATS database for authentication, please ensure that you change your authentication to use the new database. Then test signing in to make sure everything is working properly.
At this point, NATS should work correctly on both servers and will use the database on the new server.
Set up Crons and Billers
Cron
- 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. This is necessary for your polls to run.
- 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;
- For more information on Epoch's setup, please see the Instructions
- If you are using WTS, please let them know of the new work directory. It should be /<path to nats>/nats/work
- If you are using CCBill, you need to update the IP for datalink. Details
- If you are sending cross sales, please make sure to inform the receiving NATS install and have them update their cross sell allowed IP's
Switch the DNS
- Have your host switch the DNS name to the new server.
note: please ensure your linkdomains are also changed to point at the new server. If the linkdomains are still pointing at the old server, your linkcodes and join forms will not work.
After the DNS switch
- Ensure all NATS domains are pointing to the new server including all of your linkdomains.
- Ensure the Cron is off on the old server.
- Turn off the database connection on the old server.
- Please open a new ticket so we can update your NATS license.
Additional Notes
- We recommend running a test through all of your billers
- Make sure your authentication is working by logging in to your members area after a new signup