精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

自動(dòng)化運(yùn)維工具之a(chǎn)nsible

運(yùn)維 系統(tǒng)運(yùn)維 自動(dòng)化
ansible是新出現(xiàn)的運(yùn)維工具是基于Python研發(fā)的糅合了眾多老牌運(yùn)維工具的優(yōu)點(diǎn)實(shí)現(xiàn)了批量操作系統(tǒng)配置、批量程序的部署、批量運(yùn)行命令等功能。

一、什么樣的情形需要批量部署

1、操作系統(tǒng)的安裝

常見(jiàn)的有collber,red hat satelite(redhat)系統(tǒng)專用。

2、操作系統(tǒng)的配置

常見(jiàn)的有cfengine,puppet,chef,func。其中puppet***

3、批量程序的部署

4、批量命令的運(yùn)行查看狀態(tài)信息

二、ansible介紹

ansible的架構(gòu)大致如下

1

ansible是新出現(xiàn)的運(yùn)維工具是基于Python研發(fā)的糅合了眾多老牌運(yùn)維工具的優(yōu)點(diǎn)實(shí)現(xiàn)了批量操作系統(tǒng)配置、批量程序的部署、批量運(yùn)行命令等功能。

  1. 運(yùn)維工具常見(jiàn)的工作模式  
  2. 1、agent模式: 基于ssl實(shí)現(xiàn)。代理工作在被監(jiān)控端。像puppet。  
  3. 2、agentless模式: 基于ssh服務(wù)實(shí)現(xiàn)工作在被監(jiān)控端。監(jiān)控端是ssh的客戶端。 

ansible是工作在agentless模式下具有冪等性。ansible在控制端只需要告訴監(jiān)控端的期望狀態(tài)就可以實(shí)現(xiàn)批量部署。

  1. 名詞解釋  
  2. 冪等性不會(huì)重復(fù)執(zhí)行相同的指令。例如不會(huì)重復(fù)安裝軟件  
  3. 期望狀態(tài)只需要告訴被監(jiān)控端的期望狀態(tài) 

ansible是基于模塊工作的ansible本身沒(méi)有批量部署的能力。真正具有批量部署的是ansible所運(yùn)行的模塊ansible只是提供一種框架。架構(gòu)包括

  • 連接插件connection plugins負(fù)責(zé)和被監(jiān)控端實(shí)現(xiàn)通信。

  • Host Inventory:指定操作的主機(jī),是一個(gè)配置文件里面定義監(jiān)控的主機(jī)

  • 各種模塊核心模塊command模塊自定義模塊

  • 借助于插件完成記錄日志郵件等功能

  • PlayBooks:劇本執(zhí)行多個(gè)任務(wù)時(shí)。并非必需可以讓節(jié)點(diǎn)一次性運(yùn)行多個(gè)任務(wù)

三、ansible的基本使用

  1. 安裝軟件yum install ansible -y # 對(duì)應(yīng)的軟件在 epel 倉(cāng)庫(kù)中也可自己手動(dòng)編譯  
  2. #源碼地址 https://pypi.python.org/packages/source/a/ansible/ansible-1.5.tar.gz 

2 

  1. 2、定義Host Inventory  
  2. # vim /etc/ansible/hosts  
  3. [webhosts]  
  4. 172.16.10.22 ansible_ssh_user=root ansible_ssh_pass=guoting 
  5. 172.16.10.33 ansible_ssh_user=root ansible_ssh_pass=guoting 
  6. 解釋  
  7. #ansible_ssh_user=root 是ssh登陸用戶  
  8. #ansible_ssh_pass=guoting 是ssh登陸密碼3、測(cè)試各個(gè)模塊  
  9. # 注意每個(gè)模塊的用法可以使用 ansible-doc MOD 來(lái)查看例如ansible-doc copy  
  10.    
  11. ansible命令最常用的用法  
  12. ansible <Host-partten> -m MOE -a 'MOD_ARV'所支持的模塊可以使用ansible-doc -l來(lái)查看 

ansible示例

1、查看時(shí)間信息。command、shell模塊

3

2、在控制端添加添加用戶。user模塊

4

3、實(shí)現(xiàn)ssh秘鑰認(rèn)證。shell、copy模塊

6

#p#

此時(shí)就可以實(shí)現(xiàn)基于ssh秘鑰通信了此時(shí)/etc/ansible/hosts可以修改如下

  1. ###### /etc/ansible/hosts  
  2. [webhosts]  
  3. 172.16.10.22  
  4. 172.16.10.33 

7

4、安裝軟件和啟動(dòng)服務(wù)。yum、service模塊

8

9

5、支持管道的命令。raw模塊,類似于shell模塊

wKioL1QaeV6QK9YUAACu77PB1cY454.jpg

四、YAML語(yǔ)言介紹

1、YAML簡(jiǎn)介

  1. YAML是一個(gè)可讀性高的用來(lái)表達(dá)資料序列的格式。YAML參考了其他多種語(yǔ)言包括XML、C語(yǔ)言、Python、Perl以及電子郵件格式RFC2822等。Clark Evans在2001年在***發(fā)表了這種語(yǔ)言另外Ingy dtNet與Oren Ben-Kiki也是這語(yǔ)言的共同設(shè)計(jì)者。  
  2. YAML Ain't Markup Language即YAML不是XML。不過(guò)在開(kāi)發(fā)的這種語(yǔ)言時(shí)YAML的意思其實(shí)是"Yet Another Markup Language"仍是一種標(biāo)記語(yǔ)言。其特性  
  3. YAML的可讀性好  
  4. YAML和腳本語(yǔ)言的交互性好  
  5. YAML使用實(shí)現(xiàn)語(yǔ)言的數(shù)據(jù)類型  
  6. YAML有一個(gè)一致的信息模型  
  7. YAML易于實(shí)現(xiàn)  
  8. YAML可以基于流來(lái)處理  
  9. YAML表達(dá)能力強(qiáng)擴(kuò)展性好  
  10.    
  11. 更多的內(nèi)容及規(guī)范參見(jiàn)http://www.yaml.org。  
  12.    
  13. ##########################YAML語(yǔ)法  
  14.    
  15. YAML的語(yǔ)法和其他高階語(yǔ)言類似并且可以簡(jiǎn)單表達(dá)清單、散列表、標(biāo)量等數(shù)據(jù)結(jié)構(gòu)。其結(jié)構(gòu)Structure通過(guò)空格來(lái)展示序列Sequence里的項(xiàng)用"-"來(lái)代表  
  16. Map里的鍵值對(duì)用":"分隔。YAML文件擴(kuò)展名通常為.yaml或者.yml。下面是一個(gè)示例。  
  17.    
  18. name: John Smith  
  19. age: 41gender: Male  
  20. spouse:  
  21. name: Jane Smith  
  22. age: 37  
  23. gender: Female  
  24. children:  
  25. - name: Jimmy Smith  
  26. age: 17  
  27. gender: Male  
  28. - name: Jenny Smith  
  29. age 13  
  30. gender: Female  
  31.    
  32. YAML 2 個(gè)重要的結(jié)構(gòu)組成部分list和directory  
  33. ################################# list  
  34.    
  35. 列表的所有元素均使用“-”打頭例如  
  36. # A list of tasty fruits  
  37. - Apple  
  38. - Orange  
  39. - Strawberry  
  40. - Mango  
  41.    
  42. ##############################dictionary  
  43.    
  44. 字典通過(guò)key與valuef進(jìn)行標(biāo)識(shí)例如  
  45. ---  
  46. # An employee record  
  47. name: Example Developer  
  48. job: Developer  
  49. skill: Elite  
  50.    
  51. 也可以將key:value放置于{}中進(jìn)行表示例如  
  52. ---  
  53. # An employee record  
  54. {name: Example Developer, job: Developer, skill: Elite}  
  55.    
  56. 多個(gè)映射關(guān)系組成一個(gè)字典一個(gè)列表可以包含多個(gè)字典。 

2、ymal中的變量

  1. ################################## 變量命名  
  2. 變量名僅能由字母、數(shù)字和下劃線組成且只能以字母開(kāi)頭。  
  3.    
  4. ################################## facts  
  5. facts是由正在通信的遠(yuǎn)程目標(biāo)主機(jī)發(fā)回的信息這些信息被保存在ansible變量中。要獲取指定的遠(yuǎn)程主機(jī)所支持的所有facts可使用如下命令進(jìn)行  
  6. # ansible hostname -m setup 這個(gè)命令可以獲得被監(jiān)控端主機(jī)的各種信息將這些信息得到后保存到變量中。  
  7.    
  8. ################################ 自定義變量  
  9. 在 yaml 中可以使用vars關(guān)鍵字來(lái)定義變量  
  10. vars:  
  11. var_name: value  
  12.    
  13. ############################# 變量的引用  
  14. {{ var_name }}  
  15.    
  16.    
  17. ########################### 特殊的變量迭代  
  18. 當(dāng)有需要重復(fù)性執(zhí)行的任務(wù)時(shí)可以使用迭代機(jī)制。其使用格式為將需要迭代的內(nèi)容定義為item變量引用并通過(guò)with_items語(yǔ)句來(lái)指明迭代的元素列表即可。  
  19.    
  20. #######################################示例  
  21. 例如在被控端添加 2 個(gè)用戶  
  22.    
  23. 方式1一般做法  
  24. - name: add user testuser1  
  25. user: name=testuser1 state=present groups=wheel 
  26. - name: add user testuser2  
  27. user: name=testuser2 state=present groups=wheel 
  28.    
  29. 方式2使用變量方式  
  30. - name: add several users  
  31. vars:  
  32. user1: testuser1  
  33. user2: testuser2  
  34. user: name={{ user1 }} state=present groups=wheel 
  35. user: name={{ user2 }} state=present groups=wheel 
  36.    
  37. 方式3使用迭代方式  
  38. - name: add several users  
  39. user: name={{ item }} state=present groups=wheel 
  40. with_items:   
  41. - testuser1   
  42. - testuser2  
  43. 事實(shí)上with_items中可以使用元素還可為hashes例如  
  44. - name: add several users  
  45. user: name={{ item.name }} state=present groups={{ item.groups }}  
  46. with_items:  
  47. - { name: 'testuser1', groups: 'wheel' }  
  48. - { name: 'testuser2', groups: 'root' } 

3、Inentory文件的格式

  1. inventory文件遵循INI文件風(fēng)格中括號(hào)中的字符為組名。可以將同一個(gè)主機(jī)同時(shí)歸并到多個(gè)不同的組中此外當(dāng)如若目標(biāo)主機(jī)使用了非默認(rèn)的SSH端口還可以在主機(jī)名稱之后使用冒號(hào)加端口號(hào)來(lái)標(biāo)明。  
  2.    
  3. [webservers]  
  4. www1.magedu.com:2222  
  5. www2.magedu.com  
  6. [dbservers]  
  7. db1.magedu.com  
  8. db2.magedu.com  
  9. db3.magedu.com  
  10.    
  11. 如果主機(jī)名稱遵循相似的命名模式還可以使用列表的方式標(biāo)識(shí)各主機(jī)例如  
  12. [webservers]  
  13. www[01:50].example.com  
  14. [databases]  
  15. db-[a:f].example.com  
  16.    
  17. #################### 主機(jī)變量  
  18. 可以在inventory中定義主機(jī)時(shí)為其添加主機(jī)變量以便于在playbook中使用。例如  
  19. [webservers]  
  20. www1.magedu.com http_port=80 maxRequestsPerChild=808 
  21. www2.magedu.com http_port=303 maxRequestsPerChild=909 
  22.    
  23. ################### 組變量  
  24. 組變量是指賦予給指定組內(nèi)所有主機(jī)上的在playbook中可用的變量。例如  
  25.    
  26. [webservers]  
  27. www1.magedu.com  
  28. www2.magedu.com  
  29.    
  30. [webservers:vars]  
  31. ntpntp_server=ntp.magedu.com  
  32. nfsnfs_server=nfs.magedu.com  
  33.    
  34. ################## 組嵌套  
  35. inventory中組還可以包含其它的組并且也可以向組中的主機(jī)指定變量。不過(guò)這些變量只能在ansible-playbook中使用而ansible不支持。例如  
  36.    
  37. [apache]  
  38. httpd1.magedu.com  
  39. httpd2.magedu.com  
  40.    
  41. [nginx]  
  42. ngx1.magedu.com  
  43. ngx2.magedu.com  
  44.    
  45. [webservers:children]  
  46. apache  
  47. nginx  
  48.    
  49. [webservers:vars]  
  50. ntpntp_server=ntp.magedu.com  
  51.    
  52. ######################### inventory參數(shù)  
  53.    
  54. ansible基于ssh連接inventory中指定的遠(yuǎn)程主機(jī)時(shí)還可以通過(guò)參數(shù)指定其交互方式常用的參數(shù)如下所示  
  55. ansible_ssh_host # 要連接的主機(jī)名  
  56. ansible_ssh_port # 端口號(hào)默認(rèn)是22  
  57. ansible_ssh_user # ssh連接時(shí)默認(rèn)使用的用戶名  
  58. ansible_ssh_pass # ssh連接時(shí)的密碼  
  59. ansible_sudo_pass # 使用sudo連接用戶是的密碼  
  60. ansible_ssh_private_key_file # 秘鑰文件如果不想使用ssh-agent管理時(shí)可以使用此選項(xiàng)  
  61. ansible_shell_type # shell的類型默認(rèn)sh  
  62. #########################################################################################  
  63. ansible的循環(huán)機(jī)制還有更多的高級(jí)功能具體請(qǐng)參見(jiàn)官方文檔http://docs.ansible.com/playbooks_loops.html。 

#p#

4、playbooks

  1. playbook是由一個(gè)或多個(gè)“play”組成的列表。play的主要功能在于將事先歸并為一組的主機(jī)裝扮成事先通過(guò)ansible中的task定義好的角色。  
  2. 從根本上來(lái)講所謂task無(wú)非是調(diào)用ansible的一個(gè)module。將多個(gè)play組織在一個(gè)playbook中即可以讓它們聯(lián)同起來(lái)按事先編排的機(jī)制同唱一臺(tái)大戲。  
  3.    
  4. ###########################playbook基礎(chǔ)組件  
  5. 1、Hosts和Users  
  6.    
  7. playbook中的每一個(gè)play的目的都是為了讓某個(gè)或某些主機(jī)以某個(gè)指定的用戶身份執(zhí)行任務(wù)。  
  8. hosts用于指定要執(zhí)行指定任務(wù)的主機(jī)其可以是一個(gè)或多個(gè)由冒號(hào)分隔主機(jī)組。  
  9. remote_user則用于指定遠(yuǎn)程主機(jī)上的執(zhí)行任務(wù)的用戶。  
  10.    
  11. 不過(guò)remote_user也可用于各task中。也可以通過(guò)指定其通過(guò)sudo的方式在遠(yuǎn)程主機(jī)上執(zhí)行任務(wù)其可用于play全局或某任務(wù)。  
  12. 此外甚至可以在sudo時(shí)使用sudo_user指定sudo時(shí)切換的用戶。  
  13.    
  14. - hosts: webnodes  
  15. remote_user: mageedu  
  16. tasks:  
  17. - name: test connection ping:  
  18. remote_user: mageedu sudo: yes  
  19.    
  20. 2、任務(wù)列表和action  
  21. play的主體部分是task list。task list中的各任務(wù)按次序逐個(gè)在hosts中指定的所有主機(jī)上執(zhí)行即在所有主機(jī)上完成***個(gè)任務(wù)后再開(kāi)始第二個(gè)。  
  22. 在運(yùn)行自下而下某playbook時(shí)如果中途發(fā)生錯(cuò)誤所有已執(zhí)行任務(wù)都將回滾因此在更正playbook后重新執(zhí)行一次即可。  
  23. task的目的是使用指定的參數(shù)執(zhí)行模塊而在模塊參數(shù)中可以使用變量。模塊執(zhí)行是冪等的這意味著多次執(zhí)行是安全的因?yàn)槠浣Y(jié)果均一致。  
  24. 每個(gè)task都應(yīng)該有其name用于playbook的執(zhí)行結(jié)果輸出建議其內(nèi)容盡可能清晰地描述任務(wù)執(zhí)行步驟。如果未提供name則action的結(jié)果將用于輸出。  
  25.    
  26. 定義task的可以使用“action: module options”或“module: options”的格式推薦使用后者以實(shí)現(xiàn)向后兼容。  
  27. 如果action一行的內(nèi)容過(guò)多也中使用在行首使用幾個(gè)空白字符進(jìn)行換行。  
  28.    
  29. tasks:  
  30. - name: make sure apache is running  
  31. service: name=httpd state=running 
  32.    
  33. 在眾多模塊中只有command和shell模塊僅需要給定一個(gè)列表而無(wú)需使用“key=value”格式例如  
  34. tasks:  
  35. - name: disable selinux  
  36. command: /sbin/setenforce 0如果命令或腳本的退出碼不為零可以使用如下方式替代  
  37. tasks:  
  38. - name: run this command and ignore the result  
  39. shell: /usr/bin/somecommand || /bin/true  
  40. 或者使用ignore_errors來(lái)忽略錯(cuò)誤信息  
  41. tasks:  
  42. - name: run this command and ignore the result  
  43. shell: /usr/bin/somecommand  
  44. ignore_errors: True   
  45.    
  46. 3、handlers  
  47.    
  48. 用于當(dāng)關(guān)注的資源發(fā)生變化時(shí)采取一定的操作。  
  49.    
  50. “notify”這個(gè)action可用于在每個(gè)play的***被觸發(fā)這樣可以避免多次有改變發(fā)生時(shí)每次都執(zhí)行指定的操作取而代之僅在所有的變化發(fā)生完成后一次性地執(zhí)行指定操作。在notify中列出的操作稱為handler也即notify中調(diào)用handler中定義的操作。  
  51.    
  52. - name: template configuration file  
  53. template: src=template.j2 dest=/etc/foo.conf  
  54. notify:  
  55. - restart memcached  
  56. - restart apache   
  57.    
  58. handler是task列表這些task與前述的task并沒(méi)有本質(zhì)上的不同。  
  59.    
  60. handlers:  
  61. - name: restart memcached  
  62. service: name=memcached state=restarted 
  63. - name: restart apache  
  64. service: name=apache state=restarted 

5、tags

  1. tags用于讓用戶選擇運(yùn)行或路過(guò)playbook中的部分代碼。ansible具有冪等性因此會(huì)自動(dòng)跳過(guò)沒(méi)有變化的部分即便如此有些代碼為測(cè)試其確實(shí)沒(méi)有發(fā)生變化的時(shí)間依然會(huì)非常地長(zhǎng)。此時(shí)如果確信其沒(méi)有變化就可以通過(guò)tags跳過(guò)此些代碼片斷。  
  2.    
  3. 示例基于playbooks實(shí)現(xiàn)web服務(wù)的部署  
  4. 1、提供好Inventory文件  
  5. # /etc/ansible/hosts基于秘鑰認(rèn)證  
  6. [webhosts]  
  7. 172.16.10.22  
  8. 172.16.10.33  
  9.    
  10. 2、編輯 palybooks 劇本  
  11. # vim /root/web.yaml  
  12. - name: web service  
  13. remote_user: root  
  14. hosts: webhosts  
  15. vars:  
  16. packages: httpd  
  17. tasks:  
  18. - name: install httpd yum: name={{ packages }} state=present 
  19. tags: install  
  20. - name: configuration httpd  
  21. copy: src=/root/httpd.conf dest=/etc/httpd/conf/httpd.conf  
  22. tags: conf  
  23. notify:  
  24. - restart httpd  
  25. - name: service httpd start  
  26. service: name=httpd enabled=no state=started 
  27. tags: start  
  28. - name: add centos and hadoop user  
  29. user: name={{ item }} state=absent 
  30. tags: adduser  
  31. with_items:  
  32. - centos  
  33. - hadoop  
  34. handlers:  
  35. - name: restart httpd  
  36. service: name=httpd state=restarted 
  37.    
  38. 3、準(zhǔn)備好配置文件  
  39. 將web的配置放到指定目錄 src=/root/httpd.conf  
  40.    
  41. 4、開(kāi)始部署  
  42. ansible-playbooks /root/web.yml 

結(jié)果示例

11

查看端口

12

此時(shí)如果配置文件發(fā)生變化

13

至此基本使用配置完成。

博文地址:http://guoting.blog.51cto.com/8886857/1553446

責(zé)任編輯:牛小雨 來(lái)源: 51CTO
相關(guān)推薦

2017-03-22 18:30:44

Linux運(yùn)維自動(dòng)化ansible

2017-03-22 16:31:30

Linux運(yùn)維自動(dòng)化ansible

2015-10-08 10:55:23

云服務(wù)自動(dòng)化運(yùn)維 ANSIBLE

2014-08-04 10:10:35

IT運(yùn)維自動(dòng)化運(yùn)維

2013-04-16 14:55:21

自動(dòng)化運(yùn)維Puppet實(shí)戰(zhàn)

2022-07-29 14:39:17

Ansible運(yùn)維工具

2015-03-09 11:10:14

運(yùn)維

2015-10-09 13:14:10

clip自動(dòng)化運(yùn)維工具

2012-10-22 14:54:48

2012-05-05 21:28:44

2013-04-11 17:31:28

運(yùn)維自動(dòng)化Cobbler

2012-05-05 21:48:43

puppet自動(dòng)化運(yùn)維

2010-08-12 17:39:07

網(wǎng)站運(yùn)維自動(dòng)化管理

2012-05-05 22:27:46

puppet自動(dòng)化運(yùn)維

2020-12-11 10:20:33

Ansible運(yùn)維軟件包

2020-04-30 15:00:17

運(yùn)維Ansible自動(dòng)化

2015-06-24 10:42:19

云計(jì)算運(yùn)維自動(dòng)化運(yùn)維ANSIBLE

2020-07-21 15:53:18

戴爾

2025-01-03 16:47:02

Ansible自動(dòng)化運(yùn)維DevOps

2011-09-01 10:22:03

Cobbler運(yùn)維自動(dòng)化
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

精品伊人久久97| 亚洲成a人片综合在线| 国产精品视频免费在线观看| 色婷婷粉嫩av| 大胆国模一区二区三区| 亚洲第一成人在线| 日韩欧美一区二区三区久久婷婷| 中文字幕一区二区三区人妻四季| 综合激情网站| 亚洲精品一区二区三区婷婷月| 亚洲精品一二三四五区| 国产丝袜在线| 99国产精品久| 成人写真福利网| 日本少妇全体裸体洗澡| 精品久久久久久久久久久aⅴ| 欧美一区二区三区在线| 亚洲午夜无码av毛片久久| 最新国产在线观看| 91一区二区三区在线播放| 成人两性免费视频| 亚洲高清毛片一区二区| 91精品在线观看国产| 亚洲毛片一区二区| 欧美色图校园春色| 88xx成人网| 狠狠躁夜夜躁人人爽超碰91| 精品日韩在线播放| 国产黄在线播放| 成人短视频下载| 91精品视频免费| 波多野结衣电车| 国产女优一区| 久久久在线观看| 黑人巨大精品一区二区在线| 欧美日韩一区二区综合 | 精品无码国产一区二区三区av| 国产在线观看网站| av动漫一区二区| 91丝袜脚交足在线播放| 97在线视频人妻无码| 日韩精品福利网| 91精品国产91久久| 精品无码人妻一区二区三区品| 欧美激情黄色片| 亚洲无线码在线一区观看| 北京富婆泄欲对白| 中文字幕久久精品一区二区| 欧美日韩国产成人在线免费| 久久婷婷国产精品| 午夜影院在线观看国产主播| 亚洲成人av一区二区三区| 97精品国产97久久久久久粉红| 九色视频在线观看免费播放| 久久综合久久综合亚洲| 国产日韩精品推荐| 后进极品白嫩翘臀在线视频| 国产成人午夜性a一级毛片| 精品人伦一区二区三区蜜桃网站 | 亚洲久久久久| 最近2019好看的中文字幕免费| 亚洲精品国产熟女久久久| 亚洲精品小区久久久久久| 日韩成人xxxx| 亚洲av无码一区二区二三区| 免费视频亚洲| 在线播放日韩专区| 国产不卡在线观看视频| 日韩夫妻性生活xx| 久久精品福利视频| 国产高清在线免费观看| 国内精品久久久久国产盗摄免费观看完整版| 久久精品国产精品亚洲| 九九精品视频免费| 国产真实久久| 午夜免费在线观看精品视频| 日韩免费黄色片| 国产精品日本| 国产精品成人在线| 91午夜交换视频| 国产成人av一区| 国产在线精品一区二区三区| 裸体xxxx视频在线| 国产精品国产a| 日本成人在线不卡| 天堂√8在线中文| 欧美亚洲动漫精品| 国产裸体视频网站| 校园春色另类视频| 中文字幕亚洲自拍| 九九热精品免费视频| 99亚洲视频| 亚洲毛茸茸少妇高潮呻吟| 色一情一交一乱一区二区三区| 欧美日韩色图| 久久久久久高潮国产精品视| 男人午夜免费视频| 久久国产精品露脸对白| 99精品欧美一区二区三区| 网站黄在线观看| 国产精品日韩精品欧美在线 | 亚洲小说欧美另类婷婷| 秋霞成人午夜鲁丝一区二区三区| 伊人成人在线观看| 成人美女视频在线看| 五码日韩精品一区二区三区视频| 91在线中文| 色8久久精品久久久久久蜜| 亚洲一区二区中文字幕在线观看| 欧美一级一片| 麻豆一区二区在线观看| 国产精品免费精品一区| 黑人巨大精品欧美黑白配亚洲| 精品国产一区二区三区麻豆小说| 97超碰人人在线| 偷窥国产亚洲免费视频| 无码人妻精品一区二区三区9厂| 黄色网址在线播放| 国产精品进线69影院| 热99这里只有精品| 91精品福利观看| 亚洲欧美一区二区三区情侣bbw| 超碰手机在线观看| 日韩va亚洲va欧美va久久| 成人自拍偷拍| 色影院视频在线| 日韩欧美国产黄色| 女性生殖扒开酷刑vk| 久久亚洲精品中文字幕蜜潮电影| 97精品一区二区视频在线观看| 国产麻豆免费观看| 日本一二三四高清不卡| 久久免费视频3| 一区二区免费| 久久婷婷国产麻豆91天堂| 久久久久久不卡| 99久久精品久久久久久清纯| 欧美一级特黄aaaaaa在线看片| 成人看片网页| 亚洲欧美日韩在线一区| 欧美亚韩一区二区三区| 成人h动漫精品一区二区| 中文字幕一区二区三区四区五区人 | 日韩免费三级| 超级碰碰久久| 亚洲黄色成人网| 日韩 国产 在线| av在线不卡网| 免费无码毛片一区二三区| 7m精品国产导航在线| 欧美巨乳在线观看| 国产三级自拍视频| 亚洲色图在线播放| 激情文学亚洲色图| 91精品国产91久久综合| 成人乱人伦精品视频在线观看| 99se视频在线观看| 欧美日韩综合在线| 午夜国产福利视频| 九一九一国产精品| 黄频视频在线观看| 国产精品视频一区视频二区| 久久人人爽人人爽爽久久| 国产精品免费无遮挡| 亚洲欧洲成人av每日更新| 天天影视色综合| 一区二区三区国产精华| 91亚色免费| 韩国成人二区| 亚洲欧美日韩中文在线| 中文在线最新版天堂| 国产精品久久三区| 日日夜夜精品视频免费观看| 国产主播精品| 免费h精品视频在线播放| 日韩不卡免费高清视频| 深夜成人在线观看| 国产成人精品毛片| 亚洲成人激情av| 中国美女乱淫免费看视频| 老司机午夜免费精品视频| 日本午夜精品一区二区三区| 国内欧美日韩| 欧美成人合集magnet| 人妻少妇精品无码专区久久| 色综合久久久久久久| 亚洲a∨无码无在线观看| 国产一区二区伦理| 欧美亚洲日本一区二区三区| 免费短视频成人日韩| 国产精品一区二区久久| 亚洲91av| 亚洲欧美日韩精品久久| 国产精品一区二区av白丝下载 | 欧洲精品一区二区三区| 色一区av在线| 日韩一级片免费看| 欧美熟乱第一页| 国产这里有精品| 久久日韩粉嫩一区二区三区| 三区视频在线观看| 国产日韩专区| 蜜臀av.com| 欧美极品在线观看| 96久久精品| 欧美日韩五码| 欧美激情视频给我| 137大胆人体在线观看| 亚洲第一av网| 国产免费不卡av| 色综合久久久久| 精品无码久久久久久久久| 国产精品女上位| 182在线视频| 韩国成人福利片在线播放| 国产性xxxx18免费观看视频| 综合久久一区| 亚洲欧美日韩不卡一区二区三区| 国产美女撒尿一区二区| 成人久久久久久久| jizzjizz少妇亚洲水多| 97视频免费在线看| 制服丝袜在线播放| 色先锋资源久久综合5566| 日本一卡二卡四卡精品| 欧美一区二区视频在线观看2020| 亚洲 欧美 日韩 在线| 亚洲国产日日夜夜| 久久人妻无码aⅴ毛片a片app| 久久综合成人精品亚洲另类欧美 | 亚洲欧美中文字幕在线一区| 亚洲精品字幕在线| 制服丝袜亚洲播放| 伊人网免费视频| 色综合久久中文综合久久牛| 精品一区在线视频| 夜夜爽夜夜爽精品视频| 波多野结衣欲乱| 国产视频一区在线播放| 免费看黄色aaaaaa 片| 成人午夜免费av| 麻豆网站免费观看| 国产一区 二区 三区一级| 国产精品一区二区小说| 日韩高清电影一区| 午夜视频在线瓜伦| 欧美综合二区| 欧美综合在线观看视频| 免费视频一区| 狠狠97人人婷婷五月| 99国产精品久久久久久久| 人人妻人人澡人人爽欧美一区| 欧美国产三区| 穿情趣内衣被c到高潮视频| 91亚洲成人| 久久av秘一区二区三区| 久久久久久久久久久妇女| 亚洲免费视频播放| 欧美色综合网| 日本午夜激情视频| 亚洲综合电影一区二区三区| 欧美色图另类小说| 日韩主播视频在线| 男女男精品视频站| 国产在线不卡一区| 最新版天堂资源在线| av一区二区三区在线| 屁屁影院国产第一页| 久久―日本道色综合久久| 国产7777777| 亚洲天堂av一区| 久久久综合久久| 精品久久久久久久中文字幕| 国产一级片毛片| 欧美在线你懂得| 国产乱淫av片免费| 亚洲国产成人久久| 精品三级久久久久久久电影聊斋| 国产亚洲激情在线| 含羞草www国产在线视频| 欧美高清视频在线观看| 欧美一级鲁丝片| 国产日韩av高清| 午夜免费欧美电影| 欧美日韩大片一区二区三区| 成人系列视频| 国产女教师bbwbbwbbw| 一本色道久久综合亚洲精品不| 日韩一级免费在线观看| 精品一区二区三区日韩| 无码人妻aⅴ一区二区三区玉蒲团| 99综合电影在线视频| 欧美成人短视频| 亚洲午夜精品久久久久久久久| 亚洲色图欧美另类| 97精品久久久午夜一区二区三区| 亚洲高潮女人毛茸茸| 夜夜夜精品看看| 免费在线观看av的网站| 日韩欧美在线一区二区三区| 日本在线视频1区| 久久精品国产v日韩v亚洲| 日本不良网站在线观看| 国产精品亚洲精品| aiai久久| 亚洲精蜜桃久在线| 亚洲人体偷拍| 中文字幕视频三区| 91亚洲精品久久久蜜桃网站 | 欧美熟乱15p| 日韩精品视频在线观看视频| 免费在线成人网| 超碰97在线资源站| 亚洲色图在线视频| 国产精品无码粉嫩小泬| 精品国产1区2区3区| 91看片在线观看| 26uuu亚洲伊人春色| 亚洲天堂av资源在线观看| 色播亚洲视频在线观看| 亚洲三级国产| 在线观看免费看片| 国产精品久线观看视频| 欧美brazzers| 亚洲精品乱码久久久久久金桔影视 | 日韩福利片在线观看| 91精品午夜视频| 北条麻妃在线| 日本电影亚洲天堂| 乱亲女h秽乱长久久久| 亚洲国产一二三精品无码 | 亚洲高清免费视频| 国产欧美一级片| 日韩在线资源网| 成人h在线观看| 欧美日韩三区四区| 国产视频一区免费看| 丰满岳乱妇一区二区| 亚洲理论在线观看| 国产精品久久久久精| 中文字幕不卡在线视频极品| 亚洲四虎影院| 欧美一区视久久| 玖玖在线精品| 精品人伦一区二区三电影| 精品免费在线观看| 婷婷五月综合久久中文字幕| 久久久久国产精品www| 91成人噜噜噜在线播放| 四虎4hu永久免费入口| 国产在线播放一区三区四| 亚洲国产美女视频| 日韩一区二区免费在线观看| 黄色av电影在线播放| 91免费看片在线| 欧美一区网站| 波多野吉衣在线视频| 亚洲一区二区三区激情| 高h震动喷水双性1v1| 羞羞色国产精品| 巨人精品**| 国产亚洲综合视频| 久久久久成人黄色影片| 中文字幕一区二区三区人妻四季| 日韩在线视频观看| 精品一级视频| 久久人人爽人人爽人人av| 99久久婷婷国产综合精品| 久久久国产高清| 伊人伊成久久人综合网小说| 国产成人a视频高清在线观看| 亚洲三区四区| 国产剧情一区二区| 成人午夜视频精品一区| 亚洲精选中文字幕| 久久久久久久性潮| 日本中文字幕一级片| av在线播放成人| 中文字幕久久久久| 色综合色综合网色综合| 欧美亚洲tv| 一道本在线免费视频| 亚洲精选视频在线| 午夜视频www| 国产精品午夜国产小视频| 亚洲综合婷婷| 一级性生活毛片| 4hu四虎永久在线影院成人| 黄色的视频在线观看| 日韩aⅴ视频一区二区三区| 国产在线精品一区二区 | 欧美在线你懂得| 成人福利片网站| 久久久99爱| 狠狠色丁香久久婷婷综| 日韩欧美成人一区二区三区| 日韩视频第一页| 在线日韩一区| 久久久精品人妻一区二区三区| 色婷婷久久久综合中文字幕 |