Linux阿里雲ECS-CentOS7配置FastDFS
配置到0點,終於搞定了搞懂了~
安裝git
我將下載的文件都放在~/download內
yum install git
cd ~
mkdir download
安裝libfastcommon
cd download
git clone https://github.com/happyfish100/libfastcommon.git
cd libfastcommon
./make.sh
./make.sh install
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
./make.sh 時出現了3個warning,被我忽略了,沒什麼影響。
安裝FastDFS
cd ..
git clone https://github.com/happyfish100/fastdfs.git
cd fastdfs
./make.sh
./make.sh install
查看是否安裝成功,即找到下列文件
[root@banana fastdfs]# cd /etc/fdfs/
[root@banana fdfs]# ll
total 32
-rw-r--r-- 1 root root 1909 May 26 18:11 client.conf.sample
-rw-r--r-- 1 root root 10246 May 26 18:11 storage.conf.sample
-rw-r--r-- 1 root root 620 May 26 18:11 storage_ids.conf.sample
-rw-r--r-- 1 root root 9138 May 26 18:11 tracker.conf.sample
文件*.conf.sample改名爲 *.conf
cp client.conf.sample client.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf
cp storage_ids.conf.sample storage_ids.conf
修改tracker配置文件
mkdir -p 創建多級目錄,記住這個路徑(路徑隨意)
mkdir -p /home/python/fastdfs/tracker
vim /etc/fdfs/tracker.conf
修改以下之後,保存退出:
# the tracker server port
port = 22122 # tracker服務的端口,與storage服務端口不同
# the base path to store data and log files
base_path = /home/python/fastdfs/tracker # 剛剛創建的目錄
# HTTP port on this tracker server
http.server_port = 8090 # 默認8080
修改storage配置文件
mkdir -p 創建多級目錄,記住這個路徑:
-
/home/python/fastdfs/storage 保存基本數據和日誌
-
/home/python/fastdfs/storage_data 很重要,用於保存數據
注意:這兩個是不一樣的路徑,有的博客上兩個路徑一樣,提示這是不對的
mkdir –p /home/python/fastdfs/storage
mkdir -p /home/python/fastdfs/storage_data
vim /etc/fdfs/storage.conf
查看自己阿里雲服務器的公網/私網ip,我的服務器的地址,貼給各位看看也無妨~
# the storage server port
port = 23000 # storage服務的端口,與tracker服務端口不同
group_name = group1 # 默認組
base_path = /home/python/fastdfs/storage # 保存基本數據和日誌
store_path0 = /home/python/fastdfs/storage_data # store_path非常重要和base_path務必不同
tracker_server = 172.31.88.233,47.56.205.156:22122 # 注意:此處是阿里雲機器的內網和外網IP地址
# the port of the web server on this storage server
http.server_port = 8888 # storage服務的Web服務端口
修改client配置文件
vim client.conf
base_path = /home/python/fastdfs/tracker
tracker_server = 172.31.88.233,47.56.205.156:22122 # 阿里雲機器的內網和外網IP地址 這個與配置tracker.conf裏的port一致
http.tracker_server_port = 8090 # tracker.conf配置的port
查看服務是否啓動
[root@banana conf]# /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
[root@banana conf]# /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
[root@banana conf]# ps -aux | grep fdfs
root 6881 0.0 0.4 155284 4788 ? Sl 23:18 0:00 /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
root 6916 0.0 6.6 150176 67096 ? Sl 23:18 0:01 /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
root 6973 0.0 0.0 112712 984 pts/1 R+ 23:40 0:00 grep --color=auto fdfs
查看我們創建的目錄下,多了data和logs目錄
[root@banana storage]# ll /home/python/fastdfs/tracker/
total 8
drwxr-xr-x 2 root root 4096 May 26 20:40 data
drwxr-xr-x 2 root root 4096 May 26 20:35 logs
[root@banana storage]# ll /home/python/fastdfs/storage/
total 8
drwxr-xr-x 2 root root 4096 May 26 20:36 data
drwxr-xr-x 2 root root 4096 May 26 20:36 logs
增加軟引用
便於直接啓動服務
[root@banana storage]# ln -s /usr/bin/fdfs_trackerd /usr/local/bin
[root@banana storage]# ln -s /usr/bin/fdfs_storaged /usr/local/bin
使用service命令啓動服務並查看
[root@banana storage]# service fdfs_trackerd start
Starting fdfs_trackerd (via systemctl): [ OK ]
[root@banana storage]# service fdfs_storaged start
Starting fdfs_storaged (via systemctl): [ OK ]
[root@banana ~]# netstat -unltp | grep fdfs
tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 6881/fdfs_trackerd
tcp 0 0 0.0.0.0:23000 0.0.0.0:* LISTEN 6916/fdfs_storaged
查看配置
最終使用的是公網,私網失敗了。
[root@banana ~]# /usr/bin/fdfs_monitor /etc/fdfs/storage.conf
[2020-05-27 00:18:52] ERROR - file: connection_pool.c, line: 163, connect to server 172.31.88.233:22122 fail, errno: 110, error info: Connection timed out
tracker server is 47.56.205.156:22122
group count: 1
Group 1:
group name = group1
disk total space = 40,183 MB
disk free space = 33,419 MB
trunk free space = 0 MB
storage server count = 1
active server count = 1
storage server port = 23000
storage HTTP port = 8888
store path count = 1
subdir count per path = 256
current write server index = 0
current trunk file id = 0
Storage 1:
id = 47.56.205.156
ip_addr = 47.56.205.156 ACTIVE
http domain =
version = 6.06
join time = 2020-05-26 23:18:21
up time = 2020-05-26 23:18:21
total storage = 40,183 MB
free storage = 33,419 MB
upload priority = 10
store_path_count = 1
subdir_count_per_path = 256
storage_port = 23000
storage_http_port = 8888
上傳測試
# 查看相關命令
[root@banana ~]# cd /usr/bin/ && ls | grep fdfs
fdfs_appender_test
fdfs_appender_test1
fdfs_append_file
fdfs_crc32
fdfs_delete_file
fdfs_download_file
fdfs_file_info
fdfs_monitor
fdfs_regenerate_filename
fdfs_storaged
fdfs_test
fdfs_test1
fdfs_trackerd
fdfs_upload_appender
fdfs_upload_file
# 上傳圖片 末尾是阿里雲上的一張圖片
[root@banana bin]# /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /root/JobRecruit_website/static/images/salary.png
group1/M00/00/00/LzjNnF7NSHWADXKhAABaSeIVnCE046.png
# 查看上傳結果,路徑是配置好的storage_data目錄
[root@banana bin]# ll /home/python/fastdfs/storage_data/data/00/00/
total 24
-rw-r--r-- 1 root root 23113 May 27 00:48 LzjNnF7NSHWADXKhAABaSeIVnCE046.png