Logstash の Elasticsearch 出力に HTTP プロキシを設定する
JVM 全体のネットワークプロパティに依存せず、Elasticsearch 出力プラグインのプロキシ URI を直接設定します。
output {
elasticsearch {
id => "remote_cluster"
hosts => ["https://es.example:9200"]
proxy => "${ES_PROXY:}"
}
}
これを既存のパイプラインに追加します。hosts はクラスタの HTTP エンドポイントのままで、Logstash プロセスの ES_PROXY が http://proxy.example:8080 のような承認済み URI を渡せます。
Elasticsearch 出力のリファレンスはプロキシ URI を要求し、空文字列を明示的に未設定として受け付けます。式の空のデフォルトにより、このインスタンスは不要な場所で明示的なプロキシを持たないようにできます。
クラスタの認証、インデックス、TLS の設定は保持してください。公開到達可能なクラスタが HTTP プロキシ一覧 の HTTP 候補を使えるのは、公的な仲介者を許可し、プロキシ資格情報が設定されていない経路に限られます。クラスタの実際のホストとポートへの到達を確認してください。別の出力では、JVM 内のすべての Java HTTP クライアントを変えずに別のプロキシを選べます。
環境変数の置換は Logstash がパイプラインを読み込むときに行われます。変数は実際のサービスやコンテナの起動時に設定し、後から別の無関係なターミナルで設定しないでください。