Summary
Error
In the Windows Event viewer logs, System, the following error will exist for the Elasticsearch service...
The Elasticsearch 7.9.1 (elasticsearch-service-x64) service terminated unexpectedly. It has done this x time(s).
Cause
This is caused by an Oracle or OpenJDK JRE/JDK defined as JAVA_HOME on the Elasticsearch host
Elasticsearch 7.9.x includes its own OpenJDK which it expects
Fix
Two approaches...
Option A
Set the JAVA_HOME environment variable on the Elasticsearch host to point to the OpenJDK within the Elasticsearch directory, for example...
D:\Elastic\elasticsearch-7.9.1\jdk
Option B
1) Open the "elasticsearch-service.bat" for editing
2) The first line in the file will be the line: @echo off
3) Directly underneath the line "@echo off", specify the path to the OpenJDK included with Elasticsearch, for example...
SET JAVA_HOME=D:\Elastic\elasticsearch-7.9.1\jdk
Note: mind the path for the "jdk" folder for the Elasticsearch instance in question as this is likely different that the example above
4) Save Changes
5) Open a cmd prompt and navigate to the "elasticsearch-service.bat" in the "bin" directory (...elasticsearch-7.9.1\bin)
6) Remove the service by typing: elasticsearch-service.bat remove
7) Re-establish the service by typing: elasticsearch-service.bat install
The Elasticsearch service should now start normally