赞
踩
存储: - es-data-pvc, RWO, 读写, /usr/share/elasticsearch/data #数据 - es-plugins-pvc, RWO, 读写, /usr/share/elasticsearch/plugins #插件 - es-logs-pvc, RWO, 读写, /usr/share/elasticsearch/logs #日志 配置: - es-es-cm, elasticsearch.yml, 只读, /usr/share/elasticsearch/config/elasticsearch.yml, 子路径方式挂载elasticsearch.yml - es-log4j2-file-cm, log4j2-file.properties, 只读, /usr/share/elasticsearch/config/log4j2-file.properties, 子路径方式挂载 log4j2-file.properties 秘钥: 服务: 有状态服务 名称: elasticsearch 镜像: elasticsearch:7.17.10 副本数量: 1 环境变量: - ES_JAVA_OPTS=-Xms128m -Xmx512m - discovery.type=single-node - cluster.name=elasticsearch 启动命令: 端口: - HTTP 9200=9200 - HTTP 9300=9300 资源: 时区: 同步主机时区
elasticsearch.yml
cluster.name: "docker-cluster"
network.host: 0.0.0.0
log4j2-file.properties
原文件
status = error appender.console.type = Console appender.console.name = console appender.console.layout.type = PatternLayout appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n ######## Server JSON ############################ appender.rolling.type = RollingFile appender.rolling.name = rolling appender.rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_server.json appender.rolling.layout.type = ESJsonLayout appender.rolling.layout.type_name = server appender.rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyyy-MM -dd}-%i.json.gz appender.rolling.policies.type = Policies appender.rolling.policies.time.type = TimeBasedTriggeringPolicy appender.rolling.policies.time.interval = 1 appender.rolling.policies.time.modulate = true appender.rolling.policies.size.type = SizeBasedTriggeringPolicy appender.rolling.policies.size.size = 128MB appender.rolling.strategy.type = DefaultRolloverStrategy appender.rolling.strategy.fileIndex = nomax appender.rolling.strategy.action.type = Delete appender.rolling.strategy.action.basepath = ${sys:es.logs.base_path} appender.rolling.strategy.action.condition.type = IfFileName appender.rolling.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-* appender.rolling.strategy.action.condition.nested_condition.type = IfAccumulatedFileSize appender.rolling.strategy.action.condition.nested_condition.exceeds = 2GB ################################################ ######## Server - old style pattern ########### appender.rolling_old.type = RollingFile appender.rolling_old.name = rolling_old appender.rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}.log appender.rolling_old.layout.type = PatternLayout appender.rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n appender.rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyy y-MM-dd}-%i.log.gz appender.rolling_old.policies.type = Policies appender.rolling_old.policies.time.type = TimeBasedTriggeringPolicy appender.rolling_old.policies.time.interval = 1 appender.rolling_old.policies.time.modulate = true appender.rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.rolling_old.policies.size.size = 128MB appender.rolling_old.strategy.type = DefaultRolloverStrategy appender.rolling_old.strategy.fileIndex = nomax appender.rolling_old.strategy.action.type = Delete appender.rolling_old.strategy.action.basepath = ${sys:es.logs.base_path} appender.rolling_old.strategy.action.condition.type = IfFileName appender.rolling_old.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-* appender.rolling_old.strategy.action.condition.nested_condition.type = IfAccumulatedFileSize appender.rolling_old.strategy.action.condition.nested_condition.exceeds = 2GB ################################################ rootLogger.level = info rootLogger.appenderRef.console.ref = console rootLogger.appenderRef.rolling.ref = rolling rootLogger.appenderRef.rolling_old.ref = rolling_old ######## Deprecation JSON ####################### appender.deprecation_rolling.type = RollingFile appender.deprecation_rolling.name = deprecation_rolling appender.deprecation_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_d eprecation.json appender.deprecation_rolling.layout.type = ESJsonLayout appender.deprecation_rolling.layout.type_name = deprecation.elasticsearch appender.deprecation_rolling.layout.esmessagefields=x-opaque-id,key,category,elasticsearch.elastic_product_origin appender.deprecation_rolling.filter.rate_limit.type = RateLimitingFilter appender.deprecation_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name }_deprecation-%i.json.gz appender.deprecation_rolling.policies.type = Policies appender.deprecation_rolling.policies.size.type = SizeBasedTriggeringPolicy appender.deprecation_rolling.policies.size.size = 1GB appender.deprecation_rolling.strategy.type = DefaultRolloverStrategy appender.deprecation_rolling.strategy.max = 4 appender.header_warning.type = HeaderWarningAppender appender.header_warning.name = header_warning ################################################# ######## Deprecation - old style pattern ####### appender.deprecation_rolling_old.type = RollingFile appender.deprecation_rolling_old.name = deprecation_rolling_old appender.deprecation_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_nam e}_deprecation.log appender.deprecation_rolling_old.layout.type = PatternLayout appender.deprecation_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name] [%product_origin]%ma rker %m%n appender.deprecation_rolling_old.filter.rate_limit.type = RateLimitingFilter appender.deprecation_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_ name}\ _deprecation-%i.log.gz appender.deprecation_rolling_old.policies.type = Policies appender.deprecation_rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.deprecation_rolling_old.policies.size.size = 1GB appender.deprecation_rolling_old.strategy.type = DefaultRolloverStrategy appender.deprecation_rolling_old.strategy.max = 4 ################################################# logger.deprecation.name = org.elasticsearch.deprecation logger.deprecation.level = WARN logger.deprecation.appenderRef.deprecation_rolling.ref = deprecation_rolling logger.deprecation.appenderRef.deprecation_rolling_old.ref = deprecation_rolling_old logger.deprecation.appenderRef.header_warning.ref = header_warning logger.deprecation.additivity = false ######## Search slowlog JSON #################### appender.index_search_slowlog_rolling.type = RollingFile appender.index_search_slowlog_rolling.name = index_search_slowlog_rolling appender.index_search_slowlog_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs\ .cluster_name}_index_search_slowlog.json appender.index_search_slowlog_rolling.layout.type = ESJsonLayout appender.index_search_slowlog_rolling.layout.type_name = index_search_slowlog appender.index_search_slowlog_rolling.layout.esmessagefields=message,took,took_millis,total_hits,types,stats,searc h_type,total_shards,source,id appender.index_search_slowlog_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs\ .cluster_name}_index_search_slowlog-%i.json.gz appender.index_search_slowlog_rolling.policies.type = Policies appender.index_search_slowlog_rolling.policies.size.type = SizeBasedTriggeringPolicy appender.index_search_slowlog_rolling.policies.size.size = 1GB appender.index_search_slowlog_rolling.strategy.type = DefaultRolloverStrategy appender.index_search_slowlog_rolling.strategy.max = 4 ################################################# ######## Search slowlog - old style pattern #### appender.index_search_slowlog_rolling_old.type = RollingFile appender.index_search_slowlog_rolling_old.name = index_search_slowlog_rolling_old appender.index_search_slowlog_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cl uster_name}\ _index_search_slowlog.log appender.index_search_slowlog_rolling_old.layout.type = PatternLayout appender.index_search_slowlog_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n appender.index_search_slowlog_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs .cluster_name}\ _index_search_slowlog-%i.log.gz appender.index_search_slowlog_rolling_old.policies.type = Policies appender.index_search_slowlog_rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.index_search_slowlog_rolling_old.policies.size.size = 1GB appender.index_search_slowlog_rolling_old.strategy.type = DefaultRolloverStrategy appender.index_search_slowlog_rolling_old.strategy.max = 4 ################################################# logger.index_search_slowlog_rolling.name = index.search.slowlog logger.index_search_slowlog_rolling.level = trace logger.index_search_slowlog_rolling.appenderRef.index_search_slowlog_rolling.ref = index_search_slowlog_rolling logger.index_search_slowlog_rolling.appenderRef.index_search_slowlog_rolling_old.ref = index_search_slowlog_rollin g_old logger.index_search_slowlog_rolling.additivity = false ######## Indexing slowlog JSON ################## appender.index_indexing_slowlog_rolling.type = RollingFile appender.index_indexing_slowlog_rolling.name = index_indexing_slowlog_rolling appender.index_indexing_slowlog_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.clus ter_name}\ _index_indexing_slowlog.json appender.index_indexing_slowlog_rolling.layout.type = ESJsonLayout appender.index_indexing_slowlog_rolling.layout.type_name = index_indexing_slowlog appender.index_indexing_slowlog_rolling.layout.esmessagefields=message,took,took_millis,doc_type,id,routing,source appender.index_indexing_slowlog_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.c luster_name}\ _index_indexing_slowlog-%i.json.gz appender.index_indexing_slowlog_rolling.policies.type = Policies appender.index_indexing_slowlog_rolling.policies.size.type = SizeBasedTriggeringPolicy appender.index_indexing_slowlog_rolling.policies.size.size = 1GB appender.index_indexing_slowlog_rolling.strategy.type = DefaultRolloverStrategy appender.index_indexing_slowlog_rolling.strategy.max = 4 ################################################# ######## Indexing slowlog - old style pattern ## appender.index_indexing_slowlog_rolling_old.type = RollingFile appender.index_indexing_slowlog_rolling_old.name = index_indexing_slowlog_rolling_old appender.index_indexing_slowlog_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs. cluster_name}\ _index_indexing_slowlog.log appender.index_indexing_slowlog_rolling_old.layout.type = PatternLayout appender.index_indexing_slowlog_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m %n appender.index_indexing_slowlog_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.lo gs.cluster_name}\ _index_indexing_slowlog-%i.log.gz appender.index_indexing_slowlog_rolling_old.policies.type = Policies appender.index_indexing_slowlog_rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.index_indexing_slowlog_rolling_old.policies.size.size = 1GB appender.index_indexing_slowlog_rolling_old.strategy.type = DefaultRolloverStrategy appender.index_indexing_slowlog_rolling_old.strategy.max = 4 ################################################# logger.index_indexing_slowlog.name = index.indexing.slowlog.index logger.index_indexing_slowlog.level = trace logger.index_indexing_slowlog.appenderRef.index_indexing_slowlog_rolling.ref = index_indexing_slowlog_rolling logger.index_indexing_slowlog.appenderRef.index_indexing_slowlog_rolling_old.ref = index_indexing_slowlog_rolling_ old logger.index_indexing_slowlog.additivity = false appender.audit_rolling.type = RollingFile appender.audit_rolling.name = audit_rolling appender.audit_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_audit.j son appender.audit_rolling.layout.type = PatternLayout appender.audit_rolling.layout.pattern = {\ "type":"audit", \ "timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss,SSSZ}"\ %varsNotEmpty{, "node.name":"%enc{%map{node.name}}{JSON}"}\ %varsNotEmpty{, "node.id":"%enc{%map{node.id}}{JSON}"}\ %varsNotEmpty{, "host.name":"%enc{%map{host.name}}{JSON}"}\ %varsNotEmpty{, "host.ip":"%enc{%map{host.ip}}{JSON}"}\ %varsNotEmpty{, "event.type":"%enc{%map{event.type}}{JSON}"}\ %varsNotEmpty{, "event.action":"%enc{%map{event.action}}{JSON}"}\ %varsNotEmpty{, "authentication.type":"%enc{%map{authentication.type}}{JSON}"}\ %varsNotEmpty{, "user.name":"%enc{%map{user.name}}{JSON}"}\ %varsNotEmpty{, "user.run_by.name":"%enc{%map{user.run_by.name}}{JSON}"}\ %varsNotEmpty{, "user.run_as.name":"%enc{%map{user.run_as.name}}{JSON}"}\ %varsNotEmpty{, "user.realm":"%enc{%map{user.realm}}{JSON}"}\ %varsNotEmpty{, "user.run_by.realm":"%enc{%map{user.run_by.realm}}{JSON}"}\ %varsNotEmpty{, "user.run_as.realm":"%enc{%map{user.run_as.realm}}{JSON}"}\ %varsNotEmpty{, "user.roles":%map{user.roles}}\ %varsNotEmpty{, "apikey.id":"%enc{%map{apikey.id}}{JSON}"}\ %varsNotEmpty{, "apikey.name":"%enc{%map{apikey.name}}{JSON}"}\ %varsNotEmpty{, "authentication.token.name":"%enc{%map{authentication.token.name}}{JSON}"}\ %varsNotEmpty{, "authentication.token.type":"%enc{%map{authentication.token.type}}{JSON}"}\ %varsNotEmpty{, "origin.type":"%enc{%map{origin.type}}{JSON}"}\ %varsNotEmpty{, "origin.address":"%enc{%map{origin.address}}{JSON}"}\ %varsNotEmpty{, "realm":"%enc{%map{realm}}{JSON}"}\ %varsNotEmpty{, "url.path":"%enc{%map{url.path}}{JSON}"}\ %varsNotEmpty{, "url.query":"%enc{%map{url.query}}{JSON}"}\ %varsNotEmpty{, "request.method":"%enc{%map{request.method}}{JSON}"}\ %varsNotEmpty{, "request.body":"%enc{%map{request.body}}{JSON}"}\ %varsNotEmpty{, "request.id":"%enc{%map{request.id}}{JSON}"}\ %varsNotEmpty{, "action":"%enc{%map{action}}{JSON}"}\ %varsNotEmpty{, "request.name":"%enc{%map{request.name}}{JSON}"}\ %varsNotEmpty{, "indices":%map{indices}}\ %varsNotEmpty{, "opaque_id":"%enc{%map{opaque_id}}{JSON}"}\ %varsNotEmpty{, "trace.id":"%enc{%map{trace.id}}{JSON}"}\ %varsNotEmpty{, "x_forwarded_for":"%enc{%map{x_forwarded_for}}{JSON}"}\ %varsNotEmpty{, "transport.profile":"%enc{%map{transport.profile}}{JSON}"}\ %varsNotEmpty{, "rule":"%enc{%map{rule}}{JSON}"}\ %varsNotEmpty{, "put":%map{put}}\ %varsNotEmpty{, "delete":%map{delete}}\ %varsNotEmpty{, "change":%map{change}}\ %varsNotEmpty{, "create":%map{create}}\ %varsNotEmpty{, "invalidate":%map{invalidate}}\ }%n # "node.name" node name from the `elasticsearch.yml` settings # "node.id" node id which should not change between cluster restarts # "host.name" unresolved hostname of the local node # "host.ip" the local bound ip (i.e. the ip listening for connections) # "origin.type" a received REST request is translated into one or more transport requests. This indicates which pr ocessing layer generated the event "rest" or "transport" (internal) # "event.action" the name of the audited event, eg. "authentication_failed", "access_granted", "run_as_granted", e tc. # "authentication.type" one of "realm", "api_key", "token", "anonymous" or "internal" # "user.name" the subject name as authenticated by a realm # "user.run_by.name" the original authenticated subject name that is impersonating another one. # "user.run_as.name" if this "event.action" is of a run_as type, this is the subject name to be impersonated as. # "user.realm" the name of the realm that authenticated "user.name" # "user.run_by.realm" the realm name of the impersonating subject ("user.run_by.name") # "user.run_as.realm" if this "event.action" is of a run_as type, this is the realm name the impersonated user is looked up from # "user.roles" the roles array of the user; these are the roles that are granting privileges # "apikey.id" this field is present if and only if the "authentication.type" is "api_key" # "apikey.name" this field is present if and only if the "authentication.type" is "api_key" # "authentication.token.name" this field is present if and only if the authenticating credential is a service acco unt token # "authentication.token.type" this field is present if and only if the authenticating credential is a service acco unt token # "event.type" informs about what internal system generated the event; possible values are "rest", "transport", "i p_filter" and "security_config_change" # "origin.address" the remote address and port of the first network hop, i.e. a REST proxy or another cluster node # "realm" name of a realm that has generated an "authentication_failed" or an "authentication_successful"; the sub ject is not yet authenticated # "url.path" the URI component between the port and the query string; it is percent (URL) encoded # "url.query" the URI component after the path and before the fragment; it is percent (URL) encoded # "request.method" the method of the HTTP request, i.e. one of GET, POST, PUT, DELETE, OPTIONS, HEAD, PATCH, TRACE , CONNECT # "request.body" the content of the request body entity, JSON escaped # "request.id" a synthetic identifier for the incoming request, this is unique per incoming request, and consisten t across all audit events generated by that request # "action" an action is the most granular operation that is authorized and this identifies it in a namespaced way (internal) # "request.name" if the event is in connection to a transport message this is the name of the request class, simil ar to how rest requests are identified by the url path (internal) # "indices" the array of indices that the "action" is acting upon # "opaque_id" opaque value conveyed by the "X-Opaque-Id" request header # "trace_id" an identifier conveyed by the part of "traceparent" request header # "x_forwarded_for" the addresses from the "X-Forwarded-For" request header, as a verbatim string value (not an ar ray) # "transport.profile" name of the transport profile in case this is a "connection_granted" or "connection_denied" event # "rule" name of the applied rule if the "origin.type" is "ip_filter" # the "put", "delete", "change", "create", "invalidate" fields are only present # when the "event.type" is "security_config_change" and contain the security config change (as an object) taking e ffect appender.audit_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_audi t-%d{yyyy-MM-dd}.json appender.audit_rolling.policies.type = Policies appender.audit_rolling.policies.time.type = TimeBasedTriggeringPolicy appender.audit_rolling.policies.time.interval = 1 appender.audit_rolling.policies.time.modulate = true logger.xpack_security_audit_logfile.name = org.elasticsearch.xpack.security.audit.logfile.LoggingAuditTrail logger.xpack_security_audit_logfile.level = info logger.xpack_security_audit_logfile.appenderRef.audit_rolling.ref = audit_rolling logger.xpack_security_audit_logfile.additivity = false logger.xmlsig.name = org.apache.xml.security.signature.XMLSignature logger.xmlsig.level = error logger.samlxml_decrypt.name = org.opensaml.xmlsec.encryption.support.Decrypter logger.samlxml_decrypt.level = fatal logger.saml2_decrypt.name = org.opensaml.saml.saml2.encryption.Decrypter logger.saml2_decrypt.level = fatal
修改文件
status = error appender.console.type = Console appender.console.name = console appender.console.layout.type = PatternLayout appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n ######## Server JSON ############################ appender.rolling.type = RollingFile appender.rolling.name = rolling appender.rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_server.json appender.rolling.layout.type = ESJsonLayout appender.rolling.layout.type_name = server appender.rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyyy-MM -dd}-%i.json.gz appender.rolling.policies.type = Policies appender.rolling.policies.time.type = TimeBasedTriggeringPolicy appender.rolling.policies.time.interval = 1 appender.rolling.policies.time.modulate = true appender.rolling.policies.size.type = SizeBasedTriggeringPolicy appender.rolling.policies.size.size = 16MB appender.rolling.strategy.type = DefaultRolloverStrategy appender.rolling.strategy.fileIndex = nomax appender.rolling.strategy.action.type = Delete appender.rolling.strategy.action.basepath = ${sys:es.logs.base_path} appender.rolling.strategy.action.condition.type = IfFileName appender.rolling.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-* appender.rolling.strategy.action.condition.nested_condition.type = IfAccumulatedFileSize appender.rolling.strategy.action.condition.nested_condition.exceeds = 128MB ################################################ ######## Server - old style pattern ########### appender.rolling_old.type = RollingFile appender.rolling_old.name = rolling_old appender.rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}.log appender.rolling_old.layout.type = PatternLayout appender.rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n appender.rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyy y-MM-dd}-%i.log.gz appender.rolling_old.policies.type = Policies appender.rolling_old.policies.time.type = TimeBasedTriggeringPolicy appender.rolling_old.policies.time.interval = 1 appender.rolling_old.policies.time.modulate = true appender.rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.rolling_old.policies.size.size = 16MB appender.rolling_old.strategy.type = DefaultRolloverStrategy appender.rolling_old.strategy.fileIndex = nomax appender.rolling_old.strategy.action.type = Delete appender.rolling_old.strategy.action.basepath = ${sys:es.logs.base_path} appender.rolling_old.strategy.action.condition.type = IfFileName appender.rolling_old.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-* appender.rolling_old.strategy.action.condition.nested_condition.type = IfAccumulatedFileSize appender.rolling_old.strategy.action.condition.nested_condition.exceeds = 128MB ################################################ rootLogger.level = info rootLogger.appenderRef.console.ref = console rootLogger.appenderRef.rolling.ref = rolling rootLogger.appenderRef.rolling_old.ref = rolling_old ######## Deprecation JSON ####################### appender.deprecation_rolling.type = RollingFile appender.deprecation_rolling.name = deprecation_rolling appender.deprecation_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_d eprecation.json appender.deprecation_rolling.layout.type = ESJsonLayout appender.deprecation_rolling.layout.type_name = deprecation.elasticsearch appender.deprecation_rolling.layout.esmessagefields=x-opaque-id,key,category,elasticsearch.elastic_product_origin appender.deprecation_rolling.filter.rate_limit.type = RateLimitingFilter appender.deprecation_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name }_deprecation-%i.json.gz appender.deprecation_rolling.policies.type = Policies appender.deprecation_rolling.policies.size.type = SizeBasedTriggeringPolicy appender.deprecation_rolling.policies.size.size = 64MB appender.deprecation_rolling.strategy.type = DefaultRolloverStrategy appender.deprecation_rolling.strategy.max = 4 appender.header_warning.type = HeaderWarningAppender appender.header_warning.name = header_warning ################################################# ######## Deprecation - old style pattern ####### appender.deprecation_rolling_old.type = RollingFile appender.deprecation_rolling_old.name = deprecation_rolling_old appender.deprecation_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_nam e}_deprecation.log appender.deprecation_rolling_old.layout.type = PatternLayout appender.deprecation_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name] [%product_origin]%ma rker %m%n appender.deprecation_rolling_old.filter.rate_limit.type = RateLimitingFilter appender.deprecation_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_ name}\ _deprecation-%i.log.gz appender.deprecation_rolling_old.policies.type = Policies appender.deprecation_rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.deprecation_rolling_old.policies.size.size = 64MB appender.deprecation_rolling_old.strategy.type = DefaultRolloverStrategy appender.deprecation_rolling_old.strategy.max = 4 ################################################# logger.deprecation.name = org.elasticsearch.deprecation logger.deprecation.level = WARN logger.deprecation.appenderRef.deprecation_rolling.ref = deprecation_rolling logger.deprecation.appenderRef.deprecation_rolling_old.ref = deprecation_rolling_old logger.deprecation.appenderRef.header_warning.ref = header_warning logger.deprecation.additivity = false ######## Search slowlog JSON #################### appender.index_search_slowlog_rolling.type = RollingFile appender.index_search_slowlog_rolling.name = index_search_slowlog_rolling appender.index_search_slowlog_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs\ .cluster_name}_index_search_slowlog.json appender.index_search_slowlog_rolling.layout.type = ESJsonLayout appender.index_search_slowlog_rolling.layout.type_name = index_search_slowlog appender.index_search_slowlog_rolling.layout.esmessagefields=message,took,took_millis,total_hits,types,stats,searc h_type,total_shards,source,id appender.index_search_slowlog_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs\ .cluster_name}_index_search_slowlog-%i.json.gz appender.index_search_slowlog_rolling.policies.type = Policies appender.index_search_slowlog_rolling.policies.size.type = SizeBasedTriggeringPolicy appender.index_search_slowlog_rolling.policies.size.size = 64MB appender.index_search_slowlog_rolling.strategy.type = DefaultRolloverStrategy appender.index_search_slowlog_rolling.strategy.max = 4 ################################################# ######## Search slowlog - old style pattern #### appender.index_search_slowlog_rolling_old.type = RollingFile appender.index_search_slowlog_rolling_old.name = index_search_slowlog_rolling_old appender.index_search_slowlog_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cl uster_name}\ _index_search_slowlog.log appender.index_search_slowlog_rolling_old.layout.type = PatternLayout appender.index_search_slowlog_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n appender.index_search_slowlog_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs .cluster_name}\ _index_search_slowlog-%i.log.gz appender.index_search_slowlog_rolling_old.policies.type = Policies appender.index_search_slowlog_rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.index_search_slowlog_rolling_old.policies.size.size = 64MB appender.index_search_slowlog_rolling_old.strategy.type = DefaultRolloverStrategy appender.index_search_slowlog_rolling_old.strategy.max = 4 ################################################# logger.index_search_slowlog_rolling.name = index.search.slowlog logger.index_search_slowlog_rolling.level = trace logger.index_search_slowlog_rolling.appenderRef.index_search_slowlog_rolling.ref = index_search_slowlog_rolling logger.index_search_slowlog_rolling.appenderRef.index_search_slowlog_rolling_old.ref = index_search_slowlog_rollin g_old logger.index_search_slowlog_rolling.additivity = false ######## Indexing slowlog JSON ################## appender.index_indexing_slowlog_rolling.type = RollingFile appender.index_indexing_slowlog_rolling.name = index_indexing_slowlog_rolling appender.index_indexing_slowlog_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.clus ter_name}\ _index_indexing_slowlog.json appender.index_indexing_slowlog_rolling.layout.type = ESJsonLayout appender.index_indexing_slowlog_rolling.layout.type_name = index_indexing_slowlog appender.index_indexing_slowlog_rolling.layout.esmessagefields=message,took,took_millis,doc_type,id,routing,source appender.index_indexing_slowlog_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.c luster_name}\ _index_indexing_slowlog-%i.json.gz appender.index_indexing_slowlog_rolling.policies.type = Policies appender.index_indexing_slowlog_rolling.policies.size.type = SizeBasedTriggeringPolicy appender.index_indexing_slowlog_rolling.policies.size.size = 64MB appender.index_indexing_slowlog_rolling.strategy.type = DefaultRolloverStrategy appender.index_indexing_slowlog_rolling.strategy.max = 4 ################################################# ######## Indexing slowlog - old style pattern ## appender.index_indexing_slowlog_rolling_old.type = RollingFile appender.index_indexing_slowlog_rolling_old.name = index_indexing_slowlog_rolling_old appender.index_indexing_slowlog_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs. cluster_name}\ _index_indexing_slowlog.log appender.index_indexing_slowlog_rolling_old.layout.type = PatternLayout appender.index_indexing_slowlog_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m %n appender.index_indexing_slowlog_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.lo gs.cluster_name}\ _index_indexing_slowlog-%i.log.gz appender.index_indexing_slowlog_rolling_old.policies.type = Policies appender.index_indexing_slowlog_rolling_old.policies.size.type = SizeBasedTriggeringPolicy appender.index_indexing_slowlog_rolling_old.policies.size.size = 64MB appender.index_indexing_slowlog_rolling_old.strategy.type = DefaultRolloverStrategy appender.index_indexing_slowlog_rolling_old.strategy.max = 4 ################################################# logger.index_indexing_slowlog.name = index.indexing.slowlog.index logger.index_indexing_slowlog.level = trace logger.index_indexing_slowlog.appenderRef.index_indexing_slowlog_rolling.ref = index_indexing_slowlog_rolling logger.index_indexing_slowlog.appenderRef.index_indexing_slowlog_rolling_old.ref = index_indexing_slowlog_rolling_ old logger.index_indexing_slowlog.additivity = false appender.audit_rolling.type = RollingFile appender.audit_rolling.name = audit_rolling appender.audit_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_audit.j son appender.audit_rolling.layout.type = PatternLayout appender.audit_rolling.layout.pattern = {\ "type":"audit", \ "timestamp":"%d{yyyy-MM-dd'T'HH:mm:ss,SSSZ}"\ %varsNotEmpty{, "node.name":"%enc{%map{node.name}}{JSON}"}\ %varsNotEmpty{, "node.id":"%enc{%map{node.id}}{JSON}"}\ %varsNotEmpty{, "host.name":"%enc{%map{host.name}}{JSON}"}\ %varsNotEmpty{, "host.ip":"%enc{%map{host.ip}}{JSON}"}\ %varsNotEmpty{, "event.type":"%enc{%map{event.type}}{JSON}"}\ %varsNotEmpty{, "event.action":"%enc{%map{event.action}}{JSON}"}\ %varsNotEmpty{, "authentication.type":"%enc{%map{authentication.type}}{JSON}"}\ %varsNotEmpty{, "user.name":"%enc{%map{user.name}}{JSON}"}\ %varsNotEmpty{, "user.run_by.name":"%enc{%map{user.run_by.name}}{JSON}"}\ %varsNotEmpty{, "user.run_as.name":"%enc{%map{user.run_as.name}}{JSON}"}\ %varsNotEmpty{, "user.realm":"%enc{%map{user.realm}}{JSON}"}\ %varsNotEmpty{, "user.run_by.realm":"%enc{%map{user.run_by.realm}}{JSON}"}\ %varsNotEmpty{, "user.run_as.realm":"%enc{%map{user.run_as.realm}}{JSON}"}\ %varsNotEmpty{, "user.roles":%map{user.roles}}\ %varsNotEmpty{, "apikey.id":"%enc{%map{apikey.id}}{JSON}"}\ %varsNotEmpty{, "apikey.name":"%enc{%map{apikey.name}}{JSON}"}\ %varsNotEmpty{, "authentication.token.name":"%enc{%map{authentication.token.name}}{JSON}"}\ %varsNotEmpty{, "authentication.token.type":"%enc{%map{authentication.token.type}}{JSON}"}\ %varsNotEmpty{, "origin.type":"%enc{%map{origin.type}}{JSON}"}\ %varsNotEmpty{, "origin.address":"%enc{%map{origin.address}}{JSON}"}\ %varsNotEmpty{, "realm":"%enc{%map{realm}}{JSON}"}\ %varsNotEmpty{, "url.path":"%enc{%map{url.path}}{JSON}"}\ %varsNotEmpty{, "url.query":"%enc{%map{url.query}}{JSON}"}\ %varsNotEmpty{, "request.method":"%enc{%map{request.method}}{JSON}"}\ %varsNotEmpty{, "request.body":"%enc{%map{request.body}}{JSON}"}\ %varsNotEmpty{, "request.id":"%enc{%map{request.id}}{JSON}"}\ %varsNotEmpty{, "action":"%enc{%map{action}}{JSON}"}\ %varsNotEmpty{, "request.name":"%enc{%map{request.name}}{JSON}"}\ %varsNotEmpty{, "indices":%map{indices}}\ %varsNotEmpty{, "opaque_id":"%enc{%map{opaque_id}}{JSON}"}\ %varsNotEmpty{, "trace.id":"%enc{%map{trace.id}}{JSON}"}\ %varsNotEmpty{, "x_forwarded_for":"%enc{%map{x_forwarded_for}}{JSON}"}\ %varsNotEmpty{, "transport.profile":"%enc{%map{transport.profile}}{JSON}"}\ %varsNotEmpty{, "rule":"%enc{%map{rule}}{JSON}"}\ %varsNotEmpty{, "put":%map{put}}\ %varsNotEmpty{, "delete":%map{delete}}\ %varsNotEmpty{, "change":%map{change}}\ %varsNotEmpty{, "create":%map{create}}\ %varsNotEmpty{, "invalidate":%map{invalidate}}\ }%n # "node.name" node name from the `elasticsearch.yml` settings # "node.id" node id which should not change between cluster restarts # "host.name" unresolved hostname of the local node # "host.ip" the local bound ip (i.e. the ip listening for connections) # "origin.type" a received REST request is translated into one or more transport requests. This indicates which pr ocessing layer generated the event "rest" or "transport" (internal) # "event.action" the name of the audited event, eg. "authentication_failed", "access_granted", "run_as_granted", e tc. # "authentication.type" one of "realm", "api_key", "token", "anonymous" or "internal" # "user.name" the subject name as authenticated by a realm # "user.run_by.name" the original authenticated subject name that is impersonating another one. # "user.run_as.name" if this "event.action" is of a run_as type, this is the subject name to be impersonated as. # "user.realm" the name of the realm that authenticated "user.name" # "user.run_by.realm" the realm name of the impersonating subject ("user.run_by.name") # "user.run_as.realm" if this "event.action" is of a run_as type, this is the realm name the impersonated user is looked up from # "user.roles" the roles array of the user; these are the roles that are granting privileges # "apikey.id" this field is present if and only if the "authentication.type" is "api_key" # "apikey.name" this field is present if and only if the "authentication.type" is "api_key" # "authentication.token.name" this field is present if and only if the authenticating credential is a service acco unt token # "authentication.token.type" this field is present if and only if the authenticating credential is a service acco unt token # "event.type" informs about what internal system generated the event; possible values are "rest", "transport", "i p_filter" and "security_config_change" # "origin.address" the remote address and port of the first network hop, i.e. a REST proxy or another cluster node # "realm" name of a realm that has generated an "authentication_failed" or an "authentication_successful"; the sub ject is not yet authenticated # "url.path" the URI component between the port and the query string; it is percent (URL) encoded # "url.query" the URI component after the path and before the fragment; it is percent (URL) encoded # "request.method" the method of the HTTP request, i.e. one of GET, POST, PUT, DELETE, OPTIONS, HEAD, PATCH, TRACE , CONNECT # "request.body" the content of the request body entity, JSON escaped # "request.id" a synthetic identifier for the incoming request, this is unique per incoming request, and consisten t across all audit events generated by that request # "action" an action is the most granular operation that is authorized and this identifies it in a namespaced way (internal) # "request.name" if the event is in connection to a transport message this is the name of the request class, simil ar to how rest requests are identified by the url path (internal) # "indices" the array of indices that the "action" is acting upon # "opaque_id" opaque value conveyed by the "X-Opaque-Id" request header # "trace_id" an identifier conveyed by the part of "traceparent" request header # "x_forwarded_for" the addresses from the "X-Forwarded-For" request header, as a verbatim string value (not an ar ray) # "transport.profile" name of the transport profile in case this is a "connection_granted" or "connection_denied" event # "rule" name of the applied rule if the "origin.type" is "ip_filter" # the "put", "delete", "change", "create", "invalidate" fields are only present # when the "event.type" is "security_config_change" and contain the security config change (as an object) taking e ffect appender.audit_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_audi t-%d{yyyy-MM-dd}.json appender.audit_rolling.policies.type = Policies appender.audit_rolling.policies.time.type = TimeBasedTriggeringPolicy appender.audit_rolling.policies.time.interval = 1 appender.audit_rolling.policies.time.modulate = true logger.xpack_security_audit_logfile.name = org.elasticsearch.xpack.security.audit.logfile.LoggingAuditTrail logger.xpack_security_audit_logfile.level = info logger.xpack_security_audit_logfile.appenderRef.audit_rolling.ref = audit_rolling logger.xpack_security_audit_logfile.additivity = false logger.xmlsig.name = org.apache.xml.security.signature.XMLSignature logger.xmlsig.level = error logger.samlxml_decrypt.name = org.opensaml.xmlsec.encryption.support.Decrypter logger.samlxml_decrypt.level = fatal logger.saml2_decrypt.name = org.opensaml.saml.saml2.encryption.Decrypter logger.saml2_decrypt.level = fatal
存储:
配置: kibana-cm, kibana.yml, 只读, /usr/share/kibana/config/kibana.yml, 子路径方式挂载kibana.yml
秘钥:
服务: 有状态服务
名称: kibana
镜像: kibana:7.17.10
端口: HTTP 5601:5601
副本数量:
环境变量:
启动命令:
资源限制:
外部访问: NodePort
时区: 同步主机时区
kibana.yml
i18n.locale: "zh-CN"
# 接受来自所有网络的请求
server.host: "0.0.0.0"
server.shutdownTimeout: "5s"
# 【修改】Elasticsearch 集群的地址
elasticsearch.hosts:
- "http://elasticsearch-v1-0.elasticsearch.test-project.svc.cluster.local:9200"
# 是否启用 Elasticsearch 存储监控数据
monitoring.ui.container.elasticsearch.enabled: false
# 【修改】访问kibana的地址
#server.publicBaseUrl: "http://192.168.1.102:5601"
存储: 配置: - logstash-cm, logstash.yml, 只读, /usr/share/logstash/config/logstash.yml, 子路径方式挂载 - logstash-cm, logstash.conf, 只读, /usr/share/logstash/pipeline/logstash.conf, 子路径方式挂载 - logstash-cm, jvm.options, jvm.options, 只读, /usr/share/logstash/config/jvm.options, 子路径方式挂载 秘钥: 服务: 有状态服务 名称: logstash 镜像: logstash:7.17.10 端口: HTTP 5044:5044 副本数量: 环境变量: 启动命令: 资源限制: 外部访问: 时区: 同步主机时区
logstash.yml
#path.config: /etc/logstash/conf.d/*.conf
#xpack.monitoring.enabled: true
# 【修改】
xpack.monitoring.elasticsearch.hosts:
- "http://elasticsearch-v1-0.elasticsearch.test-project.svc.cluster.local:9200"
logstash.conf
input {
tcp {
mode => "server"
host => "0.0.0.0"
port => 5044
codec => json_lines
}
}
output {
elasticsearch {
hosts => ["http://elasticsearch-v1-0.elasticsearch.test-project.svc.cluster.local:9200"]
index => "%{[spring.application.name]}-%{+YYYY.MM.dd}"
}
}
jvm.options
## JVM configuration # Xms represents the initial size of total heap space # Xmx represents the maximum size of total heap space -Xms128m -Xmx512m ################################################################ ## Expert settings ################################################################ ## ## All settings below this section are considered ## expert settings. Don't tamper with them unless ## you understand what you are doing ## ################################################################ ## GC configuration 8-13:-XX:+UseConcMarkSweepGC 8-13:-XX:CMSInitiatingOccupancyFraction=75 8-13:-XX:+UseCMSInitiatingOccupancyOnly ## Locale # Set the locale language #-Duser.language=en # Set the locale country #-Duser.country=US # Set the locale variant, if any #-Duser.variant= ## basic # set the I/O temp directory #-Djava.io.tmpdir=$HOME # set to headless, just in case -Djava.awt.headless=true # ensure UTF-8 encoding by default (e.g. filenames) -Dfile.encoding=UTF-8 # Set enableADS to true to enable Logstash to run on certain versions of the JDK -Djdk.io.File.enableADS=true # use our provided JNA always versus the system one #-Djna.nosys=true # Turn on JRuby invokedynamic -Djruby.compile.invokedynamic=true # Force Compilation -Djruby.jit.threshold=0 # Make sure joni regexp interruptability is enabled -Djruby.regexp.interruptible=true ## heap dumps # generate a heap dump when an allocation from the Java heap fails # heap dumps are created in the working directory of the JVM -XX:+HeapDumpOnOutOfMemoryError # specify an alternative path for heap dumps # ensure the directory exists and has sufficient space #-XX:HeapDumpPath=${LOGSTASH_HOME}/heapdump.hprof ## GC logging #-XX:+PrintGCDetails #-XX:+PrintGCTimeStamps #-XX:+PrintGCDateStamps #-XX:+PrintClassHistogram #-XX:+PrintTenuringDistribution #-XX:+PrintGCApplicationStoppedTime # log GC status to a file with time stamps # ensure the directory exists #-Xloggc:${LS_GC_LOG_FILE} # Entropy source for randomness -Djava.security.egd=file:/dev/urandom # Copy the logging context from parent threads to children -Dlog4j2.isThreadContextMapInheritable=true 17-:--add-opens java.base/sun.nio.ch=ALL-UNNAMED 17-:--add-opens java.base/java.io=ALL-UNNAMED
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。