项目整体环境搭建
    1.安装gcc环境(编译c环境)
        yum install gcc-c++
    2.安装libebvent环境(fastdfs环境)
        yum -y install libevent
    3.安装perl环境(编译c文件环境)
        ./
    4.安装libfastcommon环境(fastdfs环境)
        将提供的压缩包全部上传,首先解压libfastcommonV1.0.7.tar
        tar -zxvf libfastcommonV1.0.7.tar.gz
        cd libfastcommon-1.0.7/
        ./make.sh
        ./make.sh install
        ibfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,由于FastDFS程序引用usr/lib目录所以需要将/usr/lib64下的库文件拷贝至/usr/lib下
        cp /usr/lib64/libfastcommon.so /usr/lib
tracker编译安装
    1.解压FastDFS
        tar -zxf FastDFS_v5.05.tar.gz
    2.编译FastDFS
        cd FastDFS
        ./make.sh
        ./make.sh install
    3.安装成功后,将FastDFS下的conf文件下的所有文件复制到/etc/fdfs/下
        cp -r conf/* /etc/fdfs/
    4.配置tracker
        cd /etc/fdfs/
        vi tracker.conf
        将base_path=/home/yuqing/FastDFS改为base_path=/home/fastdfs(可以通过命令符去查找,命令符:/base_path)
        保存退出
    5.创建fastdfs目录
        mkdir /home/fastdfs
    6.启动tracker
        /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart(可能需要两遍,不清楚原因)
    7.设置开机自启
        vi /etc/rc.d/rc.local
        将命令添加到文件里面:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
    
storage编译安装(由于单机安装,所以省略编译和环境安装,如果存储文件的跟客户端不在同一台机器则需要按照安装tracker一样的环境步骤安装)
    1.配置storage
        cd /etc/fdfs/
        vi storage.conf
        修改以下配置
            group_name=group1
            base_path=/home/yuqing/FastDFS改为:base_path=/home/fastdfs
            store_path0=/home/yuqing/FastDFS改为:store_path0=/home/fastdfs/fdfs_storage
            #如果有多个挂载磁盘则定义多个store_path,如下
            #store_path1=.....
            #store_path2=......
            tracker_server=192.168.101.3:22122   #配置tracker服务器:IP
            #如果有多个则配置多个tracker
            tracker_server=192.168.101.4:22122
    2.创建数据存储目录
        mkdir /home/fastdfs/fdfs_storage
    3.启动storage
        /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart(可能需要两遍,不清楚原因)
    4.设置开机自启
        vi /etc/rc.d/rc.local
        将命令添加到文件里面:/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
整体完成,可以通过内部上传测试,看返回结果
    1.修改上传客户端配置
        vi /etc/fdfs/client.conf
        修改以下配置
            base_path=/home/fastdfs
            tracker_server=你的ip:22122
    2.上传命令
        命令使用格式:
        /usr/bin/fdfs_test 客户端配置文件地址  upload  上传文件
        如:/usr/bin/fdfs_test /etc/fdfs/client.conf upload /root/FastDFS/conf/anti-steal.jpg
由于没有和nginx整合,所以无法使用http下载,也无法查看

配置fastdfs-nginx-module
    1.解压fastdfs-nginx-module
        tar -zxf fastdfs-nginx-module_v1.16.tar.gz
    2.配置fastdfs-nginx-module
        cd fastdfs-nginx-module/src
        vi config
        将文件中的/usr/local/路径改为/usr/(两个都改)
        将mod_fastdfs.conf复制到/etc/fdfs/下
            cp mod_fastdfs.conf /etc/fdfs/
        修改etc/fdfs/下的mod_fastdfs.conf
            vi mod_fastdfs.conf
            修改mod_FastDFS.conf的以下内容:
            base_path=/home/fastdfs
            tracker_server=你的ip:22122
            #tracker_server=你的ip:22122(多个tracker配置多行)
            url_have_group_name=true        #url中包含group名称
            store_path0=/home/fastdfs/fdfs_storage   #指定文件存储路径
        将libfdfsclient.so拷贝至/usr/lib下
        cp /usr/lib64/libfdfsclient.so /usr/lib/
        
创建nginx/client目录
    mkdir -p /var/temp/nginx/client
nginx整合
    storage上安装nginx
        1.解压nginx
            tar -zxf nginx-1.8.0.tar.gz
        2.安装nginx环境
            gcc环境(编译环境,上面已经安装):yum install gcc-c++
            pcre环境(perl库,nginx的http模块使用pcre来解析正则表达式):yum install -y pcre pcre-devel
            zlib环境(提供多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip):yum install -y zlib zlib-devel
            openssl环境(算法和安全,https使用):yum install -y openssl openssl-devel
        3.编译nginx
            cd /root/nginx-1.8.1
            ./configure \
            --prefix=/usr/local/nginx \
            --pid-path=/var/run/nginx/nginx.pid \
            --lock-path=/var/lock/nginx.lock \
            --error-log-path=/var/log/nginx/error.log \
            --http-log-path=/var/log/nginx/access.log \
            --with-http_gzip_static_module \
            --http-client-body-temp-path=/var/temp/nginx/client \
            --http-proxy-temp-path=/var/temp/nginx/proxy \
            --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
            --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
            --http-scgi-temp-path=/var/temp/nginx/scgi \
            --add-module=/root/fastdfs-nginx-module/src(fastdfs专有)
            make
            make install
        4.创建编译链接
            ln -s /usr/include/fast* /usr/local/include/
            原因:编译安装nginx的fastdfs插件的头文件没有找到,由于编译nginx时候系统会到/usr/local/include,而编译安装fastdfs-nginx-module时则默认保存在了/usr/include目录。
            修复:ln -s /usr/include/fast* /usr/local/include/
        5.修改nginx配置
            编译完成后,会自动将nginx安装到/usr/local/nginx
            cd /usr/local/nginx/conf
            vi nginx.conf
            添加一个server
                server {
                    listen       80;
                    server_name  本机;

                    location /group1/M00/ {
                       ngx_fastdfs_module;
                    }
                    error_page   500 502 503 504  /50x.html;
                    location = /50x.html {
                        root   html;
                    }
                }
            配置说明:
                说明:
                    server_name指定本机ip
                    location /group1/M00/:group1为nginx 服务FastDFS的分组名称,M00是FastDFS自动生成编号,对应store_path0=/home/FastDFS/fdfs_storage,如果FastDFS定义store_path1,这里就是M01
            
        
        进入到 cd /usr/local/nginx/sbin
        6.启动nginx
            cd /usr/local/nginx/sbin/
            ./nginx
        7.查看进程: ps aux|grep nginx
        8.关闭nginx
        ./nginx -s stop
        9.刷新配置
         ./nginx -s reload
            

说明:
    如果重启服务器会发现无法启动nginx,报错找不到某个文件
    解决:mkdir /var/run/nginx(偷懒方法,不治本,下次重启依然会报错)
    然后再运行nginx
           

posted on 2018-03-19 11:34  奋斗的小菜鸟+1  阅读(337)  评论(0编辑  收藏  举报