Hot server updates with mup and mup-redis

Hey everybody, we just launched a super successful collaboration with Twitch, with lots of users on the platform. We had a minor glitch which we wanted to resolve, but couldn’t because our current setup does not support hot server updates. This is because we’re using the awesome mup in combination with mup-redis, with is not combinable with mup-beanstalk. I had tried this last year, but couldn’t get it to work. Does anyone know a write up / tutorial how hot updates can be achieved with mup and mup-redis? I mean, without having to configure everything manually. Although I’m quite familiar with AWS, I’m not really a DevOps pro. :sweat_smile:

I am copying from here: mup-redis/command-handlers.js at master · zodern/mup-redis · GitHub

‘To use built-in redis setup, you have to have only one meteor server’
‘To use built-in redis setup, both the meteor app and redis db need to be on the same server’

Ok. I don’t use reactivity but I started to study it as I might go this way soon. I have everything in AWS Elastic Beanstalk.

My understanding:

  • With mup you would be running 1 Node, 1 oplogtoredis (GitHub - tulip/oplogtoredis: Publish MongoDB oplog entries to Redis), and 1 Redis on the same machine. This is a non-horizontally-scalable environment … but you can buy more CPU, RAM etc.
  • For Node hot updates you need 2 things: a network balancer and an auto-scaling environment that you can program to do new deployments in different scripts: all at once, one by one, in batches.
  • You don’t need hot updates for Redis and oplogtoredis but you might go with hot servers for failover (I will probably not get there soon or ever).

With AWS: deploy to Beanstalk with MUP, I can help you with a side by side conference, script files, ALB configuration etc.
You will then start an EC2 or something else with the docker image for oplogtoredis (or changestream-to-redis)?!
Start a Redis server and have all these connected in the VPC.

I am really interested in this myself so would be able to offer a good amount of time for contribution.

An estimated cost for these 3-server configuration in AWS would be something like 3 x 8 (avg.) for the EC-2s, 20$ for the ELB after 1 years of free tier for new accounts, maybe 5-10 for the traffic, so I’d say it can be as low as 30 and under 50 for light traffic (50-100 concurrent users).

Hey, if you are not looking to create the set up yourself we can help.

At zCloud, we run MongoDB, Redis, and, of course, Meteor apps :wink:

We can help if you need it. We also run anywhere, including AWS, and you don’t need to do anything. We handle everything, including migration.

I just posted an update to this case study today which uses Redis: zCloud - Cloud. Made easy.