centos7設置ip的詳細教程「centos7防火牆開放端口查看」

一、前言

本文中使用本地VM虛機部署測試。

OS:CentOS Linux release 7.8.2003 (Core) 3.10.0-1160.15.2.el7.x86_64

IP:192.168.168.100

外部Nginx服務器IP:192.168.168.103

虛機配置:2核CPU、4G內存

防火牆設置:CentOS 7.8默認使用firewall,本文中禁用firewall,使用iptables。

軟件說明:

軟件版本號安裝路徑
fastdfs6.07默認路徑
libfastcommon1.0.49默認路徑
fastdfs-nginx-module1.22/usr/local/nginx-mod/fastdfs-nginx-module-1.22
nginx1.20.0/usr/local/nginx

目錄說明:

目錄用途
/data/tools存放軟件源碼安裝包
/data/fastdfs/FastDFS數據存儲位置(包含數據data和日誌logs)

二、基礎環境

1.安裝依賴

yum -y install gcc gcc-c++ libevent libevent-devel zlib zlib-devel pcre-devel perl

2.安裝libfatscommon函數庫

libfastcommon是FastDFS官方提供的,libfastcommon包含了FastDFS運行所需要的一些基礎庫。

下載地址:
https://github.com/happyfish100/libfastcommon/releases

根據需求選擇合適的版本進行下載安裝。本文中使用的是最新穩定版本。

①安裝方式一

cd /data/tools
wget -O libfastcommon-1.0.49.tar.gz https://github.com/happyfish100/libfastcommon/archive/V1.0.49.tar.gz
tar xf libfastcommon-1.0.49.tar.gz
cd libfastcommon-1.0.49/
./make.sh 
./make.sh install

②安裝方式二

yum -y install git
cd /data/tools
git clone https://github.com/happyfish100/libfastcommon.git
cd libfastcommon
git checkout V1.0.49
./make.sh clean
./make.sh
./make.sh install

三、安裝FastDFS

1.安裝

下載地址:
https://github.com/happyfish100/fastdfs/releases

根據需求選擇合適的版本進行下載安裝。本文中使用的是最新穩定版本。

cd /data/tools
wget -O fastdfs-6.07.tar.gz https://github.com/happyfish100/fastdfs/archive/V6.07.tar.gz
tar xf fastdfs-6.07.tar.gz
cd fastdfs-6.07
./make.sh 
./make.sh install

2.相關文件和目錄

默認安裝方式安裝後的相應文件與目錄

描述目錄
服務腳本/etc/init.d/fdfs_storaged/etc/init.d/fdfs_trackerd
樣例配置文件/etc/fdfs/client.conf.sample/etc/fdfs/storage.conf.sample/etc/fdfs/tracker.conf.sample
命令工具/usr/bin/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

四、配置FastDFS

1.跟蹤器(Tracker)

①創建tracker基礎數據目錄

mkdir -p /data/fastdfs/tracker

②進入/etc/fdfs,複製 FastDFS 跟蹤器樣例配置文件 tracker.conf.sample,並重命名為 tracker.conf

cd /etc/fdfs
cp tracker.conf.sample tracker.conf

③編輯tracker.conf

vi /etc/fdfs/tracker.conf
//修改如下配置項
# Tracker服務的端口(默認22122,一般不修改)
port = 22122
# Tracker服務數據和日誌目錄地址(根目錄必須存在,子目錄會自動創建)
base_path = /data/fastdfs/tracker
# HTTP 服務端口 默認8080,可根據需求修改
http.server_port = 8180

註:①上述配置項的修改僅供參考,實際環境中請根據需求修改調整。

②若tracker和storage部署在不同服務器,或外部調用程序在不同服務器,則需放開端口。

④啟動Tracker

## 首次啟動必須使用下列命令啟動。後續可使用systemctl管理

CentOS7下FastDFS安裝及配置(單節點)
/etc/init.d/fdfs_trackerd start
CentOS7下FastDFS安裝及配置(單節點)

⑤服務檢查

## 查看 FastDFS Tracker 是否已成功啟動 ,如下圖所示則成功

systemctl status fdfs_trackerd
CentOS7下FastDFS安裝及配置(單節點)

## 端口監聽

netstat -tulnp|grep fdfs
CentOS7下FastDFS安裝及配置(單節點)

⑥Tracker Server 目錄及文件結構

Tracker服務啟動成功後,會在base_path(本文中目錄為:/data/fastdfs/tracker )下創建data、logs兩個目錄。目錄結構如下:

ls -al /data/fastdfs/tracker  或   ll /data/fastdfs/tracker
//目錄結構如下
|__data
| |__fdfs_trackerd.pid
| |__storage_changelog.dat
|__logs
| |__trackerd.log
CentOS7下FastDFS安裝及配置(單節點)

⑦服務管理

啟動:/etc/init.d/fdfs_trackerd start 或 systemctl start fdfs_trackerd.service
關閉:/etc/init.d/fdfs_trackerd stop 或 systemctl stop fdfs_trackerd.service
重啟:/etc/init.d/fdfs_trackerd restart 或 systemctl restart fdfs_trackerd.service
開機啟動:chkconfig fdfs_trackerd on
查看狀態:/etc/init.d/fdfs_trackerd status 或 systemctl status fdfs_trackerd.service

2.存儲(Storage)

①創建Storage數據和日誌目錄

mkdir -p /data/fastdfs/storage

②進入 /etc/fdfs 目錄,複製 FastDFS 存儲器樣例配置文件 storage.conf.sample,並重命名為 storage.conf

cd /etc/fdfs
cp storage.conf.sample storage.conf

③編輯storage.conf

vi /etc/fdfs/storage.conf
//修改如下配置項
# 指定此storage server所在組(卷)
group_name = group1
# storage服務端口(默認23000,一般不修改)
port = 23000
# storage的工作空間(數據和日誌文件存儲根目錄) 
base_path = /data/fastdfs/storage 
# storage的存儲空間,如果不配置,則為 base_path 的值(有多個存儲路徑時,每個存儲路徑寫一行,第一個為0,第二個為1,以此類推)
store_path0 = /data/fastdfs/storage 
# Tracker服務器的地址和端口號,用於心跳(有多個tracker server時,每個tracker server寫一行)
tracker_server = 192.168.168.102:22122 
# http訪問文件的端口(默認8888,看情況修改,和nginx中保持一致) 
http.server_port = 8888

註:①上述配置項的修改僅供參考,實際環境中請根據需求修改調整。

②關於 store_path 項的配置,官方不推薦其配置值跟 base_path 項值一樣,建議使用不同目錄路徑。本文為測試,所配置的值為一樣。

④啟動Storage

systemctl start fdfs_storaged

註:若tracker和storage部署在不同服務器,首次啟動Storage必須使用 /etc/init.d/fdfs_storaged start 命令啟動。本文中tracker和storage部署在同一服務器,在tracker服務器已啟動的情況下,首次可使用systemctl來啟動storage服務。

⑤服務檢查

## 查看 Storage 是否成功啟動,23000 端口是否被監聽

systemctl status fdfs_storaged
CentOS7下FastDFS安裝及配置(單節點)

## 查看服務端口23000是否被監聽

netstat -unltp | grep fdfs
CentOS7下FastDFS安裝及配置(單節點)

## 查看Storage和Tracker是否在通信(ACTIVE表示正常)

/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
CentOS7下FastDFS安裝及配置(單節點)

⑥服務管理

啟動:/etc/init.d/fdfs_storaged start 或 systemctl start fdfs_storaged.service
關閉:/etc/init.d/fdfs_storaged stop 或 systemctl stop fdfs_storaged.service
重啟:/etc/init.d/fdfs_storaged restart 或 systemctl restart fdfs_storaged.service
開機啟動:chkconfig fdfs_storaged on
查看狀態:/etc/init.d/fdfs_storaged status 或 systemctl status fdfs_storaged.service

3.客戶端(client)

①創建client數據和日誌目錄

mkdir -p /data/fastdfs/client

②進入 /etc/fdfs 目錄,複製 FastDFS 客戶端樣例配置文件 client.conf.sample,並重命名為 client.conf

cd /etc/fdfs
cp client.conf.sample client.conf

③編輯client.conf

vi /etc/fdfs/client.conf
//修改如下配置項
# Client 的數據和日誌目錄
base_path = /data/fastdfs/client
# Tracker服務器地址及監聽端口
tracker_server = 192.168.168.102:22122
# Tracker服務的HTTP端口,必須和tracker的設置對應起來
http.tracker_server_port = 8180

註:上述配置項的修改僅供參考,實際環境中請根據需求修改調整。

五、安裝Nginx及模塊

註:nginx需要和storage在同一個節點。

1.下載軟件包

cd /data/tools
wget http://nginx.org/download/nginx-1.20.0.tar.gz
wget -O fastdfs-nginx-module-1.22.tar.gz https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.22.tar.gz

2.安裝fastdfs-nginx-module模塊

mkdir -p /usr/local/nginx-mod
tar xf fastdfs-nginx-module-1.22.tar.gz
mv fastdfs-nginx-module-1.22 /usr/local/nginx-mod/

## 修改配置文件

/usr/local/nginx-mod/fastdfs-nginx-module-1.22/src/config,主要是修改路徑,將配置文件中的 /usr/local/include 改為 /usr/include,因為fastdfs安裝的時候沒有修改路徑,原路徑是/usr。

CentOS7下FastDFS安裝及配置(單節點)

3.複製並修改fastdfs-nginx-module中的配置文件

mkdir -p /data/fastdfs/tmp 
//創建mod_fastdfs日誌目錄
cp /usr/local/nginx-mod/fastdfs-nginx-module-1.22/src/mod_fastdfs.conf /etc/fdfs/
vi /etc/fdfs/mod_fastdfs.conf
//修改如下配置項
# 連接超時時間
connect_timeout=10
# 日誌目錄
base_path=/data/fastdfs/tmp
# Tracker Server
tracker_server=192.168.168.102:22122
# StorageServer 端口,保持默認
storage_server_port=23000
# StorageServer 組名,需與storage.conf中的配置值一致
group_name=group1
# 如果文件ID的URL中需包含/group**,則要設置為true。默認值為false
url_have_group_name=false
# Storage 配置的store_path0路徑,必須與storage.conf中的一致
store_path0=/data/fastdfs/storage

註:上述mod_fastdfs.conf配置項的修改僅供參考,實際環境中請根據需求修改調整。

4.安裝Nginx

本文中不贅述Nginx編譯安裝過程,具體步驟請參照本人之前發布的文章《CentOS7下編譯安裝Nginx-v1.20.0》,URL地址為:

https://www.toutiao.com/i6961593096903705092/

注意:運行configure配置時添加fastdfs-nginx-module模塊,命令如下:

./configure …… --add-module=/usr/local/nginx-mod/fastdfs-nginx-module-1.22/src

5.複製 FastDFS 的部分配置文件到/etc/fdfs 目錄

cd /data/tools/fastdfs-6.07/conf/
cp http.conf mime.types /etc/fdfs/

6.配置Nginx

添加fastdfs虛擬主機配置文件

vi /usr/local/nginx/conf/vhost/fastdfs.conf 
//添加如下配置內容
server {
    listen       8888;
    server_name  192.168.168.100;

    #location ~/group([0-9])/M00  {
    location ~/M00  {
        ngx_fastdfs_module;
    }

    error_page   500 502 503 504  /50x.html;

    location = /50x.html {
    root   html;
    }
}

註:Listen端口必須要與storage.conf中的http.server_port相同,防火牆需放開端口

7.啟動Nginx

systemctl start nginx.service

8.檢測NGINX配置文件會看到fastdfs模塊信息

/usr/local/nginx/sbin/nginx -t
CentOS7下FastDFS安裝及配置(單節點)

六、測試

1.服務器內使用命令上傳

## 創建測試目錄

mkdir -p /data/test
cd /data/test
//使用rz命令或通過其他方法從本地上傳一張圖片至該目錄,測試使用
ll /data/test
CentOS7下FastDFS安裝及配置(單節點)

## 使用命令上傳圖片至FastDFS存儲

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf fastdfs.jpeg
CentOS7下FastDFS安裝及配置(單節點)

## 如上圖所示,上傳成功後返迴文件路徑及ID:

group1/M00/00/00/wKioZGCc3OqAMGRnAAEGHsKL6hw44.jpeg

## 瀏覽器訪問

http://192.168.168.100:8888/M00/00/00/wKioZGCc3OqAMGRnAAEGHsKL6hw44.jpeg

CentOS7下FastDFS安裝及配置(單節點)

2.服務器內使用命令下載

## 下載圖片文件並重命名為test.jpg

/usr/bin/fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKioZGCc3OqAMGRnAAEGHsKL6hw44.jpeg test.jpg
CentOS7下FastDFS安裝及配置(單節點)

3.服務器內使用命令刪除

/usr/bin/fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKioZGCc3OqAMGRnAAEGHsKL6hw44.jpeg

## 執行刪除命令後,再次下載會報錯

/usr/bin/fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKioZGCc3OqAMGRnAAEGHsKL6hw44.jpeg test1.jpg
CentOS7下FastDFS安裝及配置(單節點)

七、配置外部訪問的Nginx

在另一台服務器(192.168.168.103)上配置Nginx訪問(負載均衡及反向代理),隱藏FastDFS真實服務器。

## 編輯Nginx主配置文件nginx.conf,在http配置項中添加upstream項

vi /usr/local/nginx/conf/nginx.conf
//在http配置項中添加upstream項
upstream fastdfs_srv {
        server 192.168.168.100:8888;
    }

## 新建訪問FastDFS相關虛擬主機配置文件,本文中為fastdfs.conf

vi /usr/local/nginx/conf/vhost/fastdfs.conf
//添加如下內容
server {
   listen       80;
   server_name  192.168.168.103;
   
   location /files {
       proxy_next_upstream http_502 http_504 error timeout invalid_header;
       proxy_pass http://fastdfs_srv/;
       expires 30d;
   }
}

## 重新加載配置

/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload

## 測試,使用瀏覽器訪問

http://192.168.168.103/files/M00/00/00/wKioZGCc3OqAMGRnAAEGHsKL6hw44.jpeg

CentOS7下FastDFS安裝及配置(單節點)

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/268328.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-16 13:08
下一篇 2024-12-16 13:08

相關推薦

發表回復

登錄後才能評論