如何对安全的ElasticSearch执行curl命令ElasticSearch在Openshift名称空间openshift-logging中运行

问题描述

我已经在openshift集群的openshift-logging命名空间中安装了ElasticSearch。 我可以使用承载令牌对curl进行弹性搜索,现在我想使用TLS证书对ElasticSearch进行卷曲。

与oc exec一起使用的CURL

oc exec elasticsearch-cdm -- curl -tlsv1.2 --insecure -H "Authorization: Bearer $(token)" "https://172.30.245.25:9200/_cat/health"

CURL使用承载令牌使用Elasticsearch服务路由

curl -tlsv1.2 --cacert -H "Authorization: Bearer $(token)" https://$(esRoutes)/_cat/health

现在,我想使用TLS认证执行curl,我从运行的Elasticsearch集群中提取了秘密,并在下面包含了证书和密钥文件名,

证书和密钥:

admin-ca admin-cert admin-key elasticsearch.crt elasticsearch.key logging-es.crt logging-es.key

如何使用证书执行CURL以运行ElasticSearch(在openshift命名空间opernshift-logging中)?

解决方法

希望这是您想要的:

oc exec -n openshift-logging logging-es-data-master-xxxxx-x-xxxxx -- curl -tls1.2 -s -k --cert /etc/elasticsearch/secret/admin-cert   --key /etc/elasticsearch/secret/admin-key https://localhost:9200/_cat/health

optional
oc exec -n openshift-logging logging-es-data-master-xxxxx-x-xxxxx -- curl -tls1.2 -s -k --cert /etc/elasticsearch/secret/admin-cert   --key /etc/elasticsearch/secret/admin-key https://localhost:9200/_cat/thread_pool?v

es-util version
oc exec -n openshift-logging logging-es-data-master-xxxxx-x-xxxxx -c elasticsearch -- es_util --query=_cluster/health?pretty=true