当前位置: 首页 > news >正文

深圳做网站公司华象山seo外包服务优化

深圳做网站公司华,象山seo外包服务优化,网页版qq官网,武汉做网站的公司排名目录 一、回顾 1、mysql和python 1. mysql5.7 2. 可以使用pymysql非交互的管理mysql 2、mycat中间件 1. 独属于mysql主从的负载均衡策略 2.配置写主读从 3. 步骤 3.1 安装jdk 3.2 mycat 3.3 配置 3.4 启动和调试 二、运维自动化(ansible) 1、任务背…

目录

一、回顾

1、mysql和python

        1. mysql5.7

        2. 可以使用pymysql非交互的管理mysql

2、mycat中间件

        1. 独属于mysql主从的负载均衡策略

        2.配置写主读从

        3. 步骤

                3.1 安装jdk

                3.2 mycat

                3.3 配置

                3.4 启动和调试

二、运维自动化(ansible)

1、任务背景

2、任务拆解

3、学习目标

三、认识自动化运维

1、问题:

 2、自动化运维主要关注的方面

3、常见的开源自动化运维工具比较

1. puppet(拓展)

2. saltstack(拓展)

3. ansible

四、ansible

1、坏境

2、在m0安装ansible(搭建四台机器 m0 s0 s1 s2)

3、实现master对agent的免密登录,(s0 和s1)

4、在master上定义主机组,并测试连接

练习:

五、ansible模块

1、查看所有支持模块

2、查看所有ping模块

3、hostname模块(用于修改主机名)

4、file模块(重点)

 5、stat模块(了解) 

6、copy模块

(1)copy模块

(2)使用content参数远程给文件里写入内容(会覆盖原内容)

(3)使用force参数控制是否强制覆盖

(4)使用backup参数控制是否备份文件

(5)copy模块拷贝时要注意拷贝目录后面是否带"/"符号

7、 fetch模块

8、user模块

9、group模块

10、cron模块

11、yum_repository模块

12、yum模块(重点)

13、service模块(重点)

14、command与shell模块


一、回顾
1、mysql和python
        1. mysql5.7

                1.1 不需要执行mysql_ssl_rsa_setup

                1.2 Change_master_to. 不需要get public key

        2. 可以使用pymysql非交互的管理mysql


                2.1 conn=pymysql.connect(host,user,password,database,port)

                2.2 cursor=conn.cursor()

                2.3 cursor.execute("create user...")

                2.4 cursor.execute("grant 权限 on 库.表 to 用户")

                2.5 conn.commit()

                2.6 cursor.fetchall()

2、mycat中间件
        1. 独属于mysql主从的负载均衡策略
        2.配置写主读从
        3. 步骤
                3.1 安装jdk

                tar -xf jdk_8u192.tar.gz

                cp jdk/ /usr/local/jdk

                sed -i '$aexport JAVA_HOME=/usr/local/jdk' /etc/profile

                sed -i '$aexport PATH=$PATH:$JAVA_HOME:/bin' /etc/profile

                source /etc/profile

                javac -version

                3.2 mycat


                tar -xf MyCat.tar.gz

                cp -r mycat/ /usr/local/

                 #测试启动

                /usr/local/mycat/bin/mycat console       //用控制台打印

                3.3 配置

                        (1) server.xml  

 <user name="blt" defaultAccount="true"><property name="password">blt</property><property name="schemas">test</property><!--<user name="user"><property name="password">user</property><property name="schemas">TESTDB</property><property name="readOnly">true</property></user>
-->

                        (2) schema.xml

        <schema name="test" dataNode="dn1" checkSQLschema="false" sqlMaxLimit="100"></schema><dataNode name="dn1" dataHost="localhost1" database="test" /><writeHost host="hostM1" url="192.168.8.150:3306" user="blt"password="blt"><readHost host="hostS2" url="192.168.8.151:3310" user="blt" password="blt" /></writeHost>
                3.4 启动和调试


                        (1)/usr/local/mycat/bin/mycat start

                          (2) netstat -lnput | grep 8066

                          (3) mysql -hmycat的ip或者域名 -P8066 -userver.xml中填入账号 -p在service.xml中填入的密码

                        (4) cat /usr/local/mysql/logs/wrapper.log

                                1. cause by.... 

二、运维自动化(ansible)
1、任务背景

公司的服务器越来越多,维护一些简单的事情都会变得很繁琐。用shell脚本来管理少量服务器效率还行,服务器多了之后,shell脚本无法实现高效率运维。这种情况下,我们需要引入自动化运维工具,对多台服务器实现高效运维。

2、任务拆解

1. 需要一台服务器做管理端,来连接管理所有的应用服务器

2. 考虑如果只针对一部分应用服务器进行运维操作如何实现(服务器分组)

3. 学会将平台烂熟于心的linux操作命令转化为自动化运维的方式(常见模块的学习)

4. 如果操作非常的冗长,学会使用playbook和role的方式来管理

3、学习目标

能够安装ansible服务器和客户端

能够定义ansible主机清单进行服务器分组

能够使用hostname模块修改主机名

能够使用file模块做基本的文件操作

能够使用copy模块把文件拷贝到远程机器

能够使用fetch模块把文件从远程拷贝到本地

能够使用user模块管理用户

能够使用group模块管理用户组

能够使用cron模块管理时间任务

能够使用yum_repository模块配置yum

能够使用yum模块安装软件包

能够使用service模块控制服务的启动,关闭,开机自启动

能够使用script模块在远程机器上执行本地脚本

能够使用command与shell模块远程执行命令

能够编写playbook实现httpd

三、认识自动化运维
1、问题:

假设我要去1000台服务上做一个操作(如nginx服务器修改配置文件里的某一个参数),下面两种方法缺点明显:

1. 按传统的方法,一台连着一台服务器的ssh上去手动操作。

        缺点: 效率太低。

2. 写个shell脚本来做。

        缺点:

                1. 管理的机器平台不一致,脚本可能不具备通用性。

                2. 传密码麻烦(在非免密登录的环境下,需要expect来传密码)

                3. 效率较低,循环1000次也需要一个一个的完成,如果用&符放到后台执行,则会产生1000个进程。

自动化运维:将日常IT运维中大量的重复性工作,小到简单的日常检查、配置变更和软件安装,大到整个变更流程的组织调度,由过去的手工执行转为自动化操作,从而减少乃至消除运维中的延迟,实现“零延时”的IT运维。

 2、自动化运维主要关注的方面

假如管理很多台服务器,主要关注以下几个方面:

1. 管理机与被管理机的连接(管理机如何将管理指令发送给被管理机)

2. 服务器信息收集(如果被管理的服务器有centos7.5外还有其它
linux发行版,如suse,ubuntu等。当你要做的事情在不同OS上有所
不同,你需要收集信息,并将其分开处理)

3. 服务器分组(因为有些时候我要做的事情不是针对所有服务器,可
能只针对某一个分组)

4. 管理内容的主要分类

        4.1 文件目录管理(包括文件的创建,删除,修改,查看状态,远程拷贝等)

        4.2 用户和组管理

        4.3 cron时间任务管理

        4.4 yum源配置与通过yum管理软件包

        4.5 服务管理

        4.6 远程执行脚本

        4.7 远程执行命令

3、常见的开源自动化运维工具比较
1. puppet(拓展)

基于ruby语言,成熟稳定。适合于大型架构,相对于ansible和saltstack会复杂些。

2. saltstack(拓展)

基于python语言。相对简单,大并发能力比ansible要好,需要维护被管理端的服务。如果服务断开,连接就会出问题。

3. ansible

基于python语言。简单快捷,被管理端不需要启服务。直接走ssh协议,需要验证所以机器多的话速度会较慢。

四、ansible
1、坏境

m0           192.168.1.67    管理机
s1             192.168.1.68    被管理
s2             192.168.1.69    被管理
s3             192.168.1.70    被管理

2、在m0安装ansible(搭建四台机器 m0 s0 s1 s2)

[root@m0 ~]# yum -y install epel-release
[root@m0 ~]# yum -y install ansible

[root@m0 ~]# ansible --version
ansible 2.9.27
[root@m0 ~]# find /etc/ -name "*ansible*"
/etc/ansible
/etc/ansible/ansible.cfg

3、实现master对agent的免密登录,(s0 和s1)

[root@m0 ~]# ssh -keygen
[root@m0 ~]# ls ./.ssh/
id_rsa  id_rsa.pub
[root@m0 ~]# cat ./.ssh/id_rsa.pub
[root@m0 ~]# ssh-copy-id -i 192.168.8.157
[root@m0 ~]# ssh-copy-id -i 192.168.8.158

4、在master上定义主机组,并测试连接

[root@m0 ~]# vim /etc/ansible/hosts    //写两个组,01组两个都是做免密的,02组两个免密,一个没做免密

[group01]
192.168.1.68
192.168.1.69[group02]
192.168.1.68
192.168.1.69
192.168.1.70

[root@m0 ~]# ansible 192.168.1.68 -m ping    //ping1.68主机

192.168.1.68 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}

[root@m0 ~]# ansible group01 -m ping       //ping  group01组(1.68,1.69)

192.168.1.68 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
192.168.1.69 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}

[root@m0 ~]# ansible group02 -m ping     //pinggroup02组,没有做免密的s3没有成功

The authenticity of host '192.168.1.70 (192.168.1.70)' can't be established.
ECDSA key fingerprint is SHA256:vcks5uGmemwyxNBSF54XWNYY0tCzHAh/OP4IJPQeSFI.
ECDSA key fingerprint is MD5:83:fe:4f:99:f8:7a:a1:9c:fb:94:c4:e3:81:3c:e2:a8.
Are you sure you want to continue connecting (yes/no)? yes
192.168.1.68 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
192.168.1.69 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
192.168.1.70 | UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Warning: Permanently added '192.168.1.70' (ECDSA) to the list of known hosts.\r\nPermission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", "unreachable": true
}

没有免密登陆的用户可以指定用户名和密码可以利用别名来传递端口密码

[root@m0 ~]# vim /etc/ansible/hosts 

[group01]
192.168.1.68
192.168.1.69other ansible_ssh_host=192.168.1.70 ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass=q[group02]
192.168.1.68
192.168.1.69
other

[root@m0 ~]# ansible group02 -m ping     //三台都ping成功了

192.168.1.69 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
192.168.1.68 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
other | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}

可以直接ping别名

[root@m0 ~]# ansible other -m ping     //单独ping  other(1.70)也是可以成功的

other | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
练习:

不论你⽤哪种环境(免密或不免密,端⼝是否22), 请最终将两台被管理机器加⼊到group1组即可

[root@m0 ~]# vim /etc/ansible/hosts 

web01 ansible_ssh_host=192.168.1.68 ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass=q
web02 ansible_ssh_host=192.168.1.69 ansible_ssh_port=22 ansible_ssh_user=root ansible_ssh_pass=q
[group01]
web01
web02

[root@m0 ~]# ansible group01 -m ping

web02 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
web01 | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
五、ansible模块

ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。

ansible支持的模块非常的多,我们并不需要把每个模块都记住,而只需要熟悉一些常见的模块,其它的模块在需要用到时再查询即可。

1、查看所有支持模块

[root@m0 ~]# ansible-doc -l  

官⽹模块⽂档地址: https://docs.ansible.com/ansible/latest/modules
/list_of_all_modules.html

2、查看所有ping模块

[root@m0 ~]# ansible-doc ping

3、hostname模块(用于修改主机名)

[root@m0 ~]# ansible group02 -m hostname -a 'name=ab.tdr.tds'    //三台主机的名字都被改成了ab.tdr.tds

4、file模块(重点)

                       ——用于对文件相关的操作(创建,删除,软硬钟接等)

# path        文件的地址
# state        方法
# directory 创建目录
# touch         创建文件

# absent         删除文件
# link                创建软链接
# hard        创建硬链接

# recurse        允许递归操作

# src        文件源

 [root@m0 ~]# ansible group01 -m file -a 'path=/tmp/abc state=directory'     //三台主机都被创建了abc目录
[root@m0 ~]# ansible group02 -m file -a 'path=/tmp/abc recurse=yes owner=bin group=daemon mode=1777'       //给属性
[root@m0 ~]# ansible group02 -m file -a 'path=/tmp/abc state=absent'  //删除这三台机子的/tmp/abc目录
[root@m0 ~]# ansible group02 -m file -a 'path=/tmp/aaa state=touch owner=bin group=daemon mode=1777'   //创建文件并给属性
[root@m0 ~]# ansible group02 -m file -a 'src=/etc/fstab path=/tmp/xxx state=link'        //创建一个软链接
[root@m0 ~]# ansible group02 -m file -a 'src=/etc/fstab path=/tmp/xxx2 state=hard'          //创建一个硬链接

 5、stat模块(了解) 

[root@m0 ~]# ansible group02 -m stat -a 'path=/etc/fstab'

6、copy模块

copy模块用于对文件的远程拷贝操作(如把本地的文件拷贝到远程的机器上)

(1)copy模块

[root@m0 ~]# ls
mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz
[root@m0 ~]# mv mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz my57.tar.gz
[root@m0 ~]# ls
my57.tar.gz

[root@m0 ~]# ansible group02 -m copy -a 'src=./mysql57.tar.gz dest=~'    

                                                          //把文件mysql57.tar.gz传到另外三台主机的家(~)目录下

[root@s0 ~]# ls
my57.tar.gz

(2)使用content参数远程给文件里写入内容(会覆盖原内容)

[root@m0 ~]# ansible group02 -m copy -a 'content="wo ha ha ha" dest=~/a.sh'  

注意:ansible中-a后⾯的参数⾥也有引号时,记得要单引双引交叉使⽤,如果都为双引或单引会出现问题

[root@s0 ~]# ls 
test
[root@s0 ~]# cat test
wo ha ha ha

(3)使用force参数控制是否强制覆盖

如果目标文件已经存在,则不覆盖
[root@m0 ~]# ansible group1 -m copy -a 'src=/tmp/222 dest=/tmp/333 force=no'
如果目标文件已经存在,则会强制覆盖
[root@m0 ~]# ansible group1 -m copy -a 'src=/tmp/222 dest=/tmp/333 force=yes'

(4)使用backup参数控制是否备份文件

[root@m0 ~]# ansible group02 -m copy -a 'content="wo ha ha ha" dest=~/a.sh backup=yes'                      //backup=yes表示如果拷⻉的⽂件内容与原内容不⼀样,则会备份⼀份,group1的机器上会将~/a.sh备份⼀份(备份⽂件命名加上时间),再远程拷⻉新的⽂件为~/a.sh

[root@ab ~]# ls
anaconda-ks.cfg  a.sh  a.sh.14315.2024-08-16@15:29:28~  mysql57.tar.gz  s.sh  x.sh
[root@ab ~]# cat a.sh
wo ha ha ha[root@ab ~]# cat a.sh.14315.2024-08-16@15\:29\:28~ 
wo ha ha ha[root@ab ~]# 

(5)copy模块拷贝时要注意拷贝目录后面是否带"/"符号

[root@m0 ~]# ansible group02 -m copy -a 'src=/etc/yum.repos.d dest=/etc/yum.repos.d/ backup=yes'        

                                                                                   //同步整个目录——/etc/yum.repos.d后⾯不带/符号,则表示把/etc/yum.repos.d整个⽬录拷⻉到/tmp/⽬录下

[root@m0 ~]# ansible group02 -m copy -a 'src=/etc/yum.repos.d/ dest=/etc/yum.repos.d/ backup=yes'        

                                                                            //同步目录下的内容——/etc/yum.repos.d/后⾯带/符号,则表示把/etc/yum.repos.d/⽬录⾥的所有⽂件拷⻉到/tmp/⽬录下

7、 fetch模块

fetch模块与copy模块类似,但作⽤相反。⽤于把远程机器的⽂件拷贝到本地。

[root@m0 ~]# ansible group02 -m fetch -a 'src=/etc/sysconfig/network-scripts/ifcfg-ens33 dest=/tmp'
[root@m0 ~]# tree /tmp                            //树状查看
/tmp
├── 192.168.1.68
│   └── etc
│       └── sysconfig
│           └── network-scripts
│               └── ifcfg-ens33
├── 192.168.1.69
│   └── etc
│       └── sysconfig
│           └── network-scripts
│               └── ifcfg-ens33
├── other
│   └── etc
│       └── sysconfig
│           └── network-scripts
│               └── ifcfg-ens33

8、user模块

user模块⽤于管理⽤户账号和⽤户属性。

[root@m0 ~]# ansible group02 -m user -a 'name=aaaa state=present'        

                                                                              //创建aaa⽤户,默认为普通⽤户,创建家⽬录
[root@m0 ~]# ansible group02 -m user -a 'name=mysql state=present system=yes shell="/sbin/nologin"'      

                                                           //创建mysql系统⽤户,并且登录shell环境为/sbin/nologin
[root@m0 ~]# ansible group02 -m file -a 'path=/usr/local/mysql state=directory'                

                                                                                                                                 //创建目录
[root@m0 ~]# ansible group02 -m file -a 'path=/usr/locall/mysql/mysql-file state=touch owner=mysql group=mysql mode=1777 '                      

                                                                                      //创建文件,并指定它的属主属组权限
[root@m0 ~]# ansible group02 -m user -a 'name=abc state=present uid=1999 password=abc'      

                                                                                                     //创建abc用户指定uid和密码
[root@m0 ~]# ansible group2 -m user -a 'name=hadoop generate_ssh_key=yes'      

                                                                //创建⼀个普通⽤户叫hadoop,并产⽣空密码密钥对
[root@m0 ~]# ansible group02 -m user -a 'name=aaaa state=absent'            

                                                                                 //删除aaaa⽤户,但家⽬录默认没有删除
[root@m0 ~]# ansible group02 -m user -a 'name=bbbb state=absent remove=yes'          

                                 //删除bbb⽤户,使⽤remove=yes参数让其删除⽤户的同时也删除家⽬录

9、group模块

group模块⽤于管理⽤户组和⽤户组属性。

[root@m0 ~]# ansible group1 -m group -a 'name=groupa gid=3000 state=present'    //创建组
[root@m0 ~]# ansible group1 -m group -a 'name=groupa state=absent             //删除组(如果有⽤户的gid为此组,则删除不了)

10、cron模块

cron模块⽤于管理周期性时间任务

[root@m0 ~]# ansible group1 -m cron -a 'name="test cron1" user=root job="touch /tmp/111" minute=*/2'      //创建⼀个cron任务,不指定user的话,默认就是root,如果minute,hour,day,month,week不指定的话,默认都为*
[root@m0 ~]# ansible group1 -m cron -a 'name="test cron1" state=absent          //删除cron任务

11、yum_repository模块

⽤于配置yum仓库

[root@m0 ~]# ansible group1 -m yum_repository -a "name=local description=localyum baseurl=file:///mnt/ enabled=yes gpgcheck=no"                  //增加⼀个/etc/yum.repos.d/local.repo配置⽂件
[root@m0 ~]# ansible group1 -m yum_repository -a "name=local state=absent"        //删除/etc/yum.repos.d/local.repo配置⽂件

12、yum模块(重点)

yum模块⽤于使⽤yum命令来实现软件包的安装与卸载。

[root@m0 ~]# ansible group1 -m yum -a 'name=vsftpd state=present'         //使⽤yum安装⼀个软件(前提:group1的机器上的yum配置都已经好)
[root@m0 ~]# ansible group1 -m yum -a 'name=httpd,httpd-devel state=latest'             //使⽤yum安装httpd,httpd-devel软件,state=latest表示安装最新版本
[root@m0 ~]# ansible group1 -m yum -a 'name=httpd,httpd-devel state=absent'            //使⽤yum卸载httpd,httpd-devel软件

13、service模块(重点)

service模块⽤于控制服务的启动,关闭,开机⾃启动等。

[root@m0 ~]# ansible group1 -m service -a 'name=vsftpd state=started enabled=on'     //启动vsftpd服务,并设为开机⾃动启动
[root@m0 ~]# ansible group1 -m service -a 'name=vsftpd state=stopped enabled=false'         //关闭vsftpd服务,并设为开机不⾃动启动

14、command与shell模块

两个模块都是⽤于执⾏linux命令的,这对于命令熟悉的⼯程师来说,⽤起来⾮常爽。
shell模块与command模块差不多(command模块不能执⾏⼀些类似$HOME,>,<,|等符号,但shell可以)

注意: shell模块并不是百分之百任何命令都可以,⽐如vim或ll别名就不可以。


文章转载自:
http://photog.rnds.cn
http://membrane.rnds.cn
http://exclamation.rnds.cn
http://wandy.rnds.cn
http://brassard.rnds.cn
http://analytical.rnds.cn
http://bibliomaniac.rnds.cn
http://nonpasserine.rnds.cn
http://annulose.rnds.cn
http://haubergeon.rnds.cn
http://anencephalia.rnds.cn
http://tailleur.rnds.cn
http://rapier.rnds.cn
http://chondrosarcoma.rnds.cn
http://moviemaker.rnds.cn
http://ketolysis.rnds.cn
http://bluppy.rnds.cn
http://hurter.rnds.cn
http://coul.rnds.cn
http://arris.rnds.cn
http://amnionic.rnds.cn
http://withdrew.rnds.cn
http://pontine.rnds.cn
http://spicewood.rnds.cn
http://limby.rnds.cn
http://virogenesis.rnds.cn
http://blazing.rnds.cn
http://quantitative.rnds.cn
http://insulate.rnds.cn
http://malacca.rnds.cn
http://upper.rnds.cn
http://sumach.rnds.cn
http://pogonia.rnds.cn
http://snopes.rnds.cn
http://retardarce.rnds.cn
http://paracusis.rnds.cn
http://unpenetrable.rnds.cn
http://jargonise.rnds.cn
http://pyrope.rnds.cn
http://isoglucose.rnds.cn
http://gonef.rnds.cn
http://centrifugal.rnds.cn
http://blessedly.rnds.cn
http://electroless.rnds.cn
http://adhere.rnds.cn
http://monetary.rnds.cn
http://wistful.rnds.cn
http://catabaptist.rnds.cn
http://hortative.rnds.cn
http://insalivate.rnds.cn
http://chainless.rnds.cn
http://semigloss.rnds.cn
http://kafir.rnds.cn
http://niobian.rnds.cn
http://ingratiating.rnds.cn
http://diskcomp.rnds.cn
http://unconditional.rnds.cn
http://ratty.rnds.cn
http://coelome.rnds.cn
http://unstinted.rnds.cn
http://gravenhurst.rnds.cn
http://galactosamine.rnds.cn
http://adjectivally.rnds.cn
http://maskless.rnds.cn
http://cocainist.rnds.cn
http://frenchy.rnds.cn
http://engirdle.rnds.cn
http://octastyle.rnds.cn
http://somnial.rnds.cn
http://wetter.rnds.cn
http://fro.rnds.cn
http://reconcentration.rnds.cn
http://cremains.rnds.cn
http://tahsildar.rnds.cn
http://delightful.rnds.cn
http://megafog.rnds.cn
http://yearn.rnds.cn
http://peiping.rnds.cn
http://bromatium.rnds.cn
http://tycho.rnds.cn
http://topi.rnds.cn
http://orogenesis.rnds.cn
http://nuchal.rnds.cn
http://hypnotoxin.rnds.cn
http://cineol.rnds.cn
http://lenticellate.rnds.cn
http://hygrogram.rnds.cn
http://hackberry.rnds.cn
http://transvest.rnds.cn
http://berkeleyan.rnds.cn
http://volatilise.rnds.cn
http://roadworthiness.rnds.cn
http://crystallogeny.rnds.cn
http://scornful.rnds.cn
http://segu.rnds.cn
http://semidetached.rnds.cn
http://enlightenment.rnds.cn
http://roentgenolucent.rnds.cn
http://susceptivity.rnds.cn
http://iniquitously.rnds.cn
http://www.hrbkazy.com/news/79157.html

相关文章:

  • 做网站学什么软件班级优化大师简介
  • wordpress简约下载站模板什么软件可以发布推广信息
  • 合肥营销网站建设价格台州网站建设平台
  • 苏醒主题做的网站新闻软文发稿平台
  • 网站优化比较好用的软件奶茶的营销推广软文
  • 24小时学会网站建设seo教程书籍
  • wordpress多久学会杭州网络排名优化
  • 网站制作费用申请站长工具亚洲
  • 阿里云ecs上传网站徐州百度推广电话
  • 为什么要懂seo优化步骤
  • 便宜的vps租用网站活动推广方案策划
  • 网站设计技术有哪些?百度网站排名优化价格
  • 网站分成几种类型品牌策划案
  • 沙井做网站cps广告联盟
  • 网站水印设置作教程app推广团队
  • jrs直播网站谁做的百度论坛
  • 大型网站建设公司 北京百度推广竞价开户
  • 用bootstrap做的手机推销网站模板企业seo排名哪家好
  • 网站里的聊天怎么做的网站seo优化运营
  • 公众号后端框架优化关键词排名推广
  • 湛江有帮公司做网站新闻热点最新事件
  • 网页网站十大网络营销成功案例
  • 网站版式有哪几种百度关键词推广工具
  • 网易企业邮箱登录参数错误seo网站优化收藏
  • 道路建设网站专题海口网站关键词优化
  • 网站建设技术服务费记什么科目网络营销运营推广
  • 潍坊城市建设官方网站推广运营公司哪家好
  • 可以做自己的单机网站长春seo外包
  • c web网站开发教程今日小说排行榜百度搜索风云榜
  • 网站建设首选建站系统seo推广教学