LAMP+LVS+KEEPALIVED(一)

LAMP+LVS+KEEPALIVED(一)

1、apache工作模式及参数说明

(1)prefork模式

prefork是Unix平台上的默认(缺省)MPM,使用多个子进程,每个子进程只有一个线程。每个进程在某个确定的时间只能维持一个连接,效率高,但内存占用量比较大。

(2)worker模式

worker使用多个子进程,每个子进程有多个线程,每个线程在某个确定的时间只能维持一个连接,内存占用量比较小,适合高流量的http服务器。缺点是假如一个线程崩溃,整个进程就会连同其任何线程一起"死掉",所以要保证一个程式在运行时必须被系统识别为"每个线程都是安全的"。

(3)参数说明

2、源码安装lamp

(1)安装httpd-2.4.12

#安装过程缺少依赖的包提示:

#缺少apr-devel

configure: error: APR not found.  Please read the documentation

#缺少apr-util-devel

configure: error: APR-util not found.  Please read the documentation

#缺少pcre-devel

configure: error: pcre-config for libpcre not found

#使用yum来安装:

yum -y install apr-devel apr-util-devel pcre-devel

#或者源码安装apr-1.5.1和apr-util-1.5.4

cd apr-1.5.1

./configure && make && make install

cd ../apr-util-1.5.4

./configure  --with-apr=/usr/local/apr/ && make && make install

#安装openssl-1.0.2a

yum -y install libgcrypt-devel.x86_64

./config && make && make install

#安装httpd-2.4.12

./configure--prefix=/usr/local/apache2 --enable-so

--enable-ssl=static --with-ssl=/usr/local/ssl/

--enable-mods-shared=all

--with-apr=/usr/local/apr/

--with-apr-util=/usr/local/apr/

make && make install

#默认会安装到/usr/local/apache2/下

#可以在./configure 时添加--prefix=/mypath

#可以通过./configure --help来查看相关编译参数,根据需求调整

(2)安装php-5.6.8

#安装过程缺少依赖包:

#缺少gcc

configure: error: no acceptable C compiler found in $PATH

#缺少libxml2-devel

configure: error: xml2-config not found. Please check your libxml2 installation

#使用yum来安装:

yum -y install gcc gcc-c++ libxml2-devel

#安装php-5.6.8

#apxs是在安装php时生成动态连接模块工具,如果不指明路径,apache就无法调用php

#一定要添加--with-apxs2=/usr/local/apache2/bin/apxs

#php安装完成后,可以看到会在httpd.conf文件添加"LoadModule php5_module modules/libphp5.so"

#动态加载php来完成解析

./configure --prefix=/usr/local/php --with-config-file-path=/etc --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache2/bin/apxs

make && make install

#默认会安装到/usr/local/php/下

#可以在./configure 时添加--prefix=/mypath 更改安装路径

#可以通过./configure --help来查看相关编译参数,根据需求调整

(3)安装mysql-advanced-5.6.23-linux-glibc2.5-x86_64

#具体安装和应用方法查看之前的mysql文档

#具体可以参考目录下的INSTALL-BINARY文件

#安装mysql,将mysql压缩解压到/usr/local

tar zxvf mysql-advanced-5.6.23-linux-glibc2.5-x86_64.tar.gz -C /uar/local/

cd /usr/local

ln -s mysql-advanced-5.6.23-linux-glibc2.5-x86_64 mysql

cd mysql

#添加mysql用户和群组

groupadd mysql

useradd -r -g mysql mysql

#修改相关目录和文件属主和所属群组

chown -R mysql .

chgrp -R mysql .

或者:chown -R mysql:mysql .

#将目录属主更改为root,避免mysql用户将目录删除

chown -R root .

chown -R mysql data

#使用mysql用户权限来初始化数据库

scripts/mysql_install_db --user=mysql

#会提示缺少perl-modules

#FATAL ERROR: please install the following Perl modules before executing scripts/mysql_install_db

yum -y install perl-Module-Install.noarch

#缺少依赖包libaio

#error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

yum -y install libaio-devel

#将mysql添加为服务

cp support-files/mysql.server /etc/init.d/mysqld

chkconfig --add mysqld

#将mysql的bin目录加入到PATH环境变量

#在/etc/profile最后面添加

PATH=$PATH:/usr/local/mysql/bin

source /etc/profile

#脚本初始化已经添加mysqld脚本,如果没有直接cp /etc/init.d/mysqld

/etc/rc.d/init.d/mysqld

#启动mysql

/usr/local/mysql/bin/mysqld_safe &

#更改mysql root密码提示

#error: ‘Can‘t connect to local MySQL server through socket ‘/tmp/mysql.sock‘

/usr/local/mysqladmin -u root -p password --socket=/var/lib/mysql/mysql.sock

#或者

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

#在/etc/my.cnf 文件socket参数指定为/tmp/mysql.sock

socket=/tmp/mysql.sock

3、lamp连接测试

(1)设置service方式启动apache

#将启动脚本复制为/etc/init.d/httpd

cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd

#可以这样来停止、启动和重启apache

service httpd stop/start/restart

/etc/init.d/httpd stop/start/restart

/usr/local/apache2/bin/apachectl stop/start/restart

#或许是因为兼容性不好,无法使用chkconfig设置开机启动

chkconfig add httpd

#但是可以使用下面的方式设置为开机启动apache

(2)复制php.ini文件

cp php.ini-development /etc/php.ini

#不需要进行手动更改就可以让apache调用php

#php在编译的时候会修改httpd.conf配置文件,添加如下一行

LoadModule php5_module        modules/libphp5.so

#如果在编译的时候没有指定--with-apxs2=/usr/local/apache2/bin/apxs,则apache无法加载php

时间: 2024-11-08 19:10:25

LAMP+LVS+KEEPALIVED(一)的相关文章

LAMP+LVS+KEEPALIVED(二)

LAMP+LVS+KEEPALIVED(二) (3)修改httpd.conf #如果使用yum安装apache,配置文件存放在 /etc/httpd/conf/httpd.conf #DocumentRoot为 /var/www/html #如果是使用源码方法安装,配置文件存放在 /usr/local/apache2/conf/httpd.conf #DocumentRoot为 /usr/local/apache2/htdocs #在<IfModule></IfModule>添加如

LAMP+LVS+KEEPALIVED(三)

LAMP+LVS+KEEPALIVED(三) (6)访问控制 #Order参数决定优先,放在后面的比前面的优先 #拒绝192.168.137.102访问,其他允许,ip也可以是网段.主机或者域名 Order Allow,Deny Allow From all Deny From 192.168.137.102 #拒绝所有,但允许以.winford.local为后缀客户端访问 Order Deny,Allow Deny From all Allow From .winford.local #修改h

LAMP+LVS+KEEPALIVED(四)

LAMP+LVS+KEEPALIVED(四) #keepalived.conf配置说明,BACKUP需要更改state和priority优先级 #全局配置,主要配置报警邮件地址.snmp监控等等. global_defs { notification_email { [email protected] } notification_email_from [email protected] smtp_server 192.168.10.89 smtp_connect_timeout 30 rout

LAMP+LVS+KEEPALIVED(五)

LAMP+LVS+KEEPALIVED(五) (9)keepalived高可用测试 #主备LB测试,将主LB keepalived停止 #备LB将会接手成为主LB #从80这台主LB停止keepalived,从日志可以看到已将vip释放 #备LB检测到主LB已停止,由备LB切换为主LB #切换后查看ipvsadm状态,因为其他rs节点的httpd停止没有启动,所以只有一台rs #从上面的状态可以看出,请求全部被分配到lvs01.postfix.local(原来的主LB) #从上面的状态可以看出,

LVS+keepalived高可用

LVS+Keepalived负载均衡 LVS简介及工作原理 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统.本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一. LVS 简单工作原理:用户请求LVS VIP,LVS根据转发方式和算法,将请求转发给后端服务器,后端服务器接受到请求,返回给用户.对于用户来说,看不到WEB后端具体的应用. LVS转发方式有三种,分别是NAT.DR.TUN模式,常用算法:RR.LC.

LVS+Keepalived实现高可用负载均衡

用LVS+Keepalived实现高可用负载均衡,简单来说就是由LVS提供负载均衡,keepalived通过对rs进行健康检查.对主备机(director)进行故障自动切换,实现高可用. 1. LVS NAT模式配置准备三台服务器,一台director, 两台real serverdr1: 外网ip 192.168.75.130,内网ip 10.1.1.10 两台real serverrs1: 内网ip 10.1.1.11rs2: 内网ip 10.1.1.12 两台real server的内网网

高性能业务架构解决方案(LVS+Keepalived)

高性能业务架构解决方案(LVS+Keepalived) 一. 概况2 1.1 应用场景2 1.2 LVS/Nginx/HAProxy特点3 二. 相关理论4 2.1 Keepalived工作原理4 2.2 LVS工作原理4 三. 架构拓扑5 四. 资源规划5 五. 实施部署5 5.1初始化配置6 5.2 LVS配置6 5.3 Keepalived部署7 5.3.1 Keepalived的安装8 5.3.2 配置keepalived8 5.4 后端WEB服务器10 5.5 共享存储11 5.6 测

实战 LVS+Keepalived 实现负载均衡和高可用

1.软件介绍 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统,可以实现LINUX平台下的简单负载均衡. LVS负载均衡有4种负载均衡方式 a.DR 模式 b.NAT 模式 c.Tunnel 模式 d.Full NAT 模式 LVS负载均衡8种调度算法 (rr,wrr,lc,wlc,lblc,lblcr,dh,sh) 各个模式的原理在此不再赘述,本文使用DR模式,rr调度算法. Keepalived 是运行在lvs 之上,它的主要功能是

centos 7 LVS+keepalived实现nginx的高可用以及负载均衡

一.准备工作:关闭防火墙,selinux以免对实验结果造成影响,准备虚机,设置IP地址.主机名 hostname:Nginx01 IP:192.168.1.87 Role:Nginx Server hostname:Nginx02 IP: 192.168.1.88 Role:Nginx Server hostname:LVS01 IP: 192.168.1.89 Role:LVS+Keepalived hostname:LVS02 IP: 192.168.1.90 Role:LVS+Keepal