# Need Support to use open search in windows

**URL:** <https://forum.opensearch.org/t/need-support-to-use-open-search-in-windows/16062>\
**Category:** OpenSearch\
**Tags:** troubleshoot, install\
**Created:** [September 26, 2023, 5:07pm UTC](https://forum.opensearch.org/t/need-support-to-use-open-search-in-windows/16062 "2023-09-26T17:07:48Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Akarshan](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@Akarshan](https://forum.opensearch.org/u/Akarshan)\
**Post date:** [September 26, 2023, 5:07pm UTC](https://forum.opensearch.org/t/need-support-to-use-open-search-in-windows/16062/1 "2023-09-26T17:07:49Z")

</div>

Hi Everyone  
I am trying to use open search in windows for my python project i have did all the steps which mention in Documents but i am getting below error when i am trying to run—\>“/bin/opesearch.bat”

Error–java.lang.IllegalStateException: failed to load plugin class [org.opensearch.security.OpenSearchSecurityPlugin]  
Likely root cause: OpenSearchException[plugins.security.ssl.transport.keystore\_filepath or plugins.security.ssl.transport.server.pemcert\_filepath and plugins.security.ssl.transport.client.pemcert\_filepath must be set if transport ssl is requested.]

I have install java open ssl as well

My open search directory ss-

 ![image](https://us1.discourse-cdn.com/flex019/uploads/mauve_hedgehog/original/2X/4/4b7779c5b5c25c3badb7ffa56a0a354ddb7a478e.png)

opensearch.yml contain—\>\>

# Cluster Settings

cluster.name: my-opensearch-cluster

# Node Settings

node.name: my-node

# Paths

path.data: C:/Users/mi/Documents/open\_searh/opensearch-2.9.0-windows-x64/opensearch-2.9.0/data  
path.logs: C:/Users/mi/Documents/open\_searh/opensearch-2.9.0-windows-x64/opensearch-2.9.0/logs

# Memory Settings (if needed)

#bootstrap.memory\_lock: false

# -Xms1g

# -Xmx1g

# Network Settings

network.host: 127.0.0.1  
http.port: 9200

# Discovery Settings

discovery.seed\_hosts: [“127.0.0.1”]  
cluster.initial\_master\_nodes: [“my-node”]

# Gateway Settings

gateway.recover\_after\_nodes: 1

# Additional SSL/TLS settings

plugins.security.ssl:  
allow\_unsafe\_democertificates: true  
action.destructive\_requires\_name: true

# SSL/TLS settings for REST API (HTTP)

opensearch.ssl:  
verification\_mode: full  
keystore.type: JKS  
keystore.path: C:/Users/mi/Documents/open\_searh/keystore.jks  
keystore.password: akarshan  
truststore.type: JKS  
truststore.path: C:/Users/mi/Documents/open\_searh/truststore.jks  
truststore.password: akarshan  
opensearch.ssl.key: C:/Users/mi/Documents/open\_searh/node-key.pem  
opensearch.ssl.certificate: C:/Users/mi/Documents/open\_searh/node.pem

# SSL/TLS settings for Transport Layer (between nodes)

opensearch.security.ssl.transport.enabled: true

opensearch.security.ssl.transport.keystore\_filepath: C:/Users/mi/Documents/open\_searh/transport-keystore.jks  
opensearch.security.ssl.transport.truststore\_filepath: C:/Users/mi/Documents/open\_searh/transport-truststore.jks  
opensearch.security.ssl.transport.keystore\_password: akarshan  
opensearch.security.ssl.transport.truststore\_password: akarshan  
opensearch.security.ssl.transport.keystore\_type: JKS  
opensearch.security.ssl.transport.truststore\_type: JKS  
opensearch.security.ssl.transport.enforce\_hostname\_verification: false

# Remote Store Settings (if needed)

cluster.remote\_store.enabled: false  
cluster.remote\_store.repository: my-repo-1  
cluster.remote\_store.translog.enabled: false  
cluster.remote\_store.translog.repository: my-repo-1

# Experimental Features (if needed)

opensearch.experimental.feature.segment\_replication\_experimental.enabled: false  
opensearch.experimental.feature.remote\_store.enabled: false  
opensearch.experimental.feature.searchable\_snapshot.enabled: false  
opensearch.experimental.feature.extensions.enabled: false  
opensearch.experimental.feature.concurrent\_segment\_search.enabled: false

Could anyone help me to resolve it

---

<div class="post-metadata">

**Author:** ![radu.gheorghe](https://sea1.discourse-cdn.com/flex019/user_avatar/forum.opensearch.org/radu.gheorghe/32/3516_2.png) [@radu.gheorghe](https://forum.opensearch.org/u/radu.gheorghe)\
**Post date:** [October 5, 2023, 3:14pm UTC](https://forum.opensearch.org/t/need-support-to-use-open-search-in-windows/16062/2 "2023-10-05T15:14:06Z")

</div>

> [@Akarshan](#):
>
> C:/Users/mi/Documents/open\_searh/

Wild shot: do you have a typo here in the path name?

If not, are you sure this is how paths should be written? You can double-check by disabling security and setting data paths. You may need to say something like `c:\\Users\\mi\\Documents...` can you try that?

---

<div class="post-metadata">

**Author:** ![pablo](https://sea1.discourse-cdn.com/flex019/user_avatar/forum.opensearch.org/pablo/32/10363_2.png) [@pablo](https://forum.opensearch.org/u/pablo)\
**Post date:** [October 5, 2023, 5:54pm UTC](https://forum.opensearch.org/t/need-support-to-use-open-search-in-windows/16062/4 "2023-10-05T17:54:03Z")

</div>

@Akarshan All the certificate/keystore files should be placed in the config folder of the unzipped OpenSearch folder or its subfolder.

The default path points to the config folder so you don’t have to use the absolute path.  
Try copying the files into the config folder and use only file names in the opensearch.yml.

i.e.

```auto
opensearch.security.ssl.transport.enabled: true

opensearch.security.ssl.transport.keystore_filepath: transport-keystore.jks
opensearch.security.ssl.transport.truststore_filepath: transport-truststore.jks
opensearch.security.ssl.transport.keystore_password: akarshan
opensearch.security.ssl.transport.truststore_password: akarshan
opensearch.security.ssl.transport.keystore_type: JKS
opensearch.security.ssl.transport.truststore_type: JKS
opensearch.security.ssl.transport.enforce_hostname_verification: false

```

Also, the format `C:/path/to/config/folder` is correct.

---

<div class="post-metadata">

**Author:** ![Akarshan](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@Akarshan](https://forum.opensearch.org/u/Akarshan)\
**Post date:** [October 7, 2023, 5:39am UTC](https://forum.opensearch.org/t/need-support-to-use-open-search-in-windows/16062/5 "2023-10-07T05:39:45Z")

</div>

I have changed it but still issue is same

---

<div class="post-metadata">

**Author:** ![Akarshan](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@Akarshan](https://forum.opensearch.org/u/Akarshan)\
**Post date:** [October 7, 2023, 5:43am UTC](https://forum.opensearch.org/t/need-support-to-use-open-search-in-windows/16062/6 "2023-10-07T05:43:01Z")

</div>

I have changes but getting same error

YML file is below

# Cluster Settings

cluster.name: my-opensearch-cluster

# Node Settings

node.name: my-node

# Paths

path.data: C:/Users/mi/Documents/open\_searh/opensearch-2.9.0-windows-x64/opensearch-2.9.0/data  
path.logs: C:/Users/mi/Documents/open\_searh/opensearch-2.9.0-windows-x64/opensearch-2.9.0/logs

# Memory Settings (if needed)

#bootstrap.memory\_lock: false

# -Xms1g

# -Xmx1g

# Network Settings

network.host: 127.0.0.1  
http.port: 9200

# Discovery Settings

discovery.seed\_hosts: [“127.0.0.1”]  
cluster.initial\_master\_nodes: [“my-node”]

# Gateway Settings

gateway.recover\_after\_nodes: 1

# Additional SSL/TLS settings

plugins.security.ssl:  
allow\_unsafe\_democertificates: true  
action.destructive\_requires\_name: true

# SSL/TLS settings for REST API (HTTP)

opensearch.ssl:  
verification\_mode: full  
keystore.type: JKS  
keystore.path: keystore.jks  
keystore.password: akarshan  
truststore.type: JKS  
truststore.path: truststore.jks  
truststore.password: akarshan  
opensearch.ssl.key: node-key.pem  
opensearch.ssl.certificate: node.pem

# SSL/TLS settings for Transport Layer (between nodes)

opensearch.security.ssl.transport.enabled: true

opensearch.security.ssl.transport.keystore\_filepath: transport-keystore.jks  
opensearch.security.ssl.transport.truststore\_filepath: transport-truststore.jks  
opensearch.security.ssl.transport.keystore\_password: akarshan  
opensearch.security.ssl.transport.truststore\_password: akarshan  
opensearch.security.ssl.transport.keystore\_type: JKS  
opensearch.security.ssl.transport.truststore\_type: JKS  
opensearch.security.ssl.transport.enforce\_hostname\_verification: false

# Remote Store Settings (if needed)

cluster.remote\_store.enabled: false  
cluster.remote\_store.repository: my-repo-1  
cluster.remote\_store.translog.enabled: false  
cluster.remote\_store.translog.repository: my-repo-1

# Experimental Features (if needed)

opensearch.experimental.feature.segment\_replication\_experimental.enabled: false  
opensearch.experimental.feature.remote\_store.enabled: false  
opensearch.experimental.feature.searchable\_snapshot.enabled: false  
opensearch.experimental.feature.extensions.enabled: false  
opensearch.experimental.feature.concurrent\_segment\_search.enabled: false
