• nginx服务与nfs服务


    一:nginx服务

    二进制安装nginx包

    Image(2)

    作为web服务修改配置文件

    在安装完成后,首先需要修改配置文件

    vim /etc/nginx/nginx.conf

    Image(3)

    我们修改的是默认目录下的index.html文件

    vim /usr/share/nginx/html/index.html

    Image(4)

    开启nginx服务,让配置文件生效。

    systemctl start nginx

    在浏览器中根据本机ip演示效果。

    Image(5)

    注:为了能让nginx能够开机即启动,我们可执行:

    systemctl enable nginx

     

     

    二:nfs服务

    二进制安装nfs(四台机器上均需安装)

    Image(6)

    在根下新建一个/share目录,将1234567890写入该目录下的2.txt文件中。

    Image(7)

    安装完毕后在服务端修改nfs配置文件,目的为了确定哪个文件夹共享,允许哪个ip的客户端能够访问,及用户映射关系等,然后启动rpc(必须先启动,因为他基于通信)和nfs。

    在此配置文件的输入格式为:

    <输出目录> [客户端1] 选项(访问权限,用户映射,其他)例如:/share 192.168.16.0/24(rw,sync,fsid=0)

    Image(8)

    然后查找另外三台机器的ip并记录(这里只展示两个)。

    Image

    Image(1)

    我们在另外三台web上启动和查询共享存储服务端的文件在什么目录下

    Image(9)

    Image(10)

    我们需要先到服务器中修改权限

    Image(11)

    然后再回到web机上进行修改文件,并到其他两台查看是否有变化。

    Image(12)

    Image(13)

    另外一台也是一样的。

    如上图可以看到,在共享存储挂载在三台web的网站根目录下后,在任意一台web上修改的结果,其余两台都可以看到。

     

    三:nginx反向代理三台web

    首先类似于作业一,修改这三台服务器的index.html文件。注意:这里的文件可以自己设定路径也可使用默认的。具体参照作业一)(其他两台同理)

    Image(14)

    在代理服务端修改配置文件

    vim /usr/share/nginx/html/index.html

    Image(16)

    1.实现基于轮询的方式调度三台web的修改。

    Image(15)

    注:这里的ip均为这三台web服务器的ip。

    完成后验证的结果为:

    这三种结果来回更替,这就是所谓的轮询!

    2.实现基于权重的方式调度三台web的修改。

    location下的命令不改变,将http下的命令略作修改

    Image(20)

    在这种方式下,连续的刷新,五次会有三次出现web1.

    3.实现基于hash的方式调用三台web的修改

    Image(21)

    这种方式下,连续的刷新并不会改变所出现的内容,这就是hash,因为短时间连续的访问下,始终访问这台服务器会将数据放在内存中,有会话保持的作用,有助于提高访问效率。

     

    四:nginx反向代理+三台web+nfs共享存储实现集群配置

      关系如图:

    Image(22)

      具体操作:我们根据作业三的反向代理,在此基础上,我们可以把代理服务器看成nfs的共享存储设备,依然是根据作业二中(安装nfs服务器,建立共享目录;然后新建nfs的配置文件;完成后在其他三台服务器中根据ip查找共享存储服务器(即代理服务器)的共享目录并进行挂载;最后设置代理服务器的目录访问权限,这样我们就可以在其他三台服务器中对share目录下的文件进行增改删除的访问。)

      然后由于我们本身就是基于作业三的前提下做的,即反向代理也已经完成了。

      我们的关键问题就是如何将这两个服务所实践的功能给链接起来。

      先来看具体的访问流程:根据代理服务器的ip并加上你想访问的share文件名在浏览器进行查询,代理服务器根据nginx服务进行选择三台web服务器其中的一台进行处理,需要注意的是,由上面我们知道到达web服务器的命令格式形式是http//192.168.0.0/文件名,我们依然是基于web服务器的nginx服务将此命令处理后,根据nfs服务来访问共享存储设备。我们知道实现nfs共享功能的一个关键因素是将存储设备的share文件分别挂载到了这三台web服务器的目录下,所以这里我们只需要将web服务的nginx配置文件下的location改成:{ root /777}也就是设置nfs服务时你所挂载的目录。这样就实现了作业二与作业三的连通。

     

    五:源码安装nginx,并按照作业一描述的那样去测试使用

    1.在官网下载源码的nginx,并将他从物理机拖到虚拟机下的root目录下。

    下载地址为:

    2.在安装之前我们需要将之前安装的nginx卸载。

       yum remove nginx -y

    3.安装nginx的所需要安装包:

    pcre: 用来作地址重写的功能。

    zlib:nginx 的gzip模块,传输数据打包,省流量(但消耗资源)。

    openssl:提供ssl加密协议。

    4.解压所下载的nginx压缩包。(注意解压前需安装gcc编译工具)

      tar xvf /root/nginx-1.10.3.tar.gz

    Image(23)

    5.然后cd到解压的目录文件下,执行配置安装选项,确定安装位置和其他配置。

    ./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module

    6.然后编译安装。

    make && make install

    7.设置开机启动(systemctl enable nginx)

  • 相关阅读:
    Mybatis配置文件
    maven添加镜像与常用配置
    互联网级微服务架构神器Duubo
    Mybatis入门
    SpringMVC文件下载与JSON格式
    SpringMVC拦截器与异常处理
    SpringMVC国际化与文件上传
    cinder
    horizon
    glance
  • 原文地址:https://www.cnblogs.com/zhangge123/p/6597745.html
Copyright © 2020-2023  润新知