午夜视频免费看_日韩三级电影网站_国产精品久久一级_亚洲一级在线播放_人妻体内射精一区二区三区_91夜夜揉人人捏人人添红杏_91福利在线导航_国产又粗又猛又黄又爽无遮挡_欧美日韩一区在线播放_中文字幕一区二区三区四区不卡 _日日夜夜精品视频免费观看_欧美韩日一区二区三区

主頁 > 知識庫 > Puppet使用方法總結

Puppet使用方法總結

熱門標簽:依蘭縣地圖標注app 安陽百應電銷機器人加盟 公司400電話辦理價格 山東企業電銷機器人價格 百度中國地圖標注中心 pageadm實現地圖標注 潮州地圖標注 琿春市地圖標注app 百度地圖標注開鎖電話
1. 概述
puppet是一個開源的軟件自動化配置和部署工具,它使用簡單且功能強大,正得到了越來越多地關注,現在很多大型IT公司均在使用puppet對集群中的軟件進行管理和部署,如google利用puppet管理超過6000臺地mac桌面電腦(2007年數據)。
本文主要介紹puppet安裝方法,設計架構及使用方法。
2. 設計架構
puppet是基于c/s架構的。服務器端保存著所有對客戶端服務器的配置代碼,在puppet里面叫做manifest. 客戶端下載manifest之后,可以根據manifest對服務器進行配置,例如軟件包管理,用戶管理和文件管理等等。


如上圖所示,puppet的工作流程如下:(1)客戶端puppetd調用facter,facter探測出主機的一些變量,例如主機名,內存大小,ip地址等。pupppetd 把這些信息通過ssl連接發送到服務器端; (2)服務器端的puppetmaster 檢測客戶端的主機名,然后找到manifest里面對應的node配置, 并對該部分內容進行解析,facter送過來的信息可以作為變量處理,node牽涉到的代碼才解析,其他沒牽涉的代碼不解析。解析分為幾個階段,語法檢查,如果語法錯誤就報錯。如果語法沒錯,就繼續解析,解析的結果生成一個中間的“偽代碼”,然后把偽代碼發給客戶端;(3)客戶端接收到“偽代碼”,并且執行,客戶端把執行結果發送給服務器;(4)服務器端把客戶端的執行結果寫入日志。

puppet工作過程中有兩點值得注意,第一,為了保證安全,client和master之間是基于ssl和證書的,只有經master證書認證的client可以與master通信;第二,puppet會讓系統保持在你所期望的某種狀態并一直維持下去,如檢測某個文件并保證其一直存在,保證ssh服務始終開啟,如果文件被刪除了或者ssh服務被關閉了,puppet下次執行時(默認30分鐘),會重新創建該文件或者啟動ssh服務。

3.  軟件安裝

不推薦使用apt-get命令進行安裝,因為該命令下載的puppet存在bug。可直接從源代碼進行安裝,需要安裝的軟件有ruby,facter和puppet。

3.1   安裝步驟

編輯/etc/host以修改主機名,因為puppet是基于證書的,證書中包含主機名;

在master和slave上依次安裝ruby、facter和puppet,安裝facter和puppet時,要使用ruby install.rb。

3.2    安裝后的目錄結構

(1)    安裝目錄

安裝目錄默認存為/etc/puppet,該目錄下的manifests存放manifest文件。

其他可執行文件在/user/sbin下,主要有:

puppet: 用于執行用戶所寫獨立的mainfests文件,如:

puppet -l /tmp/manifest.log manifest.pp

puppetd: 運行在被管理主機上的客戶端程序,如:

puppet –server servername –waitforcert 60

puppetmasterd:運行在管理機上的服務器程序,如:

puppetmasterd –debug

puppetca puppet認證程序,主要用于對slave的證書進行認證,如:

查看需認證的slave:puppetca –list

對這些slave進行認證:puppetca -s –a

puppetrun 用于連接客戶端,強制運行本地配置文件,如:

puppetrun -p 10 –host host1 –host host2 -t remotefile -t webserver

(2)    配置文件

puppet.conf

Puppet的主配置文件,如果是root用戶,配置文件為/etc/puppet/puppet.conf,普通用戶,配置文件為:~user/.puppet/puppet.conf

具體配置參數,參見:

http://docs.puppetlabs.com/references/stable/configuration.html#configuration-files

fileserver.conf

puppet文件服務器的配置文件。用path配置文件路徑,allow/deny配置訪問權限,具體參見:http://docs.puppetlabs.com/guides/file_serving.html

3.3   驗證安裝是否成功

選定一個slave與master進行驗證,假設slave的host為slave00,master的host為masterhost,在slave00上輸入:

puppetd –test –server servername

然后在masterhost上查看待認證的slave:

puppetca –list

如果沒問題的話,此時可以看到slave00,對該slave的證書進行簽名:

puppetca -s -a

這樣slave00通過了證書驗證,可以與master進行進一步交互了。

在masterhost的/etc/puppet/manifests目錄下編寫site.pp文件,內容如下:

復制代碼
代碼如下:

node default {
file {
“/tmp/test”:
content=>”hello\n”,
mode => 0644;
}
}

同時在slave00上輸入:puppetd –test –server servername, 查看slave00的/tmp文件夾,生成了一個新文件test,里面的內容是hello,該文件的權限是-rw-r—r—。這樣,便證明puppet安裝成功,如果出現錯誤,查看第六節。

4.  配置腳本編寫

本節介紹puppet的配置腳本編寫方法,主要是指puppet的manifest編寫方法。puppet把需要管理的內容抽象成為資源,每種資源有不同的屬性,因此puppet語言就是描述這些資源的屬性以及資源之間關系的語言。

為了便于管理,puppet將資源模塊化,即每個功能模塊的manifest單獨放在一個目錄下。每個模塊包含一個主要的manifest文件(init.pp,它是模塊的入口,類似于C語言中的main函數),里面包含若干個class對該模塊的資源進行封裝,常見的資源有file,package,service等,每種資源由自己的屬性,如file有屬性name,owner,mode等。

本節主要介紹puppet中manifest的編寫方法,將依次介紹資源屬性,資源,節點管理,函數和模塊的編寫方法。

4.1   資源屬性

資源屬性有兩種,一種是資源專屬屬性,另一種是資源共同屬性,對于資源專屬屬性,將在下一節介紹;而資源共同屬性是所有資源共有的屬性,主要有:

before

用于控制不同對象(資源)的執行順序關系,表示某個對象(資源)在另一個對象之后發生(require與之相反,它表示之前發生)。如:


復制代碼
代碼如下:

file { “/var/nagios/configuration”:
source => “…”,
recurse => true,
before => Exec["nagios-rebuid"]
}
exec { “nagios-rebuild”:
command => “/usr/bin/make”,
cwd => “/var/nagios/configuration”
}


這段代碼保證用make編譯之前,所有代碼都是最新的。也可以before多個資源,如:

before => [ File["/usr/local"], File["/usr/local/scripts"] ]

subscribe

檢測某個資源,當它發生變化時,該資源會重新加載,如:

復制代碼
代碼如下:

class nagios {
file { “/etc/nagios/nagios.conf”:
source => “puppet://server/module/nagios.conf”,
alias => nagconf # just to make things easier for me
}
service { nagios:
ensure => running,
subscribe => File[nagconf]
}
}

當檢測到文件nagconf被修改時,服務nagios會相應的更新。需要注意的是,目前支持subscribe的資源只有exec,service和mount。

更多資料,參見:http://docs.puppetlabs.com/references/latest/metaparameter.html

4.2   資源

常用的資源主要有以下幾個:

file:文件管理

package:軟件包管理

service:系統服務管理

cron:配置定期任務

exec:運行shell命令

(1)    file資源

更詳細資料,可參見:http://puppet.wikidot.com/file

(2)    package資源

更詳細資料,可參見:http://puppet.wikidot.com/package

(3)    service資源

更詳細資料,可參見:http://puppet.wikidot.com/srv

(4)    exec資源

更詳細資料,可參見:http://puppet.wikidot.com/exec

(5)    cron資源

更詳細資料,可參見:http://puppet.wikidot.com/cron

4.3   節點管理

puppet如何區分不同的客戶端,并且給不同的服務端分配manifest呢?puppet使用node資源做這件事情,node 后面跟客戶端的主機名,例如:

node ‘ slave00 ‘ {
include ssh
}
node ‘ slave11 ‘ {
$networktype=”tele”
$nagioscheckport=”80,22,3306″
include apache, mysql, php
}
資源node中可使用變量,也可直接通過include把其他manifest包含進來。

更詳細資料,可參見:http://docs.puppetlabs.com/references/latest/type.html

4.4   類和函數

類可以把多個相關的資源定義在一起,組成一個類。類可以繼承,具體參見:http://docs.puppetlabs.com/guides/language_guide.html#resource-collections

函數(在puppet中稱為“defination”)可以把多個資源包裝成一個資源,或者把一個資源包裝成一個模型,便于使用。例如,在debian里面管理一個apache虛擬機非常簡單,把一個虛擬主機的配置文件放到/etc/sites-available/里面,然后做一個符號鏈接到/etc/sites-enabled目錄。 你可以為你每個虛擬主機復制同樣的配置代碼,但是如果你使用下面的代碼就會更好和更簡單:

define virtual_host($docroot, $ip, $order = 500, $ensure = “enabled”) {
$file = “/etc/sites-available/$name.conf”
# The template fills in the docroot, ip, and name.
file { $file:
content => template(“virtual_host.erb”),
notify  => Service[apache]
}
file { “/etc/sites-enabled/$order-$name.conf”:
ensure => $ensure ? {
enabled  => $file,
disabled => absent
}
}
}
然后,你就可以使用這個定義來管理一個apache虛擬主機,如下面代碼所示:

virtual_host { “reductivelabs.com”:

order   => 100,

ip      => “192.168.0.100″,

docroot => “/var/www/reductivelabs.com/htdocs”

}

4.5   模塊

一個模塊就是一個/etc/puppet/modules目錄下面的一個目錄和它的子目錄,在puppet的主文件site.pp里面用import modulename可以插入模塊。新版本的puppet可以自動插入/etc/puppet/modules目錄下的模塊。引入模塊,可以結構化代碼,便于分享和管理。例如關于apache的所有配置都寫到apache模塊下面。一個模塊目錄下面通常包括三個目錄:files,manifests,templates。manifests 里面必須要包括一個init.pp的文件,這是該模塊的初始(入口)文件,導入一個模塊的時候,會從init.pp開始執行。可以把所有的代碼都寫到init.pp里面,也可以分成多個pp文件,init 再去包含其他文件。files目錄是該模塊的文件發布目錄,puppet提供一個文件分發機制,類似rsync的模塊。templates 目錄包含erb模型文件,這個和file資源的template屬性有關。

puppet安裝好以后,modules目錄是沒有的,自己建立一個就行,然后在里面可以新增加你的模塊。

5.  編程實例

5.1    Hello World

本節介紹了一個非常簡單的編程實例:一個slave從master中獲取其manifest,該maniftest要求slave依次做以下工作:安裝gcc,創建文件夾/home/dxc/test,下載文件hello.c程序,編譯hello.c。

(1)    代碼結構組織

Master上代碼的目錄結構如下:

|– auth.conf

|– fileserver.conf   #puppet文件服務器配置文件

|– manifests   #puppet主文件所在目錄

|   |– modules.pp        #puppet各個模塊匯總

|   |– nodes         #各個slave要處理的模塊

|   |   `– execHello.pp      #hello模塊對應由那些slave處理

|   `– site.pp                  #puppet主文件(入口文件)

|– modules     #puppet的各個模塊所在文件

|   `– hello   #hello模塊

|       |– files    #該模塊對應的文件資源,可能是要發送給slave的配置文件等

|       |   `– hello.c

|       `– manifests   #模塊的manifest文件

|           `– init.pp                  #模塊入口文件

`– ssl       #puppet的證書文件目錄

(2)    程序執行流程

代碼調用順序是:

Slave發起連接請求 à site.pp à nodes àmodules à init.pp

首先,slave向發起master連接請求,進行證書驗證;

接著,證書驗證通過后,master會直接找到入口文件manifests目錄下的site.pp文件,該文件可能包含一些全局變量,參數缺省值(當各個模塊沒有設置這些參數時,它們的缺省值)以及其它pp文件的調用(在該例子中,會調用modules.pp和nodes下的各個pp文件);

然后,master通過nodes下的各個pp文件定位到該slave要執行的模塊(init.pp是各個模塊的入口),匯總這些模塊代碼返回給slave;

最后,slave根據master發過來的manifest,配置信息。

(3)    代碼解釋

直接在此處下載代碼

5.2   一個更復雜的實例

本節介紹了一個更為復雜的某個公司正在使用實例,puppet代碼布局與上一個實例一致,只不過該實例涉及到更多模塊,更復雜的依賴管理。代碼具體內容本節就不解釋了,具體參見代碼

6.  可能遇到的問題

Q: puppet的證書機制

A: puppet證書問題是初學者最容易遇到的問題,這里講一下怎么處理。puppet服務器端在安裝或者首次啟動的時候,會自動生產一個根證書和服務器證書,證書和主機名相關,因此如果證書生成后友改了主機名,那就會出問題。 puppet客戶端在首次啟動的時候,也會自動生成證書;但是這個證書需要得到puppet服務器端的簽名才行,因此;puppet客戶端第一次連接服務器的時候,會發送一個證書請求;服務器端需要對這個證書進行簽名。puppet客戶端在下次連接服務器的時候就會下載簽名好的證書。

Q:Ubuntu下面的證書出錯,怎么解決?

A:本方法是提供給初學者的測試環境,生成環境不建議這么做。首先在puppetmaster(服務器端)刪除/var/lib/puppet/ssl目錄;然后啟動puppetmasterd;然后在客戶端也刪除/var/lib/puppet/ssl目錄。把puppetmaster機器的主機名和對應的ip地址寫入客戶端機器的/etc/hosts。

然后執行:puppetd –test –server server.example.com. 把server.example.com替

換成你自己的服務器主機名。 執行這個命令,會有提示信息,不用理會。

然后登錄到puppetmaster服務器機器,執行puppetca –list 命令,看看是否有客戶端的證書請求;如果沒有,請檢查前面的步驟是執行正確,以及網絡連接是否正常。 如果puppetca –list 能看到請求,那么執行puppetca -s -a 命令;對所有的證書請求簽名。最后回到puppet客戶端機器,執行

puppetd –test –server server.example.com.

就能建立連接了,如果你的site.pp寫好了.就可以測試puppet了。

補充:如果客戶端和服務器端的時間不一致也會導致證書認證失敗,因此出現證書問題的時候需要檢查兩臺機器的時間是否一致,如果不一致用date命令或者ntpdate命令讓兩臺機器的時間一致。

Q:出現錯誤[Puppet Users] err: Could not retrieve catalog; skipping run

A:可能是由于安裝了兩個版本的ruby或者facter的原因,解決方案見:

https://projects.puppetlabs.com/issues/5279

7.  總結

隨著服務器集群規模越來越大,自動化配置和部署這些服務器能夠使管理變得非常容易并大大減小管理部署成本,因而得到IT公司的高度重視。

本文檔介紹了puppet,一種新型的軟件自動化配置和部署工具。本文主要內容涉及puppet的架構,安裝和使用方法,并給出了兩個使用實例。

在大規模的生成環境中,如果只有一臺puppetmaster會忙不過來的,因為puppet是用ruby寫的,ruby是解析型語言,每個客戶端來訪問,都要解析一次,當客戶端多了就忙不過來,所以需要擴展成一個服務器組。puppetmaster可以看作一個web服務器,實際上也是由ruby提供的web服務器模塊來做的。因此可以利用web代理軟件來配合puppetmaster做集群設置,具體參見:http://puppet.wikidot.com/puppetnginx。

8.  參考資料

puppet官方網站:http://www.puppetlabs.com/

puppet中文wiki:http://puppet.chinaec2.com/

puppet中文博客:http://www.comeonsa.com

9.  代碼下載

(1)5.1節實例代碼下載

(2)5.2節實例代碼下載

原創文章,轉載請注明:轉載自董的博客

標簽:三明 連云港 常德 呼和浩特 公主嶺 香港 林芝 晉中

巨人網絡通訊聲明:本文標題《Puppet使用方法總結》,本文關鍵詞  Puppet,使用方法,總結,Puppet,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Puppet使用方法總結》相關的同類信息!
  • 本頁收集關于Puppet使用方法總結的相關信息資訊供網民參考!
  • 推薦文章
    一区二区三区无码高清视频| 国产欧美日韩精品在线观看| 69视频在线观看免费| 中文乱码免费一区二区| 99re在线| 欧美 日韩 国产 精品| 欧美理论片在线观看| 国产一区二区三区视频播放| 欧美日韩国产首页| 欧美午夜精品理论片| 综合久久久久综合| 国产内射老熟女aaaa| 国产成人亚洲精品青草天美| 成人综合电影| 久久午夜精品| 成人黄色免费网站在线观看| 国产视频手机在线观看| 久久久久久久一区二区| 国产精品久久久久久久久久久久久久久久久| 欧美一区二区三区免费大片 | 亚洲另类在线一区| 国内精品国产三级国产99| 成人短视频下载| 日本一区二区三区www| 麻豆国产精品视频| 国产精品永久入口久久久| 日韩电影一区二区三区| 91免费版黄色| 老司机免费视频一区二区三区| 91中文字精品一区二区| 美女www一区二区| 国产经品一区二区| 精品亚洲成a人| 精品一区二区三区国产| 国产综合久久久久影院| 欧美成人综合一区| 成人va在线观看| 一级全黄肉体裸体全过程| 久久精品亚洲一区二区三区浴池 | 91福利精品视频| 在线a免费观看| 精品视频在线免费| 欧美图片一区二区| 亚洲高清在线观看| 久久黄色免费网站| 九九热在线精品视频| 这里只有精品免费视频| 国产精品国产自产拍高清av水多 | 激情另类小说区图片区视频区| 国产在线精品一区二区三区| 国产成人在线电影| 可以在线看黄的网站| 亚洲乱码国产乱码精品精可以看| 我要看一级黄色大片| 欧美影视一区二区三区| 一级片视频免费看| 中文欧美在线视频| 在线观看国产一区二区三区| 国产综合香蕉五月婷在线| 麻豆国产欧美日韩综合精品二区| 天堂资源在线亚洲视频| 国产精品三级视频| 亚洲黄色av片| 亚洲国产精品久久久久久| 日韩精品在线不卡| 国产999精品久久久| 日本不卡一区二区三区| 中文字幕一区二区三区精彩视频 | 五月婷婷综合激情网| 色av中文字幕一区| 国产三级三级在线观看| 国产一区二区不卡视频在线观看| 久久午夜老司机| 日本中文字幕高清| 欧美一级片免费看| 久久精品国产亚洲av无码娇色| 欧美亚洲视频在线看网址| 日韩国产精品91| 无码人妻精品一区二区三区99v| 亚洲国产美女搞黄色| 三上悠亚影音先锋| 欧美精品性视频| 视频一区二区欧美| 国产精品无码电影在线观看| 91成人网在线| 久久久久久福利| 国产精品香蕉在线观看| 99国内精品久久| 三区视频在线观看| 有码中文亚洲精品| 天堂网在线播放| 国产又大又长又粗又黄| 日韩欧美第一页| 免费网站观看www在线观| 国产精品激情av在线播放| 成人av手机在线观看| 777一区二区| 一区二区三区视频免费| 隣の若妻さん波多野结衣| 一区二区三区四区欧美日韩| 欧美视频不卡中文| 国产一级特黄a高潮片| 96pao国产成视频永久免费| 国产目拍亚洲精品99久久精品| 人妻av一区二区| 久久久久久综合网天天| 成人免费看黄yyy456| 特种兵之深入敌后| 欧美激情久久久久| 成人精品鲁一区一区二区| 精品人妻一区二区乱码| 欧美精品久久久久久久久| 国产成人精品三级麻豆| 少妇熟女视频一区二区三区| 欧美国产亚洲精品久久久8v| av亚洲精华国产精华精| 国产又黄又粗又猛又爽的视频 | 波多野结衣家庭教师| 国产精品网红福利| 国产精品久久久久久久岛一牛影视 | 欧美日韩成人激情| 96亚洲精品久久久蜜桃| 青青草综合在线| 欧美成人精品福利| 天堂在线观看免费视频| 免费观看成人网| 中文字幕精品av| 国产mv日韩mv欧美| 蜜桃精品一区二区| 国产美女精彩久久| 午夜伊人狠狠久久| 一二三区免费视频| 天天想你在线观看完整版电影免费| 精品国产三级a在线观看| 玖玖视频精品| 午夜性福利视频| 国产v综合v亚洲欧美久久| 亚洲精选免费视频| 老熟妇仑乱一区二区av| 欧美a级黄色大片| 伊是香蕉大人久久| youjizz国产精品| 网站永久看片免费| 欧美第一黄网| 精品美女在线观看| 激情图片小说一区| 少妇av片在线观看| 蜜桃av噜噜一区二区三| 精品国产污网站| 国产毛片精品国产一区二区三区| 国产色视频一区二区三区qq号| 91精品国产一区二区三区动漫| 色悠悠久久综合| 亚洲精品.www| 三级黄色片播放| 国产精品主播视频| 欧美性感一区二区三区| 久久亚洲影院| 精品国产无码在线观看| 精品视频一区在线| 日韩电影中文字幕| 91在线视频观看| 国产精品免费av一区二区| 17c丨国产丨精品视频| 久久高清视频免费| 亚洲精品福利视频网站| 一区二区www| 青娱乐精品在线| 不卡视频一区| 亚洲国产日韩欧美在线99| 成人黄页在线观看| 黄色小说在线观看视频| 日日橹狠狠爱欧美超碰| 日本韩国在线不卡| 欧美日韩国产美女| 国产一区二区三区不卡在线观看| 久久爱一区二区| 日本一本中文字幕| 日本一区二区三区四区视频| 欧美在线观看18| 国产电影精品久久禁18| 日本熟伦人妇xxxx| 成人在线激情网| 91精品国产综合久久香蕉的用户体验| 欧美剧情电影在线观看完整版免费励志电影| 蜜乳av一区二区三区| 看黄色录像一级片| 福利视频免费在线观看| 日本精品免费一区二区三区| 欧美日本乱大交xxxxx| 成人激情午夜影院| 毛片在线免费播放| 国产白袜脚足j棉袜在线观看| 奇米888一区二区三区| 欧美另类精品xxxx孕妇| 色综合天天性综合| 国产99久久久国产精品潘金 | 国产av一区二区三区| 久久久老熟女一区二区三区91| 欧洲高清一区二区| 欧美猛交ⅹxxx乱大交视频| 亚洲高清不卡在线| 久久超级碰视频| 日韩av大片在线观看| 又色又爽又黄18网站| 亚洲一区三区视频在线观看| 日本三级韩国三级久久| 亚洲成人黄色在线| 亚洲精品国产成人久久av盗摄| 三级影片在线观看欧美日韩一区二区| 最新av电影网站| 色悠悠久久综合网| 亚洲自拍三区| 国产精品久久久久久久久久ktv| 亚洲国产精品久久久| 欧美激情综合在线| 日韩精品亚洲一区| 日韩色图在线观看| 三叶草欧洲码在线| 91精品国产91久久久久麻豆 主演| 国产精品视频精品| 中文字幕在线看视频国产欧美| 色偷偷88欧美精品久久久| 91麻豆文化传媒在线观看| 好吊色一区二区三区| 精品在线视频观看| 熟女人妻一区二区三区免费看| 在线视频一二三区| 成人在线视频电影| 69视频在线播放| 精品国产乱码久久久久久浪潮| 亚洲精品自拍动漫在线| 成人av片在线观看| 老妇喷水一区二区三区| 精人妻无码一区二区三区| 99精品欧美一区二区| www.夜夜爽| 国产成人在线小视频| 精品欧美国产| 国产精品久久综合av爱欲tv| 久久综合五月天| 亚洲国产97在线精品一区| 色婷婷精品久久二区二区蜜臂av| 中文字幕不卡的av| 韩日av一区二区| 欧美一区二区三区激情| 狠狠人妻久久久久久| 国产乱子轮xxx农村| 亚洲一区二区三区综合| 亚洲国产成人va在线观看麻豆| 欧美少妇一级片| 欧美精品七区| 成人字幕网zmw| 欧美在线观看网站| 欧美xxxx14xxxxx性爽| 亚洲免费高清视频| 日韩精品资源二区在线| 日韩欧美福利视频| 夜夜嗨av一区二区三区四季av| 久久久亚洲精品石原莉奈| 国产一区二区三区四| 久久中文在线| www.国产视频| 92久久精品一区二区| 在线免费黄色av| 久久精品国产av一区二区三区| 亚洲女同二女同志奶水| 黄色正能量网站| 88av在线播放| 美女黄色一级视频| 日本黄色三级网站| 国产农村妇女精品久久| 国产成年人视频网站| 色悠悠久久综合网| 亚洲成色www.777999| 国产黄色特级片| 97成人在线观看视频| 国产青青在线视频| 国产 日韩 欧美在线| 国产片侵犯亲女视频播放| 欧美另类videos| 六月婷婷激情综合| av女优在线播放| 美女扒开大腿让男人桶| 日韩精品在线中文字幕| 国产 日韩 欧美在线| 免费毛片小视频| 成年人在线看片| 高清av免费看| 天天av天天操| 在线播放第一页| 精品夜夜澡人妻无码av| 欧美18—19性高清hd4k| 超碰人人人人人人人| 久久中文免费视频| 国产一级片久久| 国产精品第5页| 性高潮视频在线观看| 国产熟女一区二区三区五月婷| 精品人妻无码一区二区三区蜜桃一| 性一交一乱一透一a级| 美女诱惑黄网站一区| 另类人妖一区二区av| 国产成人精品免费网站| av在线一区二区三区| 久久精品在这里| 成人欧美一区二区三区1314| 亚洲一区二区三区视频在线 | 国产不卡免费视频| 91麻豆福利精品推荐| 国产精品国产三级国产普通话三级 | 天堂网一区二区| 国产毛片在线视频| 五月婷婷在线播放| 九色综合国产一区二区三区| 成人精品国产福利| 国产精品二三区| 欧美日韩中国免费专区在线看| 在线播放/欧美激情| 亚洲情综合五月天| 欧美精品成人在线| 国产欧美久久一区二区| 国内精品二区| 色哟哟免费网站| 日本人视频jizz页码69| 波多野结衣加勒比| www.毛片com| 国产主播第一页| 天堂蜜桃一区二区三区| 成人污视频在线观看| 日韩久久一区二区| 欧美日韩视频在线观看一区二区三区| 亚洲国产小视频| 高清欧美性猛交xxxx| 91夜夜揉人人捏人人添红杏| 麻豆亚洲一区| 日韩av一二三四区| 亚洲中文字幕一区| 国产乡下妇女做爰| 欧美 日韩 综合| www.欧美亚洲| 欧美日韩视频在线| 亚洲国产精品女人久久久| 蜜月aⅴ免费一区二区三区 | 手机看片福利永久国产日韩| 黄色片久久久久| 精品国产av无码| 久久久久女人精品毛片九一| 无码国产精品一区二区色情男同 | 亚洲欧洲三级电影| 在线一区二区视频| 久久精品国产成人| 国产综合福利在线| 日韩成人手机在线| 给我看免费高清在线观看| 男人天堂av在线播放| 久久99久久99精品免视看婷婷| 国产精品国产三级国产| 91精品国产欧美一区二区18| 久久91超碰青草是什么| 国产一级二级三级精品| 国产a级一级片| 长河落日免费高清观看| 99久久国产热无码精品免费| 成人免费观看av| 色欧美乱欧美15图片| 精品国产自在精品国产浪潮| 亚洲一区美女视频在线观看免费| 欧美一级片免费播放| 日本性高潮视频| 精品久久无码中文字幕| 久久久一区二区| 日韩欧美在线影院| 欧美在线视频免费| 老汉色影院首页| 37p粉嫩大胆色噜噜噜| 91久久精品国产91性色69| av欧美精品.com| 欧美午夜在线一二页| 久久久女女女女999久久| 亚洲五月六月| 欧美高清性xxxx| 精品人妻无码一区二区色欲产成人 | 日韩av在线网站| 成人福利在线视频| 久久精品午夜福利| 黄色一级片中国| 国产一区二区三区香蕉| 欧美午夜影院一区| 国语自产在线不卡| 青青草综合视频| 熟女av一区二区| 蜜桃久久精品一区二区| 91久久精品一区二区三区| 久久久久久久久久久91| 国产欧美123| 欧美成人国产精品高潮| 国产乱码精品一区二区三区忘忧草 | 五月婷婷久久久| 精品美女永久免费视频| 久久久视频免费观看| 97碰在线视频| 欧美日韩在线国产| 成人久久视频在线观看| 欧美成人在线直播| 国产高清自拍99| 欧美性xxxx图片| 精品影视av免费| 欧美成人综合网站| 久热国产精品视频一区二区三区|