Amazon Has Released OpenSearch, An Apache Licensed Alternative To The SSPL Licensed ElasticSearch Search Platform
Elastic re-licensed the ElasticSearch search engine to a dual license model where rather restrictive Server Side Public License (SSPL) license as the only copyleft option in January 2021. Amazon has now released a fork of the last Apache licensed ElasticSearch version called OpenSearch and made it available under the much more liberal Apache 2.0 license.
"Cloud" is just a marketing term for CPU-time on someone else's server somewhere. The artwork in this picture, taken in Norway's capital Oslo in 2006, has absolutely nothing to do with this story beyond there being very different kinds of clouds depicted in it.
Big tech, and corporation offering "cloud" services in general, love to use free software as a part of their business model with no regard or care for the people who created the software they use. It is a very real problem.
MongoDB Incorporated create the rather restrictive Server Side Public License (SSPL) to, in principle, prevent corporations from offering modified versions of it as a service without making the source code available. However, it doesn't stop there, it goes way beyond what the somewhat similar GNU Affero General Public License v3.0 license requires.
The SSPL's term 13 is problematic, and it is not just a road-block for evil cloud corporations who exploit free software projects. It states that:
"If you make the functionality of the Program or a modified version available to third parties as a service, you must make the Service Source Code available via network download to everyone at no charge, under the terms of this License."
That sounds perfectly reasonable, and it is, until you get to:
"“Service Source Code” means the Corresponding Source for the Program or the modified version, and the Corresponding Source for all programs that you use to make the Program or modified version available as a service, including, without limitation, management software, user interfaces, application program interfaces, automation software, monitoring software, backup software, storage software and hosting software, all such that a user could run an instance of the service using the Service Source Code you make available."
Making all source for each and every component in your stack is somewhat difficult if your software is running on a proprietary operating system like Microsoft Windows. You simply don't have the source code you are required to share. The same could even true if you use GNU/Linux and FOSS software through and through and you run a PeerTube-based video hosting platform that it happens to be configured to do hardware video encoding with VAAPI (something that possible with the PeerTube 3.1 release earlier this month). You don't have the source code for AMD's binary
/lib/firmware/radeon/kaveri_uvd.bin blob, which is used by the kernels
amdgpu driver then VAAPI hardware video decoding done, so you couldn't share it even if you wanted to.
We think it is a bit unfair to go as far as calling the SSPL a proprietary software license, though some do. It is perfectly reasonable to say that it is much, much more restrictive than very liberal licenses like the BSD licenses and the Apache Licenses, and it is also more restrictive than most GNU licenses such as the GNU General Public License Version 3.
Introducing The "Elastic License v2"
Elastic NV, a American-Dutch corporation founded in 2012, announced that they were re-licensing the until then Apache 2.0 Licensed ElasticSearch search engine to a dual-license with a new "very simple, non-copyleft license" called the Elastic License v2 for their customers and the Server Side Public License for those who would rather not pay Elastic NV a regular fee for the privilege of using their software.
The Elastic License v2 is just another proprietary software license. It does not matter how simple it is. It's evil. The alternative is to accept the almost just as restrictive Server Side Public License. That is, of course, not an alternative for very large and profitable corporations who would like to get paid, not pay for using Elastic NV's ElasticSearch software.
Big Cloud Saves The Day
Amazon has now released their own ElasticSearch fork called OpenSearch. It is based on the last ElasticSearch version available under the Apache license and Amazon is offering it under the same Apache 2.0 license ElasticSearch had before they re-licensed it.
Amazon has opted to adopt a Developer Certificate of Origin (DCO) model for contributions to their fork. Those who are familiar with Linux kernel development have probably seen the tell-tale signs of it, the DCO is why commit messages have
Signed-off-by statements like:
Reported-by: Dmitry V. Levin <firstname.lastname@example.org> Cc: Oleg Nesterov <email@example.com> Cc: <firstname.lastname@example.org> Signed-off-by: Andrew Morton <email@example.com> Signed-off-by: Linus Torvalds <firstname.lastname@example.org>
The Developer Certificate of Origin is much more than just a line stating who wrote a patch. There are several terms attached to it. The DCO states that you retain your copyright and project owners, or maintainers, can't just re-license your code under different terms later on. Amazon is making it very clear that they plan to keep OpenSearch licensed under the Apache license.
Amazon isn't doing this out of the goodness of its heart, it doesn't have any. It's a cold heartless greedy for-profit corporation. They are going to use it to provide "services" to their customers and they will probably charge their customers a small fee each time a customers customer does a simple search that is handled by OpenSearch. That being said: it is great that Amazon has made a ElasticSearch fork that is more freely available and likely to be maintained in the foreseeable future. The search functionality on this website is handled by ElasticSearch version 6.8.15. We would much rather upgrade to OpenSearch than deal with the Server Side Public License that's attached to newer ElasticSearch versions.