haproxy实验笔记

实验规划:

主机名 IP地址 角色
node01 192.168.112.128 web01
node02 192.168.112.129 web02
node03 192.168.112.130 haproxy

操作系统信息:

[[email protected] ~]# cat /etc/redhat-release

CentOS release 6.6 (Final)

[[email protected] ~]# uname -a

Linux node03 2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

[[email protected] ~]#

安装haproxy:

[[email protected] ~]# yum -y install haproxy nginx php

安装nginx php:

[[email protected] ~]# yum -y install nginx

[[email protected] ~]# yum -y install nginx

node01和node02上nginx配置文件:

user  nginx;

worker_processes  4;

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {

worker_connections  1024;

}

http {

include       mime.types;

default_type  application/octet-stream;

server {

listen       80;

server_name  localhost;

#charset koi8-r;

#access_log  logs/host.access.log  main;

location / {

root   html;

index  index.html index.htm;

}

}

node03上haproxy和nginx配置文件

haproxy:

global

log         127.0.0.1 local2

chroot      /var/lib/haproxy

pidfile     /var/run/haproxy.pid

maxconn     4000

user        haproxy

group       haproxy

daemon

# turn on stats unix socket

stats socket /var/lib/haproxy/stats

defaults

mode                    http

log                     global

option                  httplog

option                  dontlognull

option http-server-close

option forwardfor       except 127.0.0.0/8

option                  redispatch

retries                 3

timeout http-request    10s

timeout queue           1m

timeout connect         10s

timeout client          1m

timeout server          1m

timeout http-keep-alive 10s

timeout check           10s

maxconn                 3000

listen s-monitor *:90

mode http

stats enable

stats refresh 5s

stats realm New0ldName

stats uri /

stats auth user:123456

frontend  main *:80

acl url_static       path_beg       -i /static /images /javascript /stylesheets

acl url_static       path_end       -i .jpg .gif .png .css .js

use_backend static          if url_static

default_backend             app

backend static

balance     roundrobin

server      static 127.0.0.1:8080 check

backend app

balance     roundrobin

server  app1 192.168.112.128:80 check

server  app2 192.168.112.129:80 check

nginx配置文件:

user  nginx;

worker_processes  4;

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {

worker_connections  1024;

}

http {

include       mime.types;

default_type  application/octet-stream;

sendfile        on;

user  nginx;

worker_processes  4;

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {

worker_connections  1024;

}

http {

include       mime.types;

default_type  application/octet-stream;

#log_format  main  ‘$remote_addr - $remote_user [$time_local] "$request" ‘

#                  ‘$status $body_bytes_sent "$http_referer" ‘

#                  ‘"$http_user_agent" "$http_x_forwarded_for"‘;

#access_log  logs/access.log  main;

sendfile        on;

#tcp_nopush     on;

#keepalive_timeout  0;

keepalive_timeout  65;

#gzip  on;

server {

listen       8080;

server_name  localhost;

#charset koi8-r;

#access_log  logs/host.access.log  main;

root    /data/website/app;

location / {

#root   html;

index  index.php index.html index.htm;

}

#error_page  404              /404.html;

# redirect server error pages to the static page /50x.html

#

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

# proxy the PHP scripts to Apache listening on 127.0.0.1:80

#

#location ~ \.php$ {

#    proxy_pass   http://127.0.0.1;

#}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

location ~ \.php$ {

root           html;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

include        fastcgi_params;

}

时间: 2024-10-23 20:01:27

haproxy实验笔记的相关文章

[Ubuntu]操作系统实验笔记

前些日子为了更新Ubuntu到14.04这个LTS版本,连带着把Windows也重新安装了一遍.懒得再安装虚拟机了,尝试一下在Ubuntu14.04这个64位系统里做操作系统实验咯. 1.安装交叉编译器 第一个要解决的问题就是交叉编译器,材料里提供的是x86平台上的交叉编译器.按道理来说64位系统应该是支持32程序的呢.试一下. 先不吐槽说说明文档里面的代码了.首先要解决的是各种权限问题.sudo su似乎不能全部搞定. 经过一堆权限不够的提示后我对安装已经基本没有信心了. 2.安装gxemul

centos救援模式实验笔记

1.  首先在BIOS中把启动选项设置成DVD光驱启动或者USB启动也是可以的 2.  从光盘启动之后再出现的选项中选择"Rescue installed system"然后按回车确认,具体图下图: 3.语言选择,这里我们选择默认的就可以了,因为不是图形化得,所以没有办法支持中文,键盘也选择默认然后按回车,具体如下图: 4.  在SetupNetworking这里我们根据自己的需要来确认是否启用网络,这里我选择的是不启用,如图: 5.  Continue是让虚拟系统(也就是Rescue

Chisel实验笔记(四)

在<Chisel实验笔记(二)>中,通过编写TestBench文件,然后使用Icarus Verilog.GtkWave可以测试,查看相关波形,比较直观,在<Chisel实验笔记(三)>直接对得到C++模拟器进行测试,也可以得到测试结果,实际上对C++模拟器进行测试也可以同时得到vcd文件,从而使用GtkWave查看波形,得到直观的结果.本文就介绍了这个过程. 为了得到对应的vcd文件,需要对<Chisel实验笔记(三)>中的代码做一处修改: 在main方法的margs

SQL*Loader实验笔记【二】

所有SQL*Loader实验笔记 实验案例总结(1-7):     SQL*Loader实验笔记[一] 实验案例总结(8-13):   SQL*Loader实验笔记[二] 实验案例总结(14-19): SQL*Loader实验笔记[三]   8)加载序列 初始化 [email protected]>create table t2 (seqno int,name varchar2(20)); Table created. 控制文件 load data infile * into table t2

Chisel实验笔记(二)

在上一篇<Chisel实验笔记(一)>中,我们的到了对应的verilog文件,本文将采用Icarus Verilog + GtkWave进行仿真验证. 实验平台还是Ubuntu14.04(64位) 1.安装Icarus Verilog-0.9.7 首先输入如下命令: sudo apt-get install gperf sudo apt-get install flex sudo apt-get install bison sudo apt-get install build-essentia

Chisel实验笔记(三)

在<Chisel实验笔记(一)>中我们得到了verilog文件,在<Chisel实验笔记(二)>中我们使用Icarus Verilog.GtkWave对的道德verilog文件进行了仿真测试,实际上,时欧诺个Chisel可以得到对应的C++文件,从而可以直接进行仿真,本文就介绍产生C++文件,进行测试的实验过程. 1.修改Max2.scala文件如下: import Chisel._ class Max2 extends Module { val io = new Bundle {

haproxy 学习笔记

haproxy常用算法: 一.roundrobin,表示简单的轮询,这个不多说,这个是负载均衡基本都具备的: 二.static-rr,表示根据权重,建议关注: 三.leastconn,表示最少连接者先处理,建议关注: 四.source,表示根据请求源IP,建议关注: 五.uri,表示根据请求的URI: 六.url_param,表示根据请求的URl参数'balance url_param' requires an URL parameter name 七.hdr(name),表示根据HTTP请求头

Linux 基础入门第一次实验笔记

第一节.实验介绍 本节主要介绍 Linux 的历史,Linux 与 Windows 的区别等入门知识.如果你已经有过充分的了解,可以跳过本节,直接进入下一个实验. 一.Linux 为何物 Linux 就是一个操作系统,就像你多少已经了解的 Windows(xp,7,8)和 Max OS ,至于操作系统是什么,就不用过多解释了,如果你学习过前面的入门课程,应该会有个基本概念了,这里简单介绍下操作系统在整个计算机系统中的角色. 我们的 Linux 也就是系统调用和内核那两层,当然直观的来看,我们使用

9. nginx服务实验笔记

LNMP安装与配置   Nginx与apache.lighttp性能综合对比,如下图:     一.系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu系统 需要3GB以上硬盘剩余空间 MySQL 5.6及MariaDB 10必须1G以上内存. Linux下区分大小写,输入命令时请注意! 确定yum源正常使用! 二.安装步骤:1.下载并安装LNMP一键安装包: #tar -zxvf lnmp1.2-full.tar.gz #cd lnmp1.2-full #./insta