JSS 9.61 is No-Go on YoYo (Yosemite)

donmontalvo
Esteemed Contributor III

Is this a mistake? YoYo (Yosemite) does not allow or support StartupItems.

MySQL 5.5, 5.6 and 5.7 all require a StartupItem.

Hmmm.....

external image link

--
https://donmontalvo.com
27 REPLIES 27

emily
Valued Contributor III
Valued Contributor III

I noticed on my test JSS that I had to manually start up MySQL every time I rebooted. This is…quite inconvenient.

donmontalvo
Esteemed Contributor III

I'm guessing a launchd item can be created to kick off MySQL on reboot.

I thought it was late and I may have been imagining things when I saw the doc. :)

zzz...

--
https://donmontalvo.com

jhbush
Valued Contributor II

@donmontalvo I feel like it's been that way for awhile or my install of MySQL is broken. I just went the launchd route. The MySQL auto-startup never worked in 10.9.x for me. Hopefully I'll be dumping OSX for a clustered RHEL setup as soon as my firewall rules get configured.

bentoms
Release Candidate Programs Tester

@donmontalvo, It's something that I'm sure MySQL will change with a new installer.

FWIW, on 10.10 you need to start it using a launch daemon like the one linked: http://stackoverflow.com/questions/26476391/how-to-auto-load-mysql-on-startup-on-osx-yosemite

calumhunter
Valued Contributor

*flame suit on* but honestly why would you bother with the JSS running on OSX? I would assume that if you have Casper you have a decent amount of machines, which would then generally mean you have a decent virtualised infrastructure available to spin up a Win server or a flavour of Linux..

However in saying that, I'd expect better of JAMF than to let this one slip through seems a pretty large omission. Is there any mention of this problem in their admin guide/getting started? or does it still just say grab the community version of SQL 5.1+

donmontalvo
Esteemed Contributor III

@calumhunter][/url wrote:

*flame suit on* but honestly why would you bother with the JSS running on OSX?

I hear ya. I smell what you're cooking. I'm picking up what you're putting down. We've been kicking Apple hardware out of data centers for years.

The environments we set up with Casper have been all been on Windows Server VM. Unfortunately there are a few shops that still run JSS on OS X. So for this POC we don't have a choice.

@bentoms, @jhbush1973, will have a look at that link. Was hoping MySQL 5.7 were more up to date with current OSes but I guess their developers aren't up to speed on YoYo restrictions.

--
https://donmontalvo.com

bentoms
Release Candidate Programs Tester

@calumhunter, still happily using OSX server here for my whole JSS/Casper backend.

12 minis deployed globally, running the JSS, ASUS, NetBoot, Caching & AFP/http(s).

Works well enough & the Apple logo means that the rest of IT leave it well alone. :)

bentoms
Release Candidate Programs Tester

@jhbush1973][/url, didn't see that your had been bust under 10.9.x.. Well nothing much to add but it's working for us.

natesimons
New Contributor III

I almost downloaded and upgraded until this little post caught my eye. Going to leave it alone for awhile. Thanks for the info everyone.
I don't know what "virtualization" is but I may check into that.

jwojda
Valued Contributor II

our jamf rep said he had a workaround for it... till then, don't reboot your server w/o starting mysql :)

MikeF
Contributor II

I noticed the same thing. Reboot and you have to manually start up mysql.

donmontalvo
Esteemed Contributor III

(Apologies in advance for my updates causing multiple email alerts. Since folks search for answers, it makes sense to keep these tidbits updated. Please adjust your JAMF Nation prefs and/or use the Bookmark feature to keep track if you disable email alerts. - Don)

Yea, SystemStarter went bye bye...it's all launchd now. Apple have been pushing folks towards launchd for years, they finally pulled the trigger. Companies like Guardian Software, Oracle, etc., need to tell their internal Mac dev guys to start updating their software to use launchd.

Startup Items
https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/Sta...

Deprecation Note: Startup items are a deprecated technology. Launching of daemons through this process may be removed or eliminated in a future release of OS X. Unless your software requires compatibility with OS X v10.3 or earlier, use the launchd facility instead. For more information, see Creating Launch Daemons and Agents.

and

About Daemons and Services
https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/Int...

and

Creating Launch Daemons and Agents
https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/Cre...

If you are developing daemons to run on OS X, it is highly recommended that you design your daemons to be launchd compliant. Using launchd provides better performance and flexibility for daemons. It also improves the ability of administrators to manage the daemons running on a given system.
--
https://donmontalvo.com

barnesaw
Contributor III

@calumhunter][/url][/url Also donning my flame suit...

Are you shocked? JAMF, after all, only supports the most basic and unreliable of databases for the JSS. MySQL? Really? Is it 1996 still? Are there no other databases? Is it so freaking difficult to abstract a database schema?

update: apparently it is... [https://jamfnation.jamfsoftware.com/featureRequest.html?id=456 ]

The hardware and OS is irrelevant as long as we're still tied to MySQL and Java. Seriously.

rcorbin
Contributor II

I second the @bentoms response. We still run our JSS on a server Mac Mini. Works great. It's 2.6Ghz i7 with 16G of RAM. Have it on 10.9 and MySQL starts up fine on a restart. We manage about 6000 Macs and 3000 iPads from it. I do have the Mac Mini running with the OS and Packages on a thunderbolt Promise Raid. We have 50 sites with a distribution point running at each site on a Mac Mini as well. All works very well. No plans to move the JSS to Yosemite as 10.9 is working well a the moment.

bentoms
Release Candidate Programs Tester

Anyways, it doesn't matter.

Truth is, 10.10 support is there in the JSS.. But MySQL is behind in moving from a startup item to LaunchD.

But it can be circumvented by creating your own in the mean time.

mm2270
Legendary Contributor III

While I can't say I'm really surprised at all, I have to say its quite pathetic that developers out there haven't moved over to launchd. Its only been around since, oh let's see, OS X 10.4! Released in Spring 2005, so nearly a decade ago!

acdesigntech
Contributor II

@bentoms wrote:

Works well enough & the Apple logo means that the rest of IT leave it well alone. :)

The EXACT reason I elected a mini to host our new JSS environment even though I had the option of a superior virtualized Ubuntu server (managed by our cluster). That half bitten fruit is like kryptonite to Windows admins.

donmontalvo
Esteemed Contributor III

I have a good relationship with the Extensis folks, when they pulled the trigger and provided UTS support for MSSQL/Oracle (they already supported MySQL), I was floored.

--
https://donmontalvo.com

calumhunter
Valued Contributor
The EXACT reason I elected a mini to host our new JSS environment even though I had the option of a superior virtualized Ubuntu server (managed by our cluster). That half bitten fruit is like kryptonite to Windows admins.

Not to turn this into a religious debate, but this is the exact reason I prefer not to use apple hardware/software in the backend. (Small homogenous networks aside)
I'm a lazy (read: efficient, productive, smart) sysadmin. Why would I want to duplicate an entire infrastructure eg. database servers, app servers and fileservers. Then have to manage physical servers, have no HA/DR, no decent hardware monitoring and then be responsible for that on top of my day to day macsysadmin work. If you already have an infrastructure team managing all of that stuff then use that to your advantage.

People are loving things like AutoPKG and AutoCasperNBI because it does a lot of the work for you. In the same vein, why not let the windows/infrastructure/networking/whatever-they-are-called team do all of the hardwork for you? If a fileserver goes down that also hosts your casper DP, guess who is responsible for getting that back up and running and the data restored? Not me :) If the MySQL database server (or cluster) goes pear shaped, again, not my problem theres another team looking after that.

I've been fighting with network/windows admins for my entire career, I've found that the divide and adversarial relationship between mac admins and windows/network admins doesn't benefit anyone. Its stressful to both sides and also ultimately affects the end users experience which is what we should all be about.

Anyway very off topic but food for thought perhaps :)

Oh and a massive YES PLEASE IMPLEMENT NOW! For using MSSQL!!

bentoms
Release Candidate Programs Tester

@calumhunter, actually.. I prefer to control my own destiny.. Or maybe it's a lack of faith in the rest of my team.

Either way.. Happy that my JSS is on Apple kit.

donmontalvo
Esteemed Contributor III
I've been fighting with network/windows admins for my entire career, I've found that the divide and adversarial relationship between mac admins and windows/network admins doesn't benefit anyone. Its stressful to both sides and also ultimately affects the end users experience which is what we should all be about.

I find partnering with your datacenter team builds trust and confidence across the board.

I'm the race car driver who wants to win, but doesn't want to be involved in the choice of tires.

On the other hand, every Mac admin has to decide whether their datacenter team are reliable/responsive/capable, if not I'm not sure I'd feel comfortable having them involved.

--
https://donmontalvo.com

RobertHammen
Valued Contributor II

Not everyone has a datacenter team... or a virtualization environment.

donmontalvo
Esteemed Contributor III

Hi @RobertHammen, yea we've been lucky so far. Physical works too, if the choice is to "hand off" the platform to the folks who manage that kind of thing.

If I get a chance tonight I'll create a launchd to start MySQL on reboot, the info provided by @bentoms (short URL: http://stackoverflow.com/a/26492593), and wrap it all in a PKG.

--
https://donmontalvo.com

acdesigntech
Contributor II

@calumhunter and @donmontalvo in another environment I'd agree wholeheartedly. I'm a Casper admin, not a file server admin, network bandwidth admin, <insert other title> admin, etc, and I'd love to leverage the infrastructure already in place so I can concentrate on what Casper does best. Unfortunately The server team and datacenter team at my place of employment are not one in the same, and neither are very cooperative with one another and least of all lil ole desktop engineering me </sarcasm>.

Even if I did decide on a windows VM, I'd get stuck with all the management of it anyway (from nuts to bolts), since it would be labeled "that Mac server." The only thing is then I'd also get to fight with the monthly automatic updates that are pushed to Windows VMs, including Java and MySQL (and not be able to stop them or otherwise do anything else about them). So Apple hardware it is for me for now. Eh, I like it better that way. I see what the SCCM admin deals with in that scenario. I'd rather not :P

donmontalvo
Esteemed Contributor III

This works, well, some'a'times... :)

https://jamfnation.jamfsoftware.com/discussion.html?id=10163#responseChild56810

--
https://donmontalvo.com

donmontalvo
Esteemed Contributor III

Sent to me by one of the MySQL forum admins:

Bug #59855 Use launchd daemon instead of deprecated startup item for MySQL on MacOSX
http://bugs.mysql.com/bug.php?id=59855

--
https://donmontalvo.com

Chris_Hafner
Valued Contributor II

Wow you folks are making me jealous. In my environment I have Casper all to myself. I mean it too. The JSS, MySQL, FileShare... etc. All mine. So, because I'm an old Mac head and JAMF supported Mac "Server", I ended up starting out running everything on two Mac Pro's with a super fast RAID and SAS drives attached. While I would love to have a data center team, I'm not that lucky (or am I?). Even though I'm comfortable running this all of this from Linux/Windows (CJA was great BTW) I keep falling back to the fact that this is all supported to run on the Mac OS. This way I can fall back on my support team at JAMF just in case. Believe me, I've certainly had to in the past.

Every time I end up thinking about the benefits of separating my Casper components and virtualizing I end up realizing that I'd be personally taking on managing a whole new server architecture that I don't really have time for. So, I've got to put my hand up for the easy, self supported play-skool model. I follow the instructions and color in the lines. It may be a balancing act but it works and works well.