Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Solaris Support? #5650

Open
axisofentropy opened this issue May 3, 2019 · 9 comments
Open

Solaris Support? #5650

axisofentropy opened this issue May 3, 2019 · 9 comments
Labels
help-wanted We encourage community PRs for these issues! stage/needs-discussion type/enhancement

Comments

@axisofentropy
Copy link

Any chance of Solaris support? I see Vault and Consul have Solaris builds. But I can't even build Nomad myself from their documentation.

Nomad version

Any

Operating system and Environment details

Solaris / Illumos / SmartOS

Reproduction steps

[root@nomad-2 ~/go/src/github.com/hashicorp/nomad]# make bootstrap
GNUmakefile:22: *** Building Nomad is currently only supported on Darwin and Linux..  Stop.
@schmichael
Copy link
Member

Unfortunately we have no plans to support more OSes at this time. That being said we're accumulating quite the backlog of community interest in alternative OSes, architectures (eg #2517), and environment (eg #5535), so we're trying to figure out how to better support "unofficial" builds.

If you're interested in helping Nomad build on Solaris could you try commenting out the OS check in the makefile and rerunning it? I would imagine we don't properly tag Solaris in some of our platform dependent code, but it's worth a shot!

Also Nomad should build using go get github.com/hashicorp/nomad or go build -o nomad-$(git rev-parse --short=0 HEAD). Some optimizations provided by generated files as well as the UI are disabled when not using the makefile, but it will produce a fully functional Nomad binary.

@Smithx10
Copy link

Smithx10 commented May 7, 2019

@schmichael and @axisofentropy, I am currently leading this effort within the Illumos community to at least start with a Nomad Plugin to support using running Nomad Agents in the GZ of SmartOS machine. This is a contiuation of the work done by @sean- and @jen20.

See the following issues for more context:
Adding an Illumos build tag in golang. golang/go#20603 (comment) This was merged and will be in the next GoLang Release.

Adding the proper plumbing for fingerprinting Illumos / SmartOS using gopsutil. shirou/gopsutil#378 I forked this PR and tested in a SmartOS native Zone, and the GZ and the code works thanks to work done by Sean and James. This should be merged when the Illumos tag comes in.

At that point using the Nomad Plugins tooling we should be able to add a SmartOS task driver, and a more generic plugin for other illumos distros that don't support vmadm currently.. I believe @cneira would probably hvae some interest in this project.

Hope that brings everyone up to speed.

@cneira
Copy link
Contributor

cneira commented May 7, 2019

@Smithx10
That's a great coincidence, as yesterday I was browsing the lxc driver plugin to create one for Illumos, thanks for letting me know.

@Smithx10
Copy link

Smithx10 commented May 7, 2019

@cneira My pleasure. Also just to document the the ideas for adding this plugin, I'll start posting High lights from our irc discussions (irc.freenode.net #illumos) here so that others from the Hashicorp community can stay in the loop.

We discovered there was active work on a Zone Library written in go here... https://git.wegmueller.it/Illumos/go-zone

This would definitely be useful.

@axisofentropy
Copy link
Author

axisofentropy commented May 7, 2019 via email

@Smithx10
Copy link

Smithx10 commented May 7, 2019

@axisofentropy but you will need to fork, and implement the changes under the Solaris Tag from this PR. shirou/gopsutil#378. At that point you'll be able to use a few Task Drivers like Java, and Raw Exec I think.

@axisofentropy
Copy link
Author

axisofentropy commented May 7, 2019 via email

@Smithx10
Copy link

Smithx10 commented May 7, 2019

That is for the server.

@shantanugadgil
Copy link
Contributor

Having not only Solaris, but all OSes which Consul supports would be a big win.
Solaris (x64) and FreeBSD (x86_64) support for the clients with java/raw_exec would be great, I think!

@Amier3 Amier3 added the help-wanted We encourage community PRs for these issues! label Apr 1, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help-wanted We encourage community PRs for these issues! stage/needs-discussion type/enhancement
Projects
None yet
Development

No branches or pull requests

7 participants