1.安装gcc
yum -y install gcc
2.安装zip、unzip
yum install zip
yum install unzip
用的是centos6.5
error1:
解决办法:上面这个错误可以解决,不会上面错误,可是安装又报新的错误
#vi /etc/yum/pluginconf.d/fastestmirror.conf
[main]
enabled=0 //把1改为0
verbose=0
socket_timeout=3
hostfilepath=/var/cache/yum/timedhosts.txt
maxhostfileage=10
maxthreads=15
#exclude=.gov, facebook
=======================================================================================
修改以下配置文件
#vi /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1 #将plugins的值修改为0
installonly_limit=5
error2:
zip zip-3.0-1.el6_7.1.i686: Cannot find a valid baseurl for re
Setting up Install Process
http://mirrors.aliyun.com/centos/6/os/i386/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
你可以重新备份一下你的yum镜像,我当时没有备份,把原来的yum镜像也丢失了,只能找其它镜像源继续尝试安装。
备份原来的yum镜像:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
安装新的镜像:
// 第一种:下载源配置 CentOS6(我当时用的这个,可以成功)
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos6_base.repo
// 第二种:使用腾讯云的yum源:
https://mirrors.cloud.tencent.com/help/centos.html
// 第三种:清楚缓存
yum clean all
yum makecache
进行测试打包:zip testzip a
进行解压测试:unzip -n a.zip -d ./a
3.安装libevent
yum -y install libevent
4.安装libfastcommon-master
解压:libfastcommon-master.zip
进入解压完成的目录
cd libfastcommon-master
编译并且安装:
./make.sh
./make.sh install
5.安装fast dfs
tar -zxvf FastDFS_v5.08.tar.gz
cd FastDFS
./make.sh
./make.sh install
安装成功后路径下会有两个脚本文件:
ll /etc/init.d/ | grep fdfs
fdfs_trackerd是tracker启动脚本
fdfs_storaged是storage启动脚本
能够在 /etc/fdfs/ 目录下看到默认的配置文件模板:
ll /etc/fdfs/
tarcker.conf.sample是tracker的配置文件模板
storage.conf.sample是storage的配置文件模板
client.conf.sample是客户端的配置文件模板
6.配置并启动tracker服务
FastDFS的tracker和storage在刚刚的安装过程中,都已经被安装了,因此我们安装这两种角色的方式是一样的。不同的是,两种需要不同的配置文件。
我们要启动tracker,就修改刚刚看到的`tarcker.conf`,并且启动fdfs_trackerd脚本即可。
1)首先将模板文件复制:
cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
2)修改复制后的配置文件:
vim /etc/fdfs/tracker.conf
修改内容:存储日志和数据的根目录
级联创建目录:
关闭防火墙自启:
3)启动关闭tracker
启动tracker服务器:/etc/init.d/fdfs_trackerd start
停止tracker服务器:/etc/init.d/fdfs_trackerd stop
不过安装过程中,fdfs已经被设置为系统服务,我们可以采用熟悉的服务启动方式:
service fdfs_trackerd start
查看线程中是否有fdfs_trackerd:
ps -ef | grep fdfs_trackerd
可以设置fdfs_trackerd服务开启自启动:
chkconfig fdfs_trackerd on
7.配置并启动storage服务
1)首先将模板文件复制
cp storage.conf.sample storage.conf
2)修改复制后的配置文件:
vim storage.conf
级联创建目录:
mkdir -p /usr/local/FastDFS/fastdfs_log_data/leyou/storage
ll /usr/local/FastDFS/fastdfs_log_data/leyou
3)启动关闭storage服务
启动storage服务器:/etc/init.d/fdfs_storaged start
停止storage服务器:/etc/init.d/fdfs_storaged stop
不过安装过程中,fdfs已经被设置为系统服务,我们可以采用熟悉的服务启动方式:
service fdfs_storaged start
设置storage服务开机启动:
chkconfig fdfs_storaged on
查看fdfs_storaged进程:
ps -ef | grep fdfs_storaged
8.安装fastdfs-nginx-module
8.1为什么需要用Nginx访问?
FastDFS通过Tracker服务器,将文件放在Storage服务器存储,但是同组存储服务器之间需要进入文件复制,有同步延迟的问题。
假设Tracker服务器将文件上传到了192.168.4.125,上传成功后文件ID已经返回给客户端。此时FastDFS存储集群机制会将这个文件同步到同组存储192.168.4.126,在文件还没有复制完成的情况下,客户端如果用这个文件ID在192.168.4.126上取文件,就会出现文件无法访问的错误。
而fastdfs-nginx-module可以重定向文件连接到文件上传时的源服务器取文件,避免客户端由于复制延迟导致的文件无法访问错误。
8.2修改配置文件
1)解压fastdfs-nginx-module_v1.16.tar.gz
tar -zxvf fastdfs-nginx-module_v1.16.tar.gz
2)进入src目录
cd fastdfs-nginx-module/src/
3)编辑config
// 使用下面的底行模式进行替换
// %任意 s字符串 把/usr/local/替换成/usr/ +一次或多次 g全局
:%s+/usr/local/+/usr/+g
原文件:
修改后:
8.3.配置nginx与FastDFS关联配置文件
看自己的fastdfs-nginx-module的配置在那个路径下,我的路径是第一个红线框。
将fastdfs-nginx-module的配置文件复制到/etc/fdfs/下面
cp ./mod_fastdfs.conf /etc/fdfs/
修改mod_fastdfs.conf配置文件:
复制 FastDFS 的部分配置文件到/etc/fdfs 目录:
9.安装nginx
9.1如果没有安装过nginx
安装nginx的依赖库:
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
解压安装包:
tar -zxvf nginx-1.10.0.tar.gz
配置nginx安装包,并指定fastdfs-nginx-model :
注意:在执行./configure配置nginx参数的时候,需要将fastdfs-nginx-moudle源码作为模块编译进去。
编译并安装 :
make && make install
9.2安装过nginx
1)进入nginx目录:
2) 配置FastDFS 模块
我的nginx-module在这个路径下面,需要配置自己的路径,记得修改
注意修改自己的nginx-module包路径:
我自己的:
./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx --add-module=/usr/local/FastDFS/fastdfs-nginx-module/src
3)编译,注意,这次不要安装(install)
make
4)替换nginx二进制文件:
我的nginx执行文件在这个路径下,这个需要备份自己的二进制文件:
新的二进制文件在这个路径下面:
用新编译的nginx启动文件替代原来的:
cp nginx /usr/local/nginx/sbin/
9.3启动nginx
查看nginx是否启动:
ps -ef | grep nginx