分布式文件系统fastfs

 第一步,网络规划:
 Tracker            192.168.88.215【192.168.224.20:22122】  CentOS
 Group1-Storage11   192.168.88.213【192.168.224.25:23000】  CentOS
 Group1-Storage12   192.168.88.214【192.168.224.26:23000】  CentOS
 Group2-Storage21   192.168.88.217【192.168.224.28:23001】  CentOS
 Group2-Storage22   192.168.88.216【192.168.224.29:23001】  CentOS
 第二步停止所有防火墙
 [root@localhost  ~]# service iptables stop
 第三部相关文件下载
1.1、libfastcommon支持
wget https://github.com/happyfish100/libfastcommon/archive/master.zip
unzip master.zip
cd libfastcommon-master/
./make.sh  
./make.sh install
 2.
 wget http://osdn.jp/projects/sfnet_fastdfs/downloads/FastDFS%20Server%20Source%20Code/FastDFS%20Server%20with%20PHP%20Extension%20Source%20Code%20V5.05/FastDFS_v5.05.tar.gz
tar -zxvf FastDFS_v5.05.tar.gz
如果解压失败,请下载到window解压后,在压缩成 .zip ,然后上传在 unzip解压,我就是这样的
cd FastDFS/
chmod +x make.sh
vim make.sh
./make.sh  
./make.sh install
3.
https://sourceforge.net/projects/fastdfs/files/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz/download
4.wget http://labs.frickle.com/files/ngx_cache_purge-2.1.tar.gz
5.perl-5.20.2.tar.gz   
6.http://nginx.org/download/nginx-1.7.8.tar.gz
第四部
文件夹初始化:
 1. 配置tracker所需的base_path: /opt/fastdfs_tracker。
 2. 配置storage所需的日志目录: /opt/fastdfs_storage_info。 备注: 这个目录是用来存储storage之间同步文件等日志的
 3. 配置storage所需的存储文件目录: /opt/fastdfs_storage_data。备注: 这个目录是用来存储文件的
 第五步,安装libfastcommon-1.0.7.zip:【六台】
 在安装libfastcommon的过程中,涉及了解压缩、make安装等过程,第一次安装的时候,可能由于环境的原因,会提示比如没有安装unzip、zip;没有安装perl;没有安装gcc等,逐一安装即可。
[root@localhost  soft]#unzip master
2. 解压完成后,进入文件夹,会看到make.sh文件,执行./make.sh命令,可能会报没有安装gcc和perl的错误
[root@localhost  soft]# cd libfastcommon-master
[root@localhost  libfastcommon-master]# ./make.sh
[root@localhost  libfastcommon-master]#  ./make.sh install#若失败参照http://www.open-open.com/lib/view/open1435468300700.html安装perl和gcc
3.创建软连接
     ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
     ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
     ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
     ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
4.安装fastdfs-5.05.tar.gz:
[root@localhost soft]# tar -zxvf FastDFS_v5.05.tar.gz
[root@localhost soft]# cd FastDFS
[root@localhost FastDFS]#  ./make.sh
[root@localhost FastDFS]# ./make.sh install
[root@localhost FastDFS]# cd  /etc/fdfs
[root@localhost fdfs]# ls
client.conf.sample  storage.conf.sample  tracker.conf.sample  #成功了
前 边的这六步无论是配置tracker还是配置storage都是必须的,而tracker和storage的区别主要是在安装完fastdfs之后的配置 过程中
第五步,配置tracker:
1. 进入/etc/fdfs文件夹,执行命令#【tracker:】
[root@localhost fdfs]# cd /etc/fdfs
[root@localhost fdfs]#  cp  tracker.conf.sample  tracker.conf  
2. 编辑tracker.conf,执行命令:
 [root@localhost fdfs]#vi  tracker.conf
  a. disabled=false            #启用配置文件
  b. port=22122                #设置tracker的端口号,一般采用22122这个默认端口
  c. base_path=/opt/fastdfs_tracker   #设置tracker的数据文件和日志目录(预先创建)
  d. http.server_port=8080     #设置http端口号   注意,这个配置在fastdfs5.05这个版本中已经不用配置,不用管这个!
 3. 启动tracker,执行如下命令:
[root@localhost fdfs]#  /usr/local/bin/fdfs_trackerd  /etc/fdfs/tracker.conf  restart
bash: /usr/local/bin/fdfs_trackerd: No such file or directory
 注意,一般fdfs_trackerd等命令在/usr/local/bin中没有,而是在/usr/bin路径下,所以命令修改如下:
 [root@localhost fdfs]# /usr/bin/fdfs_trackerd  /etc/fdfs/tracker.conf  restart
 4. 启动完毕后,可以通过以下两个方法查看tracker是否启动成功:
   a. netstat -unltp|grep fdfs,查看22122端口监听情况
   b. 通过以下命令查看tracker的启动日志,看是否有错误: tail -100f  /opt/fastdfs_tracker/logs/trackerd.log
 5. 如果启动没有问题,可以通过以下步骤,将tracker的启动添加到服务器的开机启动中:
     a. 打开文件 vi /etc/rc.d/rc.local
     b. 将如下命令添加到该文件中 /usr/bin/fdfs_trackerd  /etc/fdfs/tracker.conf  restart
 第六步,配置storage:
   其实配置storage和配置tracker类似,只不过配置文件和配置内容不一样。我们以配置192.168.224.29配置storage为例。
 第七步,配置storage:
 其实配置storage和配置tracker类似,只不过配置文件和配置内容不一样
 1. 进入/etc/fdfs文件夹
[root@localhost fdfs]# cd /etc/fdfs
[root@localhost fdfs]# cp  storage.conf.sample  storage.conf
 2. 编辑storage.conf,执行命令: vi  storage.conf
 [root@localhost fdfs]# vi  storage.conf
 a. disabled=false            #启用配置文件
 b. group_name=group2    #组名,根据实际情况修改1,2
 c. port=23001     #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致
 d. base_path=/opt/fastdfs_storage_info    #设置storage的日志目录(需预先创建)
 e. store_path_count=1   #存储路径个数,需要和store_path个数匹配
 f.  store_path0=/opt/fastdfs_storage_data   #存储路径
 g. tracker_server=192.168.88.215:22122   #tracker服务器的IP地址和端口号
 h. http.server_port=8080     #设置http端口号   注意,这个配置在fastdfs5.05这个版本中已经不用配置,不用管这个!
  3. 启动storage,执行如下命令: /usr/local/bin/fdfs_storage  /etc/fdfs/storage.conf  restart
  意,一般fdfs_storage等命令在/usr/local/bin中没有,而是在/usr/bin路径下,所以命令修改如下:
[root@localhost fdfs]#   /usr/bin/fdfs_storaged  /etc/fdfs/storage.conf  restart
4. 启动完毕后,可以通过以下两个方法查看storage是否启动成功:
 a. netstat -unltp|grep fdfs,查看23001端口监听情况
 b. 通过以下命令查看storage的启动日志,看是否有错误: tail -100f  /opt/fastdfs_storage_info/logs/storage.log
  5. 启动成功后,可以通过fdfs_monitor查看集群的情况,即storage是否已经注册到tracker服务器中
  [root@localhost fdfs]# /usr/bin/fdfs_monitor /etc/fdfs/storage.conf 【在storage】上

    Storage 1:
        id = 192.168.88.213
        ip_addr = 192.168.88.213  ACTIVE
    Storage 2:
        id = 192.168.88.214
        ip_addr = 192.168.88.214  ACTIVE
    Storage 3:
        id = 192.168.88.216
        ip_addr = 192.168.88.216  ACTIVE
    Storage 4:
        id = 192.168.88.217
        ip_addr = 192.168.88.217  ACTIVE

以上七步其实已经完成了fastdfs的配置,如果此时你用java等api编辑客户端,实际上就可以完成文件的上传、同步和下载。但是为什么网上还会有 很多人说需要nginx呢???
其实主要原因时因为,我们可以通过配置nginx为下载提供基于http协议的下载等功能。其实,storage中安装nginx,主要是为了为提供http的访问服务,同时解决group中storage
服务器的同步延迟问题。而tracker中安装nginx,主要是为了提供http访问的反向代理、负载均衡以及缓存服务
第八步,安装nginx的准备:
 不管是在tracker中还是storage中安装nginx,前提都需要安装一些基础软件。一些大公司的服务器默认都会初始化这些软件,但是你在配置的时候可能还是最好自己利用命令确认一下。
 1. yum install -y gcc  这个前边在安装libfastcommon之前已经安装了
 2. yum install -y gcc-c++ 这个前边在安装libfastcommon之前已经安装了
 3. yum install -y pcre pcre-devel
 4. yum install -y zlib zlib-devel
 5. yum install -y openssl openssl-devel
 第九步,在storage中安装nginx:
[root@localhost soft]# tar -zxf fastdfs-nginx-module_v1.16.tar.gz
a. 我们在解压缩fastdfs-nginx-module_v1.16.tar.gz之后,需要进入fastdfs-nginx-module/src目 录,编辑config文件,找到包含CORE_INCS这个一行,将路径中local全部去掉,变为CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"
b. 建立软连接,这个软连接我们在第五步安装libfastcommon时的最后一个操作就已经建立了,所以此处不用再建立了。
[root@localhost soft]# tar -zxf nginx-1.7.8.tar.gz
[root@localhost soft]# cd nginx-1.7.8
[root@localhost nginx-1.7.8]#  ./configure  --prefix=/usr/local/nginx  --add-module=/root/soft/fastdfs-nginx-module/src

你可能感兴趣的:(分布式文件系统fastfs)