Elasticsearch エラー「curl: (52) Empty reply from server」が発生した場合の対処法

Elasticsearch エラー「curl: (52) Empty reply from server」が発生した場合の対処法

Elasticsearchで、エラー「curl: (52) Empty reply from server」が発生した場合の対処法順を記述してます。「rpm」を使用してインストールしてます。Elasticsearch8からパスワードが必要になっています。

環境

  • OS CentOS Stream release 9
  • Elasticsearch 8.1.2

エラー全文

以下のコマンドを実行時に発生。

$ curl -X GET "localhost:9200/"
curl: (52) Empty reply from server

原因

「Elasticsearch8」は「https」が前提でパスワードを求められるようになった。

対処法

以下のように、パスワードを使用して実行します。

$ sudo curl --cacert /etc/elasticsearch/certs/http_ca.crt -u elastic https://localhost:9200

Enter host password for user 'elastic':

インストール時にパスワードは「built-in superuser is」の箇所に表示されるのでこちらを使用します。
※リセットも可能です。手順は後述。

パスワードのリセットは、以下となります。

$ sudo /usr/share/elasticsearch/bin/elasticsearch-reset-password -u elastic

This tool will reset the password of the [elastic] user to an autogenerated value.
The password will be printed in the console.
Please confirm that you would like to continue [y/N]y


Password for the [elastic] user successfully reset.
New value: IFyvsjdZzPREjq638aTm