/etc/perfsonar/psconfig/archives.d/http_logstash.json
{ "archiver": "http", "data": { "schema": 2, "_url": "https://{% scheduled_by_address %}/logstash", "op": "put", "_headers": { "x-ps-observer": "{% scheduled_by_address %}", "content-type": "application/json", "Authorization":"Basic cGVy...." } } }
/etc/httpd/conf.d/apache-logstash.conf
ProxyPass /logstash http://localhost:11283 status=+I ProxyPassReverse /logstash http://localhost:11283 status=+I ProxyPreserveHost On <Location /logstash> Authtype Basic AuthUserFile /etc/perfsonar/opensearch/logstash_login
/etc/perfsonar/opensearch/logstash_login
perfsonar:$apr1....
# curl https://localhost/logstash \ -H "Authorization: Basic cGVy...." ok
/etc/logstash/pipelines.yml
- path.config: /etc/logstash/conf.d/*.conf pipeline.id: main - path.config: /usr/lib/perfsonar/logstash/pipeline/*.conf pipeline.id: pscheduler
# ls /usr/lib/perfsonar/logstash/pipeline 01-inputs.conf 04-iso8601-duration.conf 06-result_rtt.conf 99-outputs.conf 02-pscheduler_common.conf 05-geoip.conf 06-result_throughput.conf 03-normalize_endpoints.conf 06-result_latency.conf 06-result_trace.conf
/usr/lib/perfsonar/logstash/pipeline/01-inputs.conf
input { http { host => "localhost" port => "11283" # ACII 112=p, 83=S } }
/usr/lib/perfsonar/logstash/pipeline/99-outputs.conf
output { #If has [test][type] create index using that in name. if [test][type] { opensearch { hosts => ["${opensearch_output_host}"] ssl_certificate_verification => false user => "${opensearch_output_user}" password => "${opensearch_output_password}" index => "pscheduler_%{[test][type]}-%{+YYYY.MM.dd}" } } }
/etc/perfsonar/logstash/logstash_sysconfig
## Logstash environment variables. log_level=info opensearch_output_host=https://localhost:9200 opensearch_output_user=pscheduler_logstash opensearch_output_password=pscheduler_logstash XPACK_MONITORING_ENABLED=False LOGSTASH_ELASTIC_USER=pscheduler_logstash
/etc/perfsonar/opensearch/auth_setup.out
admin mE...... anomalyadmin vv...... kibanaserver qg...... kibanaro fc...... logstash Nm...... readall E4...... snapshotrestore MK...... pscheduler_logstash Ji...... pscheduler_reader YR...... pscheduler_writer IX......
# curl -X GET -u admin:mE...... 'https://127.0.0.1:9200/_cluster/health?pretty' { "cluster_name" : "opensearch", "status" : "yellow", "timed_out" : false, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "discovered_master" : true, "discovered_cluster_manager" : true, "active_primary_shards" : 501, "active_shards" : 501, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 499, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 50.1 }
# curl -X GET -u admin:mE...... 'https://127.0.0.1:9200/_cat/indices?v' health status index uuid pri rep docs.count docs.deleted store.size pri.store.size yellow open pscheduler_latencybg-2023.05.10 LlDBhY_ES1-nuONvTHdhSg 1 1 29536 0 38.5mb 38.5mb ... yellow open pscheduler_latencybg-2023.09.04 eKlsY1_cRTqfnBxgkekChg 1 1 20246 0 24.4mb 24.4mb yellow open pscheduler_throughput-2023.05.10 pKT63gJAR2aoMDaLREm3GQ 1 1 94 0 880.3kb 880.3kb ... yellow open pscheduler_throughput-2023.09.03 vijnOOjITk67a7mAZzX2IA 1 1 42 0 391.1kb 391.1kb yellow open pscheduler_trace-2023.05.11 NwXrbs5fRBqhUbIgZsgvNw 1 1 1589 0 2.4mb 2.4mb ... yellow open pscheduler_trace-2023.09.03 VnBhB_bkTjmpL_oYuXhyBw 1 1 4171 0 6.5mb 6.5mb