>Instead, new versions of the software will be offered under the Elastic License (which limits how it can be used) or the Server Side Public License (which has requirements that make it unacceptable to many in the open source community).
I'm a bit out of the loop here, can someone please tell me why Elastic decided to enact this seemingly Anti-OSS license?
tl;dr Elastic alleges that Amazon is infringing on their trademark and is offering Elastic's products as a service on AWS without being a good partner.
From Elastic's summary of the license change: "The SSPL allows free and unrestricted use and modification, with the simple requirement that if you provide the product as a service to others, you must also publicly release any modifications as well as the source code of your management layers under SSPL."
> The SSPL allows free and unrestricted use and modification, with the simple requirement that if you provide the product as a service to others, you must also publicly release any modifications as well as the source code of your management layers under SSPL."
The magic is in the "management layers" part. True copyleft says "you can use this software in your product but you have to open source any changes to the software". Okay, fine. This "poison pill proprietary license dressed up as copyleft" is saying "if you sell a service that uses an UNMODIFIED version of elasticsearch, you have to release every piece of software around elasticsearch, including your hypervisors, kernels, os image...the list goes on". It's very clearly an attempt to make the requirement so odious that no-one would risk triggering that clause.
Which is why functionally all they did was force Amazon (and other organizations like Wikimedia who don't sell Elasticsearch as a service but do refuse to run proprietary software) to have to fork.
Elastic's business model is "make + distribute ElasticSearch for free, then offer hosted ES for money." AWS (among others) offers hosted ElasticSearch as well - Elastic feels this isn't fair, variously because: AWS may have violated trademark by calling theirs "Amazon Elasticsearch Service", or because AWS doesn't contribute enough to the open source development of ElasticSearch, or one of a few other grievances. So they're changing their license to one that protects against this sort of "abuse" of the Apache license.
The less charitable version is that since Elastic's business model revolves around selling hosted ElasticSearch and AWS is outcompeting them there, they're switching to an "Open Source, but you're not allowed to do that anymore" license. But because Elastic values the goodwill they get from being "open source," they're trying to convince the world that this is a principled, moral stance instead of a run-of-the-mill self-interested decision to make their business more viable.
Rightly or wrongly, they are joining a long line of OSS maintainers trying to protect themselves from the clouds profiting from them.
It seems reasonable to me at least to say: you can use this software for free, but you can't resell it. If you want professional support, please support someone who is maintaining the software.
> It seems reasonable to me at least to say: you can use this software for free, but you can't resell it. If you want professional support, please support someone who is maintaining the software.
Well, first of all I disagree that that's reasonable, but let's be clear here:
any license with a non-commerciality provision is not open source. This is explicitly part of the open source definition:
> The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.
This is why Elasticsearch and Kibana are no longer open source; you have a choice of two proprietary licenses if you want to use their version.
I don't think they were disingenuous here: I think they probably chose a license somewhat randomly (acknowledging it wasn't copy left probably?), then got developing. Down the road, they saw someone using the software in a way they didn't like and decided that as they were now bigger, they could afford to get a license drawn up with their values in mind. I doubt there was a nefarious plan to use a licence for it's reputation.
Now, I do think we are missing a standard license in this space - everyone seems to be writing their own, which limits those that can use them to larger projects.
I absolutely reject the notion that they chose Apache 2.0 "randomly"...indeed it's what Lucene, which they use as their kernel of sorts, is licensed under.
You use Apache 2.0 when you explicitly don't want copyleft. But here's what's great: copyleft wouldn't even stop Amazon, so they have to use SSPL which is a proprietary license masquerading as copyleft.
Also, one way they were clearly outright reneging on their promise was that Elastic explicitly promised the community that the parts of the codebase that were Apache 2.0 licensed (the 'open core') would never be made proprietary. They broke that promise for this move.
And what's doubly hilarious is from a business perspective it's an awful move. It won't stop Amazon from making money - they'll just fork 7.1.0 and develop under Apache 2.0 like they just did, and keep operating their service just the same. And by the way, it's Amazon's right, legally AND ethically, to be able to operate AWS Elasticsearch for profit - just as Elastic is right both legally and ethically to use Lucene as a necessary part of Elasticsearch.
I see a couple other people shared links, but for future reference, the Algolia search box at the bottom of most pages is a great way to answer these sorts of questions.
They couldn't compete with practically free (Amazon hosting their software as a service), and allegedly Amazon weren't commiting anything back into their repo.
Elastic appeared to make their money through hosting their own instances and selling professional licenses, which Amazon was in direct competition with.
I'm a bit out of the loop here, can someone please tell me why Elastic decided to enact this seemingly Anti-OSS license?