Centos7搭建部署Nginx+Haproxy+NFS

Posted 隔搁.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7搭建部署Nginx+Haproxy+NFS相关的知识,希望对你有一定的参考价值。

目录:

1.实验环境

2.Nginx搭建部署

3.Haporxy服务器部署

4.NFS服务器部署

5.实验结束

实验环境:

主机IP主要软件
nginx192.168.121.144nginx-1.8.1.tar.gz
Nginx192.168.121.145nginx-1.8.1.tar.gz
Haproxy192.168.121.146Haporxy
NFS192.168.121.143NFS

所有主机关闭防火墙和修改selinux

1. systemctl stop firewalld.service

2.setenforce 0

 Nginx安装部署:

1.安装依赖包

yum -y install  gcc gcc-c++ autoconf automake libtool make openssl openssl-devel pcre pcre-devel 

2.下载Nginx安装包并解压

cd  /usr/local/src/ 
wget  http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf nginx-1.8.1.tar.gz 

3.进入解压目录并编译

cd  nginx-1.8.1   
./configure \\
--prefix=/usr/local/nginx \\
--with-http_ssl_module \\
--with-http_flv_module \\
--with-http_stub_status_module \\
--with-http_gzip_static_module \\
--with-pcre

4.安装

make && make install 

5. 常用命令

# 进入生成目录
cd  /usr/local/nginx
# 测试
/usr/local/nginx/sbin/nginx -t
# 查看编译模块信息
/usr/local/nginx/sbin/nginx -V
# 启动
/usr/local/nginx/sbin/nginx
# 重新载入配置文件
/usr/local/nginx/sbin/nginx  -s reload
# 重启
/usr/local/nginx/sbin/nginx  -s reopen
# 停止
/usr/local/nginx/sbin/nginx  -s stop

6. 修改html配置文件


vim  /usr/local/nginx/html/index.html
!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body 
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>  #第一台把Welcome to nginx!将改成web1 第二台Nginx改为web2
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p >
 
<p>For online documentation and support please refer to
< a href=" ">nginx.org</ a>.<br/>
Commercial support is available at
< a href="http://nginx.com/">nginx.com</ a>.</p >
 
<p><em>Thank you for using nginx.</em></p >
</body>
</html>

7. 另一台nginx服务器配置安装同上

8.用浏览器访问Nginx主机的IP地址

 Nginx部署完成

 Haporxy服务器部署

1.下载Haporxy安装包

wget  https://src.fedoraproject.org/repo/pkgs/haproxy/haproxy-1.7.8.tar.gz/sha512/e1d65c8a4607c01d52628f36f8c7342096267130a0f949474746f571158e4f795281f78765004c214a0527f74ce180760f9cc910d3650d30026776076d721c0c/haproxy-1.7.8.tar.gz

2.解压缩Haporxy安装包

tar -zxf haproxy-1.7.8.tar.gz

3.编译文件

 cd haproxy-1.7.8/
 make TARGET=linux310 ARCH=x86_64 
 #指定的安装路径
 make install PREFIX=/usr/local/haproxy

4.配置Haporxy

cd /usr/local/haproxy/
vim haporxy.cfg

5.修改配置文件

global
  #日志
  log 127.0.0.1 local0 info
  #最大连接数
  maxconn 10240
  daemon
 
defaults
  #应用全局的日志配置
  log global
  mode http
  #超时配置
  timeout connect 5000
  timeout client 5000
  timeout server 5000
  timeout check 2000
 
listen http_front #haproxy的客户页面
  bind 192.168.121.146:8888         #HAProxy自己的IP地址
  mode http
  option httplog
  stats uri /haproxy
  stats auth admin:123456          #控制面板账号密码 账号:admin 
  stats refresh 5s
  stats enable
 
listen webcluster 
       bind 0.0.0.0:80 #对外提供的虚拟的端口
       option httpchk GET /index.html
       balance roundrobin  # 负载均衡模式轮询
       server inst1 192.168.121.144:80 check inter 2000 fall 3  IP修改成两台Nginx的IP
       server inst2 192.168.121.145:80 check inter 2000 fall 3

6.启动命令

/haproxy-1.7.8/haproxy -f /usr/local/haproxy/haproxy.cfg

7.查看服务是否启动成功

[root@localhost local]# lsof -i:8888
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
haproxy 64047 root    3u  IPv4 154463      0t0  TCP localhost.localdomain:ddi-tcp-1 (LISTEN)
haproxy 64358 root    3u  IPv4 159843      0t0  TCP localhost.localdomain:ddi-tcp-1 (LISTEN)

8.浏览器访问http://192.168.121.146/haporxy控制面板

 9.验证轮询是否成功

 

 NFS服务器部署:

1.安装NFS

yum -y install nfs-utils

 2.查看是否安装成功

rpm -qa nfs-utils

3.编辑添加内容

vim /etc/exports
/data    192.168.1.0/24(rw,async) #把1改成自己的IP网段

4.启动NFS并查看

[root@node1 ~]# systemctl start nfs
[root@node1 ~]# rpcinfo -p 192.168.121.143
   program vers proto   port  service
    100000    4   tcp    111  portmapper
    100000    3   tcp    111  portmapper
    100000    2   tcp    111  portmapper
    100000    4   udp    111  portmapper
    100000    3   udp    111  portmapper
    100000    2   udp    111  portmapper
    100024    1   udp  45439  status
    100024    1   tcp  53923  status
    100005    1   udp  20048  mountd
    100005    1   tcp  20048  mountd
    100005    2   udp  20048  mountd
    100005    2   tcp  20048  mountd
    100005    3   udp  20048  mountd
    100005    3   tcp  20048  mountd
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
    100021    1   udp  56239  nlockmgr
    100021    3   udp  56239  nlockmgr
    100021    4   udp  56239  nlockmgr
    100021    1   tcp  41381  nlockmgr
    100021    3   tcp  41381  nlockmgr
    100021    4   tcp  41381  nlockmgr

5.使用showmount -e localhost查看

[root@node1 ~]# showmount -e localhost
Export list for localhost:
/data 192.168.121.0/24

6.创建/data目录添加文件,更改权限

mkdir /data 
touch /data/1.txt
echo "hello nfs" >> /data/1.txt
chown -R nfsnobody.nfsnobody /data

7. 开启NFS,rpcbind开机自启动

systemctl enable nfs-server.server

systemctl enable rpcbind #nfs,rpcbind开机自动启动

把两台Nginxdan当做客户端

1.检查rpc是否启动

[root@localhost ~]# ss -tnulp | grep 111
udp    UNCONN     0      0         *:111                   *:*                   users:(("rpcbind",pid=724,fd=6))
udp    UNCONN     0      0      [::]:111                [::]:*                   users:(("rpcbind",pid=724,fd=9))
tcp    LISTEN     0      128       *:111                   *:*                   users:(("rpcbind",pid=724,fd=8))
tcp    LISTEN     0      128    [::]:111                [::]:*                   users:(("rpcbind",pid=724,fd=11))

2.使用showmount -e 192.168.121.143查看

[root@localhost ~]# showmount -e 192.168.121.143
Export list for 192.168.121.143:
/data 192.168.121.0/24

3.挂载至本地/mnt目录

[root@localhost ~]# mount -t nfs 192.168.121.143:/data /mnt
[root@localhost ~]# ls /mnt/
1.txt
[root@localhost ~]# echo "2222" >> /mnt/1.txt   #1.txt可读写,nfs挂载完成。

实验结束

以上是关于Centos7搭建部署Nginx+Haproxy+NFS的主要内容,如果未能解决你的问题,请参考以下文章

centos7(Linux)部署nginx+HAProxy+nfs

CentOS7上部署Haproxy+Nginx实现Web群集

CentOS 7搭建Haproxy+Nginx+Firewalld+DNS负载均衡

Haproxy配合Nginx搭建Web集群部署实验

Centos7搭建haproxy+nginx+nfs

centos 7 部署haproxy+nginx+nfs服务