<address id="bztp3"><nobr id="bztp3"></nobr></address>

      <sub id="bztp3"><listing id="bztp3"><menuitem id="bztp3"></menuitem></listing></sub>

        <form id="bztp3"></form>

        <address id="bztp3"></address>
        <sub id="bztp3"></sub>

          <form id="bztp3"></form>

              Linux基礎教程之Ansible安裝部署及常用模塊詳解

              ansible安裝方式

              ansible安裝常用兩種方式,yum安裝和pip程序安裝

              這里提供二種安裝方式,任選一種即可:

              1、使用yum安裝

              yum install epel-release -y
              yum install ansible –y

              2、 使用pip(python的包管理模塊)安裝

              pip install ansible
              
              #如果沒pip,需先安裝pip.yum可直接安裝:
              yum install python-pip
              pip install ansible

              ansible程序結構

              安裝目錄

              通過使用rpm -ql ansible指令可以查看ansible安裝的所有文件位置!

              配置文件目錄:/etc/ansible/
              執行文件目錄:/usr/bin/
              Lib庫依賴目錄:/usr/lib/pythonX.X/site-packages/ansible/
              Help文檔目錄:/usr/share/doc/ansible-X.X.X/
              Man文檔目錄:/usr/share/man/man1/

              ansible配置文件的查找順序

              (1)、檢查環境變量ANSIBLE_CONFIG指向的路徑文件(export ANSIBLE_CONFIG=/etc/ansible.cfg )
              (2)、~/.ansible.cfg,檢查當前目錄(/etc/ansible)下的ansible.cfg配置文件
              (3)、/etc/ansible.cfg 檢查etc目錄的配置文件

              ansible配置文件

              設置/etc/ansible/ansible.cfg配置參數,ansible有許多參數,下面列出常用的參數:

              inventory:#這個參數表示資源清單inventory文件的位置,資源清單就是一些ansible需要連接管理的主 機列表。這個參數的配置實例如下:

              inventory = /etc/ansible/hosts

              library:?ansible的操作動作,無論是本地或遠程,都使用一小段代碼來執行,這小段代碼稱為模塊,這個library參數就是指向存放ansible模塊的目錄。配置實例如下:

              library = /usr/share/ansible

              ansible支持多個目錄方式,只要用冒號“ : ”隔開就可以,同時也會檢查當前執行playbook位置下的./library目錄。

              forks:設置默認情況下ansible最多能有多少個進程同時工作, 從ansible 1.3開始,fork數量默認自動設置為主機數量或者潛在的主機數量,默認設置最多5個進程并行處理。具體需要設置多少個,可以根據控制主機的性能和被管節點的數量來確定,可能是 50或100。默認值5是非常保守的值,配置實例如下:

              forks = 5

              sudo_user:這是設置默認執行命令的用戶,也可以在playbook中重新設置這個參數。配置實例如下:

              sudo_user = root

              remote_port:這是指定連接被管節點的管理端口,默認是22。除非設置了特殊的SSH端口,不然這個參數一般是不需要修改的。
              配置實例如下:

              remote_port = 22

              host_key_checking:這是設置是否檢查SSH主機的密鑰。可以設置為True或False,關閉后第一次連接沒有提示配置實例

              host_key_checking = False

              timeout:這是設置SSH連接的超時間隔,單位是秒。配置實例如下:

              timeout = 60

              **log_path:**ansible系統默認是不記錄日志的,如果想把ansible系統的輸出記錄到日志文件中,需要設置log_path來指定一個存儲ansible日志的文件。配置實例如下:

              log_path = /var/log/ansible.log

              另外需要注意,執行ansible的用戶需要有寫入日志的權限,模塊將會調用被管節點的syslog來記錄。

              ansible主機清單

              ansible主機清單設置
              編輯/etc/ansible/hosts:

              [root@CentOS7-master ~]# vim /etc/ansible/hosts  #定義方式:
              
              ###1、直接指明主機地址或主機名:
              green.example.com
              blue.example.com
              172.17.250.230
              172.17.254.180
              172.17.254.165
              
              ###2、定義一個主機組[組名]把地址或主機名加進去
              [webservers]
              172.17.254.180
              172.17.254.165
              #組成員可以使用通配符來匹配,如下 172.17.254.[1:6] #表示匹配從172.17.254.1——172.17.254.6的主機

              ansible配置公私鑰

              配置ansible使用公鑰驗證

              配置這個的原因是為了方便ansible可以實現無秘訪問控制其他機器,是實現自動化的前提。這一步可以再配置好ansible.cfg文件以及hosts主機清單后執行。

              雖然ansible支持其他主機認證方式,但是我們最常用的的還是基于秘鑰的認證:
              1、首先生成秘鑰

              ##執行下條指令后一路回車即可!
              [root@CentOS7-master ~]# ssh-keygen -t rsa

              2、然后向主機分發秘鑰:

              ##所有添加到主機清單中的IP地址或者主機名,全部都要用下條指令執行一遍。
              [root@CentOS7-master ~]# ssh-copy-id root@主機名或IP地址

              3、如果出現以下情況:

              ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.1.6.72
              -bash: ssh-copy-id: command not found
              
              #請嘗試:
              yum -y install openssh-clientsansible

              ansible常用命令

              ansible命令集

              /usr/bin/ansible    # Ansibe AD-Hoc 臨時命令執行工具,常用于臨時命令的執行
              
              /usr/bin/ansible-doc    # ansible 模塊功能查看工具
              
              /usr/bin/ansible-galaxy     # 下載/上傳優秀代碼或Roles模塊 的官網平臺,基于網絡的
              
              /usr/bin/ansible-playbook   # ansible 定制自動化的任務集編排工具
              
              /usr/bin/ansible-pull # ansible遠程執行命令的工具,拉取配置而非推送配置(使用較少,海量機器時使用,對運維的架構能力要求較高)
              
              /usr/bin/ansible-vault # ansible 文件加密工具
              
              /usr/bin/ansible-console # ansible基于Linux Consoble界面可與用戶交互的命令執行工具

              ansible命令詳解

              ###命令格式:
              ansible <host-pattern> [-f forks] [-m module_name] [-a args]
              
              ###我們可以通過 ansible -h查看幫助
              ###本段中所有以“**”開頭的參數,均表示是重要的
              [root@CentOS7-master ~]# ansible -h
              Usage: ansible <host-pattern> [options] Options:
              
              ** -a MODULE_ARGS, --args=MODULE_ARGS
              模塊的參數,如果執行默認COMMAND的模塊,即是命令參數,如:“date”,“pwd”等等 module arguments 模塊參數
              
              -k, --ask-pass 
                  ask for SSH password 登錄密碼,提示輸入SSH密碼而不是假設基于密鑰的驗證
              
              --ask-su-pass 
                  ask for su password su切換密碼
              
              -K, --ask-sudo-pass 
                  ask for sudo password 提示密碼使用sudo,sudo表示提權操作
              
              --ask-vault-pass 
                  ask for vault password
              
              -B SECONDS, --background=SECONDS 
                  run asynchronously, failing after X seconds (default=N/A)后臺運行超時時間
              
              ** -C, --check
                  don‘t make any changes; instead, try to predict some of the changes that may occur #只是測試一下會改變什么內容,不會真正去執行;相反,試圖預測一些可能發生的變化
              
              -c CONNECTION, --connection=CONNECTION 
                  connection type to use (default=smart) #連接類型使用
              
              ** -f FORKS, --forks=FORKS
                  specify number of parallel processes to use (default=5) #并行任務數。NUM被指定為一個整數,默認是5 
              
              -h, --help 
                  show this help message and exit 打開幫助文檔API
              
              ** -i INVENTORY, --inventory-file=INVENTORY
                  specify inventory host file (default=/etc/ansible/hosts) #指定庫存主機文件的路徑,默認為/etc/ansible/hosts
              
              ** --list-hosts
                  outputs a list of matching hosts; does not execute anything else
              
              ** -m MODULE_NAME, --module-name=MODULE_NAME
                  module name to execute (default=command) #執行模塊的名字,默認使用 command 模塊,所以如果是只執行單一命令可以不用 -m參數
              
              -M MODULE_PATH, --module-path=MODULE_PATH   
                  specify path(s) to module library (default=/usr/share/ansible/) #要執行的模塊的路徑,默認為/usr/share/ansible/
              
              -o, --one-line 
                  condense output #壓縮輸出,摘要輸出.嘗試一切都在一行上輸出。
              
              -P POLL_INTERVAL, --poll=POLL_INTERVAL  
                  set the poll interval if using -B (default=15) #調查背景工作每隔數秒。需要- b
              
              --private-key=PRIVATE_KEY_FILE 
                  use this file to authenticate the connection #私鑰路徑,使用這個文件來驗證連接
              
              ** -S, --su
                  run operations with su #用 su 命令
              
              ** -R SU_USER, --su-user=SU_USER
                  run operations with su as this user (default=root) #指定SU的用戶,默認是root用戶
              
              ** -s, --sudo
                  run operations with sudo (nopasswd)
              
              ** -U SUDO_USER, --sudo-user=SUDO_USER
                  desired sudo user (default=root)(deprecated, use become) #sudo到哪個用戶,默認為 root
              
              ** -T TIMEOUT, --timeout=TIMEOUT
                  override the SSH timeout in seconds (default=10) #指定SSH默認超時時間, 默認是10S
              
              -t TREE, --tree=TREE 
                  log output to this directory #將日志內容保存在該輸出目錄,結果保存在一個文件中在每臺主機上。
              
              ** -u REMOTE_USER, --user=REMOTE_USER
                  connect as this user (default=root) #遠程用戶, 默認是root用戶 
              
              --vault-password-file=VAULT_PASSWORD_FILE 
                  vault password file
              
              ** -v, --verbose
                  verbose mode (-vvv for more, -vvvv to enable 詳細信息connection debugging)
              
              --version 
                  show program's version number and exit  #輸出ansible的版本

              ansible-doc命令

              ansible-doc指令是用來查看ansible所支持的模塊的文件信息的,并且支持shell!

              查看 ansible-doc 的使用說明:

              ###一般用法:(也是常用的用法)
              ansible-doc -l 獲取模塊信息
              ansible-doc -s MOD_NAME 獲取指定模塊的使用幫助
              
              ###ansible-doc
              [root@CentOS7-master ~]# ansible-doc -h 
              Usage: ansible-doc [options][module...]
              
              Options:
                  -h, --help show this help message and exit # 顯示命令參數API文檔
              
                  -l, --list List available modules #列出可用的模塊
              
                  -M MODULE_PATH, --module-path=MODULE_PATH #指定模塊的路徑specify path(s) to module library (default=None)
              
                  -s, --snippet Show playbook snippet for specified module(s) #顯示playbook制定模塊的用法
              
                  --version show program's version number and exit # 顯示ansible-doc的版本號查看模塊

              實例:

              [root@CentOS7-master ~]# ansible-doc -l|grep mysql
              mysql_db                           Add or remove MySQL databases from a remote host.   
              mysql_replication                  Manage MySQL replication                            
              mysql_user                         Adds or removes a user from a MySQL database.       
              mysql_variables                    Manage MySQL global variables
              [root@CentOS7-master ~]# 
              [root@CentOS7-master ~]# ansible-doc -l mysql_replication 
              a10_server                         Manage A10 Networks AX/SoftAX/Thunder/vThunder devic...
              a10_service_group                  Manage A10 Networks devices' service groups         
              ......
              ......
              ......
              quantum_router_interface           Attach/Detach a subnet's interface to a router      
              quantum_subnet                     Add/remove subnet from a network                    
              (END)

              ansible常用模塊

              1、主機連通性測試:

              ansible all -m ping

              執行效果如下:

              [root@CentOS7-master ~]# ansible all -m ping
              172.17.254.165 | SUCCESS => {
                  "changed": false, 
                  "ping": "pong"
              }
              172.17.254.180 | SUCCESS => {
                  "changed": false, 
                  "ping": "pong"
              }
              172.17.250.230 | SUCCESS => {
                  "changed": false, 
                  "ping": "pong"
              }

              若出現以下結果,則說明未配置主機列表,則需要在/etc/ansible/hosts?中添加主機列表:

              [root@CentOS7-master ~]# ansible all -m ping
               [WARNING]: provided hosts list is empty, only localhost is available
              
               [WARNING]: No hosts matched, nothing to do

              2、command:在遠程主機執行命令;不支持|管道命令

              命令模塊接受命令名稱,后面是空格分隔的列表參數。給定的命令將在所有選定的節點上執行。它不會通過shell進行處理,比如$HOME和操作如”小于”<“,”>”, “|”, “;”,”&”‘ 工作(需要使用(shell)模塊實現這些功能)。

              action: command
              
              chdir       #在執行命令之前,先切換到該目錄
              
              creates     #一個文件名,當這個文件存在,則該命令不執行,可以用來做判斷
              
              executable  #切換shell來執行命令,需要使用命令的絕對路徑
              
              free_form   #要執行的Linux指令,一般使用ansible的-a參數代替。
              
              removes     #一個文件名,這個文件不存在,則該命令不執行,與creates相反的判斷
              [root@CentOS7-master ~]# ansible all -m command -a 'ifconfig'
              172.17.250.230 | SUCCESS | rc=0 >>
              ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
                      inet 172.17.250.230  netmask 255.255.0.0  broadcast 172.17.255.255
                      inet6 fe80::20c:29ff:fefc:13f0  prefixlen 64  scopeid 0x20<link>
                      ether 00:0c:29:fc:13:f0  txqueuelen 1000  (Ethernet)
                      RX packets 15924367  bytes 1678705351 (1.5 GiB)
                      RX errors 0  dropped 0  overruns 0  frame 0
                      TX packets 8677333  bytes 1589494094 (1.4 GiB)
                      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
              
              ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
                      inet 192.168.73.130  netmask 255.255.255.0  broadcast 192.168.73.255
                      inet6 fe80::20c:29ff:fefc:13fa  prefixlen 64  scopeid 0x20<link>
                      ether 00:0c:29:fc:13:fa  txqueuelen 1000  (Ethernet)
                      RX packets 8003  bytes 1375066 (1.3 MiB)
                      RX errors 0  dropped 0  overruns 0  frame 0
                      TX packets 78  bytes 5016 (4.8 KiB)
                      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
              
              172.17.254.165 | SUCCESS | rc=0 >>
              ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
                      inet 172.17.254.165  netmask 255.255.0.0  broadcast 172.17.255.255
                      inet6 fe80::20c:29ff:fe6a:1f0f  prefixlen 64  scopeid 0x20<link>
                      ether 00:0c:29:6a:1f:0f  txqueuelen 1000  (Ethernet)
                      RX packets 6028867  bytes 489629406 (466.9 MiB)
                      RX errors 0  dropped 0  overruns 0  frame 0
                      TX packets 322593  bytes 58991897 (56.2 MiB)
                      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
              
              ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
                      inet 192.168.73.137  netmask 255.255.255.0  broadcast 192.168.73.255
                      inet6 fe80::20c:29ff:fe6a:1f19  prefixlen 64  scopeid 0x20<link>
                      ether 00:0c:29:6a:1f:19  txqueuelen 1000  (Ethernet)
                      RX packets 7859  bytes 1345936 (1.2 MiB)
                      RX errors 0  dropped 0  overruns 0  frame 0
                      TX packets 20  bytes 1536 (1.5 KiB)
                      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
              
              172.17.254.180 | SUCCESS | rc=0 >>
              ens32: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
                      inet 172.17.254.180  netmask 255.255.0.0  broadcast 172.17.255.255
                      inet6 fe80::20c:29ff:fedb:9611  prefixlen 64  scopeid 0x20<link>
                      ether 00:0c:29:db:96:11  txqueuelen 1000  (Ethernet)
                      RX packets 8231638  bytes 3839144807 (3.5 GiB)
                      RX errors 0  dropped 0  overruns 0  frame 0
                      TX packets 2504227  bytes 177542489 (169.3 MiB)
                      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
              
              ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
                      inet 192.168.73.151  netmask 255.255.255.0  broadcast 192.168.73.255
                      inet6 fe80::20c:29ff:fedb:961b  prefixlen 64  scopeid 0x20<link>
                      ether 00:0c:29:db:96:1b  txqueuelen 1000  (Ethernet)
                      RX packets 10665  bytes 1901294 (1.8 MiB)
                      RX errors 0  dropped 0  overruns 0  frame 0
                      TX packets 2600  bytes 521922 (509.6 KiB)
                      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
              
              
              [root@CentOS7-master ~]# ansible all -m command -a 'chdir=/tmp ls'                    
              172.17.254.165 | SUCCESS | rc=0 >>
              ansible_nDr_sW
              systemd-private-6524f00099a646b28e1484e64e97f459-nginx.service-SDDItJ
              systemd-private-6524f00099a646b28e1484e64e97f459-vmtoolsd.service-9zL9Z3
              
              172.17.250.230 | SUCCESS | rc=0 >>
              ansible_W9Cey7
              systemd-private-cbd6ab787c1047f49bd164e1928bc50c-mariadb.service-ZWF9XI
              systemd-private-cbd6ab787c1047f49bd164e1928bc50c-vmtoolsd.service-7NjwSi
              
              172.17.254.180 | SUCCESS | rc=0 >>
              ansible_p4DDLJ
              hsperfdata_tomcat
              systemd-private-e8fcbe84909942deb6ea742ed68dca4e-vmtoolsd.service-7sY3og

              3、shell模塊

              shell模塊在遠程主機上調用shell解釋器運行命令,支持shell的各種功能,例如管道等 :

              [root@CentOS7-master ~]# ansible webservers -m shell -a 'cat /etc/passwd |grep "root"'
              172.17.254.180 | SUCCESS | rc=0 >>
              root:x:0:0:root:/root:/bin/bash
              operator:x:11:0:operator:/root:/sbin/nologin
              
              172.17.254.165 | SUCCESS | rc=0 >>
              root:x:0:0:root:/root:/bin/bash
              operator:x:11:0:operator:/root:/sbin/nologin

              4、copy:復制文件到遠程主機,可以改權限等

              用法:
              (1) 復制文件

              -a "src= dest= "

              (2) 給定內容生成文件

              -a "content= dest= "

              相關選項如下:
              backup:在覆蓋之前,將源文件備份,備份文件包含時間信息。有兩個選項:yes|no

              content:用于替代“src”,可以直接設定指定文件的值
              
              dest:必選項。要將源文件復制到的遠程主機的絕對路徑,如果源文件是一個目錄,那么該路徑也必須是個目錄
              
              directory_mode:遞歸設定目錄的權限,默認為系統默認權限
              
              force:如果目標主機包含該文件,但內容不同,如果設置為yes,則強制覆蓋,如果為no,則只有當目標主機的目標位置不存在該文件時,才復制。默認為yes
              
              others:所有的file模塊里的選項都可以在這里使用
              
              src:被復制到遠程主機的本地文件,可以是絕對路徑,也可以是相對路徑。如果路徑是一個目錄,它將遞歸復制。在這種情況下,如果路徑使用“/”來結尾,則只復制目錄里的內容,如果沒有使用“/”來結尾,則包含目錄在內的整個內容全部復制,類似于rsync。
              
              [root@CentOS7-master ~]# ansible webservers -m copy -a 'content="hello\nworld" dest=/tmp/test.ansible mode=666'   
              172.17.254.165 | SUCCESS => {
                  "changed": true, 
                  "checksum": "7db827c10afc1719863502cf95397731b23b8bae", 
                  "dest": "/tmp/test.ansible", 
                  "gid": 0, 
                  "group": "root", 
                  "md5sum": "9195d0beb2a889e1be05ed6bb1954837", 
                  "mode": "0666", 
                  "owner": "root", 
                  "secontext": "unconfined_u:object_r:admin_home_t:s0", 
                  "size": 11, 
                  "src": "/root/.ansible/tmp/ansible-tmp-1512465712.79-212682551827039/source", 
                  "state": "file", 
                  "uid": 0
              }
              172.17.254.180 | SUCCESS => {
                  "changed": true, 
                  "checksum": "7db827c10afc1719863502cf95397731b23b8bae", 
                  "dest": "/tmp/test.ansible", 
                  "gid": 0, 
                  "group": "root", 
                  "md5sum": "9195d0beb2a889e1be05ed6bb1954837", 
                  "mode": "0666", 
                  "owner": "root", 
                  "secontext": "unconfined_u:object_r:admin_home_t:s0", 
                  "size": 11, 
                  "src": "/root/.ansible/tmp/ansible-tmp-1512465712.87-100512759759497/source", 
                  "state": "file", 
                  "uid": 0
              }

              5、file 設置文件屬性:

              創建目錄:-a "path= state=directory"
              創建鏈接文件:-a "path= src= state=link"
              刪除文件:-a "path= state=absent"
              force:需要在兩種情況下強制創建軟鏈接,一種是源文件不存在,但之后會建立的情況下;另一種是目標軟鏈接已存在,需要先取消之前的軟鏈,然后創建新的軟鏈,有兩個選項:yes|no
              
              group:定義文件/目錄的屬組 mode:定義文件/目錄的權限
              
              owner:定義文件/目錄的屬主 path:必選項,定義文件/目錄的路徑
              
              recurse:遞歸設置文件的屬性,只對目錄有效 src:被鏈接的源文件路徑,只應用于state=link的情況
              
              dest:被鏈接到的路徑,只應用于state=link的情況
                  state:
                      directory:如果目錄不存在,就創建目錄
                      file:即使文件不存在,也不會被創建
                      link:創建軟鏈接
                      hard:創建硬鏈接
                      touch:如果文件不存在,則會創建一個新的文件,如果文件或目錄已存在,則更新其最后修改時間
                      absent:刪除目錄、文件或者取消鏈接文件
              [root@CentOS7-master ~]# ansible webservers -m file -a 'path=/tmp/test state=directory' 
              172.17.254.165 | SUCCESS => {
                  "changed": true, 
                  "gid": 0, 
                  "group": "root", 
                  "mode": "0755", 
                  "owner": "root", 
                  "path": "/tmp/test", 
                  "secontext": "unconfined_u:object_r:user_tmp_t:s0", 
                  "size": 6, 
                  "state": "directory", 
                  "uid": 0
              }
              172.17.254.180 | SUCCESS => {
                  "changed": true, 
                  "gid": 0, 
                  "group": "root", 
                  "mode": "0755", 
                  "owner": "root", 
                  "path": "/tmp/test", 
                  "secontext": "unconfined_u:object_r:user_tmp_t:s0", 
                  "size": 6, 
                  "state": "directory", 
                  "uid": 0
              }
              [root@CentOS7-master ~]# 
              [root@CentOS7-master ~]# 
              [root@CentOS7-master ~]# ansible webservers -m file -a 'path=/data/web.sh state=touch'
              172.17.254.165 | SUCCESS => {
                  "changed": true, 
                  "dest": "/data/web.sh", 
                  "gid": 0, 
                  "group": "root", 
                  "mode": "0644", 
                  "owner": "root", 
                  "secontext": "unconfined_u:object_r:default_t:s0", 
                  "size": 0, 
                  "state": "file", 
                  "uid": 0
              }
              172.17.254.180 | SUCCESS => {
                  "changed": true, 
                  "dest": "/data/web.sh", 
                  "gid": 0, 
                  "group": "root", 
                  "mode": "0644", 
                  "owner": "root", 
                  "secontext": "unconfined_u:object_r:default_t:s0", 
                  "size": 0, 
                  "state": "file", 
                  "uid": 0
              }
              [root@CentOS7-master ~]# 
              [root@CentOS7-master ~]# ansible webservers -m file -a 'path=/data/web.sh state=file' 
              172.17.254.165 | SUCCESS => {
                  "changed": false, 
                  "gid": 0, 
                  "group": "root", 
                  "mode": "0644", 
                  "owner": "root", 
                  "path": "/data/web.sh", 
                  "secontext": "unconfined_u:object_r:default_t:s0", 
                  "size": 0, 
                  "state": "file", 
                  "uid": 0
              }
              172.17.254.180 | SUCCESS => {
                  "changed": false, 
                  "gid": 0, 
                  "group": "root", 
                  "mode": "0644", 
                  "owner": "root", 
                  "path": "/data/web.sh", 
                  "secontext": "unconfined_u:object_r:default_t:s0", 
                  "size": 0, 
                  "state": "file", 
                  "uid": 0
              }

              6、fetch從遠程某主機獲取文件到本地:

              dest:用來存放文件的目錄,例如存放目錄為backup,源文件名稱為/etc/profile在主機pythonserver中,那么保存為/backup/pythonserver/etc/profile;

              Src:在遠程拉取的文件,并且必須是一個file,不能是目錄。

              [root@CentOS7-master ~]# ansible webservers -m fetch -a 'src=/var/log/messages dest=/root'
              172.17.254.165 | SUCCESS => {
                  "changed": true, 
                  "checksum": "8065eb47956eaa59d3ca64a2c69a38084ae7505d", 
                  "dest": "/root/172.17.254.165/var/log/messages", 
                  "md5sum": "c864d77846965436f8d7feb660c103a1", 
                  "remote_checksum": "d7f2d4876e65962444963531e4ed10b319e7b277", 
                  "remote_md5sum": null
              }
              172.17.254.180 | SUCCESS => {
                  "changed": true, 
                  "checksum": "0d0829396b7dfdc1951c3ec35fa266f3195c6763", 
                  "dest": "/root/172.17.254.180/var/log/messages", 
                  "md5sum": "7a3f75bb76aed49282bc7cbc3142448c", 
                  "remote_checksum": "0d0829396b7dfdc1951c3ec35fa266f3195c6763", 
                  "remote_md5sum": null
              }

              7、cron管理cron計劃任務

              ansible all -m cron -a “ ”: 設置管理節點生成定時任務

              action: cron backup=    #如果設置,創建一個crontab備份 [yes|no]
              cron_file=  #如果指定, 使用這個文件cron.d,而不是單個用戶

              crontab

              day=    #日應該運行的工作( 1-31, *, */2, )
              
              hour=   #小時 ( 0-23, *, */2, )
              
              minute=     #分鐘( 0-59, *, */2, )
              
              month=  #月( 1-12, *, /2, )
              
              weekday     #周 ( 0-6 for Sunday-Saturday,, )
              
              job=    #指明運行的命令是什么
              
              name=   #定時任務描述
              
              reboot  #任務在重啟時運行,不建議使用,建議使用special_time
              
              special_time    #特殊的時間范圍,參數:reboot(重啟時),annually(每年),monthly(每月),weekly(每周),daily(每天),hourly(每小時)
              
              state   #指定狀態,present表示添加定時任務,也是默認設置,absent表示刪除定時任務
              
              user    #以哪個用戶的身份執行
              ansible webservers -m cron -a 'name="sync time from ntpserver" minute="*/10" job="/sbin/ntpdate asia.pool.ntp.org &>/dev/null" '

              8、yum安裝軟件

              conf_file   #設定遠程yum安裝時所依賴的配置文件。如配置文件沒有在默認的位置。
              disable_gpg_check   #是否禁止GPG checking,只用于‘present’ or `latest’。
              disablerepo     #臨時禁止使用yum庫。 只用于安裝或更新時。
              enablerepo  #臨時使用的yum庫。只用于安裝或更新時。
              
              #下面帶“**”的都是重點的
              ** name=    #所安裝的包的名稱
              ** state=present|latest|absent  #present安裝,latest安裝最新的,absent 卸載軟件。
              ** update_cache     #強制更新yum的緩存。
              [root@CentOS7-master ~]# ansible 172.17.254.165 -m yum -a 'name=htop state=present'
              172.17.254.165 | SUCCESS => {
                  "changed": true, 
                  "msg": "", 
                  "rc": 0, 
                  "results": [
                      "Loaded plugins: fastestmirror\nLoading mirror speeds from cached hostfile\nResolving Dependencies\n--> Running transaction check\n---> Package htop.x86_64 0:2.0.2-1.el7 will be installed\n--> Finished Dependency Resolution\n\nDependencies Resolved\n\n================================================================================\n Package         Arch              Version                Repository       Size\n================================================================================\nInstalling:\n htop            x86_64            2.0.2-1.el7            epel             98 k\n\nTransaction Summary\n================================================================================\nInstall  1 Package\n\nTotal download size: 98 k\nInstalled size: 207 k\nDownloading packages:\nRunning transaction check\nRunning transaction test\nTransaction test succeeded\nRunning transaction\n  Installing : htop-2.0.2-1.el7.x86_64                                      1/1 \n  Verifying  : htop-2.0.2-1.el7.x86_64                                      1/1 \n\nInstalled:\n  htop.x86_64 0:2.0.2-1.el7                                                     \n\nComplete!\n"
                  ]
              }

              9、service: 服務程序管理

              arguments   #命令行提供額外的參數
              enabled=true|false  #設置開機啟動。
              name=   #服務名稱
              runlevel    #開機啟動的級別,一般不用指定。
              sleep   #在重啟服務的過程中,是否等待。如在服務關閉以后等待2秒再啟動。
              state=  #started啟動服務, stopped停止服務, restarted重啟服務, reloaded重載配置
              ansible 172.17.254.165 -m service -a 'name=nginx state=stopped enabled=true'

              10、user模塊管理

              用戶模塊,管理用戶帳號 action: user

              comment     #用戶的描述信息
              createhome  #是否創建家目錄
              force       #在使用state=absent是, 行為與userdel –force一致.
              group       #指定基本組
              groups      #指定附加組,如果指定為(groups=)表示刪除所有組
              home        #指定用戶家目錄
              move_home   #如果設置為home=時, 試圖將用戶主目錄移動到指定的目錄
              name        #指定用戶名
              non_unique  #該選項允許改變非唯一的用戶ID值
              password    #指定用戶密碼
              remove      #在使用state=absent時, 行為是與userdel –remove一致
              shell       #指定默認shell
              state       #設置帳號狀態,不指定為創建,指定值為absent表示刪除
              system      #當創建一個用戶,設置這個用戶是系統用戶。這個設置不能更改現有用戶
              uid         #指定用戶的uid
              update_password     #更新用戶密碼
              #創建一個name為tom,uid為1006,shell為、bin/zshell,home為/home/tomhome的用戶
              [root@CentOS7-master ~]# ansible webservers -m user -a 'name=tom comment="tom is tom" uid=1066 shell=/bin/zshell home=/home/tomhome'           
              172.17.254.165 | SUCCESS => {
                  "changed": true, 
                  "comment": "tom is tom", 
                  "createhome": true, 
                  "group": 1066, 
                  "home": "/home/tomhome", 
                  "name": "tom", 
                  "shell": "/bin/zshell", 
                  "state": "present", 
                  "system": false, 
                  "uid": 1066
              }
              172.17.254.180 | SUCCESS => {
                  "changed": true, 
                  "comment": "tom is tom", 
                  "createhome": true, 
                  "group": 1066, 
                  "home": "/home/tomhome", 
                  "name": "tom", 
                  "shell": "/bin/zshell", 
                  "state": "present", 
                  "system": false, 
                  "uid": 1066
              }

              11、group

              用戶組模塊,添加或刪除組:action: group

              gid # 設置組的GID號
              name= # 管理組的名稱
              state # 指定組狀態,默認為創建,設置值為absent為刪除
              system # 設置值為yes,表示為創建系統組
              [root@CentOS7-master ~]# ansible webservers -m group -a 'name=tom state=present'
              172.17.254.165 | SUCCESS => {
                  "changed": false, 
                  "gid": 1066, 
                  "name": "tom", 
                  "state": "present", 
                  "system": false
              }
              172.17.254.180 | SUCCESS => {
                  "changed": false, 
                  "gid": 1066, 
                  "name": "tom", 
                  "state": "present", 
                  "system": false
              }

              12、script在指定節點運行服務端的腳本

              [root@CentOS7-master ~]# vim test.sh
              #/bin/bash
              
              #創建/tmp/test.sh.log
              touch /tmp/test.sh.log
              
              #將date命令結果輸出到/tmp/test.sh.log
              echo “hello” >> /tmp/test.sh.log

              在webservers組中所有主機執行/root/test.sh腳本

              [root@CentOS7-master ~]# ansible webservers -m script -a '/root/test.sh'

              13、setup模塊

              facts組件是ansible用于采集被管機器設備信息的一個功能,我們可以使用setup模塊查機器的所有facts信息,可以使用filter來查看指定信息。整個facts信息被包裝在一個JSON格式的數據結構中,ansible_facts是最上層的值。

              facts就是變量,內建變量 。每個主機的各種信息,cpu顆數、內存大小等。會存在facts中的某個變量中。調用后返回很多對應主機的信息,在后面的操作中可以根據不同的信息來做不同的操作。如redhat系列用yum安裝,而debian系列用apt來安裝軟件。

              setup模塊,主要用于獲取主機信息,在playbooks里經常會用到的一個參數gather_facts就與該模塊相關。

              setup模塊下經常使用的一個參數是filter參數,具體使用示例如下(由于輸出結果較多,這里只列命令不寫結果):

              ansible 172.17.254.165 -m setup -a 'filter=ansible*mb' //查看主機內存信息
              ansible 172.17.254.180 -m setup -a 'filter=ansible_ens3[2-3]' //查看地接口為eth0-2的網卡信息
              
              ansible all -m setup --tree /tmp/facts //將所有主機的信息輸入到/tmp/facts目錄下,每臺主機的信息輸入到主機名文件中(/etc/ansible/hosts里的主機名)

              相關新聞

              聯系我們

              400-080-6560

              在線咨詢:點擊這里給我發消息

              郵件:work@magedu.com

              工作時間:周一至周日,09:00-18:30

              QR code
              656彩票平台656彩票主页656彩票网站656彩票官网656彩票娱乐 www.c9664.com | 2jshhh.com | www.4809d.com | pjhainan.com | www.99fc.cc | www.558809.com | www.176223.com | www.448628.com | 6789blr.biz | www.1754v.com | yf2333.com | www.782w.com | www.tyc55.com | 22207p.com | www.1559504.com | 88669193.com | www.955494.com | www.7676761133.com | 50024466.com | www.60886a.com | 228888.com | www.655013.com | www.35849.com | 52688x.com | www.5953688.com | hy5900.com | www.191855.com | www.752suncity.com | 2844s.com | www.0270s.com | www.kj638.com | 7893005.com | www.0622iii.com | 33115xx.com | www.305988.com | www.267185.com | 3650711.com | www.729937.com | www.hg8376.com | bcw1111.com | www.881799a.com | www.878msc.com | 3807bb.com | www.68682w.com | www.c27229.com | 15a42.net | www.77114z.com | 496.ma | 7720f.net | www.7225y.com | jnn006.com | 0343d.com | www.d83377.com | 5004h.com | 6868mm.cc | www.679.com | www.333222g.com | pj12678.com | www.6653g.com | www.b0008.com | 0245y.com | www.1368z.cc | www.1343a.com | 40400.com | www.356776.com | www.bwinyz45.com | www.hg44768.com | 22889193.com | www.126xc.com | www.77msctyc.com | mgm3242l.com | www.501354.com | www.10999r.com | 97618a.com | 6033n.com | www.50054b.com | www.pj5633.com | 3822k.com | www.069965.com | www.vinisi08.com | www.3668722.com | 2778.com | www.541911.com | www.am8333.tw | www.e26055.vip | 2021ddd.com | www.00czj.com | www.77731y.com | zhcp23.com | bet3658.com | www.949403.com | www.8850w4.com | www.hg3388.tw | 20160913.site | www.cp8004.cc | www.4196h.com | www.hg7979.com | feicai0853.com | www.570133.com | www.06820w.com | www.hg191.org | 2064hb.com | www.358268.com | www.222335.com | www.688222.com | tz883.com | 5855pp.com | www.6364z.com | www.88562.com | www.1118xj.com | 239430.com | www.178571.com | www.5856883.com | www.long-8.com | 2247aa.com | 88850uu.com | www.810895.com | www.91779h.com | www.1516yyy.com | hgwz33.com | 3844jj.com | www.669548.com | www.806765.com | www.90234.com | 90856r.com | 029.com | 3066qqq.com | www.5095m.com | www.4078u.com | www.00829u.com | b08199.com | 1590.com | 32424k.com | www.5095m.com | www.556537.com | www.b444.com | www.jsw99.cc | k77304.com | bbb5682.com | www.622105.com | www.55785.com | www.00772h.com | www.44447837.com | www.js58333.com | www.5555566666.com | 23800j.com | www.356126.com | www.86889.cc | www.52062t.com | www.bet66622.com | www.9005c.com | 3225p.com | 2007893.com | 5856u.com | www.383571.com | www.80767y.com | www.9997028.com | www.232t.com | www.b30226.com | 50000922.com | www.69989f.com | www.2010889.com | www.7435m.com | 00ww8332.com | pj88ee.com | afcp01.com | www.68682a.com | www.918361.com | www.99638k.com | www.3032cc.com | www.d456x.com | www.vip8xpj.com | www.6491d.com | 3122jj.com | 66287l.com | 3405ww.com | 4379a.com | 8722bbbb.com | www.574577.com | www.2109g.com | www.46976.com | www.h2894.com | www.1064f.com | www.569389.com | www.h7788c.com | 1775mm.com | 685555.com | 4231b.com | 1036878.com | 22284066.com | 2820e.com | 97618u.com | www.610181.com | www.qucw4.com | www.52072h.com | www.kj111888.com | www.9464003.com | www.pj88q.com | www.009789.com | www.82894w.com | www.87680d.com | www.6491z.com | www.h9978.com | 54443k.com | 3844bb.com | 2267l.com | 029555.com | 90307q.com | 4488h.com | 8037mm.com | 463j8.com | 6002x.com | 449649.com | 4288qq.com | 4107r.com | 706803.net | 69096h.com | 5855ff.com | c558.cc | 2019rr.cc | by305.com | pj677p.com | 2506h.com | 5002z.com | 4379.com | xh999.com | 97000.org | 4323f.com | 1005021.com | jjjj19927.com | 4546.com | 50067b.com | 20550452.com | 9030s.com | h0186.com | www.4759cc.com | www.bet1600.com | www.7720h.com | www.p78888.com | www.3tgpd.com | www.77605x.com | www.40789b.com | www.65579b.com | www.cp0017.com | www.9b006.com | www.80999.vip | www.60886w.com | www.012115.com | www.97655d.com | www.7782u.com | www.ch1018.com | www.597933.com | www.063766.com | 2012bet5.com | 3522t.vip | d6688.com | 9149x.com | h4389.com | 26668n.com | 5350w.com | www.7435o.com | www.53516a.com | www.hj003.com | www.c555.com | www.2566y9.com | www.55545.com | www.9149q.com | www.769526.com | www.050955.com | 3788z.com | 793929.com | 66681i.com | 97799x.com | www.hg9689.com | www.gd49.com | www.y69096.com | www.55676t.com | www.43818s.com | www.768806.com | www.26878o.com | o08199.com | 4590016.com | 04343.com | www.am0675.com | www.745968.com | www.0099xpj.net | www.55717i.com | www.09gcw.com | www.330831.com | bosw8.com | 0652g.com | 998o.cc | www.030xpj.com | www.303408.com | www.4996lz.com | www.22211d.com | www.820158.com | 0683i.com | 4546.com | u2649.com | www.48599.com | www.e32939.com | www.0343d.com | www.c7268.com | v997a.com | 80567e.com | hcp999.com | www.tb186.com | www.bwin960.co | www.50080h.com | www.330732.com | 4323m.com | 00940.com | www.msc66.com | www.66730.cc | www.838552.com | www.ji224.com | zz2205.com | 78808f.com | 5443gg.com | www.pj5938.com | www.js79900.com | www.86889.cc | www.082707.com | 3644h.com | 185647.com | www.4907a.com | www.00xpj58.com | www.832795.com | 61326600.com | feicai0418.com | www.48588c.com | www.08xpj58.com | www.679955.com | 99699q.com | l2554.com | www.4058s.com | www.980442.com | www.217556.com | 85698k.com | www.580583.com | www.203163.com | www.36788z.com | 138761.com | 88851z.com | www.107898.com | www.12136w.com | www.599749.com | qq365s.com | www.284888.com | www.4446eee.com | www.080wy.com | 55984e.com | n2554.com | www.hf9018.com | www.49956p.com | 3559cccc.com | pj886.com | www.hjcp4.com | www.9478a.com | hd229.cc | www.198488.com | www.16181z.com | www.hx5566.com | bet365yulecheng871.org | 3005647.com | www.19019p.com | www.c137.vip | 5360r.com | hjcp2018.com | www.582006.com | 5309p.com | www.80999.vip | www.596531.com | 88993g.com | www.4270ll.com | www.1466n.com | red0035.com | 9949g.com | www.5sj.com | www.890413.com | 55555gg.cc | www.555423.net | www.86267n.com | 8881481.com | www.8124x.com | www.087b.com | 2820t.com | ag81679.com | www.http://489633.com/ | www.253529.com | 6150g.com | www.f948f.com | www.928621.com | 3807x.com | www.355422.com | www.659zf.com | 7893w19.com | www.ylg424.com | www.32123f.com | 8722llll.com | www.hd66.am | www.54968g.com | 7703kk.com | hpzx88.com | www.hgbet1.com | pj677p.com | www.535xpj.com | www.6889781.com | 3242s.com | www.4972ww.com | www.77114x.com | i86811.com | www.280999.com | www.flcb1.com | 34o35.com | www.yc7777.com | www.339968.com | 9977977.com | www.pj81619.com | 3983012.com | www.jjj5025.com | www.87668c.com | 61328833.com | www.328466.com | www.673166.com | 55331oo.com | www.469701.com | 0044.cc | www.xpj222111.com | www.50732t.com | 463h8.com | www.658300.com | www.50026o.com | www.56733z.com | www.173383.com | js07749.com | www.jxcp3333.com | www.001832.com | 1294e.com | www.0270o.com | a44.com | www.3157h.com | 33115hh.com | www.40686d.com | www.88cmc.com | 2127ll.com | www.93919.com | 33779193.com | www.hjcp3.com | hd61788.com | www.67797m.com | www.ybao6.com | 06381234.com | www.961826.com | x48f.com | www.7334b.com | 3822u.com | www.87865.com | www.378016.com | www.pj5568.com | www.9928j.com | 01885l.com | www.78919g.com | 08778p.com | www.9570119.com | vip1449.com | www.pm48.com | zhcp68.com | www.1596c.com | www.178259.com | www.831813.com | www.810526.com | www.1111jsc.com | www.5086y.com | 44hh8332.com | www.84499x.com | 08159g.com | www.766885.com | 55991381.com | www.1237777.cc | 3467c.com | www.8905h.com | 97340022.com | www.xpj11005.com | 075nn.com | www.209576.com | y2557.com | www.362063.com | 83378d.com | www.30350d.com | bogou2222.com | www.8905y.com | m1915m.com | www.14341434.com | 32555a.com | www.5952233.com | 6766yy.com | www.868339.com | 68228x.com | www.61233g.com | 2247v.com | www.3126q.com | oo1331.com | www.810620.com | www.19888bet.com | www.068675.com | www.hg7211m.com | www.50086.net | 30170033.com | www.456.ceo | xxx67890.com | www.2222bj.com | 3222c.cc | www.992358.com | www.303480.com | www.77605b.com | 5005h.com | www.c7206.com | 86everpower.com | www.3846e.com | 655661177.com | www.5854x.cc | www.ylg08.com | 7196uu.com | www.3211msc.com | P35cc.com | www.4102p.com | app4377.com | www.9889hc.com | www.333133e.com | 08778d.com | www.a22.com | h444000.com | www.La166518.com | bet99336.com | www.235607.com | www.hg0817.com | pt7008.com | www.z98478.com | 3178y.com | www.506932.com | www.88867.com | 00669193.com | www.111128.com | 5443f.com | www.375953.com | www.ke00852.com | 5003rr.com | www.046161.com | 054007.com | www.77802o.com | www.9cai.com | 56822.com | www.zg39.com | www.3170003.com | yd12308.com | www.3775c.com | 6hcc66.com | www.66332i.com | www.682260.com | 51133n.com | www.cb7288.com | www.079305.com | qq5443.com | www.81233h.com | www.yh4959.com | 131s.net | www.78919g.com | www.1869k.com | 36502288.com | www.33678pp.com | 2767y.com | www.xinyc8.com | www.71071j.com | 01885u.com | www.503990.com | www.85857s.com | 3868oo.cc | www.699494.com | www.5114111.com | 67890hhh.com | www.c129.vip | www.mgdc42.com | 3890f.com | www.960737.com | www.aobo9999.com | dh41866.com | www.796678.com | www.938y.cc | 33992007.com | www.239644.com | www.38138s.com | 5443c.com | 9121903.com | www.7920j.com | www.v0070.com | 3304nn.com | www.80767k.com | www.22562b.com | 059dhw.com | www.aj3383.com | www.t4042.com | a3672.com | www.196501.com | www.45598h.com | www.kf318.com | 9420e.com | www.66653t.com | www.55155b.com | jinsha3845.com | www.580296.com | www.848777c.com | 188qq22.com | 12742c.com | www.60007d.com | www.hg3756.com | d1915.com | www.196039.com | www.40288z.com | www.77vn777.cc | 37688l.com | www.690776.com | www.bwinyz42.com | www.00217g.com | www.81520i.com | www.7737gg.com | www.2846t.com | 3726c.com | www.234972.com | www.209576.com | www.ydb01.com | 13222g.com | www.150957.com | www.3775t.com | www.2605505.vip | 22117r.com | 00pp8331.com | www.77803z.com | www.552226.com | 896320.com | tt6827.com | www.c2953.com | www.bwinyz27.com | www.621155z.com | 4444211.com | www.230635.com | www.888999qipai.com | www.ylg424.com | dz3666.com | 500000317.com | www.1368o.cc | www.7415b.com | www.63877x.com | 9737ww.me | 80368gg.com | www.61268888.com | www.pj6667.com | 6363d.com | 25288z.com | www.196065.com | www.js7583.com | www.333wh.com | yin8888.tv | 80567k.com | www.025728.com | www.81233m.com | www.288988a.com | www.b0999.com | x86226.com | bogou800.vip | www.5086h.com | www.7225y.com | www.75367.com | 168c3.com | 41866.com | www.176012.com | www.66652l.com | www.00772x.com | www.88837t.com | 35xx.vip | 20188m.com | www.088185.com | www.36787h.com | www.js68111.com | www.jing6664.com | 6644vn77.com | c53.net | 3726p.com | www.615121.com | www.ya2019o.com | www.pj88s.com | www.774167.com | 9895f.com | z86226.com | 9679g.com | www.565378.com | www.21229.com | www.673888e.com | www.73256.com | lh7358.com | js7.ch | hg2018.cc | hd61788.com | www.914904.com | www.aobo191.com | www.4996zk.com | www.222884.com | www.033033m.com | 5219r.com | 3424s.com | mgbet.vg | www.633720.com | www.68689y.com | www.9464005.com | www.5049l.com | www.77777ppp.com | www.58339.com | 2146j.com | 80878w.com | 345678.com | www.98528i.com | www.cmc.cc | www.77996c.com | www.1119yl.com | www.063262.com | www.006074.com | www.767166.com | df-bet.net | 052325.com | 1389rr.com | www.177806.com | www.qilc9.com | www.3a003.com | www.71071z.com | www.hg6009.com | www.0xinhao.com | 901172.com | 4368.com | 41866.com | 3245v.com | www.196065.com | www.6539y.com | www.088365.com | www.9377msc.com | www.sfwhys.com | 3333xsj.com | j1505.com | 867wn.com | 67890y.com | 11443885.com | www.547638.com | www.36166z.com | www.100224.com | www.8473t.com | www.404msc.com | www.5288js.com | www.32329193.com | www.ylg2345.com | 5446yy.com | g35151.com | jidu0.com | 61323300.com | 3685l.com | 69444466.com | 3936u.com | 3202f.com | 58588.com | www.338063.com | www.fyyy5.com | www.ya848.com | www.5441x.com | www.tx01.cc | www.33588w.com | www.71233g.com | www.86267m.com | www.7714m.com | www.2222bj.com | www.383444.com | www.66136.com | www.xj444555.com | www.xj112233.com | www.21229.com | www.0270q.com | www.77803b.com | www.61233g.com | www.04500w.com | www.22303.cc | www.109ak.com | www.rrle5.com | www.6832g.com | www.50732m.com | www.96386b.com | www.588vip.xyz | www.0659.com | www.mgm777c.com | www.707wb.com | www.90305d.com | www.00840f.com | www.66kcw.com | www.916270.com | www.985026.com | www.795535.com | www.547638.com | www.130883.com | 4182w.com | 7945jj.com | 18438555.com | 118888c.com | 0073.com | r86226.com | dzjcp779.com | h00351.com | www.2ag88.com | www.9996oo.com | www.8k365.com | www.587002.com | www.58665k.com | www.5181889.com | www.g32031.com | www.8c999.com | www.07679t.com | www.6678695.com | www.rfdc07.com | www.981095.com | www.8816x.com | www.775020.com | www.040417.com | w32689.net | 1654qq.com | 4025w.com | df-bet.net | www.033033o.com | www.333133c.com | www.0285.com | www.jz3888.com | www.38775gg.com | www.556303.com | www.699by.com | www.549577.com | 377ib.com | 66648t.com | 39199y.com | 923250.com | www.hg1966.com | www.hg9698.com | www.tt55826.com | www.hg7833.com | www.52303k.com | www.681090.com | 7893w18.com | 55967p.com | 11018o.com | 2595b.com | www.boma0157.com | www.9411.am | www.hg988.com | www.535086.com | www.50080j.com | www.791651.com | 55aa8331.com | bet99331.com | qy457.com | www.pj11588.com | www.330099y.com | www.hg8201.com | www.00778a.com | www.3775l.com | www.535hc.com | www.50054i.com | 8449tt.com | mmm40033.com | 54140077.com | www.hg9396.com | www.88166x.com | www.947004.com | www.369888a.com | 80368p.com | 18-82.com | yzc329.com | www.943a28.com | www.253777.com | www.63800d.com | www.3552m.com | www.015689.com | 998s.cc | 61328800.com | www.3459e.com | www.c44uu.com | www.x888789.com | www.925073.com | 4809c.com | 3559gggg.com | 5833yl.com | www.822898.com | www.792085.com | www.qmkl9.com | 256777z.com | 3726c.com | www.a333.cc | www.hjcp222.com | www.6889796.com | www.626310.com | 2776j.com | 983888u.com | www.k22365.com | www.565578.com | www.77802j.com | www.52072l.com | 4632255.com | 78111166.com | www.759696.com | www.578888.vip | www.602469.com | 3936u.com | ambjl03.com | www.604700.com | www.bd2019a.com | www.313355.com | 23815.com | www.9846k.com | www.cfcp777.com | www.25688e.com | www.137105.com | 9068e.com | www.0xinhao.com | www.55060c.com | www.08gcw.com | 4346.com | 44ff940.com | www.2233ok.com | www.86333f.com | www.308908.com | 8381r.com | www.hg1850.com | www.6776ee.com | www.662by.com | 5856uuu.com | zhcp62.com | www.hwx688.com | www.95666w.com | 2820c.com | bet28c.com | www.291234.com | www.81233l.com | 5443u.com | 0015uu.com | www.697799a.com | www.5951990.com | www.50064u.com | 6118k.com | www.2404000.com | www.ejylc17.com | 00048n.com | 98955s.com | www.123f4.com | www.66653g.com | 61652c.com | js90055.com | www.caipiao88c.com | www.3890e.com | 364982.com | www.1122hg.com | www.bet63m.com | www.570323.com | c53.net | www.9284444.com | www.js1992.com | 450371.com | 2543006.com | www.5146z1.com | www.904857.com | 6556e.com | www.87680a.com | www.zzw555.com | www.43131k.com | 4809m.com | www.rgcp.com | www.hj0555.com | jxf963.com | www.44446609.com | www.7886265.com | lixingyoulun.com | 71245aa.com | www.yy1234.com | www.490780.com | 4167h.com | www.456990.com | www.022h.cc | 3131b.cc | www.hg5532.com | www.77114k.com | 2019mm.cc | www.21365kk.com | www.72211.com | 569pj.com | www.t32126.cc | www.42456688.com | 5622f.com | www.bg999666.com | www.i94600.com | 20188v.com | www.hg9765.com | www.90365vip.com | am0808.cc | www.8124s.com | www.350c9.com | u14666.com | www.am0672.com | www.3301844.com | 9645uu.com | www.vns956.com | www.26299t.com | feicai0575.com | www.hy985.com | www.cb0999.com | www01234.com | www.4963gg.com | www.203059.com | 7744kkk.com | www.ag3377.com | lbzyfz.com | www.wnsr818.com | www.bi16.com | 2127gg.com | www.790808.com | www.850533.com | 424138.com | www.38138m.com | 5001s.com | www.8494g.com | www.86267r.com | 8200com | www.amdc0007.com | www.683944.com | 2060088.com | www.64566.bet | 11dd8331.com | www.3459f.com | www.41518q.com | 88304q.com | www.g92776.com | vipxinquan.com | www.8aobo.com | www.68682r.com | k60111.com | www.09888cp.com | www.65707e.com | www.hg6789.com | www.77114z.com | 3678b.com | www.255783.com | s4048eee.com | www.5557888.com | www.6364t.com | 2905.com | www.69567y.com | 4036y.com | www.23470.com | www.338031.com | www.68666k.com | www.99638c.com | 4288k.com | www.47506d.com | zz5144.com | www.57798c.com | www.yc7701.com | www.pj0567.com | www.52072n.com | 2138001.com | www.xpj66123.com | bet3659098.com | www.217456.com | www.blr6644.com | 365vip500.cc | www.lefa3333.com | 2535.com | www.js541.com | www.055982.com | www.976000.com |