一、軟件下載
二、安裝fastdfs的tracker部分
A.配置fastdfs環(huán)境
1. gcc
yum install gcc-c++
2. libevent:
yum -y install libevent
3. libfastcommon:
- 在linux中創(chuàng)建個(gè)人文件存放目錄(個(gè)人習(xí)慣,后面配置中用到的/zhanping文件夾都必須與此保持一致)
cd /
mkdir /zhanping
cd /zhanping
mkdir soft
mkdir install
- 通過SSH Secure File Transfer Client上傳libfastcommonV1.0.7.tar.gz到/zhanping/soft目錄下
- 解壓libfastcommonV1.0.7.tar.gz到/zhanping/install目錄下
cd /zhanping/soft
tar -zxvf libfastcommonV1.0.7.tar.gz -C /zhanping/install
- 安裝libfastcommon-1.0.7
cd /zhanping/soft/libfastcommon-1.0.7
./make.sh
./make.sh install
- libfastcommon-1.0.7安裝好后會(huì)自動(dòng)將庫文件拷貝至/usr/lib64下,由于fastdfs引用usr/lib目錄,所以需要將/usr/lib64下的庫文件拷貝至/usr/lib下
cp -r /usr/lib64/libfastcommon.so /usr/lib
B. tracker編譯安裝
- 通過SSH Secure File Transfer Client上傳FastDFS_v5.05.tar.gz到/zhanping/soft目錄下
- 解壓FastDFS_v5.05.tar.gz到/zhanping/install目錄下
cd /zhanping/soft
tar -zxvf FastDFS_v5.05.tar.gz -C /zhanping/install
- 編譯安裝fastdfs
cd /zhanping/install/FastDFS
./make.sh
./make.sh install
- 安裝成功后,將安裝目錄下的conf下的以下文件拷貝到/etc/fdfs/下
cp -r /zhanping/install/FastDFS/conf/*.conf /etc/fdfs
cp -r /zhanping/install/FastDFS/conf/mime.types /etc/fdfs
conf.png
C、配置fastdfs的tracker部分
- 安裝成功后進(jìn)入/etc/fdfs目錄
cd /etc/fdfs
- 拷貝一份新的tracker配置文件
cp tracker.conf.sample tracker.conf
- 修改tracker.conf(也可以不配置,使用默認(rèn)即可)
vim tracker.conf
將
base_path=/home/yuqing/fastdfs
改為:
base_path=/home/fastdfs
D、啟動(dòng)fastdfs的tracker部分
- 啟動(dòng)tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
- 設(shè)置開機(jī)自動(dòng)啟動(dòng)(選做,不配置的話每次linux啟動(dòng)時(shí)則需要手動(dòng)啟動(dòng)tracker)
vim /etc/rc.d/rd.local
將運(yùn)行命令行添加進(jìn)文件:/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
三、安裝fastdfs的storage部分
!!!注意:如果fastdfs的storage和fastdfs的tracker安裝在同一個(gè)linux系統(tǒng)上,則以下A、B部分則可以不用做
A.配置fastdfs環(huán)境
同fastdfs的tracker部分
B. storage編譯安裝
同fastdfs的tracker部分
C、配置fastdfs的storage部分
- 安裝成功后進(jìn)入/etc/fdfs目錄
cd /etc/fdfs
- 拷貝一份新的storage配置文件
cp storage.conf.sample storage.conf
- 修改storage.conf
vim storage.conf
#【1】.修改storage的base_path路徑(選做)
#base_path需要和tracker部分的base_path保持一致,如果有修改過tracker的tracker.conf文件,則做以下修改:
base_path=/home/yuqing/fastdfs 改為:base_path=/home/fastdfs
#【2】.修改storage的資源存放路徑(選做)
store_path0=/home/yuqing/fastdfs 改為:store_path0=/home/fastdfs/fdfs_storage
#如果有多個(gè)掛載磁盤則定義多個(gè)store_path,如下
#store_path1=......
#store_path2=......
#......
#【3】.修改storage的對應(yīng)的tracker_server的ip地址和端口(必做)
tracker_server=192.168.248.128:22122 #配置tracker服務(wù)器:IP (本地ip地址:22122)
#如果有多個(gè)則配置多個(gè)tracker_server
#tracker_server=......
#tracker_server=......
#......
D、啟動(dòng)fastdfs的storage部分
- 啟動(dòng)storage
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
- 設(shè)置開機(jī)自動(dòng)啟動(dòng)(選做,不配置的話每次linux啟動(dòng)時(shí)則需要手動(dòng)啟動(dòng)tracker)
vim /etc/rc.d/rd.local
將運(yùn)行命令行添加進(jìn)文件:/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
四、上傳文件測試
fastdfs安裝成功可通過/usr/bin/fdfs_test測試上傳、下載等操作
- 修改/etc/fdfs/client.conf
vim /etc/fdfs/client.conf
#【1】.修改client.conf的base_path路徑(選做)
#base_path需要和tracker部分的base_path保持一致,如果有修改過tracker的tracker.conf文件,則做以下修改:
base_path=/home/yuqing/fastdfs 改為:base_path=/home/fastdfs
#【2】.修改client.conf的tracker_server的ip地址和端口(必做)
tracker_server=192.168.248.128:22122
- 上傳文件
使用格式:
/usr/bin/fdfs_test 客戶端配置文件地址 upload 上傳文件
比如將/zhanping/resource下的圖片上傳到fastdfs中:
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /zhanping/resource/download.jpg
上傳成功后,終端將會(huì)輸出類似以下的http文件訪問路徑:http://192.168.248.128/group1/M00/00/00/wKj4gFlogsuAOFWLAAAh6e61gnc931_big.jpg
對應(yīng)storage服務(wù)器資源存放路徑store_path下的:
data/00/00/wKj4gFlogsuAOFWLAAAh6e61gnc931_big.jpg
由于現(xiàn)在還沒有和nginx整合無法使用http下載
五、fastdfs整合nginx
A.安裝fastdfs-nginx-module
- 將從github上面下載的源文件fastdfs-nginx-module-master壓縮成.tar.gz格式
- 通過SSH Secure File Transfer Client上傳fastdfs-nginx-module.tar.gz到/zhanping/soft目錄下
- 解壓fastdfs-nginx-module.tar.gz到/zhanping/install目錄下
cd /zhanping/soft
tar -zxvf fastdfs-nginx-module.tar.gz -C /zhanping/install
- 修改fastdfs-nginx-module/src/下的config文件
cd /zhanping/install/fastdfs-nginx-module/src
vim config
usr/local/路徑都改為/usr/
module-config.png
- 將FastDFS-nginx-module/src下的mod_FastDFS.conf拷貝至/etc/fdfs/下
cp mod_FastDFS.conf /etc/fdfs/
- 修改mod_FastDFS.conf的內(nèi)容
vi /etc/fdfs/mod_FastDFS.conf
#【1】.修改storage的base_path路徑(選做)
#base_path需要和tracker部分的base_path保持一致,如果有修改過tracker的tracker.conf文件,則做以下修改:
base_path=/home/yuqing/fastdfs 改為:base_path=/home/fastdfs
#【2】.修改mod_FastDFS.conf的tracker_server的ip地址和端口(必做)
tracker_server=192.168.248.128:22122 #配置tracker服務(wù)器:IP (本地ip地址:22122)
#如果有多個(gè)則配置多個(gè)tracker_server
#tracker_server=......
#tracker_server=......
#......
#【3】.修改url_have_group_name=true(必做)
url_have_group_name=true #url中包含group名稱
#【4】.指定storage的文件存儲(chǔ)路徑(選做)
store_path0=/home/yuqing/fastdfs 改為:store_path0=/home/fastdfs/fdfs_storage
#如果有多個(gè)掛載磁盤則定義多個(gè)store_path,如下
#store_path1=......
#store_path2=......
#......
- 將libfdfsclient.so拷貝至/usr/lib下
cp /usr/lib64/libfdfsclient.so /usr/lib/
B.安裝nginx
注意:需要先配置nginx的安裝環(huán)境
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
- 通過SSH Secure File Transfer Client上傳nginx-1.8.0.tar.gz到/zhanping/soft目錄下
- 解壓nginx-1.8.0.tar.gz到/zhanping/install目錄下
cd /zhanping/soft
tar -zxvfnginx-1.8.0.tar.gz -C /zhanping/install
- 創(chuàng)建nginx所需安裝目錄
mkdir -p /var/temp/nginx/client
- 設(shè)置nginx編譯參數(shù)設(shè)置如下:
./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/zhanping/install/fastdfs-nginx-module/src #注意這里配置的必須是是fastdfs-nginx-module的src目錄絕對路徑
- 編譯安裝
make
make install
- 配置/usr/local/nginx/conf/nginx.conf
vim /usr/local/nginx/conf/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location /group1/M00 {
ngx_fastdfs_module;
}
}
}
- 重新加載nginx配置文件
cd /usr/local/nginx/sbin
./nginx -s reload
- 啟動(dòng)nginx
cd /usr/local/nginx/sbin
./nginx
六、開放Linux的對外訪問的端口
- 查看端口占用情況
netstat -apn
port.png - 開放上圖標(biāo)注端口,例如22122端口:
/sbin/iptables -I INPUT -p tcp --dport 22122 -j ACCEPT
/etc/rc.d/init.d/iptables save
#將修改永久保存到防火墻中
七、測試fastdfs整合nginx
- 再次上傳文件
/usr/bin/fdfs_test /etc/fdfs/client.conf upload /zhanping/resource/downloadimg.jpg
返回http://192.168.248.128/group1/M00/00/00/wKj4gFlogsuAOFWLAAAh6e61gnc931_big.jpg
-
通過瀏覽器訪問以上地址,顯示:
uploadimg.png