ElasticSearch8升级变化
重大变化
Elasticsearch8.0中的以下更改可能会影响您的应用程序并阻止它们正常运行。在升级到8.0之前,请查看这些更改并采取所述步骤来减轻影响。
集群和节点设置更改
https://www.elastic.co/cloud/elasticsearch-service/signup?page=docs&placement=docs-body表示对ElasticsearchService支持的用户设置的更改。
action.destructive_requires_name现在默认为true.
详细信息
在Elasticsearch8.0.0中,该的默认值action.destructive_requires_name从更改为falsetrue
以前,默认false允许用户使用通配符模式来删除、关闭或更改索引上的索引块。为了防止意外删除恰好与通配符模式匹配的索引,我们现在默认要求破坏性操作显式命名要修改的索引。
影响
要使用通配符模式进行破坏性操作,请设置action.destructive_requires_name为false使用https://www.elastic.co/guide/en/elasticsearch/reference/8.12/cluster-update-settings.html集群设置API]。
您无法再xpack.searchable.snapshot.shared_cache.size在非冻结节点上进行设置。
详细信息
您无法再xpack.searchable.snapshot.shared_cache.size在不具有data_frozen节点角色的节点上进行设置。此设置为部分安装的索引的共享缓存保留磁盘空间。Elasticsearch仅将部分安装的索引分配给具有该data_frozen角色的节点。
影响
从不具有该角色的节点中删除。在非冻结节点上指定设置将导致启动时出错。xpack.searchable.snapshot.shared_cache.sizeelasticsearch.ymldata_frozen
indices.query.bool.max_clause_count已被弃用并且没有任何效果。
详细信息
Elasticsearch现在将根据搜索线程池的大小和分配给JVM的堆大小使用启发式动态设置查询中允许的子句的最大数量。此限制的最小值为1024,并且在大多数情况下会更大(例如,具有30GbRAM和48个CPU的节点的最大子句计数约为27,000个)。较大的堆会导致较高的值,较大的线程池会导致较低的值。
影响
应尽可能避免包含许多子句的查询。如果您之前提高了此设置以适应繁重的查询,则可能需要增加Elasticsearch可用的内存量,或者减少搜索线程池的大小,以便为每个并发搜索提供更多内存。
在Lucene的早期版本中,您可以通过在彼此之间嵌套布尔查询来绕过此限制,但现在该限制基于整个查询中叶查询的总数,并且此解决方法将不再有帮助。
指定indices.query.bool.max_clause_count不会产生任何效果,但会生成弃用警告。elasticsearch.yml要避免这些警告,请在升级或节点重新启动期间删除该设置。
indices.lifecycle.poll_interval必须大于1s.
详细信息
设置indices.lifecycle.poll_interval太低可能会导致集群负载过大。轮询间隔现在必须至少为1s(一秒)。
在集群更新设置API中或通过集群更新设置API将影响设置indices.lifecycle.poll_interval为1s或更大。elasticsearch.yml
设置indices.lifecycle.poll_interval为小于1sinelasticsearch.yml将导致启动时出错。设置为小于的集群更新设置API请求将返回错误。indices.lifecycle.poll_interval1s
除非明确禁用,否则文件和本机领域现在已启用。
详细信息除非明确禁用,否则文件和本机领域现在已启用。如果明确禁用,则文件和本机领域始终保持禁用状态。
以前,文件和本机领域具有以下隐式行为:
●如果未配置文件和本机领域,则在配置任何其他领域时它们将被隐式禁用。
●如果由于未配置领域、许可证不允许或显式禁用领域而没有其他领域可用,则即使显式禁用,也会启用文件和本机领域。
影响
要显式禁用文件或本机领域,请将相应的或file..enabled设置native..enabled设置false为.xpack.security.authc.realmselasticsearch.yml
以下配置示例禁用本机领域和文件领域。
xpack.security.authc。领域:
native.realm1。启用:假
文件.realm2。启用:假
…
order现在需要领域设置。
详细信息
现在xpack.security.authc.realms.{type}.{name}.order需要设置,并且必须为每个显式配置的领域指定。每个值必须是唯一的。
影响
如果不满足要求,集群将无法启动。
例如,以下配置无效:
xpack.security.authc.realms.kerberos。kerb1:
密钥表。路径:es.keytab
remove_realm_name:false
并且必须配置为:
xpack.security.authc.realms.kerberos。kerb1:
订单:0
密钥表。路径:es.keytab
remove_realm_name:false
cluster.routing.allocation.disk.include_relocations已被删除。
详细信息
Elasticsearch现在在根据集群中节点的磁盘使用情况做出分配决策时始终考虑重新定位分片的大小。在早期版本中,您可以通过设置cluster.routing.allocation.disk.include_relocations为来false。这可能会导致糟糕的分配决策,从而超出水位线并需要大量的额外工作来纠正。该cluster.routing.allocation.disk.include_relocations设置已被删除。
影响
删除该cluster.routing.allocation.disk.include_relocations设置。指定此设置elasticsearch.yml将导致启动时出错。
cluster.join.timeout已被删除。
详细信息
该cluster.join.timeout设置已被删除。加入尝试不再超时。
影响
从中删除。cluster.join.timeoutelasticsearch.yml
discovery.zen设置已被删除。
详细信息
不再支持命名空间下的所有设置discovery.zen它们仅出于BWC原因而存在于7.x中。这包括:
●discovery.zen.minimum_master_nodes
●discovery.zen.no_master_block
●discovery.zen.hosts_provider
●discovery.zen.publish_timeout
●discovery.zen.commit_timeout
●discovery.zen.publish_diff.enable
●discovery.zen.ping.unicast.concurrent_connects
●discovery.zen.ping.unicast.hosts.resolve_timeout
●discovery.zen.ping.unicast.hosts
●discovery.zen.ping_timeout
●discovery.zen.unsafe_rolling_upgrades_enabled
●discovery.zen.fd.connect_on_network_disconnect
●discovery.zen.fd.ping_interval
●discovery.zen.fd.ping_timeout
●discovery.zen.fd.ping_retries
●discovery.zen.fd.register_connection_listener
●discovery.zen.join_retry_attempts
●discovery.zen.join_retry_delay
●discovery.zen.join_timeout
●discovery.zen.max_pings_from_another_master
●discovery.zen.send_leave_request
●discovery.zen.master_election.wait_for_joins_timeout
●discovery.zen.master_election.ignore_non_master_pings
●discovery.zen.publish.max_pending_cluster_states
●discovery.zen.bwc_ping_timeout
影响
从中删除。指定这些设置将导致启动时出错。discovery.zenelasticsearch.yml
http.content_type.required已被删除。
详细信息
该http.content_type.required设置在Elasticsearch6.0中已弃用,并已在Elasticsearch8.0中删除。该设置是在Elasticsearch5.3中引入的,目的是让用户为Elasticsearch6.0做好准备,其中删除了HTTP请求的内容类型自动检测。
影响
从中删除该http.content_type.required设置elasticsearch.yml。指定此设置将导致启动时出错。
http.tcp_no_delay已被删除。
详细信息
该http.tcp_no_delay设置在7.x中已弃用,并在8.0中被删除。http.tcp.no_delay代替使用
影响
将设置替换http.tcp_no_delay为http.tcp.no_delay。指定http.tcp_no_delayinelasticsearch.yml将导致启动时出错。
network.tcp.connect_timeout已被删除。
详细信息
该network.tcp.connect_timeout设置在7.x中已弃用,并在8.0中被删除。此设置是的后备设置transport.connect_timeout。
影响
删除该network.tcp.connect_timeout设置。使用该transport.connect_timeout设置更改客户端连接的默认连接超时。指定network.tcp.connect_timeoutinelasticsearch.yml将导致启动时出错。
node.max_local_storage_nodes已被删除。
详细信息
该node.max_local_storage_nodes设置在7.x中已弃用,并在8.0中被删除。节点应在单独的数据路径上运行,以确保每个节点一致地分配给相同的数据路径。
影响
删除该node.max_local_storage_nodes设置。指定此设置elasticsearch.yml将导致启动时出错。
该accept_default_password设置已被删除。
详细信息
自Elasticsearch6.0版本以来,该xpack.security.authc.accept_default_password设置没有任何影响,并且不再允许。
影响
从中删除该xpack.security.authc.accept_default_password设置elasticsearch.yml。指定此设置将导致启动时出错。
设置roles.index.cache.*已被删除。
详细信息
和xpack.security.authz.store.roles.index.cache.max_size设置xpack.security.authz.store.roles.index.cache.ttl已被删除。自Elasticsearch5.2版本以来,这些设置已变得多余并已弃用。
影响
从中删除xpack.security.authz.store.roles.index.cache.max_size和。指定这些设置将导致启动时出错。xpack.security.authz.store.roles.index.cache.ttlelasticsearch.yml
该transport.profiles.*.xpack.security.type设置已被删除。
详细信息
不再支持该transport.profiles.*.xpack.security.type传输客户端已被删除,所有客户端流量现在都使用HTTP传输。应删除使用此设置的传输配置文件。
影响
从中删除该transport.profiles.*.xpack.security.type设置elasticsearch.yml。在传输配置文件中指定此设置将导致启动时出错。
SAMLnameid_format领域设置不再具有默认值。
详细信息
在SAML中,身份提供商(IdP)可以显式配置为发布NameID特定格式的文件,也可以配置为尝试符合服务提供商(SP)的要求。SP在NameIDPolicySAML身份验证请求的元素中声明其要求。在Elasticsearch中,nameid_formatSAML领域设置控制该NameIDPolicy值。
nameid_format以前,默认值为urn:oasis:names:tc:SAML:2.0:nameid-format:transient。此设置创建了需要IdPNameID以某种transient格式发布的身份验证请求。
默认值已被删除,这意味着Elasticsearch将默认创建SAML身份验证请求,不会对IdP提出此要求。如果您想保留以前的行为,请设置nameid_format为urn:oasis:names:tc:SAML:2.0:nameid-format:transient。
影响
如果您当前没有nameid_format明确配置,您的IdP可能会拒绝来自Elasticsearch的身份验证请求,因为这些请求未指定格式NameID(并且您的IdP配置为期望格式)。这种不匹配可能会导致SAML配置损坏。如果您不确定您的IdP是否已显式配置为使用某种NameID格式并且您想要保留当前行为,请尝试设置nameid_format为urn:oasis:names:tc:SAML:2.0:nameid-format:transient显式。
xpack.security.transport.ssl.enabled现在需要该设置来配置xpack.security.transport.ssl设置。
详细信息
现在,配置任何SSL设置xpack.security.transport.ssl而不同时进行配置xpack.security.transport.ssl.enabled。
影响
如果使用其他xpack.security.transport.ssl设置,您必须明确指定该xpack.security.transport.ssl.enabled设置。
如果您不想启用SSL并且当前正在使用其他xpack.security.transport.ssl设置,请执行以下操作之一:
●明确指定xpack.security.transport.ssl.enabled为false
●停止使用其他xpack.security.transport.ssl设置
如果要启用SSL,请按照加密集群中节点之间的通信中的说明进行操作。作为此配置的一部分,显式指定xpack.security.transport.ssl.enabled为true。
例如,以下配置无效:
xpack.security.transport.ssl.keystore。路径:弹性-证书.p12
xpack.security.transport.ssl.truststore。路径:弹性-证书.p12
并且必须配置为:
xpack.security.transport.ssl。启用:真
xpack.security.transport.ssl.keystore。路径:弹性-证书.p12
xpack.security.transport.ssl.truststore。路径:弹性-证书.p12
或者false。
xpack.security.http.ssl.enabled现在需要该设置来配置xpack.security.http.ssl设置。
详细信息
现在,配置任何SSL设置xpack.security.http.ssl而不同时进行配置xpack.security.http.ssl.enabled。
影响
如果使用其他xpack.security.http.ssl设置,您必须明确指定该xpack.security.http.ssl.enabled设置。
如果您不想启用SSL并且当前正在使用其他xpack.security.http.ssl设置,请执行以下操作之一:
●明确指定xpack.security.http.ssl.enabled为false
●停止使用其他xpack.security.http.ssl设置
如果您想要启用SSL,请按照加密HTTP客户端通信中的说明进行操作。作为此配置的一部分,显式指定xpack.security.http.ssl.enabled为true。
例如,以下配置无效:
xpack.security.http.ssl。证书:elasticsearch.crt
xpack.security.http.ssl。密钥:elasticsearch.key
xpack.security.http.ssl。证书颁发机构:[“企业-ca.crt”]
并且必须配置为:
xpack.security.http.ssl。启用:真
xpack.security.http.ssl。证书:elasticsearch.crt
xpack.security.http.ssl。密钥:elasticsearch.key
xpack.security.http.ssl。证书颁发机构:[“企业-ca.crt”]
或者false。
xpack.security.transport.ssl现在需要证书和密钥才能为传输接口启用SSL。
详细信息
现在,如果没有通过使用设置或和来配置证书和密钥,则为传输接口启用SSL会出现错误。xpack.security.transport.ssl.keystore.pathxpack.security.transport.ssl.certificatexpack.security.transport.ssl.key
影响
如果xpack.security.transport.ssl.enabled设置为设置或和true提供证书和密钥。如果未提供证书和密钥,Elasticsearch将在启动时返回错误。xpack.security.transport.ssl.keystore.pathxpack.security.transport.ssl.certificatexpack.security.transport.ssl.key
现在需要证书xpack.security.http.ssl和密钥才能为HTTP服务器启用SSL。
详细信息
现在,如果没有通过使用设置或和来配置证书和密钥,则为HTTP(Rest)服务器启用SSL会出现错误。xpack.security.http.ssl.keystore.pathxpack.security.http.ssl.certificatexpack.security.http.ssl.key
影响
如果xpack.security.http.ssl.enabled设置为设置或和true提供证书和密钥。如果未提供证书和密钥,Elasticsearch将在启动时返回错误。xpack.security.http.ssl.keystore.pathxpack.security.http.ssl.certificatexpack.security.http.ssl.key
PKCS#11密钥库和信任库不能在elasticsearch.yml
详细信息
该设置*.ssl.keystore.type不再*.ssl.truststore.type接受“PKCS11”作为有效类型。这适用于Elasticsearch中的所有SSL设置,包括
●xpack.security.http.keystore.type
●xpack.security.transport.keystore.type
●xpack.security.http.truststore.type
●xpack.security.transport.truststore.type
以及安全领域、观察者和监控的SSL设置。
使用PKCS#11密钥库或信任库作为JRE的默认存储不受影响。
影响
如果您在文件中配置了PKCS#11密钥库elasticsearch.yml,则必须删除该配置并切换到受支持的密钥库类型,或者将PKCS#11密钥库配置为JRE默认存储。
用户kibana已替换为kibana_system。
详细信息
历史上,该kibana用户用于向Elasticsearch验证Kibana的身份。该用户的名称很混乱,经常被错误地用来登录Kibana。kibana_system为了减少混乱并更好地与其他内置系统帐户保持一致,已将其重命名为
影响
将用户的任何使用替换kibana为kibana_system用户。指定kibana用户kibana.yml将导致启动时出错。
如果您kibana.yml曾经包含:
弹性搜索。用户名:kibana
那么你应该更新以使用新kibana_system用户:
弹性搜索。用户名:kibana_system
新kibana_system用户不会保留以前的kibana用户密码。您必须明确为用户设置密码kibana_system。
设置search.remote.*已被删除。
详细信息
在6.5中,这些设置已被弃用,取而代之的是cluster.remote.在7.x中,我们提供了将这些设置自动升级为其cluster.remote对应项的功能。在8.0.0中,这些设置已被删除。如果您的配置或集群状态中有这些设置,Elasticsearch将拒绝启动。
影响
使用替换cluster.remote设置。停止使用设置search.remote.*。指定这些设置elasticsearch.yml将导致启动时出错。
该pidfile设置已替换为node.pidfile。
详细信息
为了确保所有设置都位于正确的命名空间中,该pidfile设置之前已在Elasticsearch版本7.4.0中弃用,并在版本8.0.0中删除。相反,使用node.pidfile.
影响
使用该node.pidfile设置。停止使用该pidfile设置。指定pidfile设置elasticsearch.yml将导致启动时出错。
该processors设置已替换为node.processors。
详细信息
为了确保所有设置都位于正确的命名空间中,该processors设置之前已在Elasticsearch版本7.4.0中弃用,并在版本8.0.0中删除。相反,使用node.processors.
影响
使用该node.processors设置。停止使用该processors设置。指定processors设置elasticsearch.yml将导致启动时出错。
该node.processors设置不能再超过可用的处理器数量。
详细信息
以前可以将用于设置线程池默认大小的处理器数量设置为大于可用处理器的数量。由于这会导致更多的上下文切换和更多的线程,但不会增加用于调度这些附加线程的物理CPU的数量,因此该node.processors设置现在受到可用处理器数量的限制。
影响
如果指定,请确保设置值node.processors不超过可用处理器的数量。将值设置node.processors为大于可用处理器的数量elasticsearch.yml将导致启动时出错。
该cluster.remote.connect设置已被删除。
详细信息
在Elasticsearch7.7.0中,该设置cluster.remote.connect已被弃用,取而代之的是设置node.remote_cluster_client。在Elasticsearch8.0.0中,该设置cluster.remote.connect已被删除。
影响
使用该node.remote_cluster_client设置。停止使用该cluster.remote.connect设置。指定cluster.remote.connect设置elasticsearch.yml将导致启动时出错。
该node.local_storage设置已被删除。
详细信息
在Elasticsearch7.8.0中,该设置node.local_storage已被弃用,从Elasticsearch8.0.0开始,所有节点都需要本地存储。因此,该node.local_storage设置已被删除。
影响
停止使用该node.local_storage设置。指定此设置elasticsearch.yml将导致启动时出错。
HTTP监控的设置auth.password已被删除。
详细信息
在Elasticsearch7.7.0中,该设置xpack.monitoring.exporters..auth.password已被弃用,取而代之的是设置xpack.monitoring.exporters..auth.secure_password。在Elasticsearch8.0.0中,该设置xpack.monitoring.exporters..auth.password已被删除。
影响
使用该xpack.monitoring.exporters..auth.secure_password设置。停止使用该xpack.monitoring.exporters..auth.password设置。指定xpack.monitoring.exporters..auth.password设置elasticsearch.yml将导致启动时出错。
用于禁用基本许可证功能的设置已被删除。
详细信息
以下设置在Elasticsearch7.8.0中已弃用,并已在Elasticsearch8.0.0中删除:
●xpack.enrich.enabled
●xpack.flattened.enabled
●xpack.ilm.enabled
●xpack.monitoring.enabled
●xpack.rollup.enabled
●xpack.slm.enabled
●xpack.sql.enabled
●xpack.transform.enabled
●xpack.vectors.enabled
这些基本许可证功能现在始终启用。
如果您禁用了ILM,以便可以使用其他工具来管理Watcher索引,则新引入的xpack.watcher.use_ilm_index_management设置可能会设置为false。
影响
停止使用已删除的设置。指定这些设置elasticsearch.yml将导致启动时出错。
用于推迟集群恢复等待一定数量的主节点的设置已被删除。
详细信息
以下集群设置已被删除:
●gateway.expected_nodes
●gateway.expected_master_nodes
●gateway.recover_after_nodes
●gateway.recover_after_master_nodes
一旦大多数符合主资格的节点加入,就可以安全地恢复集群,因此等待任何其他符合主资格的节点启动没有任何好处。
影响
停止使用已删除的设置。如果需要,请使用gateway.expected_data_nodes或gateway.recover_after_data_nodes推迟集群恢复挂起一定数量的数据节点。
旧角色设置已被删除。
详细信息
旧角色设置:
●node.data
●node.ingest
●node.master
●node.ml
●node.remote_cluster_client
●node.transform
●node.voting_only
已被删除。相反,请使用该node.roles设置。如果您之前在7.13或更高版本的集群上使用旧角色设置,则每个节点上都会有一条弃用日志消息,指示node.roles.
影响
停止使用已删除的设置。指定这些设置elasticsearch.yml将导致启动时出错。
系统调用过滤器设置已被删除。
详细信息
Elasticsearch使用系统调用过滤器来消除其派生另一个进程的能力。这对于减轻远程代码攻击很有用。这些系统调用过滤器默认启用,并且之前通过设置进行控制bootstrap.system_call_filter。从Elasticsearch8.0开始,将需要系统调用过滤器。因此,该设置bootstrap.system_call_filter在Elasticsearch7.13.0中已弃用,并从Elasticsearch8.0.0中删除。
影响
停止使用已删除的设置。在Elasticsearch配置中指定此设置将导致启动时出错。
层过滤设置已被删除。
详细信息
以用于过滤分片分配到特定节点集结尾的集群和索引级别._tier相反,应使用层首选项设置。index.routing.allocation.include._tier_preference删除的设置是:
集群级别设置:
●cluster.routing.allocation.include._tier
●cluster.routing.allocation.exclude._tier
●cluster.routing.allocation.require._tier
索引设置:
●index.routing.allocation.include._tier
●index.routing.allocation.exclude._tier
●index.routing.allocation.require._tier
影响
停止使用已删除的设置。在Elasticsearch配置中指定任何这些集群设置都会导致启动时出错。加载索引元数据时,使用这些设置的任何索引都将存档这些设置(并且它们不会产生任何效果)。
不推荐使用共享数据路径和每个索引数据路径设置。
详细信息
Elasticsearch使用共享数据路径作为每个索引数据路径的基本路径。此功能以前用于共享副本。从7.13.0开始,这些设置已被弃用。从8.0开始,只有在7.x中创建的现有索引才能使用共享数据路径和每个索引数据路径设置。
影响
停止使用已弃用的设置。
单个数据节点水印设置已弃用,现在仅接受true.
详细信息
在7.14中,设置cluster.routing.allocation.disk.watermark.enable_for_single_data_node为false已被弃用。从8.0开始,唯一的合法值将是true。在将来的版本中,该设置将被完全删除,其行为与该设置相同true。
如果单个数据节点集群需要旧行为,可以通过设置禁用基于磁盘的分配cluster.routing.allocation.disk.threshold_enabled:false
影响
停止使用已弃用的设置。
该gateway.auto_import_dangling_indices设置已被删除。
详细信息
集群gateway.auto_import_dangling_indices设置已被删除。以前,您可以使用此设置自动导入悬空索引。但是,自动导入悬空索引是不安全的。请使用悬空索引API来管理和导入悬空索引。
影响
停止使用已删除的设置。指定设置elasticsearch.yml将导致启动时出错。
线程listener池已被删除。
详细信息
以前,传输客户端使用线程池来确保侦听器不会在网络线程上回调。8.0中已经删除了传输客户端,并且不再需要线程池。
影响
删除任何节点的listener线程池设置elasticsearch.yml指定listener线程池设置elasticsearch.yml将导致启动时出错。
线程fixed_auto_queue_size池类型已被删除。
详细信息
线程fixed_auto_queue_size池类型以前标记为实验性功能,在7.x中已弃用,并在8.0中删除。和线程池现在都有类型search。search_throttledfixed
影响
无需采取任何措施。
多个transport设置已被替换。
详细信息
以下设置已在7.x中弃用并在8.0中删除。每个设置都有一个在6.7中引入的替换设置。
●transport.tcp.port取而代之transport.port
●transport.tcp.compress取而代之transport.compress
●transport.tcp.connect_timeout取而代之transport.connect_timeout
●transport.tcp_no_delay取而代之transport.tcp.no_delay
●transport.profiles.profile_name.tcp_no_delay取而代之transport.profiles.profile_name.tcp.no_delay
●transport.profiles.profile_name.tcp_keep_alive取而代之transport.profiles.profile_name.tcp.keep_alive
●transport.profiles.profile_name.reuse_address取而代之transport.profiles.profile_name.tcp.reuse_address
●transport.profiles.profile_name.send_buffer_size取而代之transport.profiles.profile_name.tcp.send_buffer_size
●transport.profiles.profile_name.receive_buffer_size取而代之transport.profiles.profile_name.tcp.receive_buffer_size
影响
使用替换设置。停止使用已删除的设置。指定已删除的设置elasticsearch.yml将导致启动时出错。
默认情况下启用选择性传输压缩。
详细信息
在8.0之前,默认情况下禁用传输压缩。从8.0开始,transport.compress默认为indexing_data.此配置意味着原始索引数据的传播将在节点之间进行压缩。
影响
沿索引路径的节点间传输将减少。在某些情况下,CPU使用率可能会增加。
传输压缩默认为lz4。
详细信息
在8.0之前,该transport.compression_scheme设置默认为deflate.
从8.0开始,transport.compress_scheme默认为lz4.
在8.0之前,该cluster.remote..transport.compression_scheme设置默认为显式配置deflate时的cluster.remote..transport.compress设置。
从8.0开始,cluster.remote..transport.compression_scheme将回退到transport.compression_scheme默认设置。
影响
此配置意味着传输压缩将产生较低的压缩比,以换取较低的CPU负载。
节点repositories.fs.compress级设置已被删除。
详细信息
对于共享文件系统存储库(“type”:“fs”),节点级别设置repositories.fs.compress以前可用于为所有compress未指定的共享文件系统存储库启用压缩。该repositories.fs.compress设置已被删除。
影响
停止使用repositories.fs.compress节点级设置。使用存储库特定的compress设置来启用压缩。请参阅共享文件系统存储库设置。
启用FIPS模式后,默认密码哈希现在为PBKDF2_STRETCH
详细信息
如果xpack.security.fips_mode.enabled为true(请参阅FIPS140-2),则now的值xpack.security.authc.password_hashing.algorithm默认为pbkdf2_stretch。
在早期版本中,此设置始终默认为bcrypt,并且运行时检查将阻止节点启动,除非该值被显式设置为“pbkdf2”变体。
对于未启用FIPS140模式的集群,没有任何变化。
影响
此更改不应对升级的节点产生任何影响。任何具有显式配置密码哈希算法值的节点都将继续使用该配置值。在Elasticsearch6.x或Elasticsearch7.x中没有显式配置密码哈希算法的任何节点都将无法启动。
不会xpack.monitoring.history.duration删除metricbeat或ElasticAgent创建的索引
细节
在8.0之前,Elasticsearch会根据xpack.monitoring.history.duration设置在内部处理所有监控索引的删除。
当使用metricbeat或elasticagent>=8.0收集监控数据时,索引通过ILM策略进行管理。xpack.monitoring.history.duration如果存在该设置,则将使用的作为初始保留期来创建策略。
如果您需要自定义使用metricbeat收集的监控数据的保留设置,请.monitoring-8-ilm-policy直接更新ILM策略。
该xpack.monitoring.history.duration设置仅适用于监控使用(旧)内部集合编写的索引,不适用于metricbeat或代理创建的索引。
影响升级后,请确保.monitoring-8-ilm-policyILM策略与您所需的保留设置一致。
如果您仅使用metricbeat或agent来收集监控数据,您也可以删除任何自定义xpack.monitoring.history.duration设置。
命令行工具更改编辑
如果您使用Elasticsearch服务,请跳过本节。ElasticsearchService会为您处理这些更改。
该elasticsearch-migrate工具已被删除。
详细信息
该elasticsearch-migrate工具提供了一种将文件领域用户和角色转换为本机领域的方法。自Elasticsearch7.2.0起已弃用。现在应该直接在本机领域中创建用户和角色。
影响
停止使用该elasticsearch-migrate工具。尝试使用该elasticsearch-migrate工具将导致错误。
索引设置更改编辑
不推荐直接访问系统索引。
详细信息
直接访问系统索引已被弃用,并且可能在未来版本中被阻止。如果必须访问系统索引,请创建一个具有针对特定索引的索引权限的安全角色,并将权限设置allow_restricted_indices为true。有关将此权限添加到索引权限的信息,请参阅索引权限。
影响
访问系统索引会直接导致API响应标头中出现警告。如果可用,请使用Kibana或关联功能的ElasticsearchAPI来管理您要访问的数据。
index.merge.policy.max_merge_at_once_explicit已被弃用并且没有任何效果。
详细信息
索引index.merge.policy.max_merge_at_once_explicit设置已弃用并且无效。
以前,您可以指定index.merge.policy.max_merge_at_once_explicit设置在强制合并期间或删除已删除文档时同时合并的最大段数。在8.0中,无论设置如何,此数量都是无限的。
影响
指定index.merge.policy.max_merge_at_once_explicit不会产生任何影响,但会生成弃用警告。
为了避免这些弃用警告,请停止使用该设置。创建新索引时不要指定该设置,并从索引和组件模板中删除该设置。
要从现有数据流或索引中删除设置,请使用null更新索引设置API指定设置的值。
PUTmy-index-000001/_settings{“index.merge.policy.max_merge_at_once_explicit”:null}
安慰PHPPython红宝石去JavaScript
复制为卷曲在控制台中查看
索引index.max_adjacency_matrix_filters设置已被删除。
详细信息
索引index.max_adjacency_matrix_filters设置已被删除。以前,您可以使用此设置来配置邻接矩阵聚合的最大过滤器数量。索引indices.query.bool.max_clause_count设置现在确定聚合的过滤器的最大数量。
影响
停止使用index.max_adjacency_matrix_filters索引设置。
包含索引设置的请求将返回错误。如果您使用已包含该设置的7.x索引升级集群,Elasticsearch将存档该设置。
从索引和组件模板中删除索引设置。尝试使用包含该设置的模板将失败并返回错误。这包括自动化操作,例如ILM翻转操作。
该index.force_memory_term_dictionary设置已被删除。
详细信息
该index.force_memory_term_dictionary设置是在7.0中作为临时措施引入的,允许用户选择退出优化,从而在适当的时候将术语词典保留在磁盘上。现在,此优化是强制性的,并且该设置已被删除。
影响
停止使用index.force_memory_term_dictionary索引设置。包含此设置的请求将返回错误。
该index.soft_deletes.enabled设置已被删除。
详细信息
创建禁用软删除的索引已在7.6中弃用,并且在8.0中不再支持。该index.soft_deletes.enabled设置不能再设置为false。
影响
停止使用index.soft_deletes.enabled索引设置。index.soft_deletes.enabled设置为的请求false将返回错误。
和index.translog.retention.age设置index.translog.retention.size已被删除。
详细信息
Translog保留设置index.translog.retention.age,index.translog.retention.size在7.4中被有效忽略,在7.7中被弃用,并在8.0中被删除以支持软删除。
影响
停止使用index.translog.retention.age和index.translog.retention.size索引设置。包含这些设置的请求将返回错误。
JavaAPI变更编辑
该indexlifecycle包已ilm在Java高级REST客户端中重命名。
更改为Fuzziness.
更改为Repository.
JVM选项更改编辑
如果您使用Elasticsearch服务,请跳过本节。ElasticsearchService会为您处理这些更改。
es.disk.auto_release_flood_stage_block已被删除。
es.rest.url_plus_as_space已被删除。
es.unsafely_permit_handshake_from_incompatible_builds已被删除。
记录更改编辑
ElasticsearchJSON日志现在符合ECS。
Elasticsearch不再以明文形式发出弃用日志或慢速日志。
审核日志按大小滚动和归档。
映射更改编辑
不支持在Elasticsearch6.x及更早版本中创建的索引。
不支持在Elasticsearch6.x及更早版本中创建的封闭索引。
每个字段的完成上下文的最大数量现在为10。
不再支持多字段内的多字段。
元_field_names数据字段的enabled参数已被删除。
字段映射上的参数boost已被删除。
Java时间日期格式取代了joda时间格式。
几个geo_shape映射参数已被删除。
字段sparse_vector数据类型已被删除。
包装变化编辑
如果您使用Elasticsearch服务,请跳过本节。ElasticsearchService会为您处理这些更改。
数据文件夹的布局已更改。
默认的Maxmindgeoip数据库已被删除。
无痛改变编辑
该类JodaCompatibleZonedDateTime已被删除。
插件变更编辑
如果您使用Elasticsearch服务,请跳过本节。ElasticsearchService会为您处理这些更改。
S3、GCS和Azure存储库插件现已包含在Elasticsearch中
第三方插件无法再拦截REST请求(RestHandlerWrapper)
RESTAPI更改编辑
包含的RESTAPI端点_xpack已被删除。
包含映射类型的RESTAPI端点已被删除。
跨集群搜索(CCS)现在仅向后兼容之前的次要版本。
聚合terms不再支持_term顺序键。
聚合date_histogram不再支持_time顺序键。
聚合moving_avg已被删除。
聚合percentiles的percents参数不再支持重复值。
聚合date_histogram的interval参数不再有效。
和标记过滤器nGram名称edgeNGram已被删除。
和分词器nGram名称edgeNGram已被删除。
该in_flight_requests统计信息已inflight_requests在日志和诊断API中重命名。
投票配置排除API端点已更改。
如果远程系统索引与自动跟踪模式匹配,则不会自动跟踪它们。
EQLwildcard功能已被删除。
ILMfreeze操作现在是无操作。
ILM策略的额外验证。
已弃用的_upgradeAPI已被删除。
已弃用的冻结索引API已被删除。
不能在同一请求中同时指定强制合并APImax_num_segments和参数。only_expunge_deletes
创建或更新索引模板API的template参数已被删除。
同步刷新已被删除。
?wait_for_active_shards关闭索引API上的参数默认值已更改。
索引统计API的types查询参数已被删除。
摄取user_agent处理器的ecs参数没有影响。
查询include_type_name参数已被删除。
从远程重新索引现在重新编码URL编码的索引名称。
在重新索引、按查询删除和按查询更新API中,size参数已重命名。
通过查询更新API现在会拒绝不支持的script字段。
cat节点API的local查询参数已被删除。
cat分片API的local查询参数已被删除。
catIndexAPI的local查询参数已被删除。
获取字段映射API的local查询参数已被删除。
不推荐将数据发布到作业API。
job_id更新数据源API的属性已被删除。
创建存储库并409在使用存储库时删除存储库API的返回状态代码而不是500.
该allow_no_datafeeds属性已从机器学习API中删除。
该allow_no_jobs属性已从机器学习API中删除。
如果作业已启动,StartRollupJob端点现在会返回成功状态。
存储的脚本不再支持空脚本或搜索模板。
创建或更新存储脚本API的code参数已被删除。
_type不再支持现场搜索。
多重搜索API现在将空的第一行解析为文本文件中的操作元数据。
排序unmapped_type:string选项已被删除。
_id默认情况下不允许聚合和排序。
该common查询已被删除。
该cutoff_frequency参数已从matchandmulti_match查询中删除。
和nested_filter属性nested_path已从搜索API的sort请求正文参数中删除。
现在,默认情况下,搜索和获取请求将使用自适应副本选择路由到分片。
(query,doc[‘field’])不再支持使用向量函数。
搜索API的indices_boost请求正文参数不再接受对象值。
搜索API的use_field_mapping请求正文参数已被删除。
搜索API的from请求体和url参数不能为负数。
日期字段上的范围查询始终将数值视为自纪元以来的毫秒数。
查询geo_bounding_box的type参数已被删除。
该type查询已被删除。
该kibana_user角色已更名kibana_admin。
对于快照和SLMAPI,该indices参数不再解析为系统索引或系统数据流。
快照默认压缩元数据文件。
S3快照存储库现在默认使用DNS样式的访问模式。
恢复请求不再接受设置。
存储库统计API已被删除。
观察者历史记录现在写入隐藏的数据流。
在服务器超时的情况下,集群运行状况API的HTTP状态代码已更改。
SQLJDBC更改编辑
JDBC驱动程序以众所周知的文本字符串而不是org.elasticsearch.geo对象的形式返回几何对象。
系统要求变更编辑
如果您使用Elasticsearch服务,请跳过本节。ElasticsearchService会为您处理这些更改。
不再支持多个EOL操作系统。
需要Java17。
JAVA_HOME不再支持。
转变变革编辑
必须升级在7.4或更早版本中创建的转换。
弃用编辑
以下功能已在Elasticsearch8.0中弃用,并将在未来版本中删除。虽然这不会立即对您的应用程序产生影响,但我们强烈建议您在升级到8.0后采取所描述的步骤来更新代码。
要查明您是否正在使用任何已弃用的功能,请启用弃用日志记录。
集群和节点设置弃用编辑
我们不再建议使用临时集群设置。
弃用命令行工具编辑
如果您使用Elasticsearch服务,请跳过本节。ElasticsearchService会为您处理这些更改。
该elasticsearch-setup-passwords工具已被弃用。
详细信息
该elasticsearch-setup-passwords工具在8.0中已弃用。要手动重置内置用户(包括elastic用户)的密码,请使用该elasticsearch-reset-password工具、Elasticsearch更改密码API或Kibana中的用户管理功能。elasticsearch-setup-passwords将在未来版本中删除。
当您第一次启动Elasticsearch时,会自动为用户生成影响密码。elastic如果elasticsearch-setup-passwords启动Elasticsearch后运行,会失败,因为elastic用户密码已经配置好了。
«迁移到8.1Java时间迁移指南»
在本页
●重大变化
●集群和节点设置更改
●命令行工具更改
●索引设置更改
●JavaAPI变更
●JVM选项更改
●记录更改
●映射更改
●包装变化
●无痛改变
●插件变更
●RESTAPI更改
●SQLJDBC更改
●系统要求变更
●转变变革
●弃用
●集群和节点设置弃用
●弃用命令行工具
Registrationislive!
JoinusforadayfullofElasticlearningandnetworkingatElasticONTourSingapore.
Learnmore
这个有帮助吗?反馈
喜欢不喜欢