我的编程空间,编程开发者的网络收藏夹
学习永远不晚

三台主机分别部署LAMP

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

三台主机分别部署LAMP

三台主机分别部署LAMP

 要求:httpd, php, mariadb分别部署在一个单独的主机上,一个虚拟主机提供phpMyAdmin,另一个虚拟主机提供wordpress,为phpMyAdmim提供https服务;

 

一. 分工三台主机

A  httpd主机   172.16.35.1

B  php-fpm主机 172.16.35.2

C  mariadb主机 172.16.35.3

为方便实验在这里关闭防火墙

#iptables-F

#setenforce0

安装所需rpm包:

在A上yum -y install httpd,B主机yum -y install php-fpm, C上yum -y install mariade-server php-mysql

 

二. httpd主机设置

1.设置vhost1.conf和vhost2.conf

[root@zq~]# vim /etc/httpd/conf.d/vhost1.conf

<VirtualHost172.16.35.1:80>

ServerNamewww1.test.com

DocumentRoot"/data/vhost/www1"

ProxyRequestson

DirectoryIndexindex.php

ProxyPassMatch^/(.*\.php)$ fcgi://172.16.35.2:9000/data/vhost/www1/$1 动态资源代理转发给第2台主机

<Directory"/data/vhost/www1">

OptionsNone

AllowOverrideNone

Requireall granted

</Directory>

</VirtualHost>

[root@zq~]# vim /etc/httpd/conf.d/vhost2.conf

<VirtualHost172.16.35.1:80>

ServerNamewww2.test.com

DocumentRoot"/data/vhost/www2"

ProxyRequestson

DirectoryIndexindex.php

ProxyPassMatch^/(.*\.php)$ fcgi://172.16.35.2:9000/data/vhost/www2/$1 动态资源代理转发给第2台主机

<Directory"/data/vhost/www2">

OptionsNone

AllowOverrideNone

Requireall granted

</Directory>

</VirtualHost>

 

2.修改配置文件指定NDS以及域名解析

[root@zq~]# vim /etc/resolv.conf

#Generated by NetworkManager

DNS=172.16.35.1

nameserver172.16.0.1

#本地域名解析

[root@zq ~]#vim /etc/hosts

127.0.0.1localhost localhost.localdomain localhost4 localhost4.localdomain4

::1localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.35.1www1.test.com www2.test.com

 

3.创建静态默认文件:

[root@zq~]# mkdir -p /data/vhost/www{1,2}

[root@zq~]# vim /data/vhost/www1/index.html

<h2>zq1第1台物理机静态数据 172.16.35.1</h2>

[root@zq~]# vim /data/vhost/www2/index.html

<h2>zq2第1台物理机静态数据 172.16.35.1</h2>

 

4.然后测试本机静态数据是否可以正常访问

================================================================

三.php-fpm主机:

1.修改配置文件

[root@zq~]# vim /etc/php-fpm.d/www.conf

listen = 172.16.35.2:9000监听本机地址端口

listen.allowed_clients= 172.16.35.1 允许A主机连接

 

2.创建资源映射目录及文件

mkdir -pv/data/vhost/www{1,2}

[root@zq~]# vim /data/vhost/www1/index.php

<h2>第2台物理机a</h2>

<?php

$conn =mysql_connect('172.16.35.3','testuser','testpass');

if($conn)

echo"OK";

else

echo"Failure";

phpinfo();

?>

[root@zq~]# vim /data/vhost/www2/index.php

<h2>第2台物理机b</h2>

<?php

$conn =mysql_connect('172.16.35.3','testuser','testpass');

if($conn)

echo"OK";

else

echo"Failure";

phpinfo();

?>

 

3.安装加速器php-xcache

yum -yinstall php-xcache

解压wordpress以及php-myadmin分别在www1和www2中

4.修改wordpress的配置文件

[root@zq~]# cd /data/vhost/www1/wordpress/

[root@zq wordpress]# ln -s wp-config-sample.phpwp-config.php

[root@zq wordpress]# vim wp-config.php

// **MySQL 设置 - 具体信息来自您正在使用的主机 ** //

define('DB_NAME','qqdb');

define('DB_USER','qquser');

define('DB_PASSWORD',qqpass');

define('DB_HOST','172.16.35.3'); 这里的地址是指向第C主机的数据库地址

define('DB_CHARSET','utf8');

define('DB_COLLATE','');

 

5.修改phpMyAdmin的配置文件

[root@zqt ~]# ln -s /data/vhost/www2/phpMyAdmin-4.4.14.1-all-languages/data/vhost/www2/myadmin

[root@zq ~]# ln -s /data/vhost/www2/myadmin/config.sample.inc.php/data/vhost/www2/myadmin/config.inc.php

[root@zq ~]# vim /data/vhost/www2/myadmin/config.inc.php

$cfg['blowfish_secret']= '4pfPnDAJFPA4WMWaQxD';

随机码用!r opensslrand -base64 15 生成用于通信加密

$i = 0;

$i++;

$cfg['Servers'][$i]['auth_type']= 'cookie';

$cfg['Servers'][$i]['host']= '172.16.35.3'; $cfg['Servers'][$i]['connect_type'] = 'tcp';

$cfg['Servers'][$i]['compress']= false;

$cfg['Servers'][$i]['AllowNoPassword']= false;

 

 

四.mariadb主机

1.启动被查看数据库且设定其为开机启动

systemctlstart mariadb.service

systemctlstatus mariadb.service

systemctlenabled mariadb.service

 

2.授权创建用户

[root@zq ~]#mysql

mysql>GRANT ALL ON qqdb.* TO 'qquser'@'172.16.%.%' IDENTIFIED BY 'qqpass';

mysql>FLUSH PRIVILEGES;

mysql>CREATE DATABASE qqdb;

=====================================================================================

五.测试php是否可以连接数据库

http://www1.test.com/测试A主机的静态数据

http://www2.test.com/第1台主机的静态数据连接成功

http://www1.test.com/index.php第2台物理机的第一个虚拟主机的动态数据访问成功

三台主机分别部署LAMP




http://www2.test.com/index.php第2台物理机的第二个虚拟主机的动态数据访问成功

三台主机分别部署LAMP


http://www1.test.com/wordpress/index.php测试转发第2台主机第一个虚拟主机

三台主机分别部署LAMP



http://www2.test.com/myadmin/index.php测试转发第2台主机第二个虚拟主机

三台主机分别部署LAMP


 

六.给B主机上的php-myadmin提供https服务,详情参考单主机部署LAMP

 

七.压力测试

1.httpd主机的静态数据测试html:

[root@zq~]# ab-c 100 -n 1000 http://www1.test.com/data/vhost/www1/index.html 静态数据

Time perrequest: 17.254 [ms] (mean) 十次的测试数据稳定在这个数值

Time perrequest: 0.172 [ms] (mean, across all concurrent requests)

Transferrate: 2495.00 [Kbytes/sec] received

2.http主机的动态数据测试info() php:

[root@zq~]# ab -c 100 -n 1000 http://www1.test.com/data/vhost/www1/index.php

ConcurrencyLevel: 100

Timetaken for tests: 0.423 seconds

Completerequests: 1000

Failedrequests: 0

Writeerrors: 0

Non-2xxresponses: 1000

Totaltransferred: 226000 bytes

HTMLtransferred: 16000 bytes

Requestsper second: 1613.49 [#/sec] (mean)

Time perrequest: 42.345 [ms] (mean) 十次的测试数据稳定在这个数值

Time perrequest: 0.493 [ms] (mean, across all concurrent requests)

Transferrate: 515.33 [Kbytes/sec] received

3.测试wordpress动态数据

[root@zq~]# ab -c 100 -n 1000 http://www1.test.com/data/vhost/www1/wordpress/index.php

ConcurrencyLevel: 100

Timetaken for tests: 0.428 seconds

Completerequests: 1000

Failedrequests: 0

Writeerrors: 0

Non-2xxresponses: 1000

Totaltransferred: 226000 bytes

HTMLtransferred: 16000 bytes

Requestsper second: 2168.61 [#/sec] (mean)

Time perrequest: 47.690 [ms] (mean) 十次的测试数据稳定在这个数值

Time perrequest: 0.487 [ms] (mean, across all concurrent requests)

Transferrate: 46.59 [Kbytes/sec] received

4.动态测试myadmin数据

[root@zq~]# ab -c 100 -n 1000 http://www2.test.com/data/vhost/www2/myadmin/index.php

DocumentPath: /data/vhost/www2/myadmin/index.php

DocumentLength: 16 bytes

ConcurrencyLevel: 100

Timetaken for tests: 0.495 seconds

Completerequests: 1000

Failedrequests: 0

Writeerrors: 0

Non-2xxresponses: 1000

Totaltransferred: 226000 bytes

HTMLtransferred: 16000 bytes

Requestsper second: 2168.43 [#/sec] (mean)

Time perrequest: 45.840 [ms] (mean) 十次的测试数据稳定在这个数值

Time perrequest: 0.490 [ms] (mean, across all concurrent requests)

Transferrate: 486.59 [Kbytes/sec] received

注意对于bash来书单次接受的数据不能大于10024所以压力测试时不能把数值调的过大

5.表格:


并发100请求1000

并发100请求1000

并发100请求1000

单台主机做LAMP

122.684

119.658

118.152

三台主机做LAMP

48.658

47.685

48.158

所以用三台主机的话动态数据的响应速度会大大提高

 


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

三台主机分别部署LAMP

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

SAP Fiori应用的三种部署方式分别是什么

本篇文章为大家展示了SAP Fiori应用的三种部署方式分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。封面图片来自Google搜索,关键字: Fiori Deployment方式1 On
2023-06-04

部署SD-WAN之前要执行的三个步骤分别是什么

部署SD-WAN之前要执行的三个步骤分别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。随着企业制定网络战略和技术路线图,其中一项热门技术是SD-WAN,这是一种重要的
2023-06-03

Linux系统更改主机名的三种方法分别是什么

这篇文章主要为大家分析了Linux系统更改主机名的三种方法分别是什么的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“Linux系统更改主机名的三种方法分别是什
2023-06-28

将Java应用部署到SAP云平台neo环境的两种方式分别是怎样的

这期内容当中小编将会给大家带来有关将Java应用部署到SAP云平台neo环境的两种方式分别是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。方法1 - 使用EclipseEclipse里新建一个服务器
2023-06-04

购买或者代购Dreamhost主机过程中的三大误区分别是什么

购买或者代购Dreamhost主机过程中的三大误区分别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。误区一:代购Dreamhost主机的人靠退款或者拒付来赚钱现在网上
2023-06-12

使用Python部署机器学习模型的10个实践经验分别怎么样的

今天就跟大家聊聊有关使用Python部署机器学习模型的10个实践经验分别怎么样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。有时候,作为数据科学家,我们会忘记公司付钱让我们干什么。
2023-06-16

编程热搜

目录