diff --git a/README.md b/README.md index 5a994b2..a841c5f 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![Join the chat at https://gitter.im/deviantony/fig-elk](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/deviantony/fig-elk?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) -**WARNING: Experimental support of the X-Pack (alpha-2) version of the Elastic stack.** +**WARNING: Experimental support of the X-Pack (alpha-3) version of the Elastic stack.** It is *NOT* recommended to use this in production. diff --git a/docker-compose.yml b/docker-compose.yml index 3eea1c1..9d795c4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,7 +7,7 @@ elasticsearch: ES_JAVA_OPTS: "-Xms1g -Xmx1g" logstash: image: logstash:5 - command: logstash -f /etc/logstash/conf.d/logstash.conf + command: /usr/share/logstash/bin/logstash --path.settings /etc/logstash/ volumes: - ./logstash/config:/etc/logstash/conf.d ports: diff --git a/elasticsearch/Dockerfile b/elasticsearch/Dockerfile index a18ac90..3cc27b2 100644 --- a/elasticsearch/Dockerfile +++ b/elasticsearch/Dockerfile @@ -4,4 +4,4 @@ ENV ES_JAVA_OPTS="-Des.path.conf=/etc/elasticsearch" RUN elasticsearch-plugin install --batch x-pack -CMD ["-E", "es.network.host=0.0.0.0", "-E", "es.discovery.zen.minimum_master_nodes=1"] +CMD ["-E", "network.host=0.0.0.0", "-E", "discovery.zen.minimum_master_nodes=1"] diff --git a/kibana/config/kibana.yml b/kibana/config/kibana.yml index ec72eec..97bfeb6 100644 --- a/kibana/config/kibana.yml +++ b/kibana/config/kibana.yml @@ -1,83 +1,92 @@ -# Kibana is served by a back end server. This controls which port to use. -port: 5601 +# Kibana is served by a back end server. This setting specifies the port to use. +server.port: 5601 -# The host to bind the server to. -host: "0.0.0.0" +# This setting specifies the IP address of the back end server. +server.host: "0.0.0.0" -# The Elasticsearch instance to use for all your queries. -elasticsearch_url: "http://elasticsearch:9200" +# Enables you to specify a path to mount Kibana at if you are running behind a proxy. This setting +# cannot end in a slash. +# server.basePath: "" -# preserve_elasticsearch_host true will send the hostname specified in `elasticsearch`. If you set it to false, -# then the host you use to connect to *this* Kibana instance will be sent. -elasticsearch_preserve_host: true +# The maximum payload size in bytes for incoming server requests. +# server.maxPayloadBytes: 1048576 -# Kibana uses an index in Elasticsearch to store saved searches, visualizations -# and dashboards. It will create a new index if it doesn't already exist. -kibana_index: ".kibana" +# The Kibana server's name. This is used for display purposes. +# server.name: "your-hostname" -# If your Elasticsearch is protected with basic auth, this is the user credentials -# used by the Kibana server to perform maintence on the kibana_index at statup. Your Kibana -# users will still need to authenticate with Elasticsearch (which is proxied thorugh -# the Kibana server) -# kibana_elasticsearch_username: user -# kibana_elasticsearch_password: pass +# The URL of the Elasticsearch instance to use for all your queries. +elasticsearch.url: "http://elasticsearch:9200" -# If your Elasticsearch requires client certificate and key -# kibana_elasticsearch_client_crt: /path/to/your/client.crt -# kibana_elasticsearch_client_key: /path/to/your/client.key +# When this setting’s value is true Kibana uses the hostname specified in the server.host +# setting. When the value of this setting is false, Kibana uses the hostname of the host +# that connects to this Kibana instance. +# elasticsearch.preserveHost: true -# If you need to provide a CA certificate for your Elasticsarech instance, put -# the path of the pem file here. -# ca: /path/to/your/CA.pem +# Kibana uses an index in Elasticsearch to store saved searches, visualizations and +# dashboards. Kibana creates a new index if the index doesn’t already exist. +# kibana.index: ".kibana" # The default application to load. -default_app_id: "discover" +# kibana.defaultAppId: "discover" -# Time in milliseconds to wait for elasticsearch to respond to pings, defaults to -# request_timeout setting -# ping_timeout: 1500 +# If your Elasticsearch is protected with basic authentication, these settings provide +# the username and password that the Kibana server uses to perform maintenance on the Kibana +# index at startup. Your Kibana users still need to authenticate with Elasticsearch, which +# is proxied through the Kibana server. +# elasticsearch.username: "user" +# elasticsearch.password: "pass" -# Time in milliseconds to wait for responses from the back end or elasticsearch. -# This must be > 0 -request_timeout: 300000 +# Paths to the PEM-format SSL certificate and SSL key files, respectively. These +# files enable SSL for outgoing requests from the Kibana server to the browser. +# server.ssl.cert: /path/to/your/server.crt +# server.ssl.key: /path/to/your/server.key -# Time in milliseconds for Elasticsearch to wait for responses from shards. -# Set to 0 to disable. -shard_timeout: 0 +# Optional settings that provide the paths to the PEM-format SSL certificate and key files. +# These files validate that your Elasticsearch backend uses the same key files. +# elasticsearch.ssl.cert: /path/to/your/client.crt +# elasticsearch.ssl.key: /path/to/your/client.key -# Time in milliseconds to wait for Elasticsearch at Kibana startup before retrying -# startup_timeout: 5000 +# Optional setting that enables you to specify a path to the PEM file for the certificate +# authority for your Elasticsearch instance. +# elasticsearch.ssl.ca: /path/to/your/CA.pem -# Set to false to have a complete disregard for the validity of the SSL -# certificate. -verify_ssl: true +# To disregard the validity of SSL certificates, change this setting’s value to false. +# elasticsearch.ssl.verify: true -# SSL for outgoing requests from the Kibana Server (PEM formatted) -# ssl_key_file: /path/to/your/server.key -# ssl_cert_file: /path/to/your/server.crt +# Time in milliseconds to wait for Elasticsearch to respond to pings. Defaults to the value of +# the elasticsearch.requestTimeout setting. +# elasticsearch.pingTimeout: 1500 -# Set the path to where you would like the process id file to be created. -# pid_file: /var/run/kibana.pid +# Time in milliseconds to wait for responses from the back end or Elasticsearch. This value +# must be a positive integer. +# elasticsearch.requestTimeout: 30000 -# If you would like to send the log output to a file you can set the path below. -# This will also turn off the STDOUT log output. -# log_file: ./kibana.log -# Plugins that are included in the build, and no longer found in the plugins/ folder -bundled_plugin_ids: - - plugins/dashboard/index - - plugins/discover/index - - plugins/doc/index - - plugins/kibana/index - - plugins/markdown_vis/index - - plugins/metric_vis/index - - plugins/settings/index - - plugins/table_vis/index - - plugins/vis_types/index - - plugins/visualize/index +# List of Kibana client-side headers to send to Elasticsearch. To send *no* client-side +# headers, set this value to [] (an empty list). +# elasticsearch.requestHeadersWhitelist: [ authorization ] +# Time in milliseconds for Elasticsearch to wait for responses from shards. Set to 0 to disable. +# elasticsearch.shardTimeout: 0 -xpack.security.encryptionKey: "my-secret-key" -elasticsearch.username: "kibana" -elasticsearch.password: "changeme" -xpack.security.skipSslCheck: true -xpack.security.useUnsafeSessions: true +# Time in milliseconds to wait for Elasticsearch at Kibana startup before retrying. +# elasticsearch.startupTimeout: 5000 + +# Specifies the path where Kibana creates the process ID file. +# pid.file: /var/run/kibana.pid + +# Enables you specify a file where Kibana stores log output. +# logging.dest: stdout + +# Set the value of this setting to true to suppress all logging output. +# logging.silent: false + +# Set the value of this setting to true to suppress all logging output other than error messages. +# logging.quiet: false + +# Set the value of this setting to true to log all events, including system usage information +# and all requests. +# logging.verbose: false + +# Set the interval in milliseconds to sample system and process performance +# metrics. Minimum is 100ms. Defaults to 10000. +# ops.interval: 10000