How would you try to resolve that, if you were them?
* Since their license is Apache (most likely because they have an Open Core business model) instead of AGPL, they could offer extra services on Elastic's managed service. Amazon wouldn't able to offer since these parts are proprietary.
* They could partner up with other Cloud Providers (Microsoft, Google, ...) to offer a managed Elastic on these clouds, before these cloud providers do it themselves.
* They could offer other proprietary products that run on top of elastic (managed by them), that would force customers to use their managed service.
Cloud partnerships: https://www.elastic.co/partners/microsoft-azure https://www.elastic.co/partners/google-cloud
So that's what's really puzzling to me, what's really driving this change? Is their considerable revenue from all of that still not enough to justify their valuation and growth? Or is it really just a personal vendetta against AWS?
AWS has a lot of closed source components behind the scene that makes Elasticsearch scale and run reliably in their cloud environment.
Elastic can develop similar closed source components to make things scale – in non-aws environments – in private clouds – in on-prem deployments.
Why does this matter?
There are a lot of those customers – banks etc – who will stay on-prem and medium size cloud customer for whom public cloud is more expensive than private cloud. These are the ideal customers for Elastic.
Among them, there will also be some who will do hybrid – onprem + AWS. Elastic can price their product to compete with AWS's and use their service in both on-prem and in aws seamlessly.
I realize that the cloud took off after Elasticsearch existed, so it is hard to fault Elastic for not having a crystal ball, but the time to get the business model right was at the beginning.
When my company chose an Apache License for the product we sponsored it was because we knew we could not do it all ourselves and so we wanted to build and foster a community. So while that means competitors could and did emerge that could take the product and do a better job monetizing, that was the only way for us to get the product we needed. The community was important.
Elasticsearch would be an also-ran without the Apache License and the community around it. Changing the license now because AWS is able to monetize just stinks, IMO.
Perhaps the issue is that Elastic is getting so little from the Amazon product that they resent, essentially, adding features to the Amazon product for little or no return. Elastic noted that, in their experience, some unspecified number of Amazon customers believed the Amazon product was somehow associated with Elastic. Elastic implied this was a result of Amazon's use of their trademark but all of this is hard to verify or quantify.
RedisLabs fought a similar battle with Amazon, they also ended up making changes to their license. I really do think the issue here is the scale of AWS and the very large pool of customers tied to Amazon's offering: there are so many existing and potential customer using AWS that companies like Elastic or RedisLabs feel they can't write those potential customers off. It seems to me that if Amazon was interested in the well being of those customers, they would figure out a way to continue to receive improvements from these projects instead of forking their own versions.
I have some sympathy for Elastic, but I just do not agree that AWS is doing anything wrong or against the spirit of open source. When they run into things that need to be fixed or improved in the projects they upstream them. The majority of work AWS does is in "operationalizing" the project for their cloud. It might be cool and interesting if they let us see how they do this but it is not like that work directly translates back to the open source project. Anyone that has worked with Google open-source stuff has run into the same issues where there is some behind the scenes magic that Google has internally that the projects can leverage to make them scale better etc.
It is Elastic's right to change the license if they so choose. If they own trademarks that they believe are violated it is up to them to take those challenges to a court and seek damages. Elastic is trying to have it all ways though. They want you to believe the new license is open source .. sort of true but not really. They want you to believe AWS has done something wrong. This I do not buy at all. What is special about Elasticsearch? The entire Internet and the Cloud is running on all kinds of open source software up and down the stack. It is in the interests of the behemoths that run these stacks to upstream fixes and improvements and generally they do. That does not mean they have to contribute the proprietary wrappers they have put in place around them as part of building their business model.
AWS needs to be focused on its customers, not companies like Elastic and Mongo. If its customers would prefer to operate an Elasticsearch service provided by AWS as opposed to Elastic, then that is a problem for Elastic to resolve.