centos7.4安装fastdfs,nginx

实测有效可用,成功在阿里云跑起来!!!!!

跟着我的步骤一步一步来。绝对成功!!!!

首先说明:

libfastcommon  V1.0.7

FastDFS V5.05

nginx V1.8

1.下载安装 libfastcommon 

wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz

解压 libfastcommon,命令:

tar -zxvf V1.0.7.tar.gz

编译,进入libfastcommon-1.0.7目录,命令:

cd libfastcommon-1.0.7
./make.sh

// 安装,命令:
./make.sh install

2.下载安装 FastDFS.

wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz

解压 FastDFS ,命令:

tar -zxvf V5.05.tar.gz

编译,进入fastfds-5.05目录,命令:

cd fastdfs-5.05
./make.sh

安装,命令:
./make.sh install

二、配置 Tracker 服务

上述安装成功后,在/etc/目录下会有一个fdfs的目录,进入它。会看到三个.sample后缀的文件,这是作者给我们的示例文件,
我们需要把其中的tracker.conf.sample文件改为tracker.conf配置文件并修改它。看命令:

cp tracker.conf.sample tracker.conf
vim tracker.conf

打开tracker.conf文件,只需要找到你只需要该这两个参数就可以了。

# the base path to store data and log files
base_path=/data/fastdfs
# HTTP port on this tracker server
http.server_port=80

/data/fastdfs目录是我自定义的一个fastdfs存储数据的主目录。port=22122这个端口参数不建议修改,除非你已经占用它了。
修改完成保存并退出 vim ,这时候我们可以使用

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

来启动 Tracker服务,但是这个命令不够优雅,怎么做呢?使用ln -s 建立软链接:

ln -s /usr/bin/fdfs_trackerd /usr/local/bin
ln -s /usr/bin/stop.sh /usr/local/bin
ln -s /usr/bin/restart.sh /usr/local/bin

 这时候我们就可以使用service fdfs_trackerd start来优雅地启动 Tracker服务了,你也可以启动过服务看一下端口是否在监听:

// 启动服务:
service fdfs_trackerd start
// 查看监听:
netstat -unltp|grep fdfs

看到22122端口正常被监听后,这时候Tracker服务就是安装成功啦!

三、配置 Storage 服务

进入/etc/fdfs的目录操作,首先进入它。会看到三个.sample后缀的文件,我们需要把其中的storage.conf.sample文件改为storage.conf配置文件并修改它。还看命令:

cp storage.conf.sample storage.conf
vim storage.conf

打开storage.conf文件后,找到这两个参数进行修改,(如果你用的是云服务器的话这里ip是服务器外网IP(坑)):

# the base path to store data and log files
base_path=/data/fastdfs/storage
# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
store_path0=/data/fastdfs/storage
#store_path1=/home/yuqing/fastdfs2
# tracker_server can ocur more than once, and tracker_server format is
#  "host:port", host can be hostname or ip address
# 
tracker_server=192.168.198.129:22122

记得在/data/fastdfs目录下要创建storage文件夹,没有就创建一个,不然会报错的,日志以及文件都会在这个下面,启动时候会自动生成许多文件夹。stroage的port=23000这个端口参数也不建议修改,默认就好,除非你已经占用它了。
修改完成保存并退出 vim ,这时候我们依然想优雅地启动 Storage服务,带目录的命令不够优雅,这里还是使用ln -s建立软链接:

ln -s /usr/bin/fdfs_storaged /usr/local/bin
// 启动服务
service fdfs_storaged start

可以查看一下监听: 

netstat -unltp|grep fdfs

为了之后的测试,需要再配置下client.conf

cd /etc/fdfs
cp client.conf.sample client.conf
vim client.conf

 

PS:这里提醒一下,如果是在云服务器上操作的话需要配置云服务的安全组策略,放开22122和23000端口,然后还有服务器的防火墙(iptables)要设置一下,如下

vi /etc/sysconfig/iptables

 根据需求添加放行端口就行了,记得重启防火墙(这里卡住我了,一直以为是安全组策略,忘记了iptables也需要设置)

# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22122 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 23000 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

 我们可以监视一下他俩是不是在通信

/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

====================================================================================================                                                                                               简陋的分割线====================================================================================================

Fast配置Nginx模块

1.下载 Nginx 和 fastdfs-nginx-module 

  1. wget https://nginx.org/download/nginx-1.8.0.tar.gz

  2. wget https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.20.tar.gz

先解压两个压缩包, 

tar -zxvf nginx-1.8.0.tar.gz
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz

进入fastdfs-nginx-module,修改config

# config文件修改
# 修改如下配置,我这里原来是
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"

# 改成
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
# 这个是很重要的,不然在nginx编译的时候会报错的,我看网上很多在安装nginx的fastdfs的插件报错,都是# 这个原因,而不是版本不匹配。

修改mod_fastdfs.conf 

cd /software/fastdfs-nginx-module-master/src/
vim mod_fastdfs.conf

# FastDFS tracker_server can ocur more than once, and tracker_server format is
#  "host:port", host can be hostname or ip address
# valid only when load_fdfs_parameters_from_tracker is true
tracker_server=192.168.198.129:22122
# if the url / uri including the group name
# set to false when uri like /M00/00/00/xxx
# set to true when uri like ${group_name}/M00/00/00/xxx, such as group1/M00/xxx
# default value is false
url_have_group_name = true
# store_path#, based 0, if store_path0 not exists, it's value is base_path
# the paths must be exist
# must same as storage.conf
store_path0=/data/fastdfs/storage
#store_path1=/home/yuqing/fastdfs1

接着我们需要把fastdfs-5.05下面的配置中还没有存在/etc/fdfs中的拷贝进去

cd /software/fastdfs-5.05/conf
cp anti-steal.jpg http.conf mime.types /etc/fdfs/

接下来安装nginx

# 这里fastdfs-nginx-module-master/src/ 的路径要写全不能用../这样的相对目录来表示
./configure --add-module=/usr/local/fastdfs-nginx-module-master/src/ 

# 编译安装
make

make install

这里安装的话默认是安装到/usr/local/nginx的,进入到nginx的目录,配置conf

cd /usr/local/nginx/conf
vi nginx.conf




#-----nginx.conf
# server节点下新增location块
location /group1/M00 {
    root /data/fastdfs/storage/data;
    ngx_fastdfs_module;
}

 配置文件服务软链接,以便于nginx能够转发到对应的文件上

ln -s /data/fastdfs/storage/data /data/fastdfs/storage/data/M00

启动nginx,会打印出fastdfs模块的pid

cd /usr/local/nginx/sbin/
./nginx


## 效果如下
[root@izbaa1sflaelstz sbin]# ./nginx
ngx_http_fastdfs_set pid=29714
[root@izbaa1sflaelstz sbin]#

测试:

通过filezilla 上传文件到阿里云(这里的文件端口是22,ftp才是21端口,别搞错了),

这是要上传到额图片,放到/usr/local/test目录下

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /usr/local/test/zq2.jpg

可以看到控制台打印了文件保存的地址:

centos7.4安装fastdfs,nginx_第1张图片

好,直接复制url,访问:

centos7.4安装fastdfs,nginx_第2张图片

好的,成功了。

 

 

 

 

你可能感兴趣的:(fastdfs)