This section explains the installation and testing of Elasticsearch (ES) in Windows.
Installation with zip file
Install and configure ES on HTTPS (with authentication using username and password)
Download Elasticsearch 8.6.2
Unzip the file in the preferred location.
Open the command prompt as administrator and go to {directory}\elasticsearch-8.6.2\bin path.
Run ES with the elasticsearch.bat command.
When you run ES in a terminal for the first time, you get a password on the terminal as below. You must note down the password for future reference.Run https://localhost:9200 in browser with default user 'elastic'. Use the ES password that you get in step4.
Configure Zephyr with https://localhost:9200 ES URL.
Stop the Zephyr application and navigate to the {ZephyrDir}/tomcat/webapps/flex/WEB-INF/classes location.
Make changes as mentioned below steps, in the jdbc.properties for ES running on HTTPS.
Uncomment elastic.rest.prop.xpack.security.user and change password after colon(:) with the ES password you got after running ES the first time.
transport.nodes=https://localhost:9200 rest.nodes=https://localhost:9200 elastic.rest.prop.xpack.security.user=elastic:e16AISb=rYSvNBK36DSz
9. Start the Zephyr application after making these changes.
Install and configure Elasticsearch on HTTP(without authentication)
Download Elasticsearch 8.6.2
Unzip the file in the preferred location.
Open the command prompt as administrator and go to {directory}\elasticsearch-8.6.2\bin path.
Run ES with the elasticsearch.bat command.
Stop the Elasticsearch.
Change the SSL security to false in elasticsearch.yml file in config folder as mentioned in the following sample.
cluster.name: zephyr node.name: node-1 http.port: 9200 network.host: 192.168.0.1 xpack.security.enabled: false xpack.security.enrollment.enabled: false xpack.security.http.ssl: enabled: false xpack.security.transport.ssl: enabled: false http.host: 0.0.0.0 indices.query.bool.max_clause_count: 9024 action.auto_create_index: ".watches,.triggered_watches,.watcher-history-*,-zephyr*,+*"
7. Run Elasticsearch.
8. Now install zephyr with Elasticsearch URL http://localhost:9200
Install Elasticsearch on HTTPS (using id and secret key)
Execute the below given CURL to generate an API key:
curl --location --request POST 'https://localhost:9200/_security/api_key' \ --header 'Authorization: Basic ZWxhc3RpYzpwYXNzd29yZA==' \ --header 'Content-Type: application/json' \ --data-raw '{ "name": "my-api-key", "role_descriptors": { "role-zephyr": { "cluster": [ "all" ], "index": [ { "names": [ "zephyr-*" ], "privileges": [ "all" ] } ] } } }'
Refer to the generated API key response:
{ "id": "i_n-KIgBbJC5TV1xKsjr", "name": "my-api-key", "api_key": "oSkuars1Rh-m4diuKe18hw", "encoded": "aV9uLUtJZ0JiSkM1VFYxeEtzanI6b1NrdWFyczFSaC1tNGRpdUtlMThodw==" }
The <apiKey> would be base64 encoding of id:api_key i.e. base64 encoding of
o3PG-n0Bf9efLymhVjzN:eR9bKD5OTeywOxovC7It2Q
. We can use online utility like this(Base64 Encode and Decode - Online ) for base64 encoding.Build the Zephyr application.
Stop Zephyr. Make changes in jdbc.properties file as mentioned below.
Add following properties in jdbc.properties file:
elastic.rest.prop.api.key.id=<id> elastic.rest.prop.api.key.secret=<api_key>
Start the Zephyr service.
Install ES as a service in windows
You can also install Elasticsearch on Windows as a service. To do that:
Open the command prompt as a user or admin.
Navigate to the <Elasticsearch>/bin folder.
Run the following command:
elasticsearch-service.bat install
Now check your Windows services. You will see the running Elasticsearch service.
Connect Zephyr to Elasticsearch
Elasticsearch must be running before you install Zephyr Enterprise. You connect Zephyr to Elasticsearch during product installation. To do this, specify either the IP address of your Elasticsearch server, or its host name depending on the settings you have specified in the elasticsearch.yml
file.
Single-node installation
Specifyhttp://192.168.0.1:9200
, orhttp://localhost:9200
when prompted to configure Elasticsearch.