在余大的GitHub上下载好fastdfs-nginx-module上传到我们的CentOS中就可以开始安装了,在安装nginx之前需要先安装一些模块依赖的lib库,直接贴出安装代码:
yum -y install pcre pcre-devel
yum -y install zlib zlib-devel
yum -y install openssl openssl-devel
依次装好这些依赖之后就可以开始安装nginx了。
storage nginx
首先是为storage服务器安装nginx,首先将nginx和fastdfs-nginx-module的安装包上传至CentOS:
首先分别进行解压:
tar -zxvf nginx-1.8.1.tar.gz
unzip fastdfs-nginx-module-master.zip
解压成功后就可以编译安装nginx了,进入nginx目录并输入以下命令进行配置:
./configure --prefix=/usr/local/nginx --add-module=/usr/local/fastdfs-nginx-module-master/src
配置成功后会看到如下信息:
紧接着就可以进行编译安装了,依次执行以下命令:
make
make install
安装完成后,我们在我们指定的目录/usr/local/nginx中就可以看到nginx的安装目录了:
接下来要修改一下nginx的配置文件,进入conf目录并打开nginx.conf文件加入以下配置:
listen 9999;
location ~/group1/M00 {
root /opt/fastdfs_storage_data/data;
ngx_fastdfs_module;
}
然后进入FastDFS的安装目录/usr/local/fastdfs-5.05目录下的conf目录,将http.conf和mime.types拷贝到/etc/fdfs目录下:
cp -r /usr/local/fastdfs-5.05/conf/http.conf /etc/fdfs/ cp -r /usr/local/fastdfs-5.05/conf/mime.types /etc/fdfs/
接下来还需要把fastdfs-nginx-module安装目录中src目录下的mod_fastdfs.conf也拷贝到/etc/fdfs目录下:
cp -r /usr/local/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/
看一下/etc/fdfs目录下当前所有的配置文件:
没什么问题,接下来就需要编辑刚拷贝的这个mod_fastdfs.conf文件了,打开mod_fastdfs.conf并按顺序依次编译以下内容:
- base_path=/opt/fastdfs_storage #保存日志目录
- tracker_server=192.168.111.11:22122 #tracker服务器的IP地址以及端口号
- storage_server_port=23000 #storage服务器的端口号
- url_have_group_name = true #文件 url 中是否有 group 名
- store_path0=/opt/fastdfs_storage_data # 存储路径
- group_count = 3 #设置组的个数,事实上这次只使用了group1
设置了group_count = 3,接下来就需要在文件尾部追加这3个group setting:
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/opt/fastdfs_storage_data
[group2]
group_name=group2
storage_server_port=23000
store_path_count=1
store_path0=/opt/fastdfs_storage_data
[group3]group_name=group3
storage_server_port=23000
store_path_count=1
store_path0=/opt/fastdfs_storage_data
接下来还需要建立 M00 至存储目录的符号连接:
ln -s /opt/fastdfs_storage_data/data /opt/fastdfs_storage_data/data/M00
最后启动nginx:
/usr/local/nginx/sbin/nginx
显示如下信息说明nginx已启动成功:
通过浏览器也可以看到nginx的主页:
storage服务器的nginx就已经安装完毕,接下来看一下tracker服务器的nginx安装
tracker nginx
同理,再装一个nginx,目录命名为nginx2,安装路径依旧放在/usr/local下,由于和之前一样,此处就不再做详细解释:
mkdir nginx2
cd nginx-1.8.1/
./configure --prefix=/usr/local/nginx2 --add-module=/usr/local/fastdfs-nginx-module-master/src make make install
接下来依然是修改nginx2的配置文件,进入conf目录并打开nginx.conf文件加入以下配置,storage的nginx无需修改listen端口,即默认的80端口,并将upstream指向tracker的nginx地址:
upstream fdfs_group1 {
server 127.0.0.1:9999;
}
location /group1/M00 {
proxy_pass http://fdfs_group1;
}
接下来启动nginx2:
/usr/local/nginx2/sbin/nginx
此时访问nginx2的主页,由于没有修改端口,直接访问ip地址即可:
最后一步就是需要修改/etc/fdfs目录下的client.conf文件,打开该文件并加入以下配置:
base_path=/data/fastdfs_storage #日志存放路径
tracker_server=192.168.116.145:22122 #tracker 服务器 IP 地址和端口号http.tracker_server_port=6666 # tracker 服务器的 http 端口号,必须和tracker的设置对应起来
至此关于fastdfs就已经全部配置完毕了,再一次进行测试看看是否能正常上传文件并通过http访问文件。
HTTP测试
再给/opt目录下上传一张暴雪爸爸的LOGO图:
通过客户端命令测试上传:
如上图,依旧上传成功,接下来的关键就是通过HTTP测试文件访问,打开浏览器输入ip地址+文件名看看是否能正常访问该图片:
一切正常~ 至此关于FastDFS在CentOS 7下的部署测试就已经全部完成了。