Upgrade of Kibana,ElasticSearch and Logstash 57/6557/4
authorSumit Kaushik <sk00613223@TechMahindra.com>
Wed, 4 Mar 2020 11:01:44 +0000 (16:31 +0530)
committerVineet Tripathi <vt00325492@techmahindra.com>
Wed, 4 Mar 2020 23:17:32 +0000 (23:17 +0000)
ISSUE-ID : ACUMOS-3983,AUMOS-3984,ACUMOS-3989

Upgradation of Kibana,ElasticSearch and Logstash to V6.8.6

Change-Id: I498f3bc368ce49940ea7d096448490e50628f56f
Signed-off-by: Sumit Kaushik <sk00613223@TechMahindra.com>
elk-stack/elasticsearch/Dockerfile
elk-stack/kibana/Dockerfile
elk-stack/logstash/Dockerfile
filebeat/config/filebeat.yml

index 0125386..7389f8f 100644 (file)
@@ -16,7 +16,7 @@
 # limitations under the License.
 # ===============LICENSE_END=========================================================
 # https://github.com/elastic/elasticsearch-docker
 # limitations under the License.
 # ===============LICENSE_END=========================================================
 # https://github.com/elastic/elasticsearch-docker
-FROM docker.elastic.co/elasticsearch/elasticsearch-oss:7.6.0
+FROM docker.elastic.co/elasticsearch/elasticsearch-oss:6.8.6
 COPY /config/elasticsearch.yml /usr/share/elasticsearch/config/elasticsearch.yml
 # Add your elasticsearch plugins setup here
 # Example: RUN elasticsearch-plugin install analysis-icu
 COPY /config/elasticsearch.yml /usr/share/elasticsearch/config/elasticsearch.yml
 # Add your elasticsearch plugins setup here
 # Example: RUN elasticsearch-plugin install analysis-icu
index bfc5633..e44302c 100644 (file)
@@ -16,7 +16,7 @@
 # limitations under the License.
 # ===============LICENSE_END=========================================================
 # https://github.com/elastic/kibana-docker
 # limitations under the License.
 # ===============LICENSE_END=========================================================
 # https://github.com/elastic/kibana-docker
-FROM docker.elastic.co/kibana/kibana-oss:7.6.0
+FROM docker.elastic.co/kibana/kibana-oss:6.8.6
 COPY /config/kibana.yml /usr/share/logstash/config/kibana.yml
 # Add your kibana plugins setup here
 # Example: RUN kibana-plugin install <name|url>
 COPY /config/kibana.yml /usr/share/logstash/config/kibana.yml
 # Add your kibana plugins setup here
 # Example: RUN kibana-plugin install <name|url>
index 626909f..efec795 100644 (file)
@@ -16,7 +16,7 @@
 # limitations under the License.
 # ===============LICENSE_END=========================================================
 # https://github.com/elastic/logstash-docker
 # limitations under the License.
 # ===============LICENSE_END=========================================================
 # https://github.com/elastic/logstash-docker
-FROM docker.elastic.co/logstash/logstash-oss:7.6.0
+FROM docker.elastic.co/logstash/logstash-oss:6.8.6
 COPY /config/logstash.yml /usr/share/logstash/config/logstash.yml
 RUN /usr/share/logstash/bin/logstash-plugin install --version "5.0.0" logstash-integration-jdbc
 #logstash-input-jdbc
 COPY /config/logstash.yml /usr/share/logstash/config/logstash.yml
 RUN /usr/share/logstash/bin/logstash-plugin install --version "5.0.0" logstash-integration-jdbc
 #logstash-input-jdbc
index d712f82..e4573c2 100644 (file)
 # You can find the full configuration reference here:
 # https://www.elastic.co/guide/en/beats/filebeat/index.html
 
 # You can find the full configuration reference here:
 # https://www.elastic.co/guide/en/beats/filebeat/index.html
 
-#=========================== Filebeat inputs =============================
+#=========================== Filebeat prospectors =============================
 
 
-# List of inputs to fetch data.
-filebeat.inputs:
-# Each - is an input. Most options can be set at the input level, so
-# you can use different inputs for various configurations.
-# Below are the input specific configurations.
+filebeat.prospectors:
 
 
-# Type of the files. Based on this the way the file is read is decided.
-# The different types cannot be mixed in one input
-#
-# Possible options are:
-# * log: Reads every line of the log file (default)
-# * stdin: Reads the standard in
-
-#------------------------------ Log input --------------------------------
-- type: log
-
-  # Change to true to enable this input configuration.
-  enabled: true
+# Each - is a prospector. Most options can be set at the prospector level, so
+# you can use different prospectors for various configurations.
+# Below are the prospector specific configurations.
 
 
+- input_type: log
+  #enabled: true
   # Paths that should be crawled and fetched. Glob based paths.
   # Paths that should be crawled and fetched. Glob based paths.
-  # To fetch all ".log" files from a specific level of subdirectories
-  # /var/log/*/*.log can be used.
-  # For each file found under this path, a harvester is started.
-  # Make sure not file is defined twice as this can lead to unexpected behaviour.
   paths:
   paths:
-    - /filebeat-logs/*/*.log 
-    #- /var/log/*.log
-    #- c:\programdata\elasticsearch\logs\*
-
-  # Configure the file encoding for reading files with international characters
-  # following the W3C recommendation for HTML5 (http://www.w3.org/TR/encoding).
-  # Some sample encodings:
-  #   plain, utf-8, utf-16be-bom, utf-16be, utf-16le, big5, gb18030, gbk,
-  #    hz-gb-2312, euc-kr, euc-jp, iso-2022-jp, shift-jis, ...
-  #encoding: plain
-
+    - /filebeat-logs/*/*.log
 
 
+  #encoding: utf-16le-bom
+  document_type: log
+  #fields_under_root: true
   # Exclude lines. A list of regular expressions to match. It drops the lines that are
   # Exclude lines. A list of regular expressions to match. It drops the lines that are
-  # matching any regular expression from the list. The include_lines is called before
-  # exclude_lines. By default, no lines are dropped.
-  #exclude_lines: ['^DBG']
+  # matching any regular expression from the list.
+  #exclude_lines: ["^DBG"]
 
   # Include lines. A list of regular expressions to match. It exports the lines that are
 
   # Include lines. A list of regular expressions to match. It exports the lines that are
-  # matching any regular expression from the list. The include_lines is called before
-  # exclude_lines. By default, all the lines are exported.
-  #include_lines: ['^ERR', '^WARN']
+  # matching any regular expression from the list.
+  #include_lines: ["^ERR", "^WARN"]
 
   # Exclude files. A list of regular expressions to match. Filebeat drops the files that
   # are matching any regular expression from the list. By default, no files are dropped.
 
   # Exclude files. A list of regular expressions to match. Filebeat drops the files that
   # are matching any regular expression from the list. By default, no files are dropped.
-  #exclude_files: ['.gz$']
+  #exclude_files: [".gz$"]
 
 
-  # Optional additional fields. These fields can be freely picked
+  # Optional additional fields. These field can be freely picked
   # to add additional information to the crawled log files for filtering
   #fields:
   #  level: debug
   #  review: 1
 
   # to add additional information to the crawled log files for filtering
   #fields:
   #  level: debug
   #  review: 1
 
-  # Set to true to store the additional fields as top level fields instead
-  # of under the "fields" sub-dictionary. In case of name conflicts with the
-  # fields added by Filebeat itself, the custom fields overwrite the default
-  # fields.
-  #fields_under_root: false
-
-  # Set to true to publish fields with null values in events.
-  #keep_null: false
-
-  # Ignore files which were modified more then the defined timespan in the past.
-  # ignore_older is disabled by default, so no files are ignored by setting it to 0.
-  # Time strings like 2h (2 hours), 5m (5 minutes) can be used.
-  #ignore_older: 0
-
-  # How often the input checks for new files in the paths that are specified
-  # for harvesting. Specify 1s to scan the directory as frequently as possible
-  # without causing Filebeat to scan too frequently. Default: 10s.
-  #scan_frequency: 10s
-
-  # Defines the buffer size every harvester uses when fetching the file
-  #harvester_buffer_size: 16384
-
-  # Maximum number of bytes a single log event can have
-  # All bytes after max_bytes are discarded and not sent. The default is 10MB.
-  # This is especially useful for multiline log messages which can get large.
-  #max_bytes: 10485760
-
-  # Characters which separate the lines. Valid values: auto, line_feed, vertical_tab, form_feed,
-  # carriage_return, carriage_return_line_feed, next_line, line_separator, paragraph_separator.
-  #line_terminator: auto
-
-  ### Recursive glob configuration
-
-  # Expand "**" patterns into regular glob patterns.
-  #recursive_glob.enabled: true
-
-  ### JSON configuration
-
-  # Decode JSON options. Enable this if your logs are structured in JSON.
-  # JSON key on which to apply the line filtering and multiline settings. This key
-  # must be top level and its value must be string, otherwise it is ignored. If
-  # no text key is defined, the line filtering and multiline features cannot be used.
-  #json.message_key:
-
-  # By default, the decoded JSON is placed under a "json" key in the output document.
-  # If you enable this setting, the keys are copied top level in the output document.
-  #json.keys_under_root: false
-
-  # If keys_under_root and this setting are enabled, then the values from the decoded
-  # JSON object overwrite the fields that Filebeat normally adds (type, source, offset, etc.)
-  # in case of conflicts.
-  #json.overwrite_keys: false
-
-  # If this setting is enabled, Filebeat adds a "error.message" and "error.key: json" key in case of JSON
-  # unmarshaling errors or when a text key is defined in the configuration but cannot
-  # be used.
-  #json.add_error_key: false
-
   ### Multiline options
 
   ### Multiline options
 
-  # Multiline can be used for log messages spanning multiple lines. This is common
+  # Mutiline can be used for log messages spanning multiple lines. This is common
   # for Java Stack Traces or C-Line Continuation
 
   # The regexp Pattern that has to be matched. The example pattern matches all lines starting with [
   # for Java Stack Traces or C-Line Continuation
 
   # The regexp Pattern that has to be matched. The example pattern matches all lines starting with [
-  #multiline.pattern: ^\[
+  #multiline.pattern: '^Caused by:'
+  #multiline.pattern: '^[[:space:]]'
+  #"^\t|^[[:space:]]+(at|...)|^Caused by:"
   multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2},[0-9]{3}'
   multiline.negate: true
   multiline.match: after
   multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2},[0-9]{3}'
   multiline.negate: true
   multiline.match: after
-
   # Defines if the pattern set under pattern should be negated or not. Default is false.
   #multiline.negate: false
 
   # Defines if the pattern set under pattern should be negated or not. Default is false.
   #multiline.negate: false
 
@@ -161,261 +80,59 @@ filebeat.inputs:
   # Note: After is the equivalent to previous and before is the equivalent to to next in Logstash
   #multiline.match: after
 
   # Note: After is the equivalent to previous and before is the equivalent to to next in Logstash
   #multiline.match: after
 
-  # The maximum number of lines that are combined to one event.
-  # In case there are more the max_lines the additional lines are discarded.
-  # Default is 500
-  #multiline.max_lines: 500
-
-  # After the defined timeout, an multiline event is sent even if no new pattern was found to start a new event
-  # Default is 5s.
-  #multiline.timeout: 5s
-
-  # Setting tail_files to true means filebeat starts reading new files at the end
-  # instead of the beginning. If this is used in combination with log rotation
-  # this can mean that the first entries of a new file are skipped.
-  #tail_files: false
-
-  # The Ingest Node pipeline ID associated with this input. If this is set, it
-  # overwrites the pipeline option from the Elasticsearch output.
-  #pipeline:
-
-  # If symlinks is enabled, symlinks are opened and harvested. The harvester is opening the
-  # original for harvesting but will report the symlink name as source.
-  #symlinks: false
-
-  # Backoff values define how aggressively filebeat crawls new files for updates
-  # The default values can be used in most cases. Backoff defines how long it is waited
-  # to check a file again after EOF is reached. Default is 1s which means the file
-  # is checked every second if new lines were added. This leads to a near real time crawling.
-  # Every time a new line appears, backoff is reset to the initial value.
-  #backoff: 1s
 
 
-  # Max backoff defines what the maximum backoff time is. After having backed off multiple times
-  # from checking the files, the waiting time will never exceed max_backoff independent of the
-  # backoff factor. Having it set to 10s means in the worst case a new line can be added to a log
-  # file after having backed off multiple times, it takes a maximum of 10s to read the new line
-  #max_backoff: 10s
+#================================ General =====================================
 
 
-  # The backoff factor defines how fast the algorithm backs off. The bigger the backoff factor,
-  # the faster the max_backoff value is reached. If this value is set to 1, no backoff will happen.
-  # The backoff value will be multiplied each time with the backoff_factor until max_backoff is reached
-  #backoff_factor: 2
+# The name of the shipper that publishes the network data. It can be used to group
+# all the transactions sent by a single shipper in the web interface.
+#name:
 
 
-  # Max number of harvesters that are started in parallel.
-  # Default is 0 which means unlimited
-  #harvester_limit: 0
+# The tags of the shipper are included in their own field with each
+# transaction published.
+#tags: ["service-X", "web-tier"]
 
 
-  ### Harvester closing options
+# Optional fields that you can specify to add additional information to the
+# output.
+#fields:
+#  env: staging
 
 
-  # Close inactive closes the file handler after the predefined period.
-  # The period starts when the last line of the file was, not the file ModTime.
-  # Time strings like 2h (2 hours), 5m (5 minutes) can be used.
-  #close_inactive: 5m
+#================================ Outputs =====================================
 
 
-  # Close renamed closes a file handler when the file is renamed or rotated.
-  # Note: Potential data loss. Make sure to read and understand the docs for this option.
-  #close_renamed: false
+# Configure what outputs to use when sending the data collected by the beat.
+# Multiple outputs may be used.
 
 
-  # When enabling this option, a file handler is closed immediately in case a file can't be found
-  # any more. In case the file shows up again later, harvesting will continue at the last known position
-  # after scan_frequency.
-  #close_removed: true
+#-------------------------- Elasticsearch output ------------------------------
+#output.elasticsearch:
+  # Array of hosts to connect to.
+  #hosts: ["localhost:9200"]
 
 
-  # Closes the file handler as soon as the harvesters reaches the end of the file.
-  # By default this option is disabled.
-  # Note: Potential data loss. Make sure to read and understand the docs for this option.
-  #close_eof: false
+  # Optional protocol and basic auth credentials.
+  #protocol: "https"
+  #username: "elastic"
+  #password: "changeme"
 
 
-  ### State options
-
-  # Files for the modification data is older then clean_inactive the state from the registry is removed
-  # By default this is disabled.
-  #clean_inactive: 0
-
-  # Removes the state for file which cannot be found on disk anymore immediately
-  #clean_removed: true
-
-  # Close timeout closes the harvester after the predefined time.
-  # This is independent if the harvester did finish reading the file or not.
-  # By default this option is disabled.
-  # Note: Potential data loss. Make sure to read and understand the docs for this option.
-  #close_timeout: 0
-
-  # Defines if inputs is enabled
-  #enabled: true
-  
- #----------------------------- Logstash output ---------------------------------
+#----------------------------- Logstash output --------------------------------
 output.logstash:
 output.logstash:
-  # Boolean flag to enable or disable the output module.
-  #enabled: true
-
   # The Logstash hosts
   # The Logstash hosts
-  #hosts: ["localhost:5044"]
   hosts: ["${LOGSTASH_HOST}:${LOGSTASH_PORT}"]
   hosts: ["${LOGSTASH_HOST}:${LOGSTASH_PORT}"]
-  bulk_max_size: 1024 
-  # Number of workers per Logstash host.
-  #worker: 1
-
-  # Set gzip compression level.
-  #compression_level: 3
-
-  # Configure escaping HTML symbols in strings.
-  #escape_html: false
-
-  # Optional maximum time to live for a connection to Logstash, after which the
-  # connection will be re-established.  A value of `0s` (the default) will
-  # disable this feature.
-  #
-  # Not yet supported for async connections (i.e. with the "pipelining" option set)
-  #ttl: 30s
-
-  # Optionally load-balance events between Logstash hosts. Default is false.
-  #loadbalance: false
-
-  # Number of batches to be sent asynchronously to Logstash while processing
-  # new batches.
-  #pipelining: 2
-
-  # If enabled only a subset of events in a batch of events is transferred per
-  # transaction.  The number of events to be sent increases up to `bulk_max_size`
-  # if no error is encountered.
-  #slow_start: false
-
-  # The number of seconds to wait before trying to reconnect to Logstash
-  # after a network error. After waiting backoff.init seconds, the Beat
-  # tries to reconnect. If the attempt fails, the backoff timer is increased
-  # exponentially up to backoff.max. After a successful connection, the backoff
-  # timer is reset. The default is 1s.
-  #backoff.init: 1s
-
-  # The maximum number of seconds to wait before attempting to connect to
-  # Logstash after a network error. The default is 60s.
-  #backoff.max: 60s
-
-  # Optional index name. The default index name is set to filebeat
-  # in all lowercase.
-  #index: 'filebeat'
-
-  # SOCKS5 proxy server URL
-  #proxy_url: socks5://user:password@socks5-server:2233
-
-  # Resolve names locally when using a proxy server. Defaults to false.
-  #proxy_use_local_resolver: false
-
-  # Enable SSL support. SSL is automatically enabled if any SSL setting is set.
-  #ssl.enabled: true
-
-  # Configure SSL verification mode. If `none` is configured, all server hosts
-  # and certificates will be accepted. In this mode, SSL based connections are
-  # susceptible to man-in-the-middle attacks. Use only for testing. Default is
-  # `full`.
-  #ssl.verification_mode: full
-
-  # List of supported/valid TLS versions. By default all TLS versions from 1.1
-  # up to 1.3 are enabled.
-  #ssl.supported_protocols: [TLSv1.1, TLSv1.2, TLSv1.3]
-
-  # Optional SSL configuration options. SSL is off by default.
+  bulk_max_size: 1024
+  # Optional SSL. By default is off.
   # List of root certificates for HTTPS server verifications
   #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
 
   # Certificate for SSL client authentication
   #ssl.certificate: "/etc/pki/client/cert.pem"
 
   # List of root certificates for HTTPS server verifications
   #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
 
   # Certificate for SSL client authentication
   #ssl.certificate: "/etc/pki/client/cert.pem"
 
-  # Client certificate key
+  # Client Certificate Key
   #ssl.key: "/etc/pki/client/cert.key"
 
   #ssl.key: "/etc/pki/client/cert.key"
 
-  # Optional passphrase for decrypting the Certificate Key.
-  #ssl.key_passphrase: ''
-
-  # Configure cipher suites to be used for SSL connections
-  #ssl.cipher_suites: []
-
-  # Configure curve types for ECDHE-based cipher suites
-  #ssl.curve_types: []
-
-  # Configure what types of renegotiation are supported. Valid options are
-  # never, once, and freely. Default is never.
-  #ssl.renegotiation: never
-
-  # The number of times to retry publishing an event after a publishing failure.
-  # After the specified number of retries, the events are typically dropped.
-  # Some Beats, such as Filebeat and Winlogbeat, ignore the max_retries setting
-  # and retry until all events are published.  Set max_retries to a value less
-  # than 0 to retry until all events are published. The default is 3.
-  #max_retries: 3
-
-  # The maximum number of events to bulk in a single Logstash request. The
-  # default is 2048.
-  #bulk_max_size: 2048
-
-  # The number of seconds to wait for responses from the Logstash server before
-  # timing out. The default is 30s.
-  #timeout: 30s 
-  
- #================================ Logging ======================================
-# There are four options for the log output: file, stderr, syslog, eventlog
-# The file output is the default.
+#================================ Logging =====================================
 
 # Sets log level. The default log level is info.
 
 # Sets log level. The default log level is info.
-# Available log levels are: error, warning, info, debug
-#logging.level: info
-
-# Enable debug output for selected components. To enable all selectors use ["*"]
-# Other available selectors are "beat", "publish", "service"
-# Multiple selectors can be chained.
-#logging.selectors: [ ]
-
-# Send all logging output to stderr. The default is false.
-#logging.to_stderr: false
-
-# Send all logging output to syslog. The default is false.
-#logging.to_syslog: false
-
-# Send all logging output to Windows Event Logs. The default is false.
-#logging.to_eventlog: false
-
-# If enabled, Filebeat periodically logs its internal metrics that have changed
-# in the last period. For each metric that changed, the delta from the value at
-# the beginning of the period is logged. Also, the total values for
-# all non-zero internal metrics are logged on shutdown. The default is true.
-#logging.metrics.enabled: true
-
-# The period after which to log the internal metrics. The default is 30s.
-#logging.metrics.period: 30s
-
-# Logging to rotating files. Set logging.to_files to false to disable logging to
-# files.
-logging.to_files: true
-logging.files:
-  # Configure the path where the logs are written. The default is the logs directory
-  # under the home path (the binary location).
-  #path: /var/log/filebeat
-
-  # The name of the files where the logs are written to.
-  #name: filebeat
-
-  # Configure log file size limit. If limit is reached, log file will be
-  # automatically rotated
-  #rotateeverybytes: 10485760 # = 10MB
-
-  # Number of rotated log files to keep. Oldest files will be deleted first.
-  #keepfiles: 7
-
-  # The permissions mask to apply when rotating log files. The default value is 0600.
-  # Must be a valid Unix-style file permissions mask expressed in octal notation.
-  #permissions: 0600
-
-  # Enable log file rotation on time intervals in addition to size-based rotation.
-  # Intervals must be at least 1s. Values of 1m, 1h, 24h, 7*24h, 30*24h, and 365*24h
-  # are boundary-aligned with minutes, hours, days, weeks, months, and years as
-  # reported by the local system clock. All other intervals are calculated from the
-  # Unix epoch. Defaults to disabled.
-  #interval: 0
-
-  # Rotate existing logs on startup rather than appending to the existing
-  # file. Defaults to true.
-  # rotateonstartup: true
+# Available log levels are: critical, error, warning, info, debug
+#logging.level: debug
 
 
-# Set to true to log messages in JSON format.
-#logging.json: false
\ No newline at end of file
+# At debug level, you can selectively enable logging only for some components.
+# To enable all selectors use ["*"]. Examples of other selectors are "beat",
+# "publish", "service".
+#logging.selectors: ["*"]