您的位置:首页 > 运维架构 > Linux

centos 5.7_64位下安装FastDFS_v3.06分布式文件系统

2012-03-22 16:11 525 查看
测试环境5台服务器

tracker server1 192.168.10.225:22122

tracker server2 192.168.10.226:22122

storage server3 192.168.10.227

storage server4 192.168.10.228

client server5 192.168.10.229

查看libevent是否已安装

ls -al /usr/lib | grep libevent

安装http://libevent.org/

https://github.com/downloads/libevent/libevent/libevent-2.0.16-stable.tar.gz

# cd /root/

# mkdir soft

# wget https://github.com/downloads/libevent/libevent/libevent-2.0.17-stable.tar.gz

# tar zxvf libevent-2.0.17-stable.tar.gz -C soft/

# cd libevent-2.0.17-stable

# ./configure --prefix=/usr/local/libevent-2.0.17

# make

# make install

http://code.google.com/p/fastdfs/

http://fastdfs.googlecode.com/files/FastDFS_v3.06.tar.gz

# wget http://fastdfs.googlecode.com/files/FastDFS_v3.06.tar.gz

# tar zxvf FastDFS_v3.06.tar.gz -C soft/

# ./make.sh C_INCLUDE_PATH=/usr/local/libevent-2.0.17/include LIBRARY_PATH=/usr/local/libevent-2.0.17/lib

# ./make.sh install

【注意:】

如果要使fastdfs支持web和开机自动脚本(默认是不支持的),需要修改make.sh文件

#WITH_HTTPD=1

#WITH_LINUX_SERVICE=1

配置文件说明

【tracker.conf】/etc/fdfs/tracker.conf

【tracker server】

disabled=false

bind_addr=

port=22122

connect_timeout=30

network_timeout=60

base_path=/data/fastdfs

max_connections=256

work_threads=4

store_lookup=2

store_group=group2

store_server=0

store_path=0

download_server=0

reserved_storage_space = 4GB

log_level=info

run_by_group=

run_by_user=

allow_hosts=*

sync_log_buff_interval = 10

check_active_interval = 120

thread_stack_size = 64KB

storage_ip_changed_auto_adjust = true

storage_sync_file_max_delay = 86400

storage_sync_file_max_time = 300

use_trunk_file = false

slot_min_size = 256

slot_max_size = 16MB

trunk_file_size = 64MB

tracker server 配置两台,配置文件一样/etc/fdfs/tracker.conf

【storage.conf】/etc/fdfs/storage.conf

【storage server】

disabled=false

group_name=group1

bind_addr=192.168.10.228

client_bind=true

port=23000

connect_timeout=30

network_timeout=60

heart_beat_interval=30

stat_report_interval=60

base_path=/data/fastdfs

max_connections=256

buff_size = 256KB

work_threads=4

disk_rw_separated = true

disk_rw_direct = false

disk_reader_threads = 1

disk_writer_threads = 1

sync_wait_msec=50

sync_interval=0

sync_start_time=00:00

sync_end_time=23:59

write_mark_file_freq=500

store_path_count=1

store_path0=/data/fastdfs

subdir_count_per_path=256

tracker_server=192.168.10.225:22122

tracker_server=192.168.10.226:22122

log_level=info

run_by_group=

run_by_user=

allow_hosts=*

file_distribute_path_mode=0

file_distribute_rotate_count=100

fsync_after_written_bytes=0

sync_log_buff_interval=10

sync_binlog_buff_interval=10

sync_stat_file_interval=300

thread_stack_size=512KB

upload_priority=10

if_alias_prefix=

check_file_duplicate=0

key_namespace=FastDFS

keep_alive=0

storage server 配置两台,其中bind_addr的地址要改为当前机器的IP,其他配置参数一样

mkdir -p /data/fastdfs

启动

【tracker server】

# /usr/local/bin/fdfs_trackerd /etc/fdfs/tracker.conf

【storage server】

# /usr/local/bin/fdfs_storaged /etc/fdfs/storage.conf

如果错误提示fdfs_storaged: error while loading shared libraries: libevent

32位则执行 ln -s /usr/local/libevent-2.0.17/lib/libevent-2.0.so.5 /lib/libevent-2.0.so.5

64位则执行 ln -s /usr/local/libevent-2.0.17/lib/libevent-2.0.so.5 /lib64/libevent-2.0.so.5

storage server上NGINX安装

安装nginx的fastdfs-nginx-module模块

# wget http://nginx.org/download/nginx-1.0.14.tar.gz

# tar zxvf nginx-1.0.8.tar.gz -C soft/

# wget http://fastdfs-nginx-module.googlecode.com/files/fastdfs-nginx-module_v1.08.tar.gz

# wget http://fastdfs.googlecode.com/files/fastdfs-nginx-module_v1.10.tar.gz

# tar zxvf fastdfs-nginx-module_v1.10.tar.gz -C soft/

# yum -y install libpcre3 libpcre3-dev openssl libssl-dev pcre-devel zlib-devel

groupadd nginx

useradd nginx -g nginx -s /sbin/nologin

cd nginx-1.0.8

# ./configure --prefix=/usr/local/nginx-1.0 --user=nginx --group=nginx --add-module=/root/soft/fastdfs-nginx-module/src/

# make

# make install

cd /root/soft/fastdfs-nginx-module/src/

# cp mod_fastdfs.conf /etc/fdfs/

cp /usr/local/src/software/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

# vi nginx.conf添加如下内容

location /M00 {

root /data/fastdfs/data;

ngx_fastdfs_module;

}

# ln -s /data/fastdfs/data /data/fastdfs/data/M00

# ln -s /usr/local/nginx-1.0 /data/fastdfs/data/M00 (这条不用做,做了也白做,因为/data/fastdfs/data/M00已经存在了,呵呵)

# vim /etc/fdfs/mod_fastdfs.conf

connect_timeout=2

network_timeout=30

base_path=/data/fastdfs

tracker_server=192.168.10.225:22122

tracker_server=192.168.10.226:22122

storage_server_port=23000

group_name=group1

url_have_group_name = false

store_path_count=1

store_path0=/data/fastdfs

log_level=debug

log_filename=

response_mode=redirect

if_alias_prefix=

http.need_find_content_type=false

# /usr/local/nginx-1.0/sbin/nginx -c /usr/local/nginx-1.0/conf/nginx.conf

如果出现错误提示nginx: [emerg] getpwnam("nginx") failed

执行 useradd nginx

ngx_http_fastdfs_set pid=28525

client上配置,上传文件

# vim /etc/fdfs/client.conf

connect_timeout=30

network_timeout=60

base_path=/data/fastdfs

tracker_server=192.168.10.225:22122

tracker_server=192.168.10.226:22122

log_level=info

# /usr/local/bin/fdfs_test /etc/fdfs/client.conf upload 112.txt

This is FastDFS client test program v3.06

Copyright (C) 2008, Happy Fish / YuQing

FastDFS may be copied only under the terms of the GNU General

Public License V3, which may be found in the FastDFS source kit.

Please visit the FastDFS Home Page http://www.csource.org/

for more detail.

[2012-03-22 15:57:35] INFO - base_path=/data/fastdfs, connect_timeout=30, network_timeout=60, tracker_server_count=2, anti_steal_token=0, anti_steal_secret_key length=0

tracker_query_storage_store_list_without_group:

server 1. group_name=group1, ip_addr=192.168.10.227, port=23000

server 2. group_name=group1, ip_addr=192.168.10.228, port=23000

group_name=group1, ip_addr=192.168.10.228, port=23000

storage_upload_by_filename

group_name=group1, remote_filename=M00/00/04/wKgK5E9q23C3KXaKAAAACsC3lco472.txt

source ip address: 192.168.10.228

file timestamp=2012-03-22 15:57:36

file size=10

file crc32=3233256906

file url: http://192.168.10.225/group1/M00/00/04/wKgK5E9q23C3KXaKAAAACsC3lco472.txt

storage_upload_slave_by_filename

group_name=group1, remote_filename=M00/00/04/wKgK5E9q23C3KXaKAAAACsC3lco472_big.txt

source ip address: 192.168.10.228

file timestamp=2012-03-22 15:57:36

file size=10

file crc32=3233256906

file url: http://192.168.10.225/group1/M00/00/04/wKgK5E9q23C3KXaKAAAACsC3lco472_big.txt

用浏览器访问

http://192.168.10.227/M00/00/04/wKgK5E9q23C3KXaKAAAACsC3lco472_big.txt

http://192.168.10.228/M00/00/04/wKgK5E9q23C3KXaKAAAACsC3lco472_big.txt

client server 的PHP模块配置

centos 5.7_64位下FastDFS_client的配置和PHP测试

http://ppabc.blog.51cto.com/203980/813865

参考文章

FastDFS一个高效的分布式文件系统

http://blog.chinaunix.net/uid-20315669-id-1967075.html

FastDFS 配置文件详解(修订版1)

http://bbs.chinaunix.net/thread-1941456-1-1.html

分布式文件系统FastDFS介绍安装配置

http://who0168.blog.51cto.com/253401/705882
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息