FASTDFS运用记录 结合fastdht
FASTDFS使用记录 结合fastdht
一.安装libevent
写道
二、安装 fastdfs
写道
wget http://fastdfs.googlecode.com/files/FastDFS_v3.05.tar.gz
cp FastDFS_v3.05.tar.gz /usr/local/src/
tar zxvf FastDFS_v3.05.tar.gz
cd FastDFS
./make.sh C_INCLUDE_PATH=/usr/local/libevent/include LIBRARY_PATH=/usr/local/libevent/lib
./make.sh install
三、安装nginx与nginx的fastdfs模块
cd /usr/local/src
wget http://www.nginx.org/download/nginx-1.0.5.tar.gz
svn export http://fastdfs-nginx-module.googlecode.com/svn/trunk/ fastdfs-nginx-module-read-only
tar zxvf nginx-1.0.5.tar.gz
cd nginx-1.0.5
./configure --prefix=/usr/local/nginx --add-module=/usr/local/src/fastdfs-nginx-module-read-only/src
make
make install
# 拷贝mod_fastdfs.conf 到/etc/fdfs/
cp /usr/local/src/fastdfs-nginx-module-read-only/src/mod_fastdfs.conf /etc/fdfs/
vim /usr/local/nginx/conf/nginx.conf
# 增加一下
修改配置文件
每次改变client配置文件,必须重启php加载
FastDHT 安装步骤完善:以上安装完可以使用fastdfs了,如果需要去重服务的话,需要安装fastdht
一、安装fastdht需要安装libevent,如果已经安装了就不用在安装了。
二、安装bdb(Berkley DB)
在安装bdb之前,需要做如下2个步骤,否则安装bdb会出问题,这是我调试了很久在找的的问题原因
wget http://download.oracle.com/berkeley-db/db-4.7.25.tar.gz
tar xzf db-4.7.25.tar.gz
cd db-4.7.25/build_unix
../dist/configure --prefix=/usr
make && make install
三、安装fastdht
wget http://fastdht.googlecode.com/files/FastDHT_v1.18.tar.gz
tar xzf FastDHT_v1.18.tar.gz
cd FastDHT
./make.clean
./make.sh
./make.sh install
(确保存在 fdhtd.conf fdht_servers.conf fdht_client.conf 在服务器上)
四. 修改配置文件
创建目录: mkdir /etc/fdhtd (目录权限 : 755 所属者: root)
cp fdhtd.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
cp fdht_servers.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
cp fdht_client.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
vi /etc/fdhtd/fdhtd.conf
port=11411
bash_path=<自定义目录 例如: /fdht>
cache_size = 32MB
#include /etc/fdhtd/fdht_servers.conf -> (本行前有#表示打开,如果想关闭此选项,则应该为##开头)
vi /etc/fdhtd/fdht_server.conf
group_count = 2 (数字可自定义)
group0 = <ipaddress>:<port>
group0 = <ipaddress>:<port>
group1 = <ipaddress>:<port>
group1 = <ipaddress>:<port>
依次类推
vi /etc/fdhtd/fdht_client.conf
keep_alive=1 --> (本选项关联 storaged.conf文件)
bash_path=<自定义目录 例如: /fdht>
# include /etc/fdhtd/fdht_servers.conf
配置storaged.conf文件
vi storaged.conf (默认位置: /etc/fdfs/storaged.conf)
line 189: check_file_duplicate=1
本配置项解释: 是否检测上传文件已经存在。如果已经存在,则不存在文件内容,建立一个索引链接以节省磁盘空间
line 193: key_namespace=FastDFS
本配置项解释: 当上个参数设定为1时 , 在FastDHT中的命名空间
line 197: keep_alive=1
本配置项解释: 长连接配置选项,如果为0则为短连接 1为长连接
line 204: # include /etc/fdhtd/fdht_servers.conf
本配置项解释: 可以通过 #include filename 方式来加载 FastDHT servers 的配置
至此安装完成了。
五启动FastDHT
使用命令 netstat -an | grep 11411来查看端口是否启动
如果还有什么问题,可以在这里给我留言!
一.安装libevent
写道
引用
wget http://cloud.github.com/downloads/libevent/libevent/libevent-1.4.14b-stable.tar.gz
cp libevent-1.4.14b-stable.tar.gz /usr/local/src/
tar zxvf libevent-1.4.14b-stable.tar.gz
cd libevent-1.4.14b-stable
./configure --prefix=/usr/local/libevent
make
make install
cp libevent-1.4.14b-stable.tar.gz /usr/local/src/
tar zxvf libevent-1.4.14b-stable.tar.gz
cd libevent-1.4.14b-stable
./configure --prefix=/usr/local/libevent
make
make install
二、安装 fastdfs
写道
引用
wget http://fastdfs.googlecode.com/files/FastDFS_v3.05.tar.gz
cp FastDFS_v3.05.tar.gz /usr/local/src/
tar zxvf FastDFS_v3.05.tar.gz
cd FastDFS
./make.sh C_INCLUDE_PATH=/usr/local/libevent/include LIBRARY_PATH=/usr/local/libevent/lib
./make.sh install
三、安装nginx与nginx的fastdfs模块
引用
cd /usr/local/src
wget http://www.nginx.org/download/nginx-1.0.5.tar.gz
svn export http://fastdfs-nginx-module.googlecode.com/svn/trunk/ fastdfs-nginx-module-read-only
tar zxvf nginx-1.0.5.tar.gz
cd nginx-1.0.5
./configure --prefix=/usr/local/nginx --add-module=/usr/local/src/fastdfs-nginx-module-read-only/src
make
make install
# 拷贝mod_fastdfs.conf 到/etc/fdfs/
cp /usr/local/src/fastdfs-nginx-module-read-only/src/mod_fastdfs.conf /etc/fdfs/
vim /usr/local/nginx/conf/nginx.conf
# 增加一下
location /M00 { alias /home/eric/data; #修改为自己的storage存储目录 ngx_fastdfs_module; }四、安装php扩展
引用
cd /usr/local/src/FastDFS/php_client/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
修改配置文件
vim /usr/local/php/etc/php.ini添加:
extension = fastdfs_client.so fastdfs_client.tracker_group_count = 1 fastdfs_client.tracker_group0 = /etc/fdfs/client.conf
每次改变client配置文件,必须重启php加载
FastDHT 安装步骤完善:以上安装完可以使用fastdfs了,如果需要去重服务的话,需要安装fastdht
一、安装fastdht需要安装libevent,如果已经安装了就不用在安装了。
二、安装bdb(Berkley DB)
在安装bdb之前,需要做如下2个步骤,否则安装bdb会出问题,这是我调试了很久在找的的问题原因
ln -s /usr/local/libevent/include/* /usr/include/ ln -s /usr/local/libevent/lib/* /usr/lib64/
引用
wget http://download.oracle.com/berkeley-db/db-4.7.25.tar.gz
tar xzf db-4.7.25.tar.gz
cd db-4.7.25/build_unix
../dist/configure --prefix=/usr
make && make install
三、安装fastdht
引用
wget http://fastdht.googlecode.com/files/FastDHT_v1.18.tar.gz
tar xzf FastDHT_v1.18.tar.gz
cd FastDHT
./make.clean
./make.sh
./make.sh install
(确保存在 fdhtd.conf fdht_servers.conf fdht_client.conf 在服务器上)
四. 修改配置文件
创建目录: mkdir /etc/fdhtd (目录权限 : 755 所属者: root)
cp fdhtd.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
cp fdht_servers.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
cp fdht_client.conf /etc/fdhtd/ (文件权限 : 644 所属者: root)
vi /etc/fdhtd/fdhtd.conf
port=11411
bash_path=<自定义目录 例如: /fdht>
cache_size = 32MB
#include /etc/fdhtd/fdht_servers.conf -> (本行前有#表示打开,如果想关闭此选项,则应该为##开头)
vi /etc/fdhtd/fdht_server.conf
group_count = 2 (数字可自定义)
group0 = <ipaddress>:<port>
group0 = <ipaddress>:<port>
group1 = <ipaddress>:<port>
group1 = <ipaddress>:<port>
依次类推
vi /etc/fdhtd/fdht_client.conf
keep_alive=1 --> (本选项关联 storaged.conf文件)
bash_path=<自定义目录 例如: /fdht>
# include /etc/fdhtd/fdht_servers.conf
配置storaged.conf文件
vi storaged.conf (默认位置: /etc/fdfs/storaged.conf)
line 189: check_file_duplicate=1
本配置项解释: 是否检测上传文件已经存在。如果已经存在,则不存在文件内容,建立一个索引链接以节省磁盘空间
line 193: key_namespace=FastDFS
本配置项解释: 当上个参数设定为1时 , 在FastDHT中的命名空间
line 197: keep_alive=1
本配置项解释: 长连接配置选项,如果为0则为短连接 1为长连接
line 204: # include /etc/fdhtd/fdht_servers.conf
本配置项解释: 可以通过 #include filename 方式来加载 FastDHT servers 的配置
至此安装完成了。
五启动FastDHT
引用
/usr/local/bin/fdhtd /etc/fdhtd/fdhtd.conf
使用命令 netstat -an | grep 11411来查看端口是否启动
如果还有什么问题,可以在这里给我留言!