Migrated VPS

black server racks on a room

When I started hosting this website on DigitalOcean about 9 years ago, the version of Ubuntu that was all the rage was 14.04 LTS. So I started my hosting journey with that. Pretty soon though, 16.04 came along and since I was ever active on my server, I upgraded to that using nothing more than a few apt update commands. Since then, other than a few forced efforts to secure the OS and install what I needed for experimentation, I didn’t do much to upgrade the underlying software.

So it happened that, when at the beginning of the year I tried to upgrade from PHP 7.3 to 7.4 (a process which failed), I was made aware of the fact that the chasm between where my software stack is and where it ought to be is rather large. I tried running a straightforward upgrade from 16.04 to 20.04. The blocker was mysql. Apparently, no matter what third party repos I tried, the upgrade from what I was running to whatever’s the current just wasn’t possible. Well, it may be possible, but it would not be easy. The recommended path, on multiple websites, forums, and blogs, was to just fire up a new VPS and migrate my websites and services manually. Daunting.

When I learnt of this, I realized that the amount of time and effort it would take was too much for me to give at that moment. Family needs and other projects held precedence. Right now, I wouldn’t say those needs have abated, just that I’ve adjusted to both those asks, and I’ve given myself enough time and another factor for this migration – money. DigitalOcean is a nice provider in that they’ll only charge me for what I use through the number of days that I use it. I know this is sort of the norm everywhere now, but it’s a nice-to-have and a nice-to-mention nevertheless. Instead of doing the entire migration within the span of a few hours, tiring myself, and increasing the odds of a failed migration, I spread the entire project over the last few days. I moved my other WordPress install first, the one whose failure wouldn’t affect me directly and personally. It’s a side project that we’ve gotten side-tracked from. I’d be totally fine if it craps out.

Moving WordPress seemed daunting, until I realized that I have a tool that can make it extremely easy. I’ve been backing up this website to Dropbox using UpdraftPlus for the longest time. It’s fast, easy, and totally a background process which has not needed my input since I set it up. I checked it out and sure enough, it’s got a pretty straightforward restore process too, included in the free version of the plugin. Of course, they offer paid tools for much easier migration. But I reckoned the free one has got to work just as well. UpdraftsPlus creates a bunch of separate zip files for the database, uploads, themes, plugins, and “other”. All you have to do to migrate is to create a fresh install of WordPress, install the plugin and drop the files into the interface and then hit restore.

This blog’s backup comes in at about 750 MB, while the other site is about 160 MB. I did the latter first, and since it stayed up just fine over the last few days, while for the first time in my life I ran two VPS in parallel in DigitalOcean, I ported over this blog as well as the other applications and sites which I wanted to keep. It ended up being a good housekeeping too, since most of the active nginx sites were not doing anywhere and thus were liable to be security issues. Plus, it gave me a chance to really start from scratch.

Over the years, I let the older VPS grow organically and get cluttered as all in-use systems do. When I was attacked by a script kiddie trying to get into this site and wreak havoc (at which they partially succeeded), I installed fail2ban and went aggressive with it, to the point where I got locked out of SSH quite a few times and had to recover via console. I installed multiple versions of node to run shortlived telegram bots or expressJS apps. I installed numpy to create a webUI for an experiment my brother wanted to run. I also created a series of scripts to run via cron – to periodically free up space and memory, to pull in data and recycle logs.

All of this had become a sore point for me anyways. The services running on the VPS often went down. The APIs responded only half the time. The downtime was somewhat acceptable till it wasn’t.

So this new VPS, well, I’ll run it as clean as I can for as long as I can. Of course, I’ll get hit by something or the other and I’ll have to respond with better security measures. But I wasn’t running any firewall before and ubuntu 20.04 seems to be running ufw by default, which is nice. I was also able to update PHP from v7.3 all the way to v8.0, which is nice, but came with it’s own set of challenges. One function in WordPress and another in a homegrown bookmarking tool were failing since they don’t work in PHP 8.0, so I had to spend some time figuring that out. But it’s good to have the latest software and to hope I’ll keep things updated better this time around.

All in all, a good experience. My old VPS is now sitting in shutdown mode. I’ll let it sit for a couple weeks, while I test out the new system and see if I forgot to move some settings or such. I know it’ll cost me almost twice as much for the month to run both machines in parallel, but it’s worth the peace of mind I’m getting.

Plus, this migration got me in touch with some projects I’d forgotten! I regularly use my liveblog, but completely forgot about “SomeDay”, a bookmark/linkblog of articles I didn’t finish reading and hope to, some day. It’s got an RSS feed and all, so maybe you can find something in there that you might want to read, today.

Links to everything currently hosted on my new VPS –

this blog

tempdeals.net

scratch.nikhco.in – a minimal writing tool with local browser storage and ability to start a TogetherJS session to collaborate with others in real time.

liveblog.nitinkhanna.com

someday.nitinkhanna.com – I haven’t read these articles yet. Maybe you should try?

Finding my space

A large portion of the Internet is just about discovering interesting things. A part of that is just generally interesting things. But the other part is things that interest us. These two are different.

For most of my lifetime on the Internet, I’ve sought, and found, interesting things. My media diet has varied a lot over the years, flicking from one service and form of information to another. I’ve frequented twitter, Facebook, reddit, news sites, Instagram, blogspot, imgur, tumblr, self hosted blogs, forums, and a whole lot of the Internet I’d rather not talk about. I’ve seen memes (I hate memes), I’ve been caustic (I’ve learnt that’s just not useful to anyone), I’ve read entire books on Gutenberg.

But of late, I’ve noticed that I’ve finally found my space. Some people find it on tumblr or twitter because that’s where the people are. I’ve found it on RSS. I follow, unfollow, cull, clean, unsubscribe and resubscribe to blogs a lot. Whenever I think about moving away from my current self-hosted RSS feed solution, I look at the 700 odd blogs I follow and think that I’ve got better things to do than to reduce this list to an acceptable-by-the-service-I-want-to-move-to number. I used to follow well over twelve hundred sites,  but I realized that I don’t follow the news the way I used to (now I seek it out myself, when I want to, via Reuters or Apple News), so I unsubscribed every single news-site RSS feed and this is where I am today.

For a short, shining time, I was a part of the App.net story. I wasn’t particularly involved, but I did pay for the API and I did learn a few things along the way. I also made some friends and found more people to follow (overwhelmingly, these are old white guys. Just the demographic frequenting that service, I guess). When ADN went away, I still followed these people’s stories, through other social networks that sprung up (pnut, 10C, micro.blog) but also partly, through their blogs. On these social networks, I found more people to follow their blogs of.

What prompted me to write all of the above? I saw the following post by Colin Walker on his ridiculously well-built blog today –

“It’s not about being perfect, just about being.”

He’d written it in his notebook at some point and took the time to remind readers like me of it.

This idea resounds with me. This is something I’ve struggled a lot with. I’ve tried daily blogging, daily journaling, daily private blogging, scribbling notes on a throwaway page on the net, all in an effort to just put words on the screen, to just ‘be’. It doesn’t matter that those words are perfect. Or, well, it shouldn’t. I still fret over it. I still write something, save the draft, and push it out of my memory, because I worry that it’s not up to the mark. I still feel that a lot of my writing is either too laborious, or too much of a rant, or that I drone on.

Meanwhile, there are people like Colin out there, reassuring us that no one is perfect, that there is nothing more important than putting those words, and oneself, out there. I’m glad I follow his blog, and so, follow him.

I’ve found my space in this one field of interest – writing. There are others I’d like to sate, but I believe I can find blogs for those too. If not, I’ll write about that too, right here, asking for your help, dear reader.

Photo by Blue Trail Photography

A note about people taking the time on the Internet

I read a very interesting post through one of the linkblogs I follow. This link, through the blog kateva.org talks about how Facebook is experimenting with linking Groups and Pages, the two ‘community’ offerings by Facebook with the use of Saas affiliate marketing software. I’m part of a few groups and a few pages (I’ve cut down on the latter a lot in recent years because it’s mostly noise) and I see real value in merging the two and creating a single entity that simplifies group interactions on FB.

But what was interesting to me was John Gordon’s comment on the link – “I miss blogs that used to explain things like this.” Of course, he’s not talking about the change FB is bringing but the blog he’s linked to. The comment resonated with me because there’s something along those lines that I’ve been thinking about since some time now.

When the Internet began, people started filling out blogs and sites talking about the most mundane of things – small changes in their favorite newspapers, versions of textbooks and differences between them, software and the differences between versions, events of their days, to name a few. These discussions were then swept up by sites who collected these minutae, stripped out all ownership information, and presented the collected works as their own. This has been acceptable practice and what certain sites are borne out of (cough cough). This practice both helps grow the Internet at an exponential rate and harms the original authors as their work and name gets lost along the way.

So people on the Internet slowed down. Content creation moved from everywhere on the Internet to either large syndications or small blogs or forums. The large swathe of users on the Internet became consumers. This is part of the problem for most social networks – when a majority of people are consumers, only a choice few are creating value. Thus is born the consumer’s content creation – likes and shares and retweets and reposts. These became the content of today. I don’t have a problem with this.

My problem is with the loss of the minutae. That value that was once created on blogs and static pages is now created on reddit and stackoverflow and obscure forums, if at all. That often means that the type of value creation that I (and Gordon) am looking for has just about disappeared. If no one asks the question on Quora or Stackoverflow, no one answers what the changes FB is making look like.

What I’m looking for is even more specific. I am often faced with a very difficult choice – whether or not to update a particular software. With apps, it’s much more difficult because we notice those changes quickly and it is almost a split second decision whether to update or not (click that button!). Further, there are so many apps that we use and so many updates that get pushed through that it would be draining to discuss what each update brings to the table and whether it is destructive in any way for any specific scenario. For updates on a computer, there’s still some open discussion one can find. People take these a little more seriously and often it’s easy to find information about version changes and impact on systems similar to one’s own.

Let’s take a few examples –

I recently updated to the latest version of the WordPress app on iOS. It was on a whim and I paid dearly for that. The new update brings the ability to manage plugins on your WP blog. But the update is borked. One of my blogs has well over fifty installed updates (not all are enabled) and when I go into that blog, the app crashes and then keeps crashing. I’ve seen no update for this issue in the last two days and haven’t bothered to write up a report to WP for it. I learnt after a few tries that if I don’t open that blog’s admin page from my app, the app doesn’t crash (letting me use the app for other blogs). Presumably this has something to do with not loading the plugins list from that site. I wouldn’t know, I’ve not explored the issue further. Funny thing is, if I’d have waited a little and read a few reviews, I still wouldn’t have come across this issue because people usually don’t blog about specific versions of an app and I’d have to trawl through a bunch of issues pages on GitHub to find some mention of the issue.

The other example I have is of a BIOS update. I have the option of pulling in this update and I know that if I want to go exploring issues around it, I’ll find at least a few pages talking about people’s positive or negative experiences around it. Why the difference? Apps affect our lives just as much as BIOS updates do, because they take up more of our time now than computers do. The only thing is that BIOS updates are infrequent and cause system-wide failure. Plus, the BIOS update has been out there for a while and if it had been problematic, I would be able to find more information about it, and is a big problem since people love to use computers, for work, game or even listen to music using the 5.1 computer speakers 2017 that give the best audio quality to any computer.

There’s a hundred other things associated with these scenarios which I’ve ignored to simplify them – iOS is a closed garden, so the number of users who get affected by an individual app are much fewer than from any BIOS update; app updates are now automated so people don’t even have this dilemma that I have; there is a lot of software out there no one talks about and I’ve not included in my examples.

(By the way, I feel Apple should go the WordPress.org way. It should allow people to report back on app versions with respect to iOS versions, to say that, e.g. “2000 people report 100% compatiblity with iOS 11.2 for version 1.3 of this app”. This will give both us and them so much more information about how stables apps and updates are.)

People have stopped taking the time to talk on the open Internet about changes that affect us all. That’s because the return on investment of time and effort is all but enough to warrant this approach to life – documenting every small change.

That’s somewhat sad, frankly.

You Won’t Finish This Article Either

Just today, I was having a discussion on ADN about how there’s too much noise on the Internet and if I had the choice of a broadcast medium, I’d go with newspapers. Some time after that, I noticed the link to an interesting article on Slate about how people are not reading entire articles on the Internet and are just skimming through, or even just reading the headline, and tweeting the link if they like the headline or an eye-catching photo.

At this point, it’s my duty to inform you that this is a post about Social media, sharing, reading on the Internet and is a bit of a rant, so if you’re not interested, you’ve already left the article. I’d also like to tell you that I wanted to name the article – “Dealing with loss, of Readers” but that seemed rather grim and I wanted to mimic the Slate headline, because it’s just that good. There’s another reason that I’ll tell you later about. Continue reading