4 ms·
It was the future OS most fails to understand. The ZFS/IPS integration was the first modern step aside of declarative distros. A thing 99% of people still fails
by kkfx 9mo ago
It was the future OS most fails to understand. The ZFS/IPS integration was the first modern step aside of declarative distros. A thing 99% of people still fails to understand refusing the concept of storage system/package system/installer interdependence.
Zones, DTrace was the rest.
- mikestorrent 9mo agoI submit that the problem was Solaris 9 just being massively overtaken by desktop Linux in every way - easier to install, faster, simpler to patch, better GUI, more software available. Solaris 10 was too little too late; it already had to compete with mature Linux offerings that had a greater mindshare, and the excellent features like Zones were too far ahead of their time (and lacked the centralized store of downloadable Zone-prepackaged apps that is really the reason for Docker's success). Purity doesn't matter in practice - especially in a world where OS installations are increasingly ephemeral and ideally immutable. I always hear DTrace is awesome, but have never used it. And seem to have gotten by just fine... what am I actually missing? ZFS, on the other hand, was so good that it has outlived Solaris itself and is at the core of e.g. TrueNAS as a commercial product.
- kkfx 9mo agoDtrace essentially allows two things. The first is exploring a live system, similar to being in a debugger but without its overhead. The other is monitoring; it's possible to notice that something is wrong earlier and with less overhead than monitoring logs and testing services. Both aren't strictly necessary/much used in practice for various reasons, but depending on what you're doing, it's very handy to have. In a way similar to ZFS vs Stratis: the first ready to go, well-made, convenient, while the second is an absurd mess made by people who don't understand operations and think they know better from their development machine. On Solaris... In my opinion, the real problem is less about Slowlaris and more about having chosen to target the élite for so long instead of targeting students, who are the future technicians, managers, etc. GNU/Linux succeeded IMVHO because it was aimed at this audience, which is much broader, with many who weren't interested, but it's also the group that shapes 100% of every future generation of decision-makers and technicians. When SUN realized this, first with SXDE/CE and then OpenIndiana, it was, yes, damn late.
- mikestorrent 9mo agoYeah, I totally agree with your last point. I learned Solaris 9 in school, but had already been using Debian for years at that point, and it just felt like I was boxed out of having a real learning experience in the ecosystem; everything was locked up behind enterprise paywalls and traditional sales processes.
- twoodfin 9mo agoDo you have any recommended references to understand that concept and how it plays out in Solaris? I find myself in the middle of what I imagine are similar design challenges in software packaging, storage, integration, and deployment.
- kkfx 9mo agoNot at hand unfortunately, because IPS was introduced with OpenIndiana (the IllumOS base) which objectively didn't last long enough to have time for serious documentation. The super-basic description is that the package manager, IPS (Image Package System), is somewhat integrated with storage, enough to allow creating new BEs (Boot Environments), which are ZFS clones of the current system. On disk, these only consume the differences compared to the original system, are bootable directly from GRUB, and can even be soft-booted if needed (restarting just the userland without a full reboot). It allows updating in a clone, so if something goes wrong, you can reboot into the old version (not so easy if databases are involved, but let's say it's generally doable). The installer is similarly "integrated" but at least back then it was in a very rough, early state, a fork of some Debian GUI installer I don't remember the name (prodigy maybe?) that never went mainstream, called Cayman in OpenSolaris. The idea was to deploy a system as a ZFS volume in the pool with some scripting to "link the root volume to the bootloader." The future could have led to packages like mini-ZFS filesystems mountable/composable/exposable in the ZPL to virtually build an FHS-compliant deployment but operate entirely at the zfs blocks level. An immutable system if desired, ZFS-diffable if desired, cloneable, rollbackable, updatable incrementally so hyper fast and with low overhead etc. The project unfortunately fell apart before getting there, but if it had, deploying a new host would have just been a `zfs send` of a set of volumes. Essentially what NixOS/NixOps/Disnix does, but ideally without the complexity of the /nix/store.
- twoodfin 9mo agoThat’s actually super relevant and helpful, thanks.