gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長(zhǎng)資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

CentOS7.5搭建Flink1.6.1分布式集群詳解

一. Flink的下載

安裝包下載地址:http://flink.apache.org/downloads.html  ,選擇對(duì)應(yīng)Hadoop的Flink版本下載

CentOS7.5搭建Flink1.6.1分布式集群詳解

[admin@node21 software]$ wget http://mirrors.tuna.tsinghua.edu.cn/apache/flink/flink-1.6.1/flink-1.6.1-bin-hadoop27-scala_2.11.tgz [admin@node21 software]$ ll  -rw-rw-r-- 1 admin admin 301867081 Sep 15 15:47 flink-1.6.1-bin-hadoop27-scala_2.11.tgz

Flink 有三種部署模式,分別是 Local、Standalone Cluster 和 Yarn Cluster。

二.Local模式

對(duì)于 Local 模式來(lái)說(shuō),JobManager 和 TaskManager 會(huì)公用一個(gè) JVM 來(lái)完成 Workload。如果要驗(yàn)證一個(gè)簡(jiǎn)單的應(yīng)用,Local 模式是最方便的。實(shí)際應(yīng)用中大多使用 Standalone 或者 Yarn Cluster,而local模式只是將安裝包解壓?jiǎn)?dòng)(./bin/start-local.sh)即可,在這里不在演示。

三.Standalone 模式

快速入門(mén)教程地址:https://ci.apache.org/projects/flink/flink-docs-release-1.6/quickstart/setup_quickstart.html

1.  軟件要求

  • Java 1.8.x或更高版本,
  • ssh(必須運(yùn)行sshd才能使用管理遠(yuǎn)程組件的Flink腳本)

集群部署規(guī)劃

節(jié)點(diǎn)名稱(chēng)  master worker zookeeper
node21  master   zookeeper
node22  master  worker zookeeper
node23    worker zookeeper

2.解壓

[admin@node21 software]$ tar zxvf flink-1.6.1-bin-hadoop27-scala_2.11.tgz -C /opt/module/  [admin@node21 software]$ cd /opt/module/  [admin@node21 module]$ ll  drwxr-xr-x 8 admin admin 125 Sep 15 04:47 flink-1.6.1

3.修改配置文件

[admin@node21 conf]$ ls  flink-conf.yaml       log4j-console.properties  log4j-yarn-session.properties  logback.xml       masters  sql-client-defaults.yaml  log4j-cli.properties  log4j.properties          logback-console.xml            logback-yarn.xml  slaves   zoo.cfg

修改flink/conf/masters,slaves,flink-conf.yaml

[admin@node21 conf]$ sudo vi masters  node21:8081  [admin@node21 conf]$ sudo vi slaves  node22  node23  [admin@node21 conf]$ sudo vi flink-conf.yaml   taskmanager.numberOfTaskSlots:2  jobmanager.rpc.address: node21

可選配置:

  • 每個(gè)JobManager(jobmanager.heap.mb的可用內(nèi)存量
  • 每個(gè)TaskManager(taskmanager.heap.mb的可用內(nèi)存量
  • 每臺(tái)機(jī)器的可用CPU數(shù)量(taskmanager.numberOfTaskSlots),
  • 集群中的CPU總數(shù)(parallelism.default)和
  • 臨時(shí)目錄(taskmanager.tmp.dirs

4.拷貝安裝包到各節(jié)點(diǎn)

[admin@node21 module]$ scp -r flink-1.6.1/ admin@node22:`pwd`  [admin@node21 module]$ scp -r flink-1.6.1/ admin@node23:`pwd`

5.配置環(huán)境變量

配置所有節(jié)點(diǎn)Flink的環(huán)境變量

[admin@node21 flink-1.6.1]$ sudo vi /etc/profile  export FLINK_HOME=/opt/module/flink-1.6.1  export PATH=$PATH:$FLINK_HOME/bin  [admin@node21 flink-1.6.1]$ source /etc/profile

6.啟動(dòng)flink

[admin@node21 flink-1.6.1]$ ./bin/start-cluster.sh   Starting cluster.  Starting standalonesession daemon on host node21.  Starting taskexecutor daemon on host node22.  Starting taskexecutor daemon on host node23.

jps查看進(jìn)程

CentOS7.5搭建Flink1.6.1分布式集群詳解

CentOS7.5搭建Flink1.6.1分布式集群詳解

CentOS7.5搭建Flink1.6.1分布式集群詳解

7.  WebUI查看

http://node21:8081

CentOS7.5搭建Flink1.6.1分布式集群詳解

8.Flink 的 HA

首先,我們需要知道 Flink 有兩種部署的模式,分別是 Standalone 以及 Yarn Cluster 模式。對(duì)于 Standalone 來(lái)說(shuō),F(xiàn)link 必須依賴(lài)于 Zookeeper 來(lái)實(shí)現(xiàn) JobManager 的 HA(Zookeeper 已經(jīng)成為了大部分開(kāi)源框架 HA 必不可少的模塊)。在 Zookeeper 的幫助下,一個(gè) Standalone 的 Flink 集群會(huì)同時(shí)有多個(gè)活著的 JobManager,其中只有一個(gè)處于工作狀態(tài),其他處于 Standby 狀態(tài)。當(dāng)工作中的 JobManager 失去連接后(如宕機(jī)或 Crash),Zookeeper 會(huì)從 Standby 中選舉新的 JobManager 來(lái)接管 Flink 集群。

對(duì)于 Yarn Cluaster 模式來(lái)說(shuō),F(xiàn)link 就要依靠 Yarn 本身來(lái)對(duì) JobManager 做 HA 了。其實(shí)這里完全是 Yarn 的機(jī)制。對(duì)于 Yarn Cluster 模式來(lái)說(shuō),JobManager 和 TaskManager 都是被 Yarn 啟動(dòng)在 Yarn 的 Container 中。此時(shí)的 JobManager,其實(shí)應(yīng)該稱(chēng)之為 Flink Application Master。也就說(shuō)它的故障恢復(fù),就完全依靠著 Yarn 中的 ResourceManager(和 MapReduce 的 AppMaster 一樣)。由于完全依賴(lài)了 Yarn,因此不同版本的 Yarn 可能會(huì)有細(xì)微的差異。這里不再做深究。

1)修改配置文件

修改flink-conf.yaml,HA模式下,jobmanager不需要指定,在master file中配置,由zookeeper選出leader與standby。

#jobmanager.rpc.address: node21  high-availability:zookeeper                             #指定高可用模式(必須)  high-availability.zookeeper.quorum:node21:2181,node22:2181,node23:2181  #ZooKeeper仲裁是ZooKeeper服務(wù)器的復(fù)制組,它提供分布式協(xié)調(diào)服務(wù)(必須)  high-availability.storageDir:hdfs:///flink/ha/       #JobManager元數(shù)據(jù)保存在文件系統(tǒng)storageDir中,只有指向此狀態(tài)的指針存儲(chǔ)在ZooKeeper中(必須)  high-availability.zookeeper.path.root:/flink         #根ZooKeeper節(jié)點(diǎn),在該節(jié)點(diǎn)下放置所有集群節(jié)點(diǎn)(推薦)   high-availability.cluster-id:/flinkCluster           #自定義集群(推薦)  state.backend: filesystem  state.checkpoints.dir: hdfs:///flink/checkpoints  state.savepoints.dir: hdfs:///flink/checkpoints

修改conf/zoo.cfg

server.1=node21:2888:3888  server.2=node22:2888:3888  server.3=node23:2888:3888

修改conf/masters

node21:8081  node22:8081

修改slaves

node22  node23

同步配置文件conf到各節(jié)點(diǎn)

2)啟動(dòng)HA

先啟動(dòng)zookeeper集群各節(jié)點(diǎn)(測(cè)試環(huán)境中也可以用Flink自帶的start-zookeeper-quorum.sh),啟動(dòng)dfs ,再啟動(dòng)flink

[admin@node21 flink-1.6.1]$ start-cluster.sh 

CentOS7.5搭建Flink1.6.1分布式集群詳解

WebUI查看,這是會(huì)自動(dòng)產(chǎn)生一個(gè)主Master,如下

CentOS7.5搭建Flink1.6.1分布式集群詳解

3)驗(yàn)證HA

CentOS7.5搭建Flink1.6.1分布式集群詳解

手動(dòng)殺死node22上的master,此時(shí),node21上的備用master轉(zhuǎn)為主mater。

CentOS7.5搭建Flink1.6.1分布式集群詳解

4)手動(dòng)將JobManager / TaskManager實(shí)例添加到群集

您可以使用bin/jobmanager.shbin/taskmanager.sh腳本將JobManager和TaskManager實(shí)例添加到正在運(yùn)行的集群中

添加JobManager

bin/jobmanager.sh ((start|start-foreground) [host] [webui-port])|stop|stop-all

添加TaskManager

bin/taskmanager.sh start|start-foreground|stop|stop-all

[admin@node22 flink-1.6.1]$ jobmanager.sh start node22

新添加的為從master。

9.運(yùn)行測(cè)試任務(wù)

[admin@node21 flink-1.6.1]$ flink run -m node21:8081 ./examples/batch/WordCount.jar --input /opt/wcinput/wc.txt --output /opt/wcoutput/  [admin@node21 flink-1.6.1]$ flink run -m node21:8081 ./examples/batch/WordCount.jar --input hdfs:///user/admin/input/wc.txt --output hdfs:///user/admin/output2

CentOS7.5搭建Flink1.6.1分布式集群詳解

四.Yarn Cluster模式

1.引入

在一個(gè)企業(yè)中,為了最大化的利用集群資源,一般都會(huì)在一個(gè)集群中同時(shí)運(yùn)行多種類(lèi)型的 Workload。因此 Flink 也支持在 Yarn 上面運(yùn)行。首先,讓我們通過(guò)下圖了解下 Yarn 和 Flink 的關(guān)系。

CentOS7.5搭建Flink1.6.1分布式集群詳解

在圖中可以看出,F(xiàn)link 與 Yarn 的關(guān)系與 MapReduce 和 Yarn 的關(guān)系是一樣的。Flink 通過(guò) Yarn 的接口實(shí)現(xiàn)了自己的 App Master。當(dāng)在 Yarn 中部署了 Flink,Yarn 就會(huì)用自己的 Container 來(lái)啟動(dòng) Flink 的 JobManager(也就是 App Master)和 TaskManager。

啟動(dòng)新的Flink YARN會(huì)話時(shí),客戶(hù)端首先檢查所請(qǐng)求的資源(容器和內(nèi)存)是否可用。之后,它將包含F(xiàn)link和配置的jar上傳到HDFS(步驟1)。

客戶(hù)端的下一步是請(qǐng)求(步驟2)YARN容器以啟動(dòng)ApplicationMaster(步驟3)。由于客戶(hù)端將配置和jar文件注冊(cè)為容器的資源,因此在該特定機(jī)器上運(yùn)行的YARN的NodeManager將負(fù)責(zé)準(zhǔn)備容器(例如,下載文件)。完成后,將啟動(dòng)ApplicationMaster(AM)。

JobManager和AM在同一容器中運(yùn)行。一旦它們成功啟動(dòng),AM就知道JobManager(它自己的主機(jī))的地址。它正在為T(mén)askManagers生成一個(gè)新的Flink配置文件(以便它們可以連接到JobManager)。該文件也上傳到HDFS。此外,AM容器還提供Flink的Web界面。YARN代碼分配的所有端口都是臨時(shí)端口這允許用戶(hù)并行執(zhí)行多個(gè)Flink YARN會(huì)話。

之后,AM開(kāi)始為Flink的TaskManagers分配容器,這將從HDFS下載jar文件和修改后的配置。完成這些步驟后,即可建立Flink并準(zhǔn)備接受作業(yè)。

2.修改環(huán)境變量

export  HADOOP_CONF_DIR= /opt/module/hadoop-2.7.6/etc/hadoop

3.部署啟動(dòng) 

[admin@node21 flink-1.6.1]$ yarn-session.sh -d -s 2 -tm 800 -n 2

-n : TaskManager的數(shù)量,相當(dāng)于executor的數(shù)量
-s : 每個(gè)JobManager的core的數(shù)量,executor-cores。建議將slot的數(shù)量設(shè)置每臺(tái)機(jī)器的處理器數(shù)量
-tm : 每個(gè)TaskManager的內(nèi)存大小,executor-memory
-jm : JobManager的內(nèi)存大小,driver-memory

上面的命令的意思是,同時(shí)向Yarn申請(qǐng)3個(gè)container,其中 2 個(gè) Container 啟動(dòng) TaskManager(-n 2),每個(gè) TaskManager 擁有兩個(gè) Task Slot(-s 2),并且向每個(gè) TaskManager 的 Container 申請(qǐng) 800M 的內(nèi)存,以及一個(gè)ApplicationMaster(Job Manager)。

CentOS7.5搭建Flink1.6.1分布式集群詳解

Flink部署到Y(jié)arn Cluster后,會(huì)顯示Job Manager的連接細(xì)節(jié)信息。

Flink on Yarn會(huì)覆蓋下面幾個(gè)參數(shù),如果不希望改變配置文件中的參數(shù),可以動(dòng)態(tài)的通過(guò)-D選項(xiàng)指定,如 -Dfs.overwrite-files=true -Dtaskmanager.network.numberOfBuffers=16368

jobmanager.rpc.address:因?yàn)镴obManager會(huì)經(jīng)常分配到不同的機(jī)器上

taskmanager.tmp.dirs:使用Yarn提供的tmp目錄

parallelism.default:如果有指定slot個(gè)數(shù)的情況下

yarn-session.sh會(huì)掛起進(jìn)程,所以可以通過(guò)在終端使用CTRL+C或輸入stop停止yarn-session。

如果不希望Flink Yarn client長(zhǎng)期運(yùn)行,F(xiàn)link提供了一種detached YARN session,啟動(dòng)時(shí)候加上參數(shù)-d或—detached

在上面的命令成功后,我們就可以在 Yarn Application 頁(yè)面看到 Flink 的紀(jì)錄。如下圖。

CentOS7.5搭建Flink1.6.1分布式集群詳解

如果在虛擬機(jī)中測(cè)試,可能會(huì)遇到錯(cuò)誤。這里需要注意內(nèi)存的大小,F(xiàn)link 向 Yarn 會(huì)申請(qǐng)多個(gè) Container,但是 Yarn 的配置可能限制了 Container 所能申請(qǐng)的內(nèi)存大小,甚至 Yarn 本身所管理的內(nèi)存就很小。這樣很可能無(wú)法正常啟動(dòng) TaskManager,尤其當(dāng)指定多個(gè) TaskManager 的時(shí)候。因此,在啟動(dòng) Flink 之后,需要去 Flink 的頁(yè)面中檢查下 Flink 的狀態(tài)。這里可以從 RM 的頁(yè)面中,直接跳轉(zhuǎn)(點(diǎn)擊 Tracking UI)。這時(shí)候 Flink 的頁(yè)面如圖

CentOS7.5搭建Flink1.6.1分布式集群詳解

yarn-session.sh啟動(dòng)命令參數(shù)如下:

[admin@node21 flink-1.6.1]$ yarn-session.sh --help  Usage:     Required       -n,--container <arg>   Number of YARN container to allocate (=Number of Task Managers)     Optional       -D <property=value>             use value for given property       -d,--detached                   If present, runs the job in detached mode       -h,--help                       Help for the Yarn session CLI.       -id,--applicationId <arg>       Attach to running YARN session       -j,--jar <arg>                  Path to Flink jar file       -jm,--jobManagerMemory <arg>    Memory for JobManager Container with optional unit (default: MB)       -m,--jobmanager <arg>           Address of the JobManager (master) to which to connect. Use this flag to connect to a different JobManager than the one specified i  n the configuration.     -n,--container <arg>            Number of YARN container to allocate (=Number of Task Managers)       -nl,--nodeLabel <arg>           Specify YARN node label for the YARN application       -nm,--name <arg>                Set a custom name for the application on YARN       -q,--query                      Display available YARN resources (memory, cores)       -qu,--queue <arg>               Specify YARN queue.       -s,--slots <arg>                Number of slots per TaskManager       -st,--streaming                 Start Flink in streaming mode       -t,--ship <arg>                 Ship files in the specified directory (t for transfer)       -tm,--taskManagerMemory <arg>   Memory per TaskManager Container with optional unit (default: MB)       -yd,--yarndetached              If present, runs the job in detached mode (deprecated; use non-YARN specific option instead)       -z,--zookeeperNamespace <arg>   Namespace to create the Zookeeper sub-paths for high availability mode

4.提交任務(wù)

之后,我們可以通過(guò)這種方式提交我們的任務(wù)

[admin@node21 flink-1.6.1]$ ./bin/flink run -m yarn-cluster -yn 2 ./examples/batch/WordCount.jar --input /opt/wcinput/wc.txt --output /opt/wcoutput/

以上命令在參數(shù)前加上y前綴,-yn表示TaskManager個(gè)數(shù)。

在這個(gè)模式下,同樣可以使用-m yarn-cluster提交一個(gè)”運(yùn)行后即焚”的detached yarn(-yd)作業(yè)到y(tǒng)arn cluster。

5.停止yarn cluster

yarn application -kill application_1539058959130_0001

6.Yarn模式的HA

應(yīng)用最大嘗試次數(shù)(yarn-site.xml),您必須配置為嘗試應(yīng)用的最大數(shù)量的設(shè)置yarn-site.xml,當(dāng)前YARN版本的默認(rèn)值為2(表示允許單個(gè)JobManager失敗)。

<property>    <name>yarn.resourcemanager.am.max-attempts</name>    <value>4</value>    <description>The maximum number of application master execution attempts</description>  </property>

申請(qǐng)嘗試(flink-conf.yaml),您還必須配置最大嘗試次數(shù)conf/flink-conf.yaml: yarn.application-attempts:10

示例:高度可用的YARN會(huì)話

  1. 配置HA模式和zookeeper法定人數(shù)conf/flink-conf.yaml

    high-availability: zookeeper  high-availability.zookeeper.quorum: node21:2181,node22:2181,node23:2181  high-availability.storageDir: hdfs:///flink/recovery  high-availability.zookeeper.path.root: /flink  yarn.application-attempts: 10
  2. 配置ZooKeeper的服務(wù)器conf/zoo.cfg(目前它只是可以運(yùn)行每臺(tái)機(jī)器的單一的ZooKeeper服務(wù)器):

    server.1=node21:2888:3888  server.2=node22:2888:3888  server.3=node23:2888:3888
  3. 啟動(dòng)ZooKeeper仲裁

    $ bin / start-zookeeper-quorum.sh
  4. 啟動(dòng)HA群集

    $ bin / yarn-session.sh -n 2

五.錯(cuò)誤異常

1.身份認(rèn)證失敗

[root@node21 flink-1.6.1]# flink run examples/streaming/SocketWindowWordCount.jar --port 9000  Starting execution of program    ------------------------------------------------------------   The program finished with the following exception:    org.apache.flink.client.program.ProgramInvocationException: Job failed. (JobID: b7a99ac5db242290413dbebe32ba52b0)      at org.apache.flink.client.program.rest.RestClusterClient.submitJob(RestClusterClient.java:267)      at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:486)      at org.apache.flink.streaming.api.environment.StreamContextEnvironment.execute(StreamContextEnvironment.java:66)      at org.apache.flink.streaming.examples.socket.SocketWindowWordCount.main(SocketWindowWordCount.java:92)      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)      at java.lang.reflect.Method.invoke(Method.java:498)      at org.apache.flink.client.program.PackagedProgram.callMainMethod(PackagedProgram.java:529)      at org.apache.flink.client.program.PackagedProgram.invokeInteractiveModeForExecution(PackagedProgram.java:421)      at org.apache.flink.client.program.ClusterClient.run(ClusterClient.java:426)      at org.apache.flink.client.cli.CliFrontend.executeProgram(CliFrontend.java:804)      at org.apache.flink.client.cli.CliFrontend.runProgram(CliFrontend.java:280)      at org.apache.flink.client.cli.CliFrontend.run(CliFrontend.java:215)      at org.apache.flink.client.cli.CliFrontend.parseParameters(CliFrontend.java:1044)      at org.apache.flink.client.cli.CliFrontend.lambda$main$11(CliFrontend.java:1120)      at java.security.AccessController.doPrivileged(Native Method)      at javax.security.auth.Subject.doAs(Subject.java:422)      at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1754)      at org.apache.flink.runtime.security.HadoopSecurityContext.runSecured(HadoopSecurityContext.java:41)      at org.apache.flink.client.cli.CliFrontend.main(CliFrontend.java:1120)  Caused by: java.net.ConnectException: Connection refused (Connection refused)      at java.net.PlainSocketImpl.socketConnect(Native Method)      at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)      at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)      at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)      at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)      at java.net.Socket.connect(Socket.java:589)      at org.apache.flink.streaming.api.functions.source.SocketTextStreamFunction.run(SocketTextStreamFunction.java:96)      at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:87)      at org.apache.flink.streaming.api.operators.StreamSource.run(StreamSource.java:56)      at org.apache.flink.streaming.runtime.tasks.SourceStreamTask.run(SourceStreamTask.java:99)      at org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:300)      at org.apache.flink.runtime.taskmanager.Task.run(Task.java:711)      at java.lang.Thread.run(Thread.java:748)

通過(guò)查看日志,發(fā)現(xiàn)有如下報(bào)錯(cuò)

2018-10-20 02:32:19,668 ERROR org.apache.flink.shaded.curator.org.apache.curator.ConnectionState  - Authentication failed

解決法案:添加定時(shí)任務(wù)認(rèn)證kerberos

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
噼里啪啦国语在线观看免费版高清版 | 青青青青在线视频| 欧美女同在线观看| 激情视频免费网站| 手机看片福利日韩| 免费观看亚洲视频| 日本一级黄视频| 国产特级淫片高清视频| av免费观看网| youjizz.com在线观看| 欧美激情国内自拍| 日本黄xxxxxxxxx100| 青青青在线观看视频| 成人av毛片在线观看| www.好吊操| 国产又粗又长又爽视频| 国产系列第一页| 高清在线观看免费| 亚欧激情乱码久久久久久久久| 欧美二区在线视频| 麻豆tv在线播放| 污视频网址在线观看| 日av中文字幕| 大胆欧美熟妇xx| 先锋影音男人资源| 欧美视频免费播放| 波多野结衣家庭教师在线| 久无码久无码av无码| 亚洲综合欧美在线| 九色91popny| 日韩av新片网| 免费无码不卡视频在线观看| 人妻少妇精品无码专区二区| 国产二级片在线观看| 欧美老熟妇喷水| www黄色在线| 99久久国产综合精品五月天喷水| 国产免费内射又粗又爽密桃视频| 国产a级黄色大片| 日韩在线综合网| 男女无套免费视频网站动漫| 国产九九热视频| 国产对白在线播放| 国产欧美日韩网站| 无码少妇一区二区三区芒果| www,av在线| 全黄性性激高免费视频| 日韩av播放器| 色婷婷综合在线观看| 亚洲免费黄色网| 中文字幕の友人北条麻妃| 自拍日韩亚洲一区在线| 色婷婷成人在线| 亚洲中文字幕无码一区二区三区| 日韩av资源在线| 成熟老妇女视频| 亚洲第一页在线视频| 波多野结衣综合网| 91丨九色丨蝌蚪| 日本福利视频一区| 亚洲图片 自拍偷拍| 免费成人在线视频网站| 亚洲欧美自偷自拍另类| 亚洲熟妇无码av在线播放| 爱情岛论坛vip永久入口| 激情成人开心网| 亚洲欧美偷拍另类| 精品人妻一区二区三区四区在线 | 俄罗斯av网站| 免费成人进口网站| 日本激情视频在线播放| 欧美精品久久久久久久自慰 | 免费网站在线观看黄| 久久久999免费视频| 亚洲啊啊啊啊啊| 91免费视频污| 九九精品久久久| 国产三级三级看三级| www国产精品内射老熟女| 一级黄色大片儿| xxww在线观看| 天天干天天综合| 亚洲成熟丰满熟妇高潮xxxxx| 欧美极品少妇无套实战| 操bbb操bbb| 色乱码一区二区三区熟女| 国产传媒免费观看| 女人高潮一级片| 三区视频在线观看| 一级黄色录像在线观看| 久久99999| 亚洲一区二区三区四区五区| 91制片厂毛片| 一级黄色片国产| 中文字幕第一页在线视频| 国产美女18xxxx免费视频| 日韩一级理论片| 国产一区二区在线观看免费视频| 中文字幕在线观看第三页| 中文久久久久久| 激情文学亚洲色图| 午夜久久久久久久久久久| 超碰中文字幕在线观看| 久久av喷吹av高潮av| 国产精品久久久久久久久电影网| 成人免费看片视频在线观看| 国产在线观看欧美| 91精品国产91久久久久麻豆 主演| 日韩日韩日韩日韩日韩| 国产男女无遮挡| 日本中文字幕二区| 日韩精品福利片午夜免费观看| 91网站在线观看免费| 大肉大捧一进一出好爽视频| 黄色一级二级三级| 肉色超薄丝袜脚交| 黄网站欧美内射| 另类小说色综合| 日本男女交配视频| 国内自拍视频网| 日韩精品第1页| 毛葺葺老太做受视频| 久久久精品高清| 日韩激情视频一区二区| 日本va中文字幕| www.18av.com| 亚洲黄色av网址| 无颜之月在线看| 日本精品久久久久中文字幕| 午夜激情视频网| 蜜臀av午夜一区二区三区| 免费看av软件| 狠狠热免费视频| 久久久久99精品成人片| 男人女人黄一级| 韩日视频在线观看| 国产探花在线观看视频| 欧美韩国日本在线| 欧美日韩福利在线| 亚洲在线观看网站| 成年人网站大全| 欧美 丝袜 自拍 制服 另类| 亚洲第一综合网站| 色一情一区二区三区| 红桃av在线播放| 激情小视频网站| av日韩在线看| 欧美少妇一级片| 中文字幕在线视频一区二区三区 | 国产又大又硬又粗| 男的插女的下面视频| 国产手机视频在线观看| 成人日韩在线视频| 欧美婷婷精品激情| 日韩中文字幕二区| 国产又黄又大又粗视频| 成人短视频在线观看免费| www.欧美激情.com| 一级做a免费视频| 欧美日韩在线免费播放| 国产男女在线观看| 欧美性久久久久| 国产精品99久久免费黑人人妻| 成 年 人 黄 色 大 片大 全| 日本中文字幕一级片| 国产女主播av| 亚洲精品少妇一区二区| 影音先锋成人资源网站| 久久天天东北熟女毛茸茸| 国产又粗又硬又长| 久久久天堂国产精品| 国产真实老熟女无套内射| 狠狠干视频网站| 日韩av中文字幕第一页| 免费看一级大黄情大片| 日av中文字幕| 天天干天天操天天做| 久久久久久久久久久久久久久国产| 成 人 黄 色 小说网站 s色| 欧美午夜精品理论片| 国产又粗又爽又黄的视频| 国产av熟女一区二区三区| 欧美a v在线播放| 日本va中文字幕| 手机成人av在线| 国产69精品久久久久999小说| 久久网站免费视频| 99热一区二区| 青青草综合视频| 无码人妻丰满熟妇区毛片18| 男女男精品视频站| 加勒比海盗1在线观看免费国语版| 霍思燕三级露全乳照| 国产精品拍拍拍| 糖心vlog在线免费观看| 免费在线观看毛片网站| 99九九99九九九99九他书对| 亚洲熟妇无码一区二区三区| 国产色视频在线播放| 男人天堂a在线|