How to make ReadonlyREST compatible with x-pack plugin?


(Andraz) #1

I am trying to upgrade ES cluster from 2.4 to 5.2. It seems that x-pack (security) plugin and ReadonlyREST are conflicting each other. We are not using security plugin with our licence. I get the following exceptions on node startup:

org.elasticsearch.bootstrap.StartupException: java.lang.IllegalArgumentException: Cannot have more than one plugin implementing a REST wrapper
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.cli.SettingCommand.execute(SettingCommand.java:54) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:122) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.cli.Command.main(Command.java:88) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:89) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:82) ~[elasticsearch-5.2.0.jar:5.2.0]
Caused by: java.lang.IllegalArgumentException: Cannot have more than one plugin implementing a REST wrapper
	at org.elasticsearch.action.ActionModule.<init>(ActionModule.java:351) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.node.Node.<init>(Node.java:354) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.node.Node.<init>(Node.java:232) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.bootstrap.Bootstrap$6.<init>(Bootstrap.java:241) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:241) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:333) ~[elasticsearch-5.2.0.jar:5.2.0]
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-5.2.0.jar:5.2.0]
	... 6 more

Is there a way to use ReadonlyREST and disable x-pack security or the only possible solution is to use either x-pack, either ReadonlyREST plugin?

Thanks for you help.


(Simone Scarduzio) #2

This incompatibility affects only Elasticsearch 5.2 (and later), it’s due to a recent major API change they delivered in this version.

Try disabling xpack security features (it’s stuff that readonlyrest offers anyway) from elasticsearch.yml

xpack.security.enabled = false

(Andraz) #3

I think that solves my problem and it works with version 5.2.0 as well.

Thank you very much.


(Simone Scarduzio) #4

Glad it works! Thanks for testing this @andraz :+1:

Hey BTW, can you share what’s your use case with ReadonlyREST? Really curious what kind of problems you guys are solving…