• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

I would like to avoid setting up a Linux Server

IT_Architect

Member

Thanks: 4
Messages: 86

#1
I would like to avoid setting up a Linux Server, but I have a requirement for a project that distributes its database drivers, app broker, and web server, as Linux binaries only. These are not Open Source. I haven't touched Linux in 10+ years. Any thoughts?

Thanks!
 

scottro

Daemon

Thanks: 401
Messages: 1,179

#2
A small Linux VM in VirtualBox or Bhyve? Do these apps require a specific distribution of Linux? VoidLinux is nice and small--actually so is Arch. Even if it requires CentOS or Fedora, you can do a minimal install, avoiding X if not needed.
 

herrbischoff

Active Member

Thanks: 69
Messages: 165

#3
database drivers, app broker, and web server, as Linux binaries only
There you have it. Basically all the essential components require Linux. You could of course try to run everything manually on FreeBSD, hoping the Linux binary emulation layer does its magic for you. I would strongly recommend against it though, you'll probably run into much more pain trying to troubleshoot this setup than it's worth it to avoid Linux.

Here's what I would do: run a bhyve virtual machine with the vendor's preferred Linux distribution for all the components that absolutely require it on a FreeBSD host. For other components that may not require Linux, run them directly on the host. I have successfully set up several applications/installations this way, effectively treating the Linux guest as a "virtual appliance", auto security patches enabled and all. Usually I don't need to touch the Linux VM and can happily continue to run FreeBSD servers.

Under certain circumstances this may not be an option, like software that leverages hardware optimizations or needs direct GPU access. If it's a general application, you should be fine. In my case, one example would be a proprietary mail server software running on Debian 8 as a guest with its actual mail storage being accessed via NFS from the FreeBSD host.
 

SirDice

Administrator
Staff member
Administrator
Moderator

Thanks: 6,126
Messages: 27,000

#4
but I have a requirement for a project that distributes its database drivers, app broker, and web server, as Linux binaries only. These are not Open Source.
This basically means you don't have much choice.
Basically all the essential components require Linux. You could of course try to run everything manually on FreeBSD, hoping the Linux binary emulation layer does its magic for you. I would strongly recommend against it though, you'll probably run into much more pain trying to troubleshoot this setup than it's worth it to avoid Linux.
I can only agree. I would also add support to that. It's quite likely that running those binaries on FreeBSD would mean you won't get support. Stick to whatever Linux distribution they recommend.
 

azathoth

Well-Known Member

Thanks: 13
Messages: 373

#5
I would like to avoid setting up a Linux Server, but I have a requirement for a project that distributes its database drivers, app broker, and web server, as Linux binaries only. These are not Open Source. I haven't touched Linux in 10+ years. Any thoughts?

Thanks!
linux binaries?
 

Terry_Kennedy

Aspiring Daemon

Thanks: 259
Messages: 879

#6
I can only agree. I would also add support to that. It's quite likely that running those binaries on FreeBSD would mean you won't get support. Stick to whatever Linux distribution they recommend.
It might be worth asking the software vendor if they would add support for FreeBSD. I did this with the vendor of a DEC Alpha emulator (EmuVM) and the author added a FreeBSD version at no additional charge. I provided porting advice and a channel to the relevant FreeBSD developers when FreeBSD issues were found (such as pr218572).

Depending on what other platforms are already supported, a FreeBSD port may produce other dividends such as an easier port to Mac OS X, which may be a helpful argument to make.
 

sko

Well-Known Member

Thanks: 158
Messages: 351

#8
The linux compatibility layer is nice, but for most applications that rely on specific 'linux-isms' (like some weirdness of the linux sysfs) it is a nightmare to a) get it working and b) keep it working over updates. I would not recommend this for a production environment.

If you have to run several other "linux-only" applications, you might take a look on SmartOS, which provides LX-zones. These zones feel and look like a "normal" linux system and can be provisioned e.g. with a pre-tailored alpine linux image.
These zones run on bare-metal, so there is no VM-overhead as compared to bhyve. A nice bonus is the ability to use dtrace inside the LX-zone.

If that software stack is available as a ready-to-run VM-image/appliance, I'd go with that any time regardless of the overhead. You essentially spare yourself any manual setup, administration and especially bugfixing of their software on your side and if something goes belly up it means their updates broke it, so they have to fix it (you have a support/maintenance contract, right?). From my experience, most proprietary linux software always comes without ANY proper documentation/manuals and includes a huge mess of setup- and "helper"-scripts that give you nightmares for weeks - avoid touching such software like the plague or you will be doomed to constantly putting out dumpster fires.
 

Terry_Kennedy

Aspiring Daemon

Thanks: 259
Messages: 879

#9
Your points are good, except this one. As macOS is one of the last platforms one would run Linux-originated server software on, I don't think this would be a particularly effective argument.
I don't know - the supported platforms for EmuVM when I asked the author to add FreeBSD support were Linux and Windows. Apparently a lot of his customers run on Windows. So the FreeBSD port got him most of the way to OS X as well.

Apple doesn't seem to have been particularly consistent with their message about Mac OS X as a server platform - they discontinued and reinstated their Xserve rackmount server line a couple of times (once in the PowerPC era and once in the Intel era).
 

azathoth

Well-Known Member

Thanks: 13
Messages: 373

#10
I say write you own software......to hell with vendors.

some cool stuff:
gnoga.com
happstack.com
aidaweb.si
gforth
lisp on lines
swi prolog appserver
picolisp
racket and continue
awful from chicken scheme
 

SirDice

Administrator
Staff member
Administrator
Moderator

Thanks: 6,126
Messages: 27,000

#11
I say write you own software......to hell with vendors.
That's actually rarely an option. You need proper developers for that, and lots of time. Not to mention the inevitable maintenance and bug fixing. So in the end it's typically cheaper just to buy something off the shelf and get support for it. Especially if you run a business that has nothing to do with (software) development in the first place.
 

herrbischoff

Active Member

Thanks: 69
Messages: 165

#12
Not to mention that, following azathoth's recommendation, you would have to have developers on hand which are fluent in Haskell, Smalltalk, Lisp and other rather unusual languages. Languages which may be perfectly suited for the task, even preferable on technical merit alone, but are not common to the majority of coders. Another example where pesky reality interferes with an otherwise perfect theoretical plan.
 

azathoth

Well-Known Member

Thanks: 13
Messages: 373

#13
That's actually rarely an option. You need proper developers for that, and lots of time. Not to mention the inevitable maintenance and bug fixing. So in the end it's typically cheaper just to buy something off the shelf and get support for it. Especially if you run a business that has nothing to do with (software) development in the first place.
I respectfully disagree.
I think with your own devs you can get just what you need, not some giant assumption pile that might lead to other sales ins.
but hey I am the kind of nut who thinks ha-proxy load balancer and servers with no SAN or virtualization are good.
Simple and horizontally scale!
:)
raid 10 etc or hek check out mogileFS
I am also interested in werc.cat-v.org +mogileFS
 

azathoth

Well-Known Member

Thanks: 13
Messages: 373

#14
Not to mention that, following azathoth's recommendation, you would have to have developers on hand which are fluent in Haskell, Smalltalk, Lisp and other rather unusual languages. Languages which may be perfectly suited for the task, even preferable on technical merit alone, but are not common to the majority of coders. Another example where pesky reality interferes with an otherwise perfect theoretical plan.
On no I meant pick one.
You want simplicity.
www.cat-v.org is a site I think that represents a lot of what I like.
skip virtualization agile scrum devops etc.
use shell and servers and load balancer
Show your developers that they need to code not be library monkeys and continuous integration junkies.
 
Top