What's a good way for upgrading a server?
I have an internal application that is running fine now, but I need to upgrade the version of Ubuntu Server on it. I have put this off wayyyy too long. Essentially I have a "VMWare box" on the company's network that has my current Ubuntu Server that's still (embarrassingly) running 14.04 LTS. I have been deploying updates using the Capistrano guide found here at Go Rails.
My approach now was going to be for my IT person to setup a new server with Ubuntu 20.04 LTS and I would use the Rails guide here at Go Rails to setup a new server and deploy to it. After that I'm not sure what the best way would be to flip over the servers to have a, as much as possible, seamless transition. Anyone have any recommendations or things to look out for?
Sidenote, I was told by someone else that Docker would greatly simplify my life in this regard. While I am more than happy to explore that next I just want to get things upgraded and then I can look into some solution like that next. Thanks!
If you spun up a new server and deployed the app to it with Capistrano, really the only thing you'd need to move over are any file uploads and the database. You can dump the postgres database then upload and import it on the new machine. Same with the files. That would be really all there is to it.
Thanks Chris! I think that's how I assume it will go as well. The database is on it's on SQL Server, also great point about the uploads I forgot about that. What about the server's ip address? Would I essentially setup the other server and then just point my domain name to the new ip address? Your website has been very helpful in so many ways - and the quick responses and such are really amazing. Thanks so much I'm very happy to be a subscriber!
Yeah, you'd want to change your DNS to point to the new IP once the site is ready. Before you do that, you can change the TTL down to the lowest time so your DNS records will only be cached for the minimum time making the new IP change happen quick.
With your database on another server, you won't have to migrate that so it should be a lot easier then. 👍 You can actually run both copies of the app at the same time and make sure they can connect to the db and then change the DNS as the final step.
You'll also want to make sure any SSL certs are copied over. Forgot about that too.
And glad it's been so helpful! This is the community I wish I had a long time ago, so that's great to hear!