# Installing Elasticsearch 7.4 on a Raspberry Pi 4 (Raspbian Buster)

**URL:** <https://discuss.elastic.co/t/installing-elasticsearch-7-4-on-a-raspberry-pi-4-raspbian-buster/202599>\
**Category:** Elasticsearch\
**Created:** [October 7, 2019, 10:25pm UTC](https://discuss.elastic.co/t/installing-elasticsearch-7-4-on-a-raspberry-pi-4-raspbian-buster/202599 "2019-10-07T22:25:59Z")\
**Posts on this page:** 1\
**Showing post:** 9

<div class="post-metadata">

**Author:** ![glassman](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/glassman/32/55504_2.png) [@glassman](https://discuss.elastic.co/u/glassman)\
**Post date:** [October 9, 2019, 5:03pm UTC](https://discuss.elastic.co/t/installing-elasticsearch-7-4-on-a-raspberry-pi-4-raspbian-buster/202599/9 "2019-10-09T17:03:17Z")

</div>

Thanks @finbarr996. Hopefully you can figure out what I'm currently struggling with.

Well, I can definitively say that this is a problem with 7.4.0 on the Pi and not 7.3.2. With 7.4.0, like I posted above, there seems to be some sort of Java issue. I even tried compiling and using the JDK from [here](https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-jdk-7.4.0-src.tar.gz), but the log yielded different errors that I hadn't seen:

`[2019-10-09T09:23:14,422][WARN][o.e.b.ElasticsearchUncaughtExceptionHandler] [raspberrypi] uncaught exception in thread [main]`  
`org.elasticsearch.bootstrap.StartupException: java.lang.IllegalStateException: failed to load plugin class [org.elasticsearch.xpack.core.XPackPlugin]`  
`at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:125) ~[elasticsearch-cli-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`Caused by: java.lang.IllegalStateException: failed to load plugin class [org.elasticsearch.xpack.core.XPackPlugin]`  
`at org.elasticsearch.plugins.PluginsService.loadPlugin(PluginsService.java:614) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.plugins.PluginsService.loadBundle(PluginsService.java:556) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.plugins.PluginsService.loadBundles(PluginsService.java:471) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.plugins.PluginsService.<init>(PluginsService.java:163) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.node.Node.<init>(Node.java:311) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.node.Node.<init>(Node.java:255) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.bootstrap.Bootstrap$5.<init>(Bootstrap.java:221) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:221) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:349) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.4.0.jar:7.4.0]`  
`... 6 more`

This was only a snippet of the log as most of it went on the same way.

I did not experience these errors with a clean install of 7.3.2. Here are the commands I used to install and run ES 7.3.2 in chronological order:

`sudo apt-get install default-jre apt-transport-https`

`sudo mkdir -p /usr/share/elasticsearch/jdk`

`sudo cp -rf /usr/lib/jvm/java-11-openjdk-armhf/* /usr/share/elasticsearch/jdk`

`cd ~/Downloads`

`wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.0-no-jdk-amd64.deb`

`sudo dpkg -i --force-all --ignore-depends=libc6 elasticsearch-7.4.0-no-jdk-amd64.deb`

`echo 'xpack.ml.enabled: false' | sudo tee -a /etc/elasticsearch/elasticsearch.yml`

`sudo systemctl enable elasticsearch`

`sudo systemctl start elasticsearch`

Here is the service running afterwards:

**pi@raspberrypi** : **~ $** sudo systemctl status elasticsearch.service

`● elasticsearch.service - Elasticsearch`  
`Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; disabled; vendor preset: enabled)`  
`Active: active (running) since Wed 2019-10-09 02:07:06 PDT; 4s ago`  
`Docs: http://www.elastic.co`  
`Main PID: 1544 (java)`  
`Tasks: 3 (limit: 4915)`  
`Memory: 154.5M`  
`CGroup: /system.slice/elasticsearch.service`  
`└─1544 /usr/share/elasticsearch/jdk/bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative`

As shown, it's a lot simpler to install and get 7.3.2 running, but I'm at a loss as to why 7.4.0 will not run using the same procedures. Again, I'm at the mercy of the community, and I look forward to hearing from anyone willing to help.

---

_[View the full topic](https://discuss.elastic.co/t/installing-elasticsearch-7-4-on-a-raspberry-pi-4-raspbian-buster/202599)._
