Mark Goddard 507228a228 Support storage of introspection data in Nginx
As an operator I want to be able to persist raw and processed
introspection data so that I am able to view it at a later date.

As an operator I want to be able to persist raw and processed
introspection data so that I am able to reprocess the data after the
initial inspection process has completed.

In the absence of swift, we can use the bifrost nginx web server -
masquerading as an object store - to store raw and processed
introspection data for nodes.

This allows introspection data to be retrieved and reprocessed after the
initial inspection has completed. This can be useful when the processing
pipeline or introspection rules are changed.

Change-Id: Ia2bd16080594e854054f380d4f7670eaea98e82b
Closes-Bug: #1685879
2018-02-27 14:56:43 +00:00

60 lines
1.1 KiB
Django/Jinja

user {{ nginx_user }};
worker_processes 2;
pid /run/nginx.pid;
events {
worker_connections 768;
# multi_accept on;
}
http {
##
# Basic Settings
##
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# server_tokens off;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# Logging Settings
##
access_log {{ nginx_log_dir }}/access.log;
error_log {{ nginx_log_dir }}/error.log;
##
# Gzip Settings
##
gzip on;
server {
listen {{ file_url_port }};
server_name {{ ansible_hostname }};
root {{ http_boot_folder }};
location {{ http_boot_folder }}/ {
alias {{ http_boot_folder }}/;
}
{% if inspector_store_data_in_nginx | bool %}
location /ironic-inspector {
return 200 "";
}
location /ironic-inspector/ {
dav_methods PUT DELETE;
}
{% endif %}
}
include /etc/nginx/conf.d/bifrost*.conf;
}