日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

elasticsearch文档-modules

發(fā)布時(shí)間:2024/1/17 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 elasticsearch文档-modules 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

modules

模塊

cluster

原文

基本概念

cluster: 集群,一個(gè)集群通常由很多節(jié)點(diǎn)(node)組成?
node: 節(jié)點(diǎn),比如集群中的每臺(tái)機(jī)器可以看做一個(gè)node?
shard: 分片,ES是分布式搜索引擎,會(huì)把數(shù)據(jù)拆分成很多個(gè)shard,一個(gè)索引默認(rèn)有5個(gè)shard?
replica: 副本,ES是high availability的, 為了數(shù)據(jù)安全會(huì)把同一份數(shù)據(jù)存放在多個(gè)節(jié)點(diǎn),默認(rèn)情況下一個(gè)索引的數(shù)據(jù)會(huì)存兩份副本。一份是primary,一份是replica。 primary: 主節(jié)點(diǎn)?
rebalancing: 指數(shù)據(jù)在集群的節(jié)點(diǎn)中重新分配,比如當(dāng)集群中增加或者移除節(jié)點(diǎn)時(shí)就會(huì)發(fā)生rebalancing

Shards allocation

Shards allocation是指在各個(gè)節(jié)點(diǎn)分配shard的過(guò)程。 在初始化恢復(fù), 分配replica, rebalancing, 新增或移除節(jié)點(diǎn)時(shí)會(huì)發(fā)生。

一些基本配置如下

cluster.routing.allocation.allow_rebalance

根據(jù)集群中節(jié)點(diǎn)的狀態(tài)來(lái)控制什么時(shí)候可以rebalancing, 可以設(shè)置三種方式。

  • indices_primaries_active: 僅當(dāng)所有的primary shards是active的時(shí)候才允許rebalancing。

  • indices_all_active: 僅當(dāng)所有的shards是active的時(shí)候才允許rebalancing。

  • always: 一組shard、replication是active時(shí)就可以rebalancing。

默認(rèn)值為indices_all_active,可以減少cluster初始化恢復(fù)時(shí)各節(jié)點(diǎn)之間的交互。

cluster.routing.allocation.cluster_concurrent_rebalance

設(shè)置在cluster中最多可以允許幾個(gè)rebalancing同時(shí)進(jìn)行,默認(rèn)為2, 如果設(shè)置為-1則意味著不做限制。

cluster.routing.allocation.node_initial_primaries_recoveries

限制每個(gè)節(jié)點(diǎn)可以同時(shí)初始化恢復(fù)primary shard數(shù)量。

這個(gè)設(shè)置是為了防止同時(shí)進(jìn)行的recovery進(jìn)程太多影響節(jié)點(diǎn)負(fù)載,因?yàn)榇蠖鄶?shù)情況下用的是local gateway,速度相當(dāng)快,所以可以同時(shí)執(zhí)行多個(gè)recovery進(jìn)程而不會(huì)造成太多的負(fù)荷,默認(rèn)是4。

cluster.routing.allocation.node_concurrent_recoveries

限制每個(gè)節(jié)點(diǎn)并行recovery的數(shù)量, 默認(rèn)是2。

cluster.routing.allocation.disable_new_allocation

設(shè)置是否禁止分配新的新的primary shard,注意, 設(shè)置為true會(huì)阻止新建的索引的shard分配。 因?yàn)槿绻鹥rimary不存在,replica會(huì)自動(dòng)提升為primary, 所以這個(gè)配置通過(guò)更新cluster配置的API動(dòng)態(tài)更新才有意義。

cluster.routing.allocation.disable_allocation

是否禁止分配primary和replica,這個(gè)配置通過(guò)更新cluster配置的API動(dòng)態(tài)更新才有意義。

cluster.routing.allocation.disable_replica_allocation

是否禁止分配replica,和上面的設(shè)置類(lèi)似, 這個(gè)配置通過(guò)更新cluster配置的API動(dòng)態(tài)更新才有意義。

indices.recovery.concurrent_streams

設(shè)置在從對(duì)應(yīng)的shard恢復(fù)一個(gè)shard時(shí),可以同時(shí)打開(kāi)的數(shù)據(jù)流的數(shù)量(節(jié)點(diǎn)級(jí)別),默認(rèn)是3。

Cluster allocation awareness

分片規(guī)則

集群分片規(guī)則(Cluster allocation awareness)允許我們用一些參數(shù)來(lái)配置整個(gè)集群中shard和replica的分片規(guī)則。 下面通過(guò)一個(gè)例子來(lái)解釋一下。

假設(shè)我們有幾個(gè)機(jī)架,我們給一節(jié)點(diǎn)配置一個(gè)名為rack_id的屬性(其他名字也可以), 配置例子如下:

node.rack_id: rack_one

上面例子為這個(gè)節(jié)點(diǎn)配置了一個(gè)名為rack_id的屬性, 值為rack_one。 接下來(lái)將rack_id配置為分片規(guī)則所用的屬性(在所有節(jié)點(diǎn)都要設(shè)置)。

cluster.routing.allocation.awareness.attributes: rack_id

上面的配置意味著分片規(guī)則會(huì)基于屬性rack_id來(lái)做shard和replica分配。 例如,我們有兩個(gè)node.rack_id屬性設(shè)置為rack_one的節(jié)點(diǎn), 部署了一個(gè)有5個(gè)shards和1個(gè)replica的索引, 索引數(shù)據(jù)會(huì)分布到這兩個(gè)節(jié)點(diǎn)上(每個(gè)節(jié)點(diǎn)有5個(gè)shard, 1個(gè)replica, 總共10個(gè)shards)。

如果我們?cè)偌尤雰蓚€(gè)節(jié)點(diǎn),這兩個(gè)節(jié)點(diǎn)的node.rack_id屬性設(shè)置為rack_two, shard會(huì)在這些節(jié)點(diǎn)上重新分配, 但是一個(gè)shard和他的replica不會(huì)分配到有相同rack_id屬性的節(jié)點(diǎn)上。

可以為分片規(guī)則設(shè)置多個(gè)屬性, 比如:

cluster.routing.allocation.awareness.attributes: rack_id,zone

注意:啟用了分片規(guī)則屬性后,如果一個(gè)節(jié)點(diǎn)沒(méi)有配置這些屬性, shard就不會(huì)分配到這個(gè)節(jié)點(diǎn)上。

forced awareness

強(qiáng)制行分片規(guī)則

有時(shí)候我們提前知道用來(lái)做分片規(guī)則的屬性會(huì)有更多的值, 我們不希望一些replica被分配到一組特定節(jié)點(diǎn)上, 對(duì)于這種情況, 我們可以針對(duì)這些屬性值用強(qiáng)制分片規(guī)則。

例如,我們用屬性zone來(lái)做分片規(guī)則屬性,并且我們知道會(huì)有兩個(gè)zone:zone1和zone2。 下面是強(qiáng)制分片規(guī)則設(shè)置的例子:

cluster.routing.allocation.awareness.force.zone.values:?zone1,zone2cluster.routing.allocation.awareness.attributes:?zone

現(xiàn)在我們先啟用兩個(gè)node.zone屬性設(shè)置成zone1的節(jié)點(diǎn),然后創(chuàng)建一個(gè)有5個(gè)shard和1個(gè)replica的索引。 索引建完后只有5個(gè)shard(沒(méi)有replica),要等到我們?cè)賳⒂酶鄬傩詎ode.zone為zone2的節(jié)點(diǎn)時(shí),replica才會(huì)被分配。

automatic preference when searching / geting

在執(zhí)行search或者執(zhí)行g(shù)et指令時(shí), 接受請(qǐng)求的節(jié)點(diǎn)會(huì)優(yōu)先選擇與其有相同屬性值的節(jié)點(diǎn)分片上執(zhí)行請(qǐng)求。

realtime settings update

這些設(shè)置可以通過(guò)更新cluster配置的api在一個(gè)運(yùn)行著的cluster上實(shí)時(shí)更新。

shard allocation filtering

可以用include/exclude過(guò)濾器控制索引部署到哪些節(jié)點(diǎn)上,過(guò)濾器可以設(shè)置在索引級(jí)別,也可以設(shè)置在集群級(jí)別, 我們先看一下設(shè)置在索引級(jí)別的例子。

假設(shè)我們有四個(gè)節(jié)點(diǎn), 每個(gè)節(jié)點(diǎn)配置了一個(gè)名為tag的分片規(guī)則屬性(可以是任何名字),節(jié)點(diǎn)1的tag屬性置為value1, 節(jié)點(diǎn)2的tag屬性設(shè)置為value2,以此類(lèi)推。

我們可以把配置項(xiàng)index.routing.allocation.include.tag設(shè)置為value1,value2來(lái)使創(chuàng)建的索引只部署到哪些tag屬性為value1和value2的節(jié)點(diǎn)上,例如

curl?-XPUT?localhost:9200/test/_settings?-d?'{??????"index.routing.allocation.include.tag"?:?"value1,value2"}'

另一方面, 我們將配置項(xiàng)index.routing.allocation.exclude.tag設(shè)置為value3, 這樣創(chuàng)建的索引會(huì)被部署到tag屬性為value3之外的那些節(jié)點(diǎn)上,例如

curl?-XPUT?localhost:9200/test/_settings?-d?'{??????"index.routing.allocation.exclude.tag"?:?"value3"}'

從0.90版開(kāi)始, 可以用index.routing.allocation.require.*來(lái)設(shè)置一系列規(guī)則, 只有符合全部規(guī)則的節(jié)點(diǎn)才會(huì)分配shard, 相對(duì)而言include則是只要符合任意一條就可以。

include,?exclude和require的值都支持通配符, 例如value1*。 一個(gè)特殊的節(jié)點(diǎn)名是_ip,可以用來(lái)匹配節(jié)點(diǎn)的ip地址. 另外一個(gè)特殊屬性_host可以用來(lái)匹配節(jié)點(diǎn)的主機(jī)名和ip地址。

上面說(shuō)過(guò),一個(gè)節(jié)點(diǎn)可以配置幾個(gè)屬性, 例如

node.group1:?group1_value1node.group2:?group2_value4

對(duì)應(yīng)的,?include,?exclude?和?require?也可以用幾個(gè)屬性, 例如

curl?-XPUT?localhost:9200/test/_settings?-d?'{????"index.routing.allocation.include.group1"?:?"xxx"????"index.routing.allocation.include.group2"?:?"yyy",????"index.routing.allocation.exclude.group3"?:?"zzz",????"index.routing.allocation.require.group4"?:?"aaa"}'

這些設(shè)置可以用更新配置的api實(shí)時(shí)更新, 實(shí)時(shí)移動(dòng)索引(索引的分片)。

Cluster級(jí)別的過(guò)濾器可以用更新cluster設(shè)置的api來(lái)實(shí)時(shí)定義和更新,這些設(shè)置在解除一個(gè)節(jié)點(diǎn)時(shí)很有用(即使replica數(shù)量設(shè)置為0)。 下面是根據(jù)ip地址解除一個(gè)節(jié)點(diǎn)的例子:

curl?-XPUT?localhost:9200/_cluster/settings?-d?'{????"transient"?:?{????????"cluster.routing.allocation.exclude._ip"?:?"10.0.0.1"????}}'

discovery

原文

discovery模塊負(fù)責(zé)發(fā)現(xiàn)集群(cluster)中的節(jié)點(diǎn),以及選舉出主節(jié)點(diǎn)。

注意,ES是一個(gè)基于端到端(p2p)的系統(tǒng),節(jié)點(diǎn)之間直接通信,所有主要的API(index, search, delete)不需要和主節(jié)點(diǎn)(master node)通信。 主節(jié)點(diǎn)的職責(zé)是維護(hù)整個(gè)集群的狀態(tài),并且在節(jié)點(diǎn)加入或者離開(kāi)集群時(shí)重新分片。 每次集群的狀體改變會(huì)通知到集群中的其他節(jié)點(diǎn)(方式取決于discovery模塊的具體實(shí)現(xiàn))。

settings

配置項(xiàng)cluster.name用來(lái)給集群設(shè)置一個(gè)名字,以此把一個(gè)集群和其他的集群區(qū)分開(kāi)。 默認(rèn)的集群名是elasticsearch, 不過(guò)推薦改為能反映集群用途的有實(shí)際意義的名字。

ec2 discovery

EC2 discovery機(jī)制使用EC2的API來(lái)執(zhí)行自動(dòng)發(fā)現(xiàn),用不到,不看了。

zen discovery

Zen發(fā)現(xiàn)機(jī)制

zen發(fā)現(xiàn)機(jī)制是ES默認(rèn)的內(nèi)置發(fā)現(xiàn)模塊。 它提供了多播和單播兩種發(fā)現(xiàn)方式,并且能夠很容易的擴(kuò)展以支持云環(huán)境。

zen發(fā)現(xiàn)機(jī)制是和其他模塊集成在一起的,比如所有節(jié)點(diǎn)之間通訊是用trasport模塊來(lái)完成。

Zen發(fā)現(xiàn)機(jī)制分為幾個(gè)子模塊,接下來(lái)分別做詳細(xì)解釋。

ping

ping是指一個(gè)節(jié)點(diǎn)用發(fā)現(xiàn)機(jī)制發(fā)現(xiàn)其他節(jié)點(diǎn)的過(guò)程, 支持多播(multicast)和單播(unicast)兩種方式,也可以組合使用。

multicast

multicast是指發(fā)送一個(gè)或多個(gè)多播請(qǐng)求,存在的節(jié)點(diǎn)會(huì)接受并且相應(yīng)請(qǐng)求。 它提供了一組以discovery.zen.ping.multicast為前綴的配置項(xiàng)。

SettingDescription
groupgroup地址,默認(rèn)值為224.2.2.4
port端口,默認(rèn)為54328
ttl多播消息的ttl,默認(rèn)是3
address綁定地址,默認(rèn)為null,即綁定所有可用的network接口。

unicast

在多播禁用的情況下可以使用unicast發(fā)現(xiàn)方式。 它需要一個(gè)主機(jī)列表, 它提供了下面以discovery.zen.ping.unicast為前綴的配置項(xiàng)。

SettingDescription
hosts一個(gè)數(shù)組或者以逗號(hào)分隔的字符串, 每個(gè)值的格式為host:port或者h(yuǎn)ost[port1-port2]

unicast發(fā)現(xiàn)方式需要借助transport模塊來(lái)實(shí)現(xiàn)。

master election

主節(jié)點(diǎn)選舉

作為ping初始化過(guò)程的一部分, 需要選舉出一個(gè)集群的master節(jié)點(diǎn)或者加入到一個(gè)已經(jīng)選出的master節(jié)點(diǎn), 這個(gè)過(guò)程是自動(dòng)完成。 可以通過(guò)配置項(xiàng)discovery.zen.ping_timeout來(lái)設(shè)置ping的超時(shí)時(shí)間(默認(rèn)是3s)以應(yīng)對(duì)網(wǎng)絡(luò)速度慢或者網(wǎng)絡(luò)擁堵的情況。 設(shè)置一個(gè)比較大的值可以減少失敗的幾率。

節(jié)點(diǎn)可以設(shè)置屬性node.master為false來(lái)避免被選舉為master節(jié)點(diǎn)。 注意, 如果一個(gè)節(jié)點(diǎn)被設(shè)置為客戶端節(jié)點(diǎn)(node.client屬性設(shè)置為true), 這個(gè)節(jié)點(diǎn)不會(huì)被選舉為master節(jié)點(diǎn)(node.master自動(dòng)設(shè)置為false)。

屬性discovery.zen.minimum_master_nodes設(shè)置一個(gè)集群中最少的合格master節(jié)點(diǎn)數(shù)量, 對(duì)于2個(gè)節(jié)點(diǎn)以上的集群,建議設(shè)置為大于1的值。

舉個(gè)例子, 假設(shè)集群有5個(gè)節(jié)點(diǎn),?minimum_master_nodes設(shè)置為3, 如果2個(gè)節(jié)點(diǎn)掉線了,這兩個(gè)節(jié)點(diǎn)不會(huì)自己組建一個(gè)集群, 而是嘗試加入另一個(gè)集群。

這個(gè)設(shè)置可以避免網(wǎng)絡(luò)故障時(shí)有些節(jié)點(diǎn)試圖自行組織集群,從而導(dǎo)致整個(gè)集群不穩(wěn)定。

fault detection

錯(cuò)誤檢測(cè)

有兩種錯(cuò)誤檢測(cè)方式,一種是master節(jié)點(diǎn)ping集群中所有其他的節(jié)點(diǎn)來(lái)驗(yàn)證他們是否存活,另一種是每個(gè)節(jié)點(diǎn)ping master節(jié)點(diǎn)來(lái)驗(yàn)證它是否存活,或者是否需要初始化一個(gè)選舉。

下面的配置項(xiàng)用于設(shè)置錯(cuò)誤檢測(cè),前綴是discovery.zen.fd:

SettingDescription
ping_intervalping的頻率, 默認(rèn)1s
ping_timeoutping的超時(shí)時(shí)間, 默認(rèn)30s
ping_retries如果ping失敗或者超時(shí),重試的次數(shù)

external multicast

外部多播

multicast 發(fā)現(xiàn)機(jī)制還支持外部多播請(qǐng)求,外部客戶端可以發(fā)送多播請(qǐng)求, 格式為:

{????"request"?:?{????????"cluster_name":?"test_cluster"????}}

響應(yīng)格式類(lèi)似節(jié)點(diǎn)信息的響應(yīng)(只有節(jié)點(diǎn)信息,包括transport/http地址以及節(jié)點(diǎn)的屬性):

{????"response"?:?{????????"cluster_name"?:?"test_cluster",????????"transport_address"?:?"...",????????"http_address"?:?"...",????????"attributes"?:?{????????????"..."????????}????}}

注意,可以禁用內(nèi)部multicast發(fā)現(xiàn)機(jī)制,只啟用外部多播發(fā)現(xiàn)機(jī)制。 方式為將discovery.zen.ping.multicast.enabled設(shè)為true(默認(rèn)),但是將discovery.zen.ping.multicast.ping.enabled設(shè)為false。

gateway

原文

gateway模塊存儲(chǔ)集群元數(shù)據(jù)(meta data)的狀態(tài),集群元數(shù)據(jù)主要包括索引的配置和聲明的mapping定義。

每次集群元數(shù)據(jù)發(fā)生變化時(shí)(比如添加或刪除索引),會(huì)通過(guò)gateway來(lái)持久化這些變化。 集群?jiǎn)?dòng)時(shí)會(huì)從gateway讀取并且應(yīng)用這些數(shù)據(jù)。

設(shè)置在節(jié)點(diǎn)級(jí)別的gateway自動(dòng)控制索引所用的gateway。 比如節(jié)點(diǎn)用fs?gateway,該節(jié)點(diǎn)創(chuàng)建的索引也自動(dòng)用fs?gateway。 在這種情況下, 如節(jié)點(diǎn)不應(yīng)該持久化狀態(tài)數(shù)據(jù), 應(yīng)該明確設(shè)置為none(唯一可以設(shè)置的值)。

ES默認(rèn)使用的gateway是local gateway。

recovery after nodes / time

大多數(shù)場(chǎng)景下,集群的元數(shù)據(jù)只能在特定的節(jié)點(diǎn)已經(jīng)啟動(dòng)后才能被恢復(fù), 或者等待到超時(shí)。 這在集群重啟時(shí)非常有用,此時(shí)每個(gè)節(jié)點(diǎn)的本地索引存儲(chǔ)仍然可用,不需要從gateway恢復(fù)(能夠減少?gòu)膅ateway恢復(fù)的時(shí)間)。

gateway.recover_after_nodes(數(shù)字類(lèi)型)設(shè)置多少個(gè)合格的data節(jié)點(diǎn)以及master節(jié)點(diǎn)啟動(dòng)后觸發(fā)recovery。?gateway.recover_after_data_nodes和gateway.recover_after_master_nodes含義類(lèi)似,只不過(guò)分別設(shè)置data節(jié)點(diǎn)和master節(jié)點(diǎn)的數(shù)值。?gateway.recover_after_time(事件類(lèi)型)設(shè)置在所有的gateway.recover_after...nodes條件滿足后,等待多長(zhǎng)時(shí)間再開(kāi)始recovery。

gateway.expected_nodes設(shè)置預(yù)期多少個(gè)合格的data和master節(jié)點(diǎn)啟動(dòng)后就開(kāi)始recovery,一旦滿足條件馬上啟動(dòng)recovery,recover_after_time設(shè)置會(huì)被忽略,對(duì)應(yīng)的也支持gateway.expected_data_nodes和gateway.expected_master_nodes這兩個(gè)配置項(xiàng)。 一個(gè)配置的例子如下:

gateway:????recover_after_nodes:?1????recover_after_time:?5m????expected_nodes:?2、

這個(gè)例子配置了在一個(gè)預(yù)期兩個(gè)節(jié)點(diǎn)的集群中,在一個(gè)節(jié)點(diǎn)啟動(dòng)后的5分鐘后執(zhí)行recovery,一旦集群中有已經(jīng)有兩個(gè)節(jié)點(diǎn)啟動(dòng)了,立即開(kāi)始recovery(不等待,忽略recover_after_time)。

注意,一旦元數(shù)據(jù)從gateway恢復(fù)了,那么這個(gè)配置就不再有效,直到下次集群完整重啟。

在集群元數(shù)據(jù)沒(méi)有恢復(fù)時(shí),為了避免和真實(shí)的集群元數(shù)據(jù)沖突,所有操作都會(huì)被阻止。

local gateway

本地網(wǎng)關(guān)

local gateway從每個(gè)節(jié)點(diǎn)的本地存儲(chǔ)中恢復(fù)整個(gè)集群狀態(tài)和索引數(shù)據(jù), 并且不需要節(jié)點(diǎn)級(jí)別的共享存儲(chǔ)。

注意,和共享類(lèi)的gateway不同, local gateway的持久化不是異步的,一單一個(gè)操作被執(zhí)行, 數(shù)據(jù)就會(huì)被存儲(chǔ)以備集群恢復(fù)時(shí)使用。

非常重要的一點(diǎn)是在配置gateway.recover_after_nodes時(shí)要包括大多數(shù)在整個(gè)集群重啟后期望啟動(dòng)的節(jié)點(diǎn), 這可以確保集群恢復(fù)到最新的狀態(tài)。 例如:

gateway:????recover_after_nodes:?1????recover_after_time:?5m????expected_nodes:?2

注意,為了能夠備份/快照完整地集群狀態(tài), 建議禁用flush的情況下所有節(jié)點(diǎn)的本地存儲(chǔ)都要有副本(理論上不需要所有的,只需要確保每個(gè)shard的副本被備份,這依賴replication的設(shè)置)。 共享存儲(chǔ)比如S3可以在一個(gè)地方保存不同節(jié)點(diǎn)的拷貝,盡管代價(jià)是帶來(lái)了更多的IO。

shared fs gateway

shared FS gateway已經(jīng)廢棄,以后會(huì)被移除, 不看了。

hadoop gateway

hadoop gateway以后會(huì)被移除, 不看了。

s3 gateway

s3 gateway以后會(huì)被移除, 不看了。

http

原文

http模塊允許通過(guò)http訪問(wèn)ES的接口。

http是完全異步的,意味著等待響應(yīng)時(shí)不會(huì)阻塞線程。

如果有可能, 考慮使用HTTP keep alive來(lái)獲得更好的性能,并且http客戶端不要啟用HTTP chunking。

settings

下面是http模塊的一些設(shè)置。

SettingDescription
http.port綁定的端口范圍, 默認(rèn)9200-9300
http.max_content_lengthhttp請(qǐng)求大小的上限, 默認(rèn)100mb
http.max_initial_line_lengthhttp url的最大長(zhǎng)度, 默認(rèn)4kb
http.compression是否支持http壓縮, 默認(rèn)是false
http.compression_levelhttp壓縮的級(jí)別, 默認(rèn)是6

http模塊共享通用的network設(shè)置。

disable http

設(shè)置http.enabled為false可以禁用http模塊,比如創(chuàng)建非數(shù)據(jù)節(jié)點(diǎn)來(lái)接收http請(qǐng)求,這些節(jié)點(diǎn)利用內(nèi)部的transport來(lái)和數(shù)據(jù)節(jié)點(diǎn)通信。

indices

原文

indices模塊可以對(duì)所有索引進(jìn)行全局管理。

indexing buffer

索引緩沖的設(shè)置可以控制多少內(nèi)存分配給索引進(jìn)程。 這是一個(gè)全局配置,會(huì)應(yīng)用于一個(gè)節(jié)點(diǎn)上所有不同的分片上。

indices.memory.index_buffer_size接受一個(gè)百分比或者一個(gè)表示字節(jié)大小的值。 默認(rèn)是10%,意味著分配給節(jié)點(diǎn)的總內(nèi)存的10%用來(lái)做索引緩沖的大小。 這個(gè)數(shù)值被分到不同的分片(shards)上。 如果設(shè)置的是百分比,還可以設(shè)置min_index_buffer_size?(默認(rèn)48mb)和max_index_buffer_size(默認(rèn)沒(méi)有上限)。

indices.memory.min_shard_index_buffer_size設(shè)置分配給每個(gè)分片的索引緩沖內(nèi)存的下限,默認(rèn)4mb。

ttl interval

你可以動(dòng)態(tài)設(shè)置indices.ttl.interval來(lái)控制自動(dòng)刪除過(guò)期documents的檢查間隔,默認(rèn)是60s。

刪除是批量進(jìn)行的,你可以設(shè)置indices.ttl.bulk_size來(lái)適應(yīng)你的需要,默認(rèn)值是10000。

其余的參考_ttl的文檔。

recovery

以下設(shè)置用來(lái)管理recovery的策略:

SettingDescription
indices.recovery.concurrent_streams默認(rèn)是3
indices.recovery.file_chunk_size默認(rèn)512kb
indices.recovery.translog_ops默認(rèn)1000
indices.recovery.translog_size默認(rèn)512kb
indices.recovery.compress默認(rèn)true
indices.recovery.max_bytes_per_sec默認(rèn)20mb
indices.recovery.max_size_per_sec0.90.1去掉,用indices.recovery.max_bytes_per_sec代替

下面的設(shè)置對(duì)存儲(chǔ)進(jìn)行限流:

SettingDescription
indices.store.throttle.type可以是merge?(默認(rèn)),?not或者all
indices.store.throttle.max_bytes_per_sec默認(rèn)20mb

jmx

removed as of v0.90.

memcached

原文

memcached模塊可以通過(guò)memecached協(xié)議來(lái)訪問(wèn)ES的接口。

memcached模塊通過(guò)一個(gè)名為transport-memcached插件提供,插件的安裝說(shuō)明見(jiàn)transport-memcached,也可以下載memcached插件并放在plugins目錄下。

memcached協(xié)議支持二進(jìn)制和文本兩種協(xié)議, 會(huì)自動(dòng)檢測(cè)應(yīng)該用哪一種協(xié)議。

mapping rest to memcached protocol

Memcached命令會(huì)被映射到REST接口,并且會(huì)被同樣的REST層處理,下面是支持的memcached命令列表:

get

memcached的GET命令映射到REST的GET方法。 用URI (帶參數(shù))來(lái)做key。 memcached的GET命令不允許在請(qǐng)求中帶body(SET不允許返回結(jié)果), 為此大多數(shù)REST接口(比如search)允許接受一個(gè)"source"作為URI的參數(shù)。

set

memcached的SET命令映射為REST的POST。 用URI (帶參數(shù))來(lái)做key, body映射為REST的body。

delete

memcached的DELETE命令映射為REST的DELETE。 用URI (帶參數(shù))來(lái)做key。

quit

memcached的QUIT命令用來(lái)斷開(kāi)客戶端鏈接。

settings

以下設(shè)置可以用來(lái)配置memcached:

SettingDescription
memcached.port綁定端口范圍, 默認(rèn)11211-11311

同樣共享通用的network設(shè)置。

disable memcached

設(shè)置memcached.enabled為false可以禁用memcached模塊, 默認(rèn)檢測(cè)到該插件即啟用memcached模塊。

network settings

原文

一個(gè)節(jié)點(diǎn)的多個(gè)模塊都用到了網(wǎng)絡(luò)基本配置,例如transport模塊和HTTP模塊。 節(jié)點(diǎn)級(jí)別的網(wǎng)絡(luò)配置可以用來(lái)設(shè)置所有基于網(wǎng)絡(luò)的模塊的通用配置(除了被每個(gè)模塊明確覆蓋的那些配置項(xiàng))。

network.bind_host用來(lái)設(shè)置綁定的ip地址, 默認(rèn)綁定anyLocalAddress?(0.0.0.0或者::0)。

network.publish_host配置其他節(jié)點(diǎn)和本節(jié)點(diǎn)通信的地址。 這個(gè)當(dāng)然不能是anyLocalAddress, 默認(rèn)是第一個(gè)非回環(huán)地址或者本機(jī)地址。

network.host設(shè)置是一個(gè)簡(jiǎn)化設(shè)置, 它自動(dòng)設(shè)置network.bind_host和network.publish_host為同一個(gè)值。

兩個(gè)設(shè)置都可以配置為主機(jī)ip地址或者主機(jī)名, 還可以設(shè)置為下表中列出來(lái)的值。

Logical Host Setting ValueDescription
local本機(jī)ip地址
_non_loopback_第一個(gè)非loopback地址
_non_loopback:ipv4_第一個(gè)非loopback的ipv4地址
_non_loopback:ipv6_第一個(gè)非loopback的ipv6地址
[networkInterface]指定網(wǎng)卡的IP地址. 例如?en0
[networkInterface]:ipv4指定網(wǎng)卡的IPv4地址. 例如?en0:ipv4
[networkInterface]:ipv6指定網(wǎng)卡的IPv6地址. 例如?en0:ipv6
_non_loopback:ipv6_第一個(gè)非loopback的ipv6地址

cloud-aws

如果安裝了cloud-aws插件, 下表列出來(lái)值也是有效的設(shè)置:

EC2 Host ValueDescription
ec2:privateIpv4The private IP address (ipv4) of the machine
ec2:privateDnsThe private host of the machines
ec2:publicIpv4The public IP address (ipv4) of the machine
ec2:publicDnsThe public host of the machines
ec2Less verbose option for the private ip address
ec2:privateIpLess verbose option for the private ip address
ec2:publicIpLess verbose option for the public ip address

tcp settings

任何使用TCP的組件 (比如HTTP, Transport和Memcached)共享下面的設(shè)置:

SettingDescription
network.tcp.no_delay啟用或禁用tcp no delay。 默認(rèn)是true.
network.tcp.keep_alive啟用或禁用tcp keep alive。 默認(rèn)不設(shè)置
network.tcp.reuse_address地址是否應(yīng)該被重用,在非windows的機(jī)器上默認(rèn)是true
network.tcp.send_buffer_sizetcp發(fā)送緩沖區(qū)的大小。 默認(rèn)不設(shè)置
network.tcp.receive_buffer_sizetcp接收緩沖區(qū)的大小。 默認(rèn)不設(shè)置

node

原文

ES可以設(shè)置一個(gè)節(jié)點(diǎn)是否在本地存儲(chǔ)數(shù)據(jù),存儲(chǔ)數(shù)據(jù)意味著不同索引的分片可以分配到這個(gè)節(jié)點(diǎn)上。 默認(rèn)每個(gè)節(jié)點(diǎn)都可以作為數(shù)據(jù)節(jié)點(diǎn)(data node),可以設(shè)置node.data為false來(lái)關(guān)閉。

這是一個(gè)很強(qiáng)大的配置, 可以很簡(jiǎn)單的來(lái)創(chuàng)建一個(gè)智能負(fù)載均衡。

我們可以啟動(dòng)一個(gè)數(shù)據(jù)節(jié)點(diǎn)的集群而不啟用http模塊, 這可以通過(guò)設(shè)置http.enabled為true做到, 這些節(jié)點(diǎn)通過(guò)transport模塊相互通信, 在集群的前端可以啟動(dòng)一個(gè)和或者多個(gè)啟用了http模塊的非數(shù)據(jù)節(jié)點(diǎn), 所有的http通訊由這些非數(shù)據(jù)節(jié)點(diǎn)來(lái)執(zhí)行。

這樣做的好處是首先能夠創(chuàng)建一個(gè)智能負(fù)載均衡器。 這些非數(shù)據(jù)節(jié)點(diǎn)仍然是集群的一部分, 他們將請(qǐng)求重定向到那些有相關(guān)數(shù)據(jù)的節(jié)點(diǎn)上。 另一個(gè)好處是對(duì)于那些scatter/gather操作(比如search), 這些節(jié)點(diǎn)可以執(zhí)行一部分處理, 因?yàn)樗鼈儐?dòng)scatter處理并且執(zhí)行實(shí)際的gather過(guò)程。

這樣數(shù)據(jù)節(jié)點(diǎn)可以專注于索引和查詢這類(lèi)大負(fù)載的工作,而不需要處理http請(qǐng)求, 占用網(wǎng)絡(luò)負(fù)載,或者執(zhí)行g(shù)ather過(guò)程。

plugins

原文

Plugins提供了以自定義的方式增強(qiáng)ES基本功能的途徑, 范圍包括添加自定義mapping類(lèi)型, 自定義分詞, 原生腳本, 自定義discovery等等。

installing plugins

安裝插件可以手工將插件安裝包放到plugins目錄, 也可以用plugin腳本來(lái)安裝。 在github的elasticsearch能找到好幾個(gè)插件, 名字以"elasticsearch-"開(kāi)頭。

從0.90.2開(kāi)始, 插件可以通過(guò)執(zhí)行?plugin --install /<user/component>/的形式來(lái)安裝。 插件會(huì)從download.elasticsearch.org自動(dòng)下載, 如果插件不存在的話, 就從maven(central and sonatype)下載。

注意, 如果插件放在maven central或者sonatype的話,?`是groupId,<user/component>是artifactId`。

對(duì)于以前的版本, 老的安裝方式是?plugin -install /<user/component>/

一個(gè)插件也可以直接通過(guò)指定它的URL來(lái)安裝, 例如

bin/plugin --url file://path/to/plugin --install plugin-name

或者對(duì)于老版本來(lái)說(shuō)是

bin/plugin -url file://path/to/plugin -install plugin-name

從0.90.2開(kāi)始, 插件的更新信息可以通過(guò)運(yùn)行?bin/plugin -h來(lái)獲得。

site plugins

插件可以包含一個(gè)站點(diǎn), 任何位于plugins目錄下的插件如果包含一個(gè)_site目錄, 目錄里的內(nèi)容就可以當(dāng)做靜態(tài)內(nèi)容通過(guò)/_plugin/[plugin_name]/url來(lái)訪問(wèn),在進(jìn)程已經(jīng)開(kāi)始的情況下也可以向其添加內(nèi)容。

安裝的插件如果不包含任何java相關(guān)的內(nèi)容, 會(huì)被自動(dòng)檢測(cè)為site插件, 內(nèi)容會(huì)被移動(dòng)到_site目錄下。

安裝github托管的插件非常簡(jiǎn)單, 比如運(yùn)行

#?From?0.90.2bin/plugin?--install?mobz/elasticsearch-headbin/plugin?--install?lukas-vlcek/bigdesk#?From?a?prior?versionbin/plugin?-install?mobz/elasticsearch-headbin/plugin?-install?lukas-vlcek/bigdesk

會(huì)自動(dòng)安裝這兩個(gè)site插件,elasticsearch-head插件可以通過(guò)?http://localhost:9200/_plugin/head/訪問(wèn), bigdesk插件可以通過(guò)http://localhost:9200/_plugin/bigdesk/訪問(wèn)。

mandatory plugins

如果你依賴一些插件, 你可以通過(guò)屬性plugin.mandatory來(lái)定義這些強(qiáng)制性(mandatory)插件, 下面是一個(gè)配置的例子:

plugin.mandatory:?mapper-attachments,lang-groovy

出于安全考慮, 如果mandatory插件沒(méi)有安裝, 節(jié)點(diǎn)不會(huì)啟動(dòng)。

installed plugins

當(dāng)前已加載的插件列表可通過(guò)Node Info API獲得。

removing plugins

要?jiǎng)h除一個(gè)插件,可以手工將它從plugins目錄移除,也可以用plugin腳本。

刪除一個(gè)插件通常可以用下面的形式:

plugin?--remove

silent/verbose mode

運(yùn)行plugin腳本時(shí), 可以加--verbose參數(shù)獲得更多的信息(調(diào)試模式)。 相反的, 如果希望plugin腳本靜默與運(yùn)行可以用--silent選項(xiàng)。

注意, 退出碼可能是:

0:?everything?was?OK64:?unknown?command?or?incorrect?option?parameter74:?IO?error70:?other?errorsbin/plugin?--install?mobz/elasticsearch-head?--verboseplugin?--remove?head?--silent

scripting

scripting模塊可以用腳本來(lái)執(zhí)行自定義表達(dá)式, 比如可以用腳本將"script fields"作為查詢的一部分返回, 或者用來(lái)計(jì)算某個(gè)查詢的自定義評(píng)分等。

腳本模塊默認(rèn)用擴(kuò)展過(guò)的mvel作為腳本語(yǔ)言, 之所以用是因?yàn)樗浅?於矣闷饋?lái)很簡(jiǎn)單, 大多數(shù)情況下需要的是簡(jiǎn)單的表達(dá)式(比如數(shù)學(xué)方程式)。

其他lang插件可以提供執(zhí)行不同語(yǔ)言腳本的能力, 目前支持的腳本插件有javascript的lang-javascript,Groovy的lang-groovy, Python的lang-python。 所有可以用script參數(shù)的地方可以設(shè)置lang參數(shù)來(lái)定義腳本所用的語(yǔ)言。?lang的選項(xiàng)可以是mvel,?js,?groovy,?python, 和native。

default scripting language

默認(rèn)的腳本語(yǔ)言是(如果沒(méi)有指定lang參數(shù))mvel。 如果要修改默認(rèn)語(yǔ)言的話可以將設(shè)置script.default_lang為合適的語(yǔ)言。

preloaded scripts

腳本可以作為相關(guān)api的一部分, 也可以將腳本放到config/scripts來(lái)預(yù)加載這些腳本, 這樣用到這些腳本的地方可以直接引用腳本的名字而不用提供整個(gè)腳本, 這有助于減少客戶端和節(jié)點(diǎn)間的傳輸?shù)臄?shù)據(jù)量。

腳本的名字從其所在的目錄結(jié)構(gòu)繼承,不需要帶文件名的后綴, 例如被放在config/scripts/group1/group2/test.py的腳本會(huì)被命名為group1_group2_test。

disabling dynamic scripts

建議ES運(yùn)行在某個(gè)應(yīng)用或者代理的后端,這樣可以將ES和外部隔離, 如果用戶被授權(quán)運(yùn)行動(dòng)態(tài)腳本(即使在search請(qǐng)求),那么他們就可以訪問(wèn)ES所在的機(jī)器。

首先, 你不應(yīng)該用root用戶來(lái)運(yùn)行ES, 因?yàn)檫@樣會(huì)允許腳本在你的服務(wù)器上沒(méi)有限制的做任何事, 其次你不應(yīng)該直接將ES暴露給用戶訪問(wèn), 如果你打算直接將ES暴露給用戶, 你必須決定是否足夠信任他們?cè)谀愕姆?wù)器上運(yùn)行腳本。 如果答案是不的話, 即使你有個(gè)代理僅允許GET請(qǐng)求, 你也應(yīng)該在每個(gè)節(jié)點(diǎn)的config/elasticsearch.yml加入如下設(shè)置來(lái)禁用動(dòng)態(tài)腳本:

script.disable_dynamic:?true

這樣可以僅允許配置過(guò)的命名腳本或者通過(guò)插件注冊(cè)的原生Java腳本運(yùn)行, 防止用戶通過(guò)接口來(lái)運(yùn)行任意腳本。

native (java) scripts

即使mvel已經(jīng)相當(dāng)快了,注冊(cè)的原生java腳本還能執(zhí)行的更快。

實(shí)現(xiàn)NativeScriptFactory接口的腳本才會(huì)被執(zhí)行。 主要有兩種形式,一種是擴(kuò)展AbstractExecutableScript,一種是擴(kuò)展AbstractSearchScript(可能大多數(shù)用戶會(huì)選擇這種方式, 可以借助AbstractLongSearchScript,?AbstractDoubleSearchScript,?AbstractFloatSearchScript這幾個(gè)輔助類(lèi)來(lái)實(shí)現(xiàn)擴(kuò)展)。

可以通過(guò)配置來(lái)注冊(cè)腳本, 例如:script.native.my.type設(shè)為sample.MyNativeScriptFactory將注冊(cè)一個(gè)名為my的腳本。 另一個(gè)途徑是插件中訪問(wèn)ScriptModule的registerScript方法注冊(cè)腳本。

設(shè)置lang為native并且提供腳本的名字就可以執(zhí)行注冊(cè)的腳本。

注意, 腳本需要位于ES的classpath下, 一個(gè)簡(jiǎn)單方法是在plugins目錄下創(chuàng)建一個(gè)目錄(選擇一個(gè)描述性的名字),將jar/classes文件放在這個(gè)目錄,他們就會(huì)被自動(dòng)加載。

score

所有的腳本都可以在facets中使用, 可以通過(guò)doc.score訪問(wèn)當(dāng)前文檔的評(píng)分。

document fields

大多數(shù)腳本都會(huì)用到document的字段,?doc['field_name']可以用來(lái)訪問(wèn)document中的某個(gè)字段(document通常通過(guò)腳本的上下文傳給腳本)。 訪問(wèn)document的字段非常快, 因?yàn)樗麄儠?huì)被加載到內(nèi)存中(所有相關(guān)的字段值/token會(huì)被加載到內(nèi)存中)。

下表是能夠從字段上拿到的數(shù)據(jù):

ExpressionDescription
doc['field_name'].value字段的原生值, 比如,如果是字段short類(lèi)型,就返回short類(lèi)型的值
doc['field_name'].values字段的原生值的數(shù)組, 比如,如果字段是short類(lèi)型,就返回short[]類(lèi)型的數(shù)組。 記住,單個(gè)文檔中的一個(gè)字段可以有好幾個(gè)值,如果字段沒(méi)有值就返回空數(shù)組
doc['field_name'].emptyboolean值, 表明文檔的字段是否有值
doc['field_name'].multiValuedboolean值, 表明文檔的字段是否有多個(gè)值
doc['field_name'].latgeo point類(lèi)型的維度值
doc['field_name'].longeo point類(lèi)型的經(jīng)度值
doc['field_name'].latsgeo point類(lèi)型的維度數(shù)組
doc['field_name'].lonsgeo point類(lèi)型的經(jīng)度數(shù)組
doc['field_name'].distance(lat, lon)geo point類(lèi)型的字段到給定坐標(biāo)的plane距離(單位是miles)
doc['field_name'].arcDistance(lat, lon)geo point類(lèi)型的字段到給定坐標(biāo)的arc距離(單位是miles)
doc['field_name'].distanceInKm(lat, lon)geo point類(lèi)型的字段到給定坐標(biāo)的plane距離(單位是km)
doc['field_name'].arcDistanceInKm(lat, lon)geo point類(lèi)型的字段到給定坐標(biāo)的arc距離(單位是km)
doc['field_name'].geohashDistance(geohash)geo point類(lèi)型的字段到給定geohash的距離(單位是miles)
doc['field_name'].geohashDistanceInKm(geohash)geo point類(lèi)型的字段到給定geohash的距離(單位是km)

stored fields

執(zhí)行腳本時(shí)也可以訪問(wèn)存儲(chǔ)的字段(Stored), 注意,因?yàn)樗麄儾粫?huì)被記載到內(nèi)存,所以訪問(wèn)速度與訪問(wèn)document字段相比慢很多。 可以用_fields['my_fields_name'].value或_fields['my_fields_name'].values的形式來(lái)訪問(wèn)。

source field

執(zhí)行腳本時(shí)也可以獲取源字段(source)。 每個(gè)文檔的源字段會(huì)被加載,解析,然后提供給腳本計(jì)算。 可以通過(guò)上下文的_source來(lái)訪問(wèn)源字段,例如_source.obj2.obj1.fields3。

mvel built in functions

以下是腳本中可以使用的內(nèi)置函數(shù):

FunctionDescription
time()The current time in milliseconds.
sin(a)Returns the trigonometric sine of an angle.
cos(a)Returns the trigonometric cosine of an angle.
tan(a)Returns the trigonometric tangent of an angle.
asin(a)Returns the arc sine of a value.
acos(a)Returns the arc cosine of a value.
atan(a)Returns the arc tangent of a value.
toRadians(angdeg)Converts an angle measured in degrees to an approximately equivalent angle measured in radians.
toDegrees(angrad)Converts an angle measured in radians to an approximately equivalent angle measured in degrees.
exp(a)Returns Euler’s number e raised to the power of value.
log(a)Returns the natural logarithm (base e) of a value.
log10(a)Returns the base 10 logarithm of a value.
sqrt(a)Returns the correctly rounded positive square root of a value.
cbrt(a)Returns the cube root of a double value.
IEEEremainder(f1, f2)Computes the remainder operation on two arguments as prescribed by the IEEE 754 standard.
ceil(a)Returns the smallest (closest to negative infinity) value that is greater than or equal to the argument and is equal to a mathematical integer.
floor(a)Returns the largest (closest to positive infinity) value that is less than or equal to the argument and is equal to a mathematical integer.
rint(a)Returns the value that is closest in value to the argument and is equal to a mathematical integer.
atan2(y, x)Returns the angle theta from the conversion of rectangular coordinates (x, y) to polar coordinates (r,theta).
pow(a, b)Returns the value of the first argument raised to the power of the second argument.
round(a)Returns the closest int to the argument.
random()Returns a random double value.
abs(a)Returns the absolute value of a value.
max(a, b)Returns the greater of two values.
min(a, b)Returns the smaller of two values.
ulp(d)Returns the size of an ulp of the argument.
signum(d)Returns the signum function of the argument.
sinh(x)Returns the hyperbolic sine of a value.
cosh(x)Returns the hyperbolic cosine of a value.
tanh(x)Returns the hyperbolic tangent of a value.
hypot(x, y)Returns sqrt(x2 + y2) without intermediate overflow or underflow.

arithmetic precision in mvel

用基于MVEL的腳本做兩個(gè)數(shù)的除法時(shí), 引擎遵循java的默認(rèn)規(guī)則, 這意味著如果你把兩個(gè)整數(shù)相除(你可以在mapping里配置字段為integer類(lèi)型), 結(jié)果仍然是整數(shù)。 也就是說(shuō)如果你在腳本中計(jì)算1/num這樣的表達(dá)式, 如果num是整數(shù)8的話,結(jié)果是0而不是你可能期望的0.125,你需要明確用doubel來(lái)指定精度以獲得期望的結(jié)果,用比如1.0/num。

thread pool

為了提高線程管理和內(nèi)存使用的效率, 一個(gè)節(jié)點(diǎn)會(huì)用到好幾個(gè)線程池, 比較重要的是以下幾個(gè)。

FunctionDescription
index用于index/delete, 默認(rèn)是fixed, 大小為# of available processors, queue_size是200
search用于count/search, 默認(rèn)是fixed, 大小為3x # of available processors, queue_size是1000
suggest用于suggest, 默認(rèn)是fixed, 大小為# of available processors, queue_size是1000
geting用于get, 默認(rèn)是fixed, 大小為# of available processors, queue_size是1000
bulk用于bulk, 默認(rèn)是fixed, 大小為# of available processors, queue_size是50
percolate用于percolate, 默認(rèn)是fixed, 大小為# of available processors, queue_size是1000
warmer用于warm-up, 默認(rèn)是scaling, keep-alive是5m
refresh用于refresh, 默認(rèn)是fixed, keep-alive是5m
percolate用于percolate, 默認(rèn)是fixed, 大小為# of available processors, queue_size是1000

可以通過(guò)設(shè)置線程池的類(lèi)型以及參數(shù)來(lái)修改指定的線程池,下面的例子配置index線程池可以用更多的線程:

threadpool:????index:????????type:?fixed????????size:?30

注意, 可以通過(guò)Cluster Update Settings接口在運(yùn)行期間修改線程池的設(shè)置。

thread pool types

以下是線程池的類(lèi)型以及對(duì)應(yīng)的參數(shù)。

cache

cache線程池是沒(méi)有大小限制的, 只要有請(qǐng)求就會(huì)啟動(dòng)一個(gè)線程, 下面是設(shè)置的例子:

threadpool:????index:????????type:?cached

fixed

fixed線程池有固定的大小, 如果當(dāng)前沒(méi)有可用的線程時(shí),就把請(qǐng)求放到一個(gè)隊(duì)列里, 隊(duì)列可以設(shè)置大小。

size參數(shù)設(shè)置線程的數(shù)量, 默認(rèn)是cpu內(nèi)核數(shù)乘以5。

queue_size設(shè)置存放掛起請(qǐng)求的隊(duì)列的大小, 默認(rèn)是-1, 即沒(méi)有大小限制。 如果一個(gè)請(qǐng)求進(jìn)來(lái)而隊(duì)列已經(jīng)滿了的情況下, 這個(gè)請(qǐng)求會(huì)被舍棄。

配置例子如下:

threadpool:????index:????????type:?fixed????????size:?30????????queue_size:?1000

processors setting

ES會(huì)自動(dòng)檢測(cè)處理器的數(shù)量, 并且會(huì)自動(dòng)根據(jù)處理器的數(shù)量來(lái)設(shè)置線程池。 有時(shí)候可能檢測(cè)出來(lái)的處理器數(shù)量是錯(cuò)的, 這種情況下可以設(shè)置processors?來(lái)聲明處理器的數(shù)量。

可以用帶os參數(shù)的nodes info接口來(lái)檢查自動(dòng)檢測(cè)出來(lái)的處理器數(shù)量。

thrift

thrift傳輸模塊允許通過(guò)thrift協(xié)議對(duì)外暴露REST接口, Thrift協(xié)議可以提供比http協(xié)議更好的性能。 因?yàn)閠hrift既提供了協(xié)議,也提供了傳輸?shù)膶?shí)現(xiàn)方式, 用起來(lái)應(yīng)該很簡(jiǎn)單(盡管缺乏相關(guān)文檔)。

使用thrift需要安裝transport-thrift插件?。

thrift schema可以用來(lái)生成thrift的客戶端代碼。

thrift的相關(guān)配置如下:

SettingDescription
thrift.port綁定的端口, 默認(rèn)9500-9600
thrift.frame默認(rèn)-1, 即不分frame, 可以設(shè)置比較大的值來(lái)指定frame的大小(比如15mb)。

transport

傳輸模塊用于集群內(nèi)節(jié)點(diǎn)間的內(nèi)部通訊。 每次跨節(jié)點(diǎn)的調(diào)用都會(huì)用到transport模塊(比如某個(gè)節(jié)點(diǎn)接受http GET請(qǐng)求,實(shí)際執(zhí)行處理的是另一個(gè)持有數(shù)據(jù)的節(jié)點(diǎn))。

transport機(jī)制是完全異步的, 即等待響應(yīng)時(shí)不會(huì)阻塞線程, 異步通信的好處首先是解決了C10k問(wèn)題, 另外也是scatter(broadcast)/gather操作(比如搜索)的方案。

tcp transport

TCP transport是用TCP實(shí)現(xiàn)傳輸模塊, 允許如下設(shè)置:

SettingDescription
transport.tcp.port綁定的端口范圍, 默認(rèn)9300-9400
transport.tcp.connect_timeoutsocket鏈接的超時(shí)時(shí)間, 默認(rèn)2s
transport.tcp.compress設(shè)置為true可以啟用壓縮(LZF), 默認(rèn)是false。

tcp transport共享通用網(wǎng)絡(luò)設(shè)置。

local transport

這在JVM內(nèi)做集成測(cè)試時(shí)非常有用。 當(dāng)使用NodeBuilder#local(true)時(shí)會(huì)自動(dòng)啟用。

?

補(bǔ)充說(shuō)明:

Gateway

Gateway是一種存儲(chǔ)集群中各節(jié)點(diǎn)元數(shù)據(jù)(meta data)的狀態(tài)方式,這里的元數(shù)據(jù)主要用來(lái)記錄所有的索引在創(chuàng)建時(shí)各自的設(shè)置和明確的類(lèi)型映射。每次當(dāng)元數(shù)據(jù)改變,比如一個(gè)索引被加入或被刪除,這些變化都會(huì)通過(guò)gateway存儲(chǔ)起來(lái)。當(dāng)集群?jiǎn)?dòng)時(shí),這些狀態(tài)將會(huì)從gateway中讀取并應(yīng)用。

  • gateway.type

  • gateway類(lèi)型,默認(rèn)是local,也是es官方強(qiáng)烈建議的。

  • gateway.recover_after_nodes

  • 在多少個(gè)節(jié)點(diǎn)啟動(dòng)后,允許數(shù)據(jù)恢復(fù)進(jìn)程啟動(dòng),默認(rèn)是1

  • gateway.recover_after_time

  • 設(shè)置數(shù)據(jù)恢復(fù)進(jìn)程初始化的超時(shí)時(shí)間,默認(rèn)是5分鐘

  • gateway.expected_nodes

  • 設(shè)置在集群中的多少個(gè)節(jié)點(diǎn)啟動(dòng)后馬上開(kāi)始數(shù)據(jù)恢復(fù)進(jìn)程(不用等到gateway.recover_after_time這個(gè)屬性設(shè)置的時(shí)間到)

    ?? Recovery Throttling

    這里的設(shè)置是用來(lái)控制分片分配的進(jìn)程,當(dāng)各節(jié)點(diǎn)間進(jìn)行初始化恢復(fù)、索引拷貝分配、再次負(fù)載均衡,或再增加或去掉節(jié)點(diǎn)的時(shí)候。

  • cluster.routing.allocation.node_initial_primaries_recoveries

  • 初始化數(shù)據(jù)恢復(fù)時(shí),并發(fā)恢復(fù)線程的個(gè)數(shù),默認(rèn)為4。

  • cluster.routing.allocation.node_concurrent_recoveries

  • 添加刪除節(jié)點(diǎn)或負(fù)載均衡時(shí)并發(fā)恢復(fù)線程的個(gè)數(shù),默認(rèn)為4

  • indices.recovery.max_size_per_sec

  • 設(shè)置數(shù)據(jù)恢復(fù)時(shí)限制的帶寬,默認(rèn)為0,表示無(wú)限制。

  • indices.recovery.concurrent_streams

  • 這個(gè)參數(shù)來(lái)限制從其它分片恢復(fù)數(shù)據(jù)時(shí)最大同時(shí)打開(kāi)并發(fā)流的個(gè)數(shù),默認(rèn)為5

    ?? Discovery

  • discovery.zen.minimum_master_nodes

  • 設(shè)置這個(gè)參數(shù)來(lái)保證集群中的節(jié)點(diǎn)可以知道其它N個(gè)有master資格的節(jié)點(diǎn)。默認(rèn)為1,對(duì)于大的集群來(lái)說(shuō),可以設(shè)置大一點(diǎn)的值(2-4)。

  • discovery.zen.ping.timeout

  • 設(shè)置集群中自動(dòng)發(fā)現(xiàn)其它節(jié)點(diǎn)時(shí)ping連接超時(shí)時(shí)間,默認(rèn)為3秒,對(duì)于比較差的網(wǎng)絡(luò)環(huán)境可以高點(diǎn)的值來(lái)防止自動(dòng)發(fā)現(xiàn)時(shí)出錯(cuò)

  • discovery.zen.ping.multicast.enabled

  • 設(shè)置是否打開(kāi)多播來(lái)發(fā)現(xiàn)來(lái)發(fā)現(xiàn)節(jié)點(diǎn),默認(rèn)是true

  • discovery.zen.ping.unicast.hosts

  • 設(shè)置集群中master節(jié)點(diǎn)的初始列表,可以通過(guò)這些節(jié)點(diǎn)來(lái)自動(dòng)發(fā)現(xiàn)新加入集群的節(jié)點(diǎn)。

    轉(zhuǎn)載于:https://my.oschina.net/u/1024514/blog/467761

    總結(jié)

    以上是生活随笔為你收集整理的elasticsearch文档-modules的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    91污视频在线观看 | 曰本三级在线 | 西西4444www大胆艺术 | 精品国产一区二区三区久久久久久 | 在线免费观看黄色大片 | 99久久99久久免费精品蜜臀 | 在线观看国产日韩欧美 | 日韩精品一区二区在线视频 | 国内精品视频在线播放 | 91片网 | 久久午夜国产 | 色综合久久88 | 日韩在线观看视频一区二区三区 | 一区在线观看视频 | 日韩av一卡二卡三卡 | 亚洲国产片色 | 国产视频黄 | 99久久久国产精品 | 99久久久久久久 | 最新真实国产在线视频 | 又黄又刺激的视频 | 亚洲国产影院av久久久久 | 国产欧美精品一区二区三区 | 最新av网站在线观看 | 欧美亚洲精品一区 | 日韩电影中文 | 国产精品久久久久久久久久白浆 | 天天综合网在线观看 | 日韩www在线| 婷婷久久网 | 人人插超碰 | 久久草在线精品 | 久久久久成人精品免费播放动漫 | 美女视频黄的免费的 | av免费看在线| 91在线视频导航 | 国产精品免费一区二区 | 久久精品99| 99久久夜色精品国产亚洲 | 丁香综合五月 | 国产午夜精品福利视频 | 欧日韩在线 | 91在线影院 | 久久久99精品免费观看 | 色视频网站免费观看 | 日韩精品中文字幕有码 | 久久激情视频免费观看 | 亚洲黄色一级视频 | 国产高清视频在线播放 | 久草在线最新视频 | 天天综合网 天天 | 欧美久久久 | 夜夜操夜夜干 | 欧美大码xxxx | 99福利片 | 午夜色婷婷| 日韩av高潮 | 日日夜夜精品免费观看 | 天天操天天射天天舔 | www免费网站在线观看 | 在线 视频 一区二区 | 麻豆视频大全 | 欧美日韩中文字幕综合视频 | 天天干天天怕 | 天天操天天干天天插 | 天天射天天搞 | 久久久久久久久网站 | 亚洲日本欧美在线 | 久久久久成人精品 | 亚洲激情影院 | 伊香蕉大综综综合久久啪 | 国产色视频一区二区三区qq号 | 久久久久久久久久久黄色 | 日韩高清在线观看 | 日韩av免费一区 | 丁香五婷 | 国产精品久一 | 亚洲欧洲视频 | 亚洲黄色一级大片 | 操操日日 | 亚洲高清在线观看视频 | 久久综合九色综合欧美狠狠 | 久久精品五月 | 超碰在线1| 黄色大片视频网站 | 亚洲欧美成人在线 | 超碰在线中文字幕 | 激情视频久久 | 日韩精品视频在线免费观看 | 九九热精| 久久这里只有精品9 | 高清免费在线视频 | 久久九九久久精品 | 日韩av不卡在线 | 欧美久久久影院 | 久久艹国产 | av亚洲产国偷v产偷v自拍小说 | 日韩欧美aaa | 国产 日韩 在线 亚洲 字幕 中文 | 绯色av一区 | 免费在线观看视频一区 | 国产美女免费观看 | 国产流白浆高潮在线观看 | 91网站在线视频 | 欧美日韩精品在线播放 | 国产精品久久久久久久av大片 | 日韩一区二区免费播放 | 久久激情日本aⅴ | 九九精品视频在线观看 | free,性欧美 九九交易行官网 | 久久爽久久爽久久av东京爽 | 久草视频精品 | 久久久免费高清视频 | 精品亚洲男同gayvideo网站 | 97日日碰人人模人人澡分享吧 | 丁香午夜婷婷 | 天天操天天干天天爽 | 精品美女久久久久 | 国产精品影音先锋 | 97在线看 | 国产高清不卡在线 | 色综合久 | 黄色免费电影网站 | 91精品国产高清自在线观看 | 亚洲视频aaa | 一区二区激情视频 | 中文在线亚洲 | 亚洲精品国产电影 | 99热99| 亚洲一区久久久 | 中文字幕在线观看第三页 | 成人精品亚洲 | www..com毛片| 国产精品18久久久久久久 | 欧美亚洲国产一卡 | 人人草天天草 | 国产成人在线一区 | 五月婷婷六月丁香激情 | 成人午夜精品福利免费 | 精品久久影院 | 欧美国产日韩中文 | 在线 成人 | 国产成人精品一二三区 | 天堂va欧美va亚洲va老司机 | 天天综合久久综合 | 天天综合天天做 | 99视频99| 美女黄频 | 黄色a在线观看 | 国产精品久久一卡二卡 | 久久这里精品视频 | 国产亚洲人 | 丰满少妇在线观看 | 久久免费看毛片 | 亚洲综合视频在线观看 | 日日夜夜网 | 久久国产色| 99在线热播精品免费99热 | 亚洲伦理中文字幕 | 丝袜美腿在线 | 在线视频app | 国产午夜精品一区二区三区四区 | 亚洲伊人婷婷 | 97视频亚洲 | 日韩一区二区三区高清在线观看 | 天天视频色版 | 国产96在线观看 | 99免费国产 | 色姑娘综合网 | 精品视频在线免费 | 欧美成年人在线观看 | 国产精品成人自产拍在线观看 | 91九色丨porny丨丰满6 | 国产一区二区三精品久久久无广告 | 久视频在线播放 | 成人在线免费看视频 | 国产 欧美 日产久久 | 亚洲国产精品999 | 2019免费中文字幕 | 中文伊人 | 国产专区精品视频 | 久久精品视频国产 | 成人av电影在线观看 | 在线观看国产日韩欧美 | 美女视频又黄又免费 | 久久精品一区二区三 | 欧美日韩不卡一区 | 日韩精品一区二区三区免费视频观看 | 成人免费观看网站 | 91爱爱中文字幕 | 久久久国产毛片 | 亚洲综合激情 | 日韩激情综合 | 欧美日韩综合在线观看 | 日韩免费av片 | 国产丝袜制服在线 | 国产成人在线网站 | 91麻豆精品国产自产在线 | 久久久麻豆视频 | www.国产在线 | 狠狠狠狠狠狠 | 99久久久国产精品 | 久久精品久久综合 | 久久久免费精品国产一区二区 | 国产精品一区电影 | 免费电影一区二区三区 | 欧美亚洲另类在线视频 | 色婷婷一区 | 久久综合狠狠综合久久综合88 | 国产成人精品一区二区三区在线 | 亚洲精品456在线播放乱码 | 日韩在线视频网址 | 中文字幕久久精品亚洲乱码 | 精品国产久 | 亚洲高清视频在线播放 | 一区二区三区观看 | 久久观看最新视频 | 成人三级网址 | 欧美日韩成人一区 | 久久国产精彩视频 | 午夜影院三级 | 欧美一区二区免费在线观看 | 日韩大片在线免费观看 | 在线视频欧美精品 | 全黄色一级片 | 欧美日韩在线精品一区二区 | 亚洲香蕉在线观看 | 久精品视频在线 | 成人天堂网 | 亚洲黄色免费 | 色资源网在线观看 | 精品伦理一区二区三区 | 国产在线最新 | 亚洲国产欧美在线人成大黄瓜 | 91女子私密保健养生少妇 | 欧美精品久久人人躁人人爽 | 色偷偷人人澡久久超碰69 | 色亚洲激情 | 国产成人精品久久亚洲高清不卡 | 在线观看国产91 | 91视频国产免费 | 中文字幕色在线 | 国产精品久久久久久久久久了 | 久久精品综合视频 | 日韩在线欧美在线 | 国产精品99久久久久久久久 | 日日操天天操狠狠操 | 免费男女羞羞的视频网站中文字幕 | 又污又黄的网站 | 9在线观看免费高清完整版在线观看明 | 天天做天天爽 | 亚洲精品久久久蜜桃 | 欧美久久精品 | 精品久久久久国产免费第一页 | 在线观看av中文字幕 | 天天操天天爽天天干 | 视频在线观看入口黄最新永久免费国产 | 中文字幕一区二区三区久久蜜桃 | 一级α片 | 狠狠色狠狠色合久久伊人 | 六月激情 | 91成人短视频在线观看 | 中文字幕在线视频国产 | 日韩黄色软件 | 国产美女精品视频免费观看 | 91色综合| 国产精品毛片一区二区 | 最近中文字幕在线播放 | 久久人人精品 | 手机看片国产日韩 | 偷拍视频一区 | 日韩免费二区 | 亚洲精品视频一二三 | 久久亚洲成人网 | 国产精品女人久久久久久 | 国产精品日韩久久久久 | 午夜av免费看 | 男女全黄一级一级高潮免费看 | 日本中文字幕网站 | 福利视频一二区 | 久久99亚洲精品久久久久 | 国产小视频在线播放 | 国产精品一区二区免费 | 亚洲精品美女在线 | 韩国在线一区 | 国产精品成人一区 | 玖草在线观看 | 亚洲国产精品传媒在线观看 | 久久国产精品二国产精品中国洋人 | 九九九热精品免费视频观看 | 亚洲专区免费观看 | 黄色电影网站在线观看 | 日韩电影精品 | 色偷偷男人的天堂av | 伊人天天操 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 欧美日性视频 | 日韩av一卡二卡三卡 | 天天摸日日摸人人看 | 麻花豆传媒一二三产区 | 国产91精品一区二区麻豆网站 | 主播av在线 | 玖玖色在线观看 | 最近久乱中文字幕 | 亚洲 综合 精品 | 五月婷婷激情六月 | 97在线免费观看 | 精品视频资源站 | 99国产情侣在线播放 | 午夜精品久久久久久久99水蜜桃 | 久久成人国产精品免费软件 | 久久黄色影视 | 国产免费观看高清完整版 | 国产亚洲精品久久久久久 | 日韩视频一区二区三区 | 色综合天天色综合 | 免费午夜视频在线观看 | 欧美性久久久 | 成人av影视 | 久久国产精品99久久久久久老狼 | 欧美日韩不卡一区二区 | 久久国产91| 久久国产精品影片 | 婷婷免费视频 | 91视频-88av | 99r在线视频| 一区二区不卡高清 | 国产人免费人成免费视频 | 久草在线手机观看 | 色综合久久88色综合天天人守婷 | 国产精品一区二区 91 | 狠狠狠色丁香综合久久天下网 | 一区二区欧美激情 | 亚洲黄色在线免费观看 | 激情图片久久 | 在线91视频 | 久久久午夜剧场 | 天天干天天干天天干 | 免费在线观看一区 | 操操碰| 久久xxxx| 成人网在线免费视频 | 天天操天天操天天操天天操 | 在线观看国产日韩欧美 | 人人插人人玩 | 亚洲精品欧美视频 | 亚洲1级片| 在线观看你懂的网址 | 国产亚洲婷婷免费 | 国语久久| 999成人| 久久亚洲成人网 | 五月综合激情婷婷 | aav在线| 久久精品免费看 | 在线一二区 | 伊人天堂久久 | 国产群p| 欧美久久久久久久久 | 香蕉久草| 在线免费av播放 | 天天久久夜夜 | 国产一区视频在线观看免费 | 中国精品少妇 | 丁香激情五月婷婷 | 国产免码va在线观看免费 | avhd高清在线谜片 | 最近中文字幕久久 | 中文字幕乱码电影 | 亚洲 欧美 另类人妖 | 免费黄色a级毛片 | 日韩欧美一区二区在线 | 97av.com | 黄色小说18 | 日韩城人在线 | 中文字幕视频免费观看 | 国产成人av | 在线观看亚洲精品 | 中文字幕91视频 | 性色视频在线 | 亚洲免费婷婷 | 亚洲精品国偷拍自产在线观看蜜桃 | 日韩二区三区在线 | 日韩精品一区二区久久 | 欧美日韩在线视频一区二区 | 黄色毛片视频免费观看中文 | 国产一区二区精品在线 | 国产91影视 | 国产专区一 | 国产视频资源在线观看 | 国产亚洲视频在线免费观看 | 五月天电影免费在线观看一区 | 国产一卡久久电影永久 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 狠狠躁天天躁 | 亚洲三级av| 免费视频在线观看网站 | 999成人国产| 深夜免费小视频 | 日本精品在线视频 | 日韩三级视频 | 黄色毛片视频免费观看中文 | 99久久99视频只有精品 | 婷婷在线免费观看 | 精品国产一区二区在线 | 日韩精品播放 | 日韩一区在线播放 | 日韩中文字幕免费看 | 日韩系列在线观看 | 精品国产免费看 | 日韩久久在线 | 蜜桃av人人夜夜澡人人爽 | 中文字幕在线播放第一页 | 色婷婷狠狠五月综合天色拍 | 天天操天天干天天插 | 9999在线视频 | 久草免费在线视频观看 | 成人片在线播放 | a级成人毛片 | 中文字幕一区二区在线播放 | 91久久爱热色涩涩 | 美女免费黄视频网站 | 色综合久久中文综合久久牛 | 在线观看视频国产一区 | 免费久久99精品国产 | 精品久久久久久国产 | 久久久99精品免费观看app | 亚洲精品一区二区网址 | 免费99| 国内成人精品2018免费看 | 97人人澡人人添人人爽超碰 | 日本中文字幕系列 | 欧美日本不卡高清 | 天天操天天干天天插 | 在线观看中文字幕 | 日日爽夜夜操 | 国产手机在线 | 亚洲成年人在线播放 | 国产视频亚洲 | 欧美国产高清 | 色综合久久88色综合天天免费 | 亚洲精品视频一二三 | 日本3级在线观看 | 亚洲欧美日韩国产精品一区午夜 | 久久久国内精品 | 久久精品日产第一区二区三区乱码 | 久久综合九色综合欧美就去吻 | av黄网站 | 国产精品久久久久久久久久新婚 | 欧美污污网站 | 国产一级视屏 | av888av.com| 三上悠亚在线免费 | 国产毛片久久 | 亚洲精品1区2区3区 超碰成人网 | 激情图片区| 在线观看成人福利 | 香蕉成人在线视频 | 最近最新中文字幕视频 | 国产美女网 | 国产精品美女久久久久久久 | 91精品久久久久久综合五月天 | 一区在线观看 | 亚洲在线免费视频 | 亚洲乱码精品 | 免费观看www小视频的软件 | 在线国产黄色 | 天天爱天天色 | 亚洲精品在线观看av | 欧美久久久久久久久久久久久 | 波多野结衣日韩 | 激情av网址| 中文字幕在线观看完整版 | 日韩一区二区三区免费视频 | 日韩精品一区二区在线观看视频 | 精品在线观看一区二区三区 | 亚洲一二区精品 | 久产久精国产品 | 91视频大全| 国产亚洲久久 | 成人av中文字幕在线观看 | 日韩免费久久 | 国产精品视频内 | 视频国产精品 | 操操日 | 国产精品一区久久久久 | 欧美性成人 | 国产视频在线一区二区 | 91精品天码美女少妇 | 91传媒在线看 | 国产亚洲精品久久久久秋 | 天天色宗合 | 免费观看v片在线观看 | 97色综合 | www黄| a爱爱视频 | 久久综合狠狠综合久久综合88 | 四虎成人精品 | 91精品91| 久久影视精品 | 久久精品亚洲精品国产欧美 | 9999国产精品| 国产一级性生活视频 | www.色五月| 日韩欧美专区 | 九九九电影免费看 | 国产精品2018 | 成人全视频免费观看在线看 | a爱爱视频 | 亚洲欧美国产视频 | 黄色福利视频网站 | 久久一区二区三区四区 | 欧美一区二区三区在线看 | 美女网站在线播放 | 午夜黄网 | 蜜臀久久99精品久久久酒店新书 | 久久麻豆视频 | 久久国内精品 | 激情九九| 国产免费一区二区三区最新 | 成人影视免费 | 国产1区2区3区精品美女 | 国产黑丝一区二区三区 | 色先锋av资源中文字幕 | 亚洲九九影院 | 国产成人精品在线播放 | 久久在线视频精品 | 久久综合九色 | 嫩模bbw搡bbbb搡bbbb | 国产精品久久久久久久久蜜臀 | 久久69av| 国产剧情av在线播放 | 久久久黄色免费网站 | 国产视频在线观看免费 | 国产精品久久网站 | 超碰人人在线 | 日韩欧美一区二区在线 | 精品视频免费播放 | 国产黄色免费 | 9999精品 | 九九热视频在线 | 亚洲午夜久久久综合37日本 | 91精品国产99久久久久久久 | a在线观看国产 | 国产精品久久影院 | 欧洲视频一区 | 成人av在线一区二区 | 日韩欧美精品在线 | 97精品国产97久久久久久春色 | 日韩欧美在线高清 | 日韩成人在线免费观看 | 97国产精品视频 | 超碰夜夜 | 成人国产精品入口 | 久久黄色免费 | 久久国产三级 | 一区二区三区在线观看免费视频 | 欧美一区二区在线 | 黄色资源在线观看 | 五月天天天操 | 国产视频在线一区二区 | 久久久www| www.日日操.com| 中文字幕精品一区久久久久 | av高清在线| 二区三区在线 | 正在播放日韩 | 精品久久久久久一区二区里番 | 免费影视大全推荐 | 99久热在线精品视频 | 欧美精品久久久久久久 | 国产在线精品一区 | 人成免费网站 | 国产高清不卡一区二区三区 | 国产一级特黄毛片在线毛片 | 欧美日韩视频在线 | 日韩精品一区二区三区高清免费 | www.狠狠色.com | www.久久免费视频 | 精品久久久久国产免费第一页 | 日日干美女 | 黄色av电影网 | 9999精品免费视频 | 99综合电影在线视频 | 日韩欧美精品一区 | 亚洲欧美激情插 | 亚洲免费不卡 | 久久天天躁狠狠躁亚洲综合公司 | 国产一二区在线观看 | 久久国产精品一区二区三区 | www.com黄色| 日本色小说视频 | 成人午夜精品福利免费 | 日韩精品一卡 | 9797在线看片亚洲精品 | 亚洲理论在线观看电影 | 亚洲综合视频在线观看 | 久久精品国产99国产 | 欧美精品一区在线 | 精品国产美女 | 丁香电影小说免费视频观看 | 久久99偷拍视频 | 久久在线影院 | 最新精品国产 | 91精品欧美 | 日韩黄色网络 | 91在线porny国产在线看 | 天天干天天操天天 | 国产精品久久久精品 | 久久国内视频 | 97小视频| 国产精品一区二区视频 | 夜夜高潮夜夜爽国产伦精品 | 久久伊人婷婷 | 国产一区二区三区午夜 | 成年人免费看的视频 | 黄色精品一区 | 中文字幕在线视频一区 | 国产精品a久久久久 | 最近更新好看的中文字幕 | 99热这里精品 | 日韩在线视频一区 | 中文高清av | 91麻豆高清视频 | 精品国产成人av在线免 | 69国产盗摄一区二区三区五区 | 久久激情五月激情 | 欧美日韩在线观看一区 | 波多野结衣视频一区二区三区 | av成人在线看 | 亚洲免费黄色 | 久久99电影 | 国产成人99av超碰超爽 | 国产成视频在线观看 | 精品久久久久久国产偷窥 | 日韩激情片在线观看 | 国产一级视频在线 | 日韩中文字幕亚洲一区二区va在线 | 免费观看v片在线观看 | 免费91麻豆精品国产自产在线观看 | 性色视频在线 | 香蕉视频国产在线观看 | 国产欧美最新羞羞视频在线观看 | 成人黄色小说在线观看 | 国产精品91一区 | 久草网视频在线观看 | 国内精品视频免费 | 丁香花在线观看视频在线 | 亚洲精品videossex少妇 | 高清日韩一区二区 | 天天爱天天 | 91香蕉视频色版 | 免费人成在线观看 | 97在线观看视频 | 97在线观看视频免费 | 日本在线视频一区二区三区 | 天天色天天射天天操 | 婷婷国产在线 | 国产精品99久久久久久大便 | 国产在线免费 | 午夜久久影视 | 精品国产一区二区三区四 | 91 在线视频播放 | 日韩av午夜| 伊人亚洲综合网 | 午夜视频在线观看一区二区三区 | 久久乱码卡一卡2卡三卡四 五月婷婷久 | 中文字幕一区在线 | 国产精品一区免费看8c0m | 精品视频网站 | 中文字幕日韩一区二区三区不卡 | 国产精品 中文字幕 亚洲 欧美 | 激情欧美一区二区三区免费看 | 视频一区在线免费观看 | 欧美性网站 | 欧美日韩一区二区在线 | 欧美99久久| 在线观看免费成人 | 综合色亚洲| 98涩涩国产露脸精品国产网 | 国产黄色精品视频 | 天天操婷婷 | 精品国产一二三四区 | 久久久久久久18 | .国产精品成人自产拍在线观看6 | 精品免费久久 | 九七视频在线 | 亚洲精品小区久久久久久 | www.97色.com| 91探花国产综合在线精品 | 久久久久久久影视 | 一级成人免费视频 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 日韩午夜在线 | 国产特级毛片aaaaaa毛片 | 五月综合激情网 | 在线激情小视频 | 一本一本久久aa综合精品 | 国产伦理剧 | 91高清不卡 | 成人av片免费看 | 国产精品久久久久一区二区 | 91成人在线看 | 91传媒激情理伦片 | 黄色片网站大全 | 国产视频一区在线播放 | 色综合天天综合网国产成人网 | 亚洲成人av在线电影 | 日本夜夜草视频网站 | 国产精品专区一 | 亚洲婷婷网 | 亚洲一级电影在线观看 | 亚洲五月婷 | 手机av电影在线 | 国产精品乱码久久久久久1区2区 | 欧美男男激情videos | 久久与婷婷 | 成人在线视频观看 | 国产精品女教师 | 久久久久国产一区二区三区 | 天天操天天操天天操天天操天天操天天操 | 亚洲另类视频在线观看 | 深夜免费福利在线 | 福利视频一区二区 | 久久免费99精品久久久久久 | 国产专区在线播放 | 日韩高清在线一区二区三区 | 欧美激情视频一区二区三区 | 亚洲理论在线 | 天天做天天干 | 岛国av在线 | 超碰在线免费福利 | 正在播放五月婷婷狠狠干 | 国产不卡视频 | 欧美激情视频在线观看免费 | 日韩综合视频在线观看 | 国产高清第一页 | 91丨九色丨首页 | 一区二区精品在线视频 | 综合网天天 | 亚洲成人网在线 | 免费观看第二部31集 | 色狠狠干| 一本一道久久a久久综合蜜桃 | 日韩欧美在线免费观看 | 久精品视频 | 日韩精品一区二区三区三炮视频 | 精品一区二区综合 | 激情视频在线观看网址 | 日韩激情在线视频 | 婷婷深爱网 | 天堂网一区 | 天天干夜夜干 | 四虎8848免费高清在线观看 | 久久成人亚洲欧美电影 | 成年人视频在线免费播放 | 日韩丝袜在线观看 | 亚洲九九九| 精品久久久久久久久中文字幕 | 国产精品成人久久 | 日韩有码第一页 | 国产91精品欧美 | 日韩中文字幕免费视频 | 国产精品一区免费在线观看 | 国产999精品久久久久久 | 激情五月综合 | 国产精品18久久久久久久久久久久 | 欧美一级裸体视频 | 亚洲国产中文字幕在线观看 | 久久av伊人 | 国产精品免费成人 | 91九色丨porny丨丰满6 | 91麻豆精品 | 成人app在线免费观看 | 欧美日韩高清一区二区 | 国产亚洲片 | 久久久 精品| 久久免费99 | 国产91大片 | 国产一在线精品一区在线观看 | 玖玖国产精品视频 | 日韩欧美视频免费在线观看 | 婷婷深爱五月 | 狠狠干夜夜 | 91精品国自产在线观看 | 夜夜夜夜夜夜操 | 久久免费在线视频 | 国产亚洲精品久久久久动 | 人人澡人摸人人添学生av | 伊人欧美| 激情丁香久久 | 狠狠色狠狠色合久久伊人 | www.久久爱.cn | 国产福利91精品一区 | 欧美亚洲国产精品久久高清浪潮 | 超碰在线观看av.com | 国产一区二区精品 | 日本三级久久久 | 久久久久久久久毛片 | 日韩福利在线观看 | 五月激情丁香图片 | 中文国产成人精品久久一 | 2022久久国产露脸精品国产 | 涩涩色亚洲一区 | 国产五月色婷婷六月丁香视频 | 狠狠干网站 | 国产精品白浆视频 | 97精品超碰一区二区三区 | 97超碰色 | 97超碰影视 | 日韩视频免费播放 | 五月天天在线 | av在线之家电影网站 | 久久久久久久久久久久久久av | 久久人人97超碰国产公开结果 | 久久99国产精品久久99 | 久久天天操 | 久久中文字幕在线视频 | 最近中文字幕免费 | 亚洲色综合 | 亚洲精品456在线播放 | 成人毛片在线观看视频 | 国际精品久久 | 国产精品久久久久久久午夜 | 日韩免费福利 | 亚洲精品久 | 91视频在线观看大全 | 天天色天天操天天爽 | 国产 日韩 在线 亚洲 字幕 中文 | 国产精品久久一区二区三区, | 欧美最猛性xxxxx亚洲精品 | 永久免费看av | 91精品一区二区在线观看 | 久久综合激情 | 在线视频一二区 | 亚洲综合在线观看视频 | 国产成在线观看免费视频 | 91亚洲精品久久久 | 欧美日韩一区久久 | 久久久精品电影 | 国产成人精品一区二区三区 | 亚洲首页 | 国产精品门事件 | 婷婷久久亚洲 | 丁香婷婷自拍 | 免费日韩一区二区三区 | 欧美午夜视频在线 | 91精品视频网站 | 日韩在线视频免费播放 | 久久夜色网 | 欧美一区三区四区 | 丁香花中文在线免费观看 | 久久免费成人网 | 婷婷播播网 | 奇米网网址 | 人人草天天草 | 99视频一区二区 | 182午夜在线观看 | 制服丝袜一区二区 | 男女视频91 | 午夜黄色影院 | 天天爽天天做 | 97热视频| 国产精品视频久久 | 精品不卡视频 | 999在线精品 | 在线观看亚洲 | 99精品久久久 | 日韩99热| 尤物一区二区三区 | 精品毛片久久久久久 | 在线观看视频中文字幕 | 欧美日韩高清 | 成人啊 v | 天天操操 | 国模视频一区二区 | 国产精品久久片 | 成 人 免费 黄 色 视频 | 日韩精品久久中文字幕 | 免费无遮挡动漫网站 | 91精品国自产在线观看欧美 | 成年人视频在线免费 | 不卡的av片| 色综合久久88色综合天天免费 | 又黄又爽又色无遮挡免费 | 337p日本大胆噜噜噜噜 | 伊人色播| 97超碰在线久草超碰在线观看 | av超碰在线观看 | 国产精品99久久久久久大便 | 六月丁香在线视频 | 天天摸天天操天天舔 | 一级免费看视频 | 久久av影视 | 国产一级电影 | 欧美日韩国产网站 | 97在线免费视频观看 | 特级a老妇做爰全过程 | 免费在线观看不卡av | 欧美在线观看禁18 | 久久中文字幕视频 | 丁香色婷 | 日本丰满少妇免费一区 | 韩国精品在线观看 | 久久久久免费精品国产 | 欧美性色黄大片在线观看 | 中文字幕亚洲精品日韩 | 久久久久久免费视频 | 亚洲欧美怡红院 | 亚洲激情综合 | 中文乱码视频在线观看 | 国产精品高清一区二区三区 | 久久久资源 | 日日干视频 | 国产亚洲精品福利 | 免费av成人在线 | 日韩精选在线 | 国产成人精品久久亚洲高清不卡 | 精品国产欧美一区二区三区不卡 | 99免费精品视频 | 国产成人久久av免费高清密臂 | 狠狠色丁香婷婷综合久久片 | 手机在线欧美 | 久久av影视| 天天干天天干天天色 | 人人超碰在线 | 91在线网址| 国产一区视频在线 | 精品视频123区在线观看 | 成人动漫视频在线 | 在线观看岛国 | 黄色三级网站在线观看 | 久久免费99精品久久久久久 | 精品毛片在线 | 国产视频观看 | 中文字幕久久精品一区 | 国产黄色片免费在线观看 | 91精品视频免费看 | 亚洲精品美女久久17c | 91成人在线观看喷潮 | 五月婷亚洲 | av免费观看网址 | 日韩欧美视频 | 亚洲在线a | 亚洲黄色成人网 | 久久夜色精品国产欧美乱 | 亚洲精品美女久久久久网站 | 国产精品99久久免费观看 | 99精品一区二区三区 | 中文字幕在线视频一区二区 | 久久成人高清 | 日本大尺码专区mv | 久久精品免费看 | 九九热视频在线免费观看 | 在线一区电影 | 高清视频一区 | 九九热1 | 99热在线这里只有精品 | 久久精品99视频 | 亚洲视频高清 | 日韩精品一区二区三区免费视频观看 | 久久精品99国产精品亚洲最刺激 | 久久久久久久久久福利 | 国产亚洲一区 | 人人插超碰| 中文字幕乱码在线播放 | av超碰免费在线 | 国产精品免费视频观看 | 欧美日韩精品久久久 | 精品中文字幕视频 | 久久免费视频在线 | 91精品在线观看入口 | 99在线免费视频 | 91麻豆精品国产91久久久无限制版 | 久久久五月婷婷 | 精一区二区 | 国产精品孕妇 | 九草视频在线观看 | 国产91亚洲精品 | 岛国av在线 | 国产在线精品区 | 在线国产小视频 | 亚洲成人网av | 亚洲高清视频在线播放 | 婷婷丁香激情综合 | 91视频中文字幕 | 深夜视频久久 | 91自拍视频在线观看 | 国产一级大片在线观看 | 福利视频一二区 | 成人免费中文字幕 | 亚洲精品在线免费 | 欧洲色吧 | 欧美一二三视频 | 国产一二区精品 | 亚洲日本黄色 | 六月婷操 | 三级免费黄 |