免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 19552 | 回复: 18

[FastDFS] FastDHT安装步骤完善 [复制链接]

论坛徽章:
0
发表于 2012-02-16 16:41 |显示全部楼层
本帖最后由 happyfishfans 于 2012-03-09 11:56 编辑

FastDHT 安装步骤完善

需要的依赖库文件: libevent-1.4.so.2 , libdb-4.7.so
依赖库文件存在于以下依赖包:libevent-1.4.14-stable  Berkley DB-4.7.25

下载链接: libevent-1.4.14-stable : http://www.monkey.org/~provos/libevent-1.4.14-stable.tar.gz
               db-4.7.25.tar.gz         : http://download.oracle.com/berkeley-db/db-4.7.25.tar.gz
               FastDHT V1.18.tar.gz : http://fastdht.googlecode.com/files/FastDHT_v1.18.tar.gz


一. 安装步骤:
(请按照顺序进行安装)

1. install  libevent-1.4.14-stable.tar.gz

tar xzf libevent-1.4.14-stable.tar.gz
cd libevent-1.4.14-stable
./configure --prefix=/usr
make && make install

2. install Berkley DB-4.7.25

tar xzf db-4.7.25.tar.gz
cd db-4.7.25/build_unix
../dist/configure --prefix=/usr
make && make install

3. install FastDHT V1.18

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  的配置

三. 判断排错

1.  fdht文件应该存在于 /etc/fdhtd/文件夹下
2.  /etc/fdfs/storaged.conf && /etc/fdfs/fdhtd.conf 2个配置文件中应开启如下配置项
# include /etc/fdhtd/fdht_servers.conf
3.  cache_size 应 > 32M及以上
4.  ulimit -c unlimited 即可

四. 启动FastDHT

/usr/local/bin/fdhtd /etc/fdhtd/fdhtd.conf
若出现段错误,则按照如下步骤排查,若没有出现任何报错则直接使用命令 netstat -an | grep 11411来查看端口是否启动

段错误排错步骤:
1. ldd /usr/local/bin/fdhtd 查看是否所有动态链接库全链接完毕
ldd的结果应包含如下2条:
(X86_64)
libevent-1.4.so.2 => /lib64/libevent-1.4.so.2 (0x00000000.....)
libdb-4.7.so => /lib64/tls/libdb-4.7.so (0x00000000....)
(i386)
libevent-1.4.so.2 => /lib/libevent-1.4.so.2 (0x00000000.....)
libdb-4.7.so => /lib/tls/libdb-4.7.so (0x00000000....)

2. 若ldd的结果为 libdb-4.2.so => /lib64/tls/libdb-4.2.so (0x00000000....)
则应该进行如下替换操作:
find / -name libdb-4.7.so
cp {$path}/libdb-4.7.so  /lib64/tls/libdb-4.2.so

3. 若结果没有错误,则检查对应安装软件版本
libevent-1.4.8以上版本
Berkeley-db-4.7.25以上版本
FastDHT V1.0以上版本

即可启动完成

若转载 请保持原地址连接 原作者姓名 happyfishfans 谢谢

论坛徽章:
0
发表于 2012-03-07 20:05 |显示全部楼层
我是严格按照上面的步骤进行的安装配置,出现两个问题:
Q1.  在执行 3. install FastDHT V1.18时,执行
./make.clean提示没有make.clean,我ls了一下,确实没有这个文件

Q2. 上面的现象被我直接忽视了,继续往下执行,结果发现最后执行/usr/local/bin/fdhtd /etc/fdhtd/fdhtd.conf启动FastDHT时,系统提示无法找到 /usr/local/bin/fdhtd

请问这个怎么回事??????

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
发表于 2012-03-07 22:35 |显示全部楼层
在freebsd下编译,有些问题,db4的头文件和库路径对不上,需要手工改。依赖库都是通过pkg_add安装的。建议使用autoconf/automake完成不同平台的识别。

论坛徽章:
0
发表于 2012-03-09 11:53 |显示全部楼层
@2楼

可以在全局 安装好fastDHT之后,  执行如下命令查看 fdhtd的文件位置:
find / -name "fdhtd"
并将执行文件放置到 任意位置,也就是在文档中所说的 /usr/local/bin/fdhtd
启动的时候,执行 /usr/local/bin/fdhtd /etc/fdhtd/fdhtd.conf

注意点:
1. fdhtd要有执行权限
2. 启动的格式是:  执行文件 【空格】 配置文件 的方式。 例如:  /usr/local/bin/fdhtd /etc/fdhtd/fdhtd.conf

make clean这个问题  笔误  我也查询了 没有发现该文件

论坛徽章:
0
发表于 2012-03-14 08:31 |显示全部楼层
回复 4# happyfishfans



OK ,我继续研究一下,谢谢~


   

论坛徽章:
0
发表于 2012-03-19 20:59 |显示全部楼层
继续请教几个问题
今天又认真安装了一次,仔细核对happyfishfans的过程,发现几点不同:

1. 在“二、修改配置文件”中,
    原文
  “vi /etc/fdhtd/fdht_client.conf
    bash_path=<自定义目录 例如: /fdht>”
   实际上应该是base_path=/fdht,而且/fdht这个目录或文件必须存在

   原文“vi /etc/fdhtd/fdht_client.conf ”中也一样,不是bash_path而是base_path

2. 原文“配置storaged.conf文件” ,这里我也没有找到storaged.conf文件,只有storage.conf。

3. 原文“ vi /etc/fdhtd/fdht_server.conf”,我找到的以及实际编辑的是 /etc/fdhtd/fdht_servers.conf文件。

在我原原本本认认真真的将我能找到的配置文件按happyfishfans的配置完成后,终于执行/usr/local/bin/fdhtd /etc/fdhtd/fdhtd.conf没有错误提示了,可是悲催的使用netstat -an | grep 11411来查看端口是否启动时,发现端口没启动。
    执行ldd /usr/local/bin/fdhtd 查看是否所有动态链接库全链接完毕的结果为

  linux-vdso.so.1 =>  (0x00007fffcf499000)
        libevent-2.0.so.5 => /usr/lib/libevent-2.0.so.5 (0x00007f1d9f038000)
        libdb-4.7.so => /usr/lib/libdb-4.7.so (0x00007f1d9ecd9000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f1d9eabc000)
        libc.so.6 => /lib/libc.so.6 (0x00007f1d9e75a000)
        librt.so.1 => /lib/librt.so.1 (0x00007f1d9e552000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f1d9f281000)

由于最近几天一直在反复排错安装,所以发现的问题有点多,希望能得到答复,O(∩_∩)O谢谢!

论坛徽章:
0
发表于 2012-06-14 11:04 |显示全部楼层
鱼大,你好
FastDHT 1.19 安装问题
安装完成后,测试有问题
[2012-06-14 10:50:01] INFO - file: fdht_client.c, line: 144, base_path=/home/fox/fastdht, connect_timeout=3s, network_timeout=60s, keep_alive=1, use_proxy=0, group_count=1, server_count=1
fdht_get_sub_keys fail, errno: 2, error info: No such file or directory
original value=1229959555(10)
value_len: 10
value: 1229959655
value_len: 10
value: 1229959655

server 192.168.1.160:11411
server=192.168.1.160:11411
version=1.19
uptime=10
curr_time=1339642201
max_connections=256
curr_connections=1
total_set_count=23
success_set_count=23
total_inc_count=9
success_inc_count=9
total_delete_count=0
success_delete_count=0
total_get_count=12
success_get_count=8

sub keys: reg
能否予以指点

论坛徽章:
0
发表于 2012-06-27 16:36 |显示全部楼层
本帖最后由 hu198021688500 于 2012-06-27 16:37 编辑

我也按happyfishfans的配置完成后
执行 /usr/local/application/fastdht-1.19/bin/fdhtd /usr/local/application/fastdht-1.19/conf/fdhtd.conf 没有错误提示了
悲催的使用netstat -an | grep 11411来查看端口是否启动时,发现端口没启动。
执行ldd /usr/local/bin/fdhtd 查看是否所有动态链接库全链接完毕的结果为
/usr/local/application/fastdht-1.19/bin/fdhtd:
        libevent-1.4.so.4 => /usr/local/lib/libevent-1.4.so.4 (0x280b8000)
        libdb-5.3.so => /usr/local/lib/libdb-5.3.so (0x280ce000)
        libthr.so.3 => /lib/libthr.so.3 (0x28261000)
        libc.so.7 => /lib/libc.so.7 (0x28282000)

论坛徽章:
4
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11IT运维版块每日发帖之星
日期:2016-08-11 06:20:00IT运维版块每日发帖之星
日期:2016-08-15 06:20:00
发表于 2012-06-27 17:28 |显示全部楼层
回复 8# hu198021688500

看日志文件啊!

论坛徽章:
0
发表于 2012-09-17 16:02 |显示全部楼层
回复 7# foxyuli


    这个问题怎么解决的
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP