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

站長資訊網
最全最豐富的資訊網站

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

一. Flink的下載

安裝包下載地址:http://flink.apache.org/downloads.html  ,選擇對應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模式

對于 Local 模式來說,JobManager 和 TaskManager 會公用一個 JVM 來完成 Workload。如果要驗證一個簡單的應用,Local 模式是最方便的。實際應用中大多使用 Standalone 或者 Yarn Cluster,而local模式只是將安裝包解壓啟動(./bin/start-local.sh)即可,在這里不在演示。

三.Standalone 模式

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

1.  軟件要求

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

集群部署規劃

節點名稱  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

可選配置:

  • 每個JobManager(jobmanager.heap.mb的可用內存量
  • 每個TaskManager(taskmanager.heap.mb的可用內存量
  • 每臺機器的可用CPU數量(taskmanager.numberOfTaskSlots),
  • 集群中的CPU總數(parallelism.default)和
  • 臨時目錄(taskmanager.tmp.dirs

4.拷貝安裝包到各節點

[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.配置環境變量

配置所有節點Flink的環境變量

[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.啟動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查看進程

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 模式。對于 Standalone 來說,Flink 必須依賴于 Zookeeper 來實現 JobManager 的 HA(Zookeeper 已經成為了大部分開源框架 HA 必不可少的模塊)。在 Zookeeper 的幫助下,一個 Standalone 的 Flink 集群會同時有多個活著的 JobManager,其中只有一個處于工作狀態,其他處于 Standby 狀態。當工作中的 JobManager 失去連接后(如宕機或 Crash),Zookeeper 會從 Standby 中選舉新的 JobManager 來接管 Flink 集群。

對于 Yarn Cluaster 模式來說,Flink 就要依靠 Yarn 本身來對 JobManager 做 HA 了。其實這里完全是 Yarn 的機制。對于 Yarn Cluster 模式來說,JobManager 和 TaskManager 都是被 Yarn 啟動在 Yarn 的 Container 中。此時的 JobManager,其實應該稱之為 Flink Application Master。也就說它的故障恢復,就完全依靠著 Yarn 中的 ResourceManager(和 MapReduce 的 AppMaster 一樣)。由于完全依賴了 Yarn,因此不同版本的 Yarn 可能會有細微的差異。這里不再做深究。

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服務器的復制組,它提供分布式協調服務(必須)  high-availability.storageDir:hdfs:///flink/ha/       #JobManager元數據保存在文件系統storageDir中,只有指向此狀態的指針存儲在ZooKeeper中(必須)  high-availability.zookeeper.path.root:/flink         #根ZooKeeper節點,在該節點下放置所有集群節點(推薦)   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到各節點

2)啟動HA

先啟動zookeeper集群各節點(測試環境中也可以用Flink自帶的start-zookeeper-quorum.sh),啟動dfs ,再啟動flink

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

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

WebUI查看,這是會自動產生一個主Master,如下

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

3)驗證HA

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

手動殺死node22上的master,此時,node21上的備用master轉為主mater。

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

4)手動將JobManager / TaskManager實例添加到群集

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

添加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.運行測試任務

[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.引入

在一個企業中,為了最大化的利用集群資源,一般都會在一個集群中同時運行多種類型的 Workload。因此 Flink 也支持在 Yarn 上面運行。首先,讓我們通過下圖了解下 Yarn 和 Flink 的關系。

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

在圖中可以看出,Flink 與 Yarn 的關系與 MapReduce 和 Yarn 的關系是一樣的。Flink 通過 Yarn 的接口實現了自己的 App Master。當在 Yarn 中部署了 Flink,Yarn 就會用自己的 Container 來啟動 Flink 的 JobManager(也就是 App Master)和 TaskManager。

啟動新的Flink YARN會話時,客戶端首先檢查所請求的資源(容器和內存)是否可用。之后,它將包含Flink和配置的jar上傳到HDFS(步驟1)。

客戶端的下一步是請求(步驟2)YARN容器以啟動ApplicationMaster(步驟3)。由于客戶端將配置和jar文件注冊為容器的資源,因此在該特定機器上運行的YARN的NodeManager將負責準備容器(例如,下載文件)。完成后,將啟動ApplicationMaster(AM)。

JobManager和AM在同一容器中運行。一旦它們成功啟動,AM就知道JobManager(它自己的主機)的地址。它正在為TaskManagers生成一個新的Flink配置文件(以便它們可以連接到JobManager)。該文件也上傳到HDFS。此外,AM容器還提供Flink的Web界面。YARN代碼分配的所有端口都是臨時端口這允許用戶并行執行多個Flink YARN會話。

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

2.修改環境變量

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

3.部署啟動 

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

-n : TaskManager的數量,相當于executor的數量
-s : 每個JobManager的core的數量,executor-cores。建議將slot的數量設置每臺機器的處理器數量
-tm : 每個TaskManager的內存大小,executor-memory
-jm : JobManager的內存大小,driver-memory

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

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

Flink部署到Yarn Cluster后,會顯示Job Manager的連接細節信息。

Flink on Yarn會覆蓋下面幾個參數,如果不希望改變配置文件中的參數,可以動態的通過-D選項指定,如 -Dfs.overwrite-files=true -Dtaskmanager.network.numberOfBuffers=16368

jobmanager.rpc.address:因為JobManager會經常分配到不同的機器上

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

parallelism.default:如果有指定slot個數的情況下

yarn-session.sh會掛起進程,所以可以通過在終端使用CTRL+C或輸入stop停止yarn-session。

如果不希望Flink Yarn client長期運行,Flink提供了一種detached YARN session,啟動時候加上參數-d或—detached

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

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

如果在虛擬機中測試,可能會遇到錯誤。這里需要注意內存的大小,Flink 向 Yarn 會申請多個 Container,但是 Yarn 的配置可能限制了 Container 所能申請的內存大小,甚至 Yarn 本身所管理的內存就很小。這樣很可能無法正常啟動 TaskManager,尤其當指定多個 TaskManager 的時候。因此,在啟動 Flink 之后,需要去 Flink 的頁面中檢查下 Flink 的狀態。這里可以從 RM 的頁面中,直接跳轉(點擊 Tracking UI)。這時候 Flink 的頁面如圖

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

yarn-session.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.提交任務

之后,我們可以通過這種方式提交我們的任務

[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/

以上命令在參數前加上y前綴,-yn表示TaskManager個數。

在這個模式下,同樣可以使用-m yarn-cluster提交一個”運行后即焚”的detached yarn(-yd)作業到yarn cluster。

5.停止yarn cluster

yarn application -kill application_1539058959130_0001

6.Yarn模式的HA

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

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

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

示例:高度可用的YARN會話

  1. 配置HA模式和zookeeper法定人數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的服務器conf/zoo.cfg(目前它只是可以運行每臺機器的單一的ZooKeeper服務器):

    server.1=node21:2888:3888  server.2=node22:2888:3888  server.3=node23:2888:3888
  3. 啟動ZooKeeper仲裁

    $ bin / start-zookeeper-quorum.sh
  4. 啟動HA群集

    $ bin / yarn-session.sh -n 2

五.錯誤異常

1.身份認證失敗

[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)

通過查看日志,發現有如下報錯

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

解決法案:添加定時任務認證kerberos

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
亚洲午夜精品久久久久久人妖| 日韩欧美在线播放视频| 最新中文字幕免费视频| av网站在线观看不卡| www.日本在线播放| 日本午夜激情视频| 国产视频九色蝌蚪| 国产a级片免费观看| 亚洲视频在线观看一区二区三区| 国产一区二区网| 成人三级视频在线播放| 日日噜噜夜夜狠狠| 特黄视频免费观看| 亚洲天堂第一区| 熟女少妇在线视频播放| 五月婷婷狠狠操| 青春草在线视频免费观看| 男女裸体影院高潮| 欧美日韩中文在线视频| jizzzz日本| 毛片av在线播放| 国产99久久九九精品无码| 色七七在线观看| 最新av在线免费观看| 777av视频| 亚洲精品永久视频| 国产精品久久久久7777| 中文字幕网av| 日韩精品在线中文字幕| 久久人人爽av| 欧洲精品一区二区三区久久| 一区二区三区视频在线观看免费| 一级片黄色免费| 欧美 日韩精品| 黄色录像特级片| 色综合手机在线| 黄页免费在线观看视频| 天堂网在线免费观看| r级无码视频在线观看| 簧片在线免费看| 日韩国产成人无码av毛片| 欧美特级aaa| 欧美a在线视频| 国产一级不卡视频| 午夜啪啪小视频| 欧美在线观看视频网站| 日本一本中文字幕| 亚洲网中文字幕| 中文字幕视频在线免费观看| 精品国产免费av| 日本wwwcom| 樱空桃在线播放| 污污的视频免费观看| 精品中文字幕av| 欧美激情视频免费看| 亚洲高潮无码久久| 久久99国产精品一区| 激情久久综合网| 日本免费色视频| 奇米影音第四色| 天堂av在线网站| 亚洲 欧美 日韩系列| 亚洲最大成人在线观看| 性生交免费视频| 91福利国产成人精品播放| 搡女人真爽免费午夜网站| 黄色片久久久久| 99热手机在线| 思思久久精品视频| 日本高清xxxx| 欧美在线观看视频免费| 一本大道东京热无码aⅴ| 国产精品视频一二三四区| 日本a在线天堂| 2022亚洲天堂| 天堂视频免费看| 黄色污污在线观看| 男人日女人逼逼| 午夜免费一区二区| 亚洲一二三av| 日韩极品视频在线观看| 免费观看精品视频| 天天操精品视频| www.18av.com| 国产成人久久777777| 五月花丁香婷婷| 青青草视频在线视频| 激情网站五月天| 强开小嫩苞一区二区三区网站 | 亚洲午夜精品一区| 黑人巨茎大战欧美白妇| 国自产拍偷拍精品啪啪一区二区| 成人一级片网站| 三年中国中文在线观看免费播放| 久久久久久久香蕉| 色噜噜狠狠永久免费| 久久亚洲国产成人精品无码区| 99热成人精品热久久66| 99精品视频网站| 东京热加勒比无码少妇| 亚洲啊啊啊啊啊| 国产aaaaa毛片| 91亚洲精品国产| 久久这里只精品| 99爱视频在线| 男人天堂手机在线视频| 男生操女生视频在线观看| aa视频在线播放| 女同性恋一区二区| 999精彩视频| 日韩精品视频久久| 国产成人艳妇aa视频在线 | 久久亚洲国产成人精品无码区| 国产精品igao| 91淫黄看大片| 欧美 日本 亚洲| 日韩精品视频在线观看视频| 日本网站在线看| 成年网站在线播放| 最新中文字幕免费视频| www.浪潮av.com| 欧美爱爱视频免费看| a级免费在线观看| 男人添女人下部视频免费| 最新av网址在线观看| 91免费视频黄| 99999精品| 色中文字幕在线观看| 91性高潮久久久久久久| 欧美xxxxxbbbbb| 成人毛片100部免费看| www成人免费| 国产freexxxx性播放麻豆| 精品成在人线av无码免费看| 久久综合久久久久| 奇米精品一区二区三区| 国产男女在线观看| 日韩一级理论片| 亚洲精品综合在线观看| 天堂网成人在线| 18禁裸男晨勃露j毛免费观看| 东北少妇不带套对白| 国内自拍在线观看| 亚洲第一中文av| 在线观看免费黄色片| www.九色.com| av免费网站观看| 久久精品亚洲天堂| 99在线免费视频观看| 青青草原av在线播放| 日本人69视频| 男人添女荫道口喷水视频| 国产三区在线视频| 中国黄色片一级| 日韩亚洲欧美一区二区| 久久精品香蕉视频| 国产一二三四五| 每日在线更新av| 91插插插影院| 阿v天堂2017| 天天干天天操天天干天天操| 欧美二区在线视频| 91插插插影院| 国产精品wwwww| 黄色激情在线视频| 亚洲高清在线不卡| 国产黄色一级网站| 久久亚洲a v| 亚洲一区二区福利视频| 国产91在线免费| 色婷婷777777仙踪林| 中文字幕天天干| 国产二区视频在线播放| 蜜桃视频成人在线观看| 欧美日韩中文不卡| a√天堂在线观看| 国产成人在线小视频| 不卡中文字幕在线| 亚洲国产高清av| 欧美视频免费播放| 少妇高潮毛片色欲ava片| 不卡中文字幕在线观看| 亚洲一区二区蜜桃| 久久久久久香蕉| 精品视频免费在线播放| 国产1区2区3区中文字幕| 91制片厂免费观看| 国产精品美女在线播放| 伊人影院综合在线| 九九视频精品在线观看| 大陆极品少妇内射aaaaa| 国产九色porny| 蜜臀精品一区二区| 国产在线观看欧美| 精品国产一区二区三区无码| 国产精品igao激情视频| 日韩精品一区二区三区四| 成年人视频网站免费| 草b视频在线观看| 精品视频免费在线播放|