rule 发表于 2018-11-14 10:23:43

FastDFS+Nginx安装配置

FastDFS+Nginx安装配置
1.系统环境
  最小化安装的RedHat 6.4
  fastdfs版本:FastDFS_v3.06.tar.gz
  nginx版本:nginx-1.0.11.tar.gz
  fastdfs-nginx-module版本:fastdfs-nginx-module_v1.10.tar.gz
  tracker1:192.168.199.126
  tracker2:192.168.199.127
  storage1:192.168.199.128
  storage2: 192.168.199.129
2.安装依赖包
  yumgroupinstall -y "Development Tools"
  yuminstall -y libevent-devel pcre-devel zlib-devel
3.安装配置
1.)在所有机器上安装fastdfs
  mkdir –p/data/fastdfs #为以后存放日志和数据做准备
  tar xvzfFastDFS_v3.06.tar.gz
  cd FastDFS
  vimmake.sh
  #将找到下面两行,将前边的"#"去掉,目的是安装httpd和fdfs_trackerd/fdfs_storaged服务
  WITH_HTTPD=1
  WITH_LINUX_SERVICE=1
  ./make.sh
  ./make.shinstall
  #如果遇到报错
  /usr/bin/ld: cannot find -levent
  collect2: ld returned 1 exit status
  make: *** Error 1
  则是缺少libevent-devel造成,需要安装libevent-devel
  安装方法:
  rpm -ivhlibevent-doc-1.4.13-4.el6.noarch.rpm libevent-headers-1.4.13-4.el6.noarch.rpmlibevent-devel-1.4.13-4.el6.x86_64.rpm
2.)在tracker上修改tracker.conf配置文件
  vim /etc/fdfs/tracker.conf
  # 配置data和log的存放路径,该路径如果不存在,需要自己创建
  base_path=/data/fastdfs
  # 找到下面这行包含两个"##"号
  ##include http.conf
  # 去掉一个"#"
  #include http.conf
  在tracker上修改client.conf配置文件
  vim/etc/fdfs/client.conf
  #修改base_path
  base_path=/data/fastdfs
  #修改tracker地址,多个tracker写成多行,IP地址后面需要加端口
  tracker_server=192.168.199.126:22122
  tracker_server=192.168.199.127:22122
3.)在storage上修改storage.conf配置文件
  vim/etc/fdfs/storage.conf
  #修改base_path
  base_path=/data/fastdfs
  #修改store_path0,此为存放数据路径
  store_path0=/data/fastdfs
  #修改tracker地址,多个tracker写成多行,IP地址后面需要加端口
  tracker_server=192.168.199.126:22122
  tracker_server=192.168.199.127:22122
  # 关闭内置的webserver
  http.disabled=true
  # webserver的端口改成80
  http.server_port=80
  # 此台storage1所属的服务器组名,同组内storage数据完全相同
  group_name=group1
4.)在storage上安装nginx和fastdfs-nginx-module
  tar xvzffastdfs-nginx-module_v1.10.tar.gz
  tar xvzfnginx-1.0.11.tar.gz
  cdnginx-1.0.11
  ./configure--prefix=/usr/local/nginx --add-module=/opt/fastdfs-nginx-module/src
  make&& make install
  cp/opt/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
  vim/etc/fdfs/mod_fastdfs.conf
  # 放置log的目录
  base_path=/home/storage1/fastdfs
  # tracker1的ip和端口,此处可以写多个trackerserver,每行一个
  tracker_server=192.168.199.126:22122
  tracker_server=192.168.199.127:22122
  # 此台storageserver所属的服务组名
  group_name=group1
  # 在URL中包含group名称,很重要
  url_have_group_name = true
  # 放置文件的目录
  store_path0=/data/fastdfs
  ==============================================
  在nginx配置文件中添加如下信息
  vim/usr/local/nginx/conf/nginx.conf
  location /group1/M00 {
  root /home/storage1/fastdfs/data;
  ngx_fastdfs_module;
  }
  创建M00目录的软连接
  ln -s/data/fastdfs/data/ /data/fastdfs/data/M00
5.)启动与监控:
  tracker启动:确认8080,22122端口已经监听
  /etc/init.d/fdfs_trackerdstart
  tracker上面监控:
  fdfs_monitor/etc/fdfs/client.conf
  storage启动:确认80,23000端口已经监听
  /etc/init.d/fdfs_storagedstart
  storage上面监控:
  fdfs_monitor/etc/fdfs/storage.conf
  nginx启动:
  /usr/local/nginx/sbin/nginx
4.在tracker上测试
  echo'hello,this is my first fastdfs test' >test.txt
  /usr/local/bin/fdfs_test/etc/fdfs/client.conf upload test.txt
  This isFastDFS client test program v3.06
  Copyright(C) 2008, Happy Fish / YuQing
  FastDFSmay be copied only under the terms of the GNU General
  PublicLicense V3, which may be found in the FastDFS source kit.
  Pleasevisit the FastDFS Home Page http://www.csource.org/
  for moredetail.
   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=10.10.212.135,port=23000
  server 2. group_name=group1,ip_addr=192.168.199.129, port=23000
  group_name=group1,ip_addr=192.168.199.129, port=23000
  storage_upload_by_filename
  group_name=group1,remote_filename=M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706.txt
  source ipaddress: 192.168.199.129
  filetimestamp=2015-08-12 12:59:22
  filesize=36
  filecrc32=4249607391
  file url:http://10.10.212.134:8080/group1/M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706.txt
  storage_upload_slave_by_filename
  group_name=group1,remote_filename=M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706_big.txt
  source ipaddress: 192.168.199.129
  filetimestamp=2015-08-12 12:59:22
  filesize=36
  filecrc32=4249607391
  file url: http://10.10.212.134:8080/group1/M00/00/00/wKjHgVXK0qqKJ6VhAAAAJP1L3N8706_big.txt
  使用浏览器打开上面任一地址地址,如果看到文件内容,说明配置成功!
5.FAQ
  1.)查看当前监控信息,在tracker上执行fdfs_monitor/etc/fdfs/client.conf和在storage上执行fdfs_monitor/etc/fdfs/storage.conf得到的结果一样。
  # fdfs_monitor /etc/fdfs/client.conf
   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
  server_count=2,server_index=0
  trackerserver is 10.10.212.134:22122
  groupcount: 1
  Group 1:
  group name= group1
  disk freespace = 36 GB
  trunk freespace = 0 GB
  storageserver count = 2
  activeserver count = 2
  storageserver port = 23000
  storageHTTP port = 80
  store pathcount = 1
  subdircount per path = 256
  currentwrite server index = 1

  currenttrunk file>  Storage 1:
  ip_addr = 10.10.212.135ACTIVE
  http domain =
  version = 3.06
  join time = 2015-05-20 13:44:32
  up time = 2015-08-12 10:35:12
  total storage = 45GB
  free storage = 36GB
  upload priority = 10
  store_path_count = 1
  subdir_count_per_path = 256
  storage_port = 23000
  storage_http_port = 80
  current_write_path = 0
  source ip_addr =
  if_trunk_server= 0
  total_upload_count = 9283
  success_upload_count = 9283
  total_append_count = 0
  success_append_count = 0
  total_set_meta_count = 1688
  success_set_meta_count = 1688
  total_delete_count = 132
  success_delete_count = 132
  total_download_count = 4539
  success_download_count = 4539
  total_get_meta_count = 0
  success_get_meta_count = 0
  total_create_link_count = 0
  success_create_link_count = 0
  total_delete_link_count = 0
  success_delete_link_count = 0
  total_upload_bytes = 2474396113
  success_upload_bytes =2474396113
  total_append_bytes = 0
  success_append_bytes = 0
  stotal_download_bytes =377438594
  success_download_bytes =377438594
  total_sync_in_bytes = 67059
  success_sync_in_bytes = 67059
  total_sync_out_bytes =2435190011
  success_sync_out_bytes =2435190011
  total_file_open_count = 13836
  success_file_open_count = 13836
  total_file_read_count = 5176
  success_file_read_count = 5176
  total_file_write_count = 16999
  success_file_write_count =16999
  last_heart_beat_time =2015-08-12 13:05:44
  last_source_update = 2015-08-1211:37:09
  last_sync_update = 2015-08-1213:00:26
  last_synced_timestamp = 2015-08-1212:59:22 (0s delay)
  Storage 2:
  ip_addr = 192.168.199.129ACTIVE
  http domain =
  version = 3.06
  join time = 2015-08-12 10:11:25
  up time = 2015-08-12 10:30:23
  total storage = 44GB
  free storage = 37GB
  upload priority = 10
  store_path_count = 1
  subdir_count_per_path = 256
  storage_port = 23000
  storage_http_port = 80
  current_write_path = 0
  source ip_addr = 10.10.212.135
  if_trunk_server= 0
  total_upload_count = 4
  success_upload_count = 4
  total_append_count = 0
  success_append_count = 0
  total_set_meta_count = 3
  success_set_meta_count = 3
  total_delete_count = 0
  success_delete_count = 0
  total_download_count = 3
  success_download_count = 3
  total_get_meta_count = 0
  success_get_meta_count = 0
  total_create_link_count = 0
  success_create_link_count = 0
  total_delete_link_count = 0
  success_delete_link_count = 0
  total_upload_bytes = 66850
  success_upload_bytes = 66850
  total_append_bytes = 0
  success_append_bytes = 0
  stotal_download_bytes = 319240
  success_download_bytes = 319240
  total_sync_in_bytes =2435190011
  success_sync_in_bytes =2435190011
  total_sync_out_bytes = 67059
  success_sync_out_bytes = 67059
  total_file_open_count = 10721
  success_file_open_count = 10721
  total_file_read_count = 3
  success_file_read_count = 3
  total_file_write_count = 18311
  success_file_write_count =18311
  last_heart_beat_time =2015-08-12 13:05:56
  last_source_update = 2015-08-1212:59:22
  last_sync_update = 2015-08-1211:36:11
  last_synced_timestamp =2015-08-12 11:37:09 (0s delay)
  #多个节点查看当前是否为激活状态和同步延时时间,
  2.)增加storage节点,配置与其它节点相同,安装fastdfs、nginx后 ,把配置文件storage.confmod_fastdfs.conf copy到/etc/fdfs/即可,添加完成后重启tracker和storage,再用monitor查看同步信息及节点当前状态。

页: [1]
查看完整版本: FastDFS+Nginx安装配置