1. 18
  1.  

  2. 6

    I feel most of these tools that represent “alternatives on Linux” are young or half-baked solutions. It feels they are almost there, but still long way to go. ZFS, Dtrace, Zones (in this case read Jails) exist on FreeBSD for example, native and included in it for a long time. They exist for a long time in illumos and FreeBSD systems, so it seems much more reasonable to go with that than with Linux. You can get some of the things done on Linux but it feels like putting cube through circle hole imho.

    1. 5

      I feel most of these tools that represent “alternatives on Linux” are young or half-baked solutions. […] ZFS, Dtrace, Zones (in this case read Jails) exist on FreeBSD for example, native and included in it for a long time.

      ZFS on FreeBSD is on-par with ZFS on illumos.

      DTrace on FreeBSD lacks in features compared to illumos and has bugs that have been long solved in illumos. For example it lacks user-level CTF support (very important!) and for many years it had a bug that prevented it from working with Go binaries (maybe it was fixed? I don’t know).

      Regarding Jails, FreeBSD still doesn’t have network virtualization enabled by default in the kernel. And if you try to enable it (by recompiling the kernel so by losing binary updates for the kernel), you will find out that it has a lots and lots of bugs that, at least for me, made it unusable. Linux has working network virtualization. Without network virtualization you can’t run VPNs in jails. (Solaris had the same limitation until it introduced crossbow).

      1. 3

        The Zones->?? bit seems particularly half-baked at the moment. FreeBSD jails are probably closer than the cgroups/etc. set of features on Linux, but both are more like primitives you can build a Zone-like system out of than the full system. There are management systems for jails like iocage that might be closer to a Zones-like experience (I haven’t tried it).

        Gregg works for Netflix though. As I understand it, they use containers for maintainability and scalability, not for isolation (they don’t run untrusted containers), so the fact that Linux containers have a spotty security track record may not matter much to them. They also have a pretty substantial in-house infrastructure (Netflix basically is an infrastructure company), so Linux containers being more like low-level primitives than an out-of-box solution might also not matter that much to them, because they’re being slotted in as one piece of a big custom infrastructure anyway.

        1. 2

          There are management systems for jails like iocage that might be closer to a Zones-like experience (I haven’t tried it).

          There is a project that is “like vmadm” for FreeBSD.

        2. 0

          They exist for a long time in illumos and FreeBSD systems, so it seems much more reasonable to go with that than with Linux.

          Unless you need performance and good hardware support.

          1. 5

            Solaris performance is stellar and hardware support is a non issue in a virtual environment like virtual machines or cloud providers where virtual hardware is well supported.

            I run #SmartOS installations in physical machines in Hetzner and OVH with no issues at all, BTW.

            1. 2

              Can you kindly describe how do you do it?

              Doesn’t SmartOS officially require a dedicated startup disc that only has the read-only image of SmartOS, or PXE booting? How do you accommodate that if you only have a couple of HDDs in someone’s datacentre, and no private network?

              1. 4

                I generally PXE boot everything, but SmartOS is distributed as a multiboot-compatible ELF kernel and an initrd image. It can be booted by anything that can load multiboot kernels and initrd images. That means pretty much anything. Everything can do that, including Grub, PXE, or just plain KVM without a bootloader (I imagine Xen too). If you can load Linux, you can load SmartOS.

                1. 2

                  I have a hetzner box with a USB stick in it and two HDDs, boots from the USB stick (which was a one-off cost iirc) and runs from a memory image once booted. Works quite well, pretty happy with it.

                  OVH provides a virtual private network if you need it (called vrack I think) for multiple servers spread over multiple DCs to share a “private network”. It seems to work okay, but there’s nothing like having your own kit in a rack with a dedicated switch.

              2. 4

                Unless you need performance

                Performance strongly depends on the specific task at hand and/or how you measure. Do you have any specific case/comparison/benchmark in mind (preferably not “Ext4 is faster than ZFS” or “that async function returns instantly compared to the non-async one”)?

                On current systems I tend do see FreeBSD ahead, but by a rather insignificant margin.

                and good hardware support

                I use FreeBSD cause hardware runs out of the box and stable. On my laptop I’d be using Linux if that wasn’t the case, for certain closed source software. However, since this is my primary system I cannot have it be unstable and hacky.

                I would have agreed before FreeBSD 11, especially because the release cycles used to be long and hopefully will become faster with their change of support cycles.

                One last thing on the performance topic: If this would be my primary concern DragonFly BSD might be worth a look. However, there the major drawback is the small community. So if you rely on Stack Overflow to be able to work, you might not want that.

                That said I don’t think when switching from Solaris the difference between FreeBSD and Linux is that big. The switch between Solaris to Linux or FreeBSD is a lot bigger than from Linux to FreeBSD or vice versa.

            2. 1

              I think his comments around missing dtksh and CDE are noteworthy - lack of any kind of common desktop standardization on Linux makes developing tooling that much more difficult.

              I’m all for healthy competition in any ecosystem, but if you’re all building window managers and graphical desktops, why not at least agree on a set of standard interfaces so users can take advantage of them whichever one they choose?

              Freedesktop.org started down this path and gained some traction, but now X11 may be out the window so we get to watch everyone crawl up from the basement and re-invent the wheel. Again.