saltstack / salt

Software to automate the management and configuration of any infrastructure or application at scale. Get access to the Salt software package repository here:
https://repo.saltproject.io/
Apache License 2.0
14.14k stars 5.47k forks source link

Initial Solaris Support #730

Closed thatch45 closed 11 years ago

thatch45 commented 12 years ago

Get Solaris working.

I am developing this on Open Indiana, I am open to any other suggestions for a target platform to use (or Solaris donations!)

druonysus commented 12 years ago

I hear SmartOS (smartos.org) is one of the most popular illumos distributions for cloud computing. I am no Solaris expert but when I spoke the the illumos people at SCALE 10x they said openIndiana and SmartOS are the two major ones with a slight majority being on SmartOS due to it being more cloud focused (openIndiana is more general-purpose/desktop focused). I don't know how similar either are to Oracle's Solaris though.

thatch45 commented 12 years ago

good info, I will get one of those going!

errordeveloper commented 12 years ago

Guys, I'd like to work on SmartOS support also :)

Well, my Python skill are rather limited, hence I propose myself as tester perhaps.

thatch45 commented 12 years ago

Thanks for the offer, I am planning on getting Salt going on OpenIndiana and SmartOS, since thats what I have access to

errordeveloper commented 12 years ago

A problem that I have a hand already - so how do we build the dependencies?

Justification to this is that SmartOS uses pkgsrc from NetBSD and OpenIndiana uses the original package manager from Sun/Oracle Solaris.

One think that I wanted to do eventually is to get Gentoo Portage bootstrapped ... may be that would the best bet - since it should work equally on both (provided gcc is there).

However, may it's not the ideal way and we should have a simple script that would just build everything from source in a simple fashion an pull the right dependencies - with Gentoo there would be quite a few missing bits .. Because you are dealing with a prefix install - not the entire portage tree is available and you need to backport and fix things along the way + deal with pull-request to the mainline (which is fine, but may be at a later stage?).

So my proposal is to come up with a shell script which would just do the job - deps+slat in /opt/salt and off you got! How does that sound?

On 28 February 2012 21:26, Thomas S Hatch reply@reply.github.com wrote:

Thanks for the offer, I am planning on getting Salt going on OpenIndiana and SmartOS, since thats what I have access to


Reply to this email directly or view it on GitHub: https://github.com/saltstack/salt/issues/730#issuecomment-4225936

thatch45 commented 12 years ago

Heh, that sounds very Solaris, and I see why by the information you have presented! I think that this script would be great, are you interested in developing said script? We do need to add package backends for solaris proper and netbsd

errordeveloper commented 12 years ago

Yeah, sure - I can go ahead with the build script. Do you have any versions of the deps that I should pull (appart from what's in the docs)? Also ... the two python crypto modules, are they both scrictly required (e.g. if one fails to build but the other one does ...)?

On 28 February 2012 23:37, Thomas S Hatch reply@reply.github.com wrote:

Heh, that sounds very Solaris, and I see why by the information you have presented! I think that this script would be great, are you interested in developing said script? We do need to add package backends for solaris proper and netbsd


Reply to this email directly or view it on GitHub: https://github.com/saltstack/salt/issues/730#issuecomment-4228434

thatch45 commented 12 years ago

Just the latest would be fine on deps versions They are both required, so we do need them both

Thanks! This will help a lot! Maybe we should put the script in the root of the git repo!

errordeveloper commented 12 years ago

Regarding 0mq, is it whichever version pyzmq is bound with?

On 28 February 2012 23:58, Thomas S Hatch reply@reply.github.com wrote:

Just the latest would be fine on deps versions They are both required, so we do need them both


Reply to this email directly or view it on GitHub: https://github.com/saltstack/salt/issues/730#issuecomment-4228770

thatch45 commented 12 years ago

You got it!

thatch45 commented 12 years ago

I would go with 2.1.11

grierj commented 12 years ago

I'll just toss my hat into the ring that I'll be getting salt working on Oracle Solaris. I actually have a minion up and listening with dependancies either compiled with gcc or pulled straight from OpenCSW. Grains didn't seem to work, but a handful of other modules seem fine. Let me know what I can do to help with coding and testing. The OS is deprecated at my company, but I imagine it'll linger for some time to come.

thatch45 commented 12 years ago

I just got a minion running in my development environment on open indiana. What we need is a pkg module, user management and to fix the missing grains. I don't know much Solaris, you mind if I bounce some questions off you as they come up?

But contributions here will be great, it is slow going for me since I am new to Solaris!

SEJeff commented 12 years ago

@thatch45 Do you have a working test env or just a VM somewhere? If I could get into it, I'll rip through the grains.

thatch45 commented 12 years ago

I have 2 systems up, I will PM you the info to get in

thatch45 commented 12 years ago

I don't want this to be a blocker for 0.9.8, since there is still a lot of work here, I am moving it up to 1.0.0

szaydel commented 12 years ago

Wondering if there has been much if any progress on this. I would like to help as well. I am definitely interested in seeing this work on Illumos-based OS's, namely SmartOS.

UtahDave commented 12 years ago

@szaydel , Yes quite a bit of work has been done on this recently. @romeotheriault has done quite a bit lately on Solaris.

szaydel commented 12 years ago

@UtahDave , I can help with testing things and patching if needed. I am considering using Salt to manage our company's storage, which is ZFS-based and will be using an Illumos-based OS.

thatch45 commented 12 years ago

@szaydel, thats great to hear! @romeotheriault has done a lot here, although each Illumos-based OS differs, which one are you using?

szaydel commented 12 years ago

@thatch45 , most should be very close in terms of core functionality. OpenIndiana in my opinion is not a true Illumos OS, for a number of legacy reasons. I think, for me SmartOS is the most interesting one right now. I am not yet sure where we are going with our OS. We will be building our own, but the model may closely follow SmartOS. OmniOS and SmartOS to me at least are the two that have highest importance. OmniOS is a solid general purpose OS, for a server, whereas SmartOS and smart machines are hypervisor and zones. The real key, to me is to get things working enough to where I can install it in the zones as a minion and in reality master does not have to be anything Illumos.

thatch45 commented 12 years ago

Yes, I really like SmartOS and OmniOS, and adding more SmartOS support is on our radar for the near future. At this point though, adding support to Salt for these systems should not be to difficult, since the grains should cross over well we will most likely just need to add some more specific checks in there, and depending on the service and pkg systems being used those should be easy additions. In the end, this should not be a problem since the foundation support for Solaris is in place

szaydel commented 12 years ago

This is excellent. I honestly have not yet even tried Salt on SmartOS, so anything I say at this point is hypothetical. Can I expect that at least deploying minions on Zones will be possible? I will start looking at this as soon as time permits.

rrtj3 commented 12 years ago

Hi @szaydel, Any help you want to provide would be great. I've been working on adding solaris support [1] to salt and my next steps are to get it working nicely on SmartOS also. Currently in 0.10.3 Solaris support is ok. We have SMF, remote execution and grains working well. In the soon to be released 0.10.4 we will have support for almost all the really important modules. (user,group,cron,smf,srv4 pkgs, shadow,remote execution, etc...)

I have a few more items to take care of in solaris and then will be moving onto smartos. Any testing/patching/coding you can provide on either of these platforms would be greatly appreciated! We're a great group of people to work with. :)

But as @thatch45 said now that solaris support is getting baked into salt adding support for other solaris-derived projects should be much easier. (Not that it was particularly hard in the first place :) )

Some of my goals for SmartOS support are:

Anyway, don't want to talk your ear off but yes we're adding support and yes you can help if you want!

[1] http://docs.saltstack.org/en/latest/topics/installation/solaris.html

szaydel commented 12 years ago

@romeotheriault, This is really good. I need to get comfortable with Salt in the first place, wish I had been using it actively. But, hoping to start. Have you tried to do any installations on SmartOS, or is it completely manual building right now?

rrtj3 commented 12 years ago

@szaydel No worries, take your time getting to know salt. Also, don't feel like you HAVE to work on salt. We just want to make it clear that anyone that wants to contribute is more than welcome.

I have not as of yet tried installing on SmartOS so I won't be of much help in that regard yet. Once I get to SmartOS, hoping to within a month, getting directions up on how to install will be one of my first items. That being said, since Salt (albeit a rather old version) is in the pkgsrc tree already I would imagine that getting all/most of the dependencies installed should be taken care of automatically through pkgsrc.

I'll update this thread once I've gotten initial SmartOS support/installation instructions in place.

szaydel commented 12 years ago

@romeotheriault - sounds good. As I come-up to speed I will try to contribute any way I can. If you get to package it with pkgin that will be even better.

rrtj3 commented 12 years ago

@szaydel, noted! I'll take a look at pkgin also. Thanks.

thatch45 commented 11 years ago

This issue is for "Initial Solaris Support", @romeotheriault has given us just that! So I am closing this, we can open issues specific to Solaris support as they come!