安装依赖
yum install -y gcc gcc-c++
yum -y install libevent
yum install -y libao*
yum groupinstall "Development Tools" "Server platform Development" -y
yum install -y unzip
安装libfastcommon
- 进入opt目录
cd /opt/
- 下载
wget https://github.com/happyfish100/libfastcommon/archive/refs/heads/master.zip
- 解压包
unzip master.zip
- 进入目录
cd libfastcommon-master/
- 编译
./make.sh
- 如果:make.sh的权限不够,则需要授权(可执行的权利)
chmod 777 make.sh
- 安装
./make.sh install
libfastcommon安装好后会在/usr/lib64目录下生成libfastcommon.so 库文件
- 拷贝库文件
cd /usr/lib64
cp libfastcommon.so /usr/lib
安装Tracker
- 进入opt目录
cd /opt/
- 下载
wget https://github.com/happyfish100/fastdfs/archive/refs/tags/V5.12.tar.gz
- 解压包
tar -zxvf V5.12.tar.gz
- 进入目录
cd fastdfs-5.12/
- 编译
./make.sh
- 安装
./make.sh install
- 安装成功将安装目录下的conf下的文件拷贝到/etc/fdfs/下
cp /opt/fastdfs-5.12/conf/* /etc/fdfs/
- Tracker配置
## 创建目录
mkdir /home/fastdfs
## 配置
vi /etc/fdfs/tracker.conf
##端口号
port=22122
##基础目录(Tracker运行时会向此目录存储storage的管理数据)(基础目录不存在的话,需要自行创建 mkdir /home/fastdfs)
base_path=/home/fastdfs
- Storage配置
vi /etc/fdfs/storage.conf
##配置组名
group_name=group1
##端口
port=23000
##向tracker心跳间隔(秒)
heart_beat_interval=30
##storage基础目录
##目录不存在,需要自行创建
base_path=/home/fastdfs
##store存放文件的位置(store_path)
##可以理解一个磁盘一个path,多个磁盘,多个store_path
##fdfs_storage目录不存在,需要自行创建
##mkdir /home/fastdfs/fdfs_storage
store_path0=/home/fastdfs/fdfs_storage
##如果有多个挂载磁盘则定义多个store_path,如下
##store_path1=..... (M01)
##store_path2=..... (M02)
##配置tracker服务器:IP
tracker_server=172.16.167.20:22122
##如果有多个则配置多个tracker
##tracker_server=172.16.167.x:22122
启动服务
- 启动tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
复制代码
- 启动storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
复制代码
- 查看所有运行的端口:
netstat -ntlp
搭建图片服务器
nginx模块安装(Storage)
- 下载nginx模块
wget --no-check-certificate https://github.com/happyfish100/fastdfs-nginx-module/archive/refs/tags/V1.20.tar.gz
- 解压
tar -zxvf V1.20.tar.gz
- 修改config文件,将文件中的/usr/local/路径改为/usr/
cd /opt/fastdfs-nginx-module-1.20/src/
vi config
ngx_module_incs="/usr/include/fastdfs /usr/include/fastcommon/"
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
- 将fastdfs-nginx-module/src下的mod_fastdfs.conf拷贝至/etc/fdfs下
cp mod_fastdfs.conf /etc/fdfs/
- 修改/etc/fdfs/mod_fastdfs.conf
vi /etc/fdfs/mod_fastdfs.conf
base_path=/home/fastdfs
tracker_server=172.16.167.20:22122
#(n个tracker配置n行)
#tracker_server=172.16.167.x:22122
#url中包含group名称
url_have_group_name=true
#指定文件存储路径(上面配置的store路径)
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安装(Tracker)
-
进入nginx解压的目录下
cd /opt/nginx-1.14.0
- 安装
./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=/opt/fastdfs-nginx-module-1.20/src
注意:上边将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录:mkdir /var/temp/nginx
- 编译
make
- 安装
make install
- 拷贝配置文件
cd /opt/fastdfs-5.12/conf
cp http.conf mime.types /etc/fdfs/
是否覆盖:yes
- 修改nginx配置文件
cd /usr/local/nginx/conf/
vi nginx.conf
server {
listen 80;
server_name 172.16.167.20;
#charset koi8-r;
#access_log logs/host.access.log main;
location /group1/M00 {
root /home/fastdfs/fdfs_storage/data;
ngx_fastdfs_module;
}
}
- 关闭nginx,并启动nginx
pkill -9 nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf