As init systems go, I actually like systemd, far more than Upstart or, especially, Solaris SMF. The XML-laden can of worms known as SMF is particularly something I hope I never have to work with again (then again, with Solaris being barely on life support now, that's a pretty good bet). The only thing I'd wish is for systemd to confine itself to being an init system. Tying important system components tightly into systemd, on the other hand, is something I think is a Bad Idea.
I've ripped-and-replaced several of my CentOS 7 installations with Ubuntu Server 16.04 recently, though, and any new CentOS installs that I do will be KVM guests. Last spring, on a project, the client wanted to use an old server as a development system. I fire it up to do an installation, and whaddya know, the RAID controller doesn't show up. On a hunch, I tried Ubuntu Server just to see what would happen, and it worked fine. Unfortunately, some of the software we were using didn't support Ubuntu, so we ended up buying a cheap refurbished desktop as a development box. I could have just run CentOS as a KVM guest, but that seemed more trouble than it was worth.
It turned out that the RAID controller was deprecated in C6 and the driver was yanked in C7. No "this driver is now unsupported" warning, it was just ripped out completely. Then I discovered that the SAS HBA in my home NAS was deprecated in C7, so C8 would be a no-go unless I ate the cost of a new HBA.
That became academic when C7-1708 was released. The final straw was that the ZFS modules wouldn't build on the new kernel. Between that and the perennial problems with DKMS and weak-updates that required occasional manual cleanups, and Ubuntu shipping with prebuilt ZFS modules, it was clear to me that it was time to switch.