Saturday, January 16, 2016

3 new servers are being deployed

Hi all,

We're very pleased to announce that 3 new servers are being deployed to achieve High Availability. With this deployment, we can minimize service downtime. When one or even two servers fail, the others can still handle all cronjobs processing, and we can easily stop, add or remove any server for maintenance or upgrade.

When will the deployment complete?

The deployment will be started at 2:00 AM, Monday, January 25, 2016, UTC. Estimated time: 2 hours. Duration that time, we'll copy the whole database into new servers' database. We'll also disable most of our website functions to keep the user data intact.

What are new server IP addresses?

We'll still use the same IP addresses from one year ago, except that we'll replace the IP address 173.255.210.98 with 45.33.48.85. We'll be sending emails from these 3 new servers, while the IP address 173.255.210.98 get blacklisted at SpamRats. They blacklisted the whole Class C IP address (means 173.255.210.*), and that can't be helped.

We can't keep the IPv6 addresses, so we'll use 3 new IPv6 addresses too. So here are 3 new servers' IP addresses:
  • Server 1: 50.116.9.254 - 2600:3c01::f03c:91ff:fef1:a819
  • Server 2: 74.207.250.230 - 2600:3c01::f03c:91ff:fef1:33bf
  • Server 3: 45.33.48.85 - 2600:3c01::f03c:91ff:fef1:31a2
All servers are in Fremont, California, USA.

Are there anything else changed?

Besides one new IPv4 address and 3 new IPv6 addresses, we also remove the server selection feature. It's already removed now for newly created cronjobs, and existing cronjobs with no server selected.

All cronjobs will be processed randomly from 3 new servers, and you can't change that. It's to make sure the 3 servers are load balanced, and when one server is down, your cronjobs can still be executed by other servers as well.

Will my cronjobs be affected?

For most of cases, no. Your cronjobs will be executed properly, with no downtime. Here are some cases that your cronjobs may be affected because of the IP addresses changed:
  • Your hosting provider's firewall may block our (new) IP addresses
    Please contact your hosting provider and ask them to whitelist our new IPv4 and IPv6 addresses.
  • Your CDN firewall may block our IP address
    Please update your CDN service (e.g. Cloudflare) settings to add our IP addresses to its whitelist. Contact the CDN support staff if you're not sure how to do it.
  • Your server firewall may block our IP addresses
    Do the same thing: add our IP address into your firewall whitelist.
  • Your script may block our new IP address
    If you only allow some IP addresses to trigger your script, please update your script so it'll accept our new IP addresses.
If your cronjobs may be affected like these cases, you should resolve it now. After Jan 25, the change will be applied and your cronjobs may not work.
If you think your affected case is not listed here, leave a comment below or contact me.

How can I know if my cronjobs are affected?

- If your server firewall blocks our requests, we won't able to connect to your server. In the cron execution results, you will see the connection error messages, e.g. "connection time-out" or "connection refused". If that's the case, please contact your hosting provider and ask them to whitelist our IP addresses.
If you didn't contact your hosting provider regarding their firewall, and they haven't ever block our IP addresses, then it's very likely that they won't block our new IP addresses. So, nothing to worry.
- If you needed to add our IP addresses to your script whitelist before, just add our new IP addresses to it now, and that's it.

Best regards,
Nguyen An Thuan.

2 comments:

  1. if our cron jobs are affected, will we see an error message in our SetCronJob account?

    ReplyDelete
    Replies
    1. Hi! I just added the answer to the blog post :-)

      Delete