> 백엔드 개발 > PHP 튜토리얼 > FastDFS+Nginx 경량 분산 파일 시스템 설치 및 사용

FastDFS+Nginx 경량 분산 파일 시스템 설치 및 사용

WBOY
풀어 주다: 2016-08-08 09:21:26
원래의
1116명이 탐색했습니다.

1 소개

FastDFS는 오픈 소스 경량 분산 파일 시스템을 관리합니다. 파일 및 그 기능에는 파일 저장, 파일 동기화, 파일 액세스(파일 업로드, 파일 다운로드) 등이 포함되어 대용량 저장 및 로드 밸런싱 문제를 해결합니다. 특히 사진 앨범 웹사이트, 동영상 웹사이트 등 파일 기반 온라인 서비스에 적합합니다.

FastDFS서버에는 두 가지 역할이 있습니다. 추적기(tracker)와 저장소 노드 (저장). 트래커는 주로 스케줄링 작업을 수행하며 액세스에서 로드 밸런싱 역할을 합니다.

2차 설치

1, 이 설치에는 3개의 장치가 사용됩니다.centos5.10 linux운영 체제

192.168.80.100 tracker Nginx(이 장치는 fastsfd-niginx플러그인을 설치하지 않습니다. )

192.168.80.101 저장 nginx

192.168.80.102 저장 nginx

운영 체제 여기서는 설치에 대해 말할 것이 많지 않습니다.

2, 컴파일 환경 준비yum -y install gcc gcc+ gcc-c++ openssl openssl-devel pcre pcre-devel 세 대의 머신을 모두 설치하고 두 명의 새로운 사용자를 생성합니다. fastdfs nginx

useradd fastdfs -M -s /sbin/nologin useradd nginx -M -s /sbin/nologin

테스트 편의를 위해 방화벽을 꺼주세요service iptables stop

3, 소스코드 다운로드

노크 cd /usr/local/src/ 디렉토리에 들어가서 다음 명령을 실행하고 fastDFS 5.01

을 다운로드하세요.wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Server%20Source%20Code/FastDFS%20Server%20with%20PHP%20Extension%20Source%20Code%20V5.01 /FastDFS_v5.01 .tar.

다운로드 nginx 1.7.0

wget http://nginx.org/download/nginx-1.7.0.tar.gz

다운로드fastdfs-nginx-module_v1.16

wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1 .16.tar .gz

4, FastDFS 설치(3개 머신 모두 설치해야 함)

tar xf FastDFS_v5.01.tar.gz

cd FastDFS

./ make.sh && ./make.sh 설치

5, 압축 해제fastDFS-nginx-module

[root@ localhost ~]# cd /usr/local/src/

[root@localhost src]# tar xf fastdfs-nginx-module_v1.1 6 .tar.gz

6, 설치Nginx

192.168.80.100 tarcker 머신 설치

[root@localhost ~]# cd /usr/local/src/

[root@localhost src]# tar xf nginx -1. 7.0.tar.gz

[root@localhost src]# cd nginx-1.7. 0

[root@localhost nginx-1.7.0]# ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx

[root@localhost nginx -1.7.0]# make

[root@localhost nginx-1.7.0] #make install

192.168.80.101,102 stroage nginx 설치

[root@localhost ~]# cd /usr/local /src /

[root@localhost src]# tar xf nginx-1.7.0.tar.gz

[root@localhost src]# cd nginx-1.7.0

[root@localhost nginx- 1.7.0]# ./configure --user=nginx --group=nginx -- 접두사= /usr/local/nginx

--add-module=../fastdfs-nginx-module/src // 저장소 nginx

[root@localhost nginx-1.7.0]# make

[root@localhost nginx-1.7.0]# make install

3가지 구성

192.168.80.100 트래커 구성

1. 트래커데이터 및 로그 저장 디렉터리

를 생성합니다. [root@localhost ~]# mkdir -p /data/fastdfs/tracker

2, FastDFStracker.conf 구성을 수정합니다. 파일

[root@localhost ~]# vim /etc/fdfs/tracker.conf

base_path=/ 데이터/fastdfs/tracker

max_c/span>

work_threads=8

store_lookup=0

store_path=0

reserved_storage_space=4G //

run_by_group= fastdfs

run_by_user=fastdfs

rotate_error_log=true

내 구성 분석을 참조하세요. tracker 구성 파일 분석

3 Nginx

의 구성 파일을 수정하는 기사 [root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf

사용자 nginx nginx; //여기에 이미 설정된 사용자 및 그룹이 있습니다

worker_processes 3;

pid /usr/local/nginx/logs/nginx.pid;

Worker_rlimit_nofile 1024;

이벤트 {

epoll 사용; // epollLinux 커널으로, 대량의 파일 설명자향상된 설문조사

worker_connections 1024;

}

http {

include mime.types;

default_type 애플리케이션/옥텟-스트림 ;

log_format 메인 '$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer " '

'"$http_user_agent" "$http_x_forwarded_for"';

access_log /usr/local/nginx/logs/access.log main;

업스트림 서버_g1{

서버 192.168.80.101:80; //여기서 구성하는 것은 스토리지의 IP입니다. 는 여러

로 구성할 수 있습니다. 🎜>서버 192.168.

80.102:80;

}

서버 {

listen 80;

server_name localhost;

위치 /g1 {

proxy_redirect off;

proxy_set_header 호스트 $host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header server_g1;

}

 

}

}

4.

트래커서비스 관리용으로 설정하고 부팅 시 시작하도록 설정합니다.

[root@localhost ~ ]# cp /usr/local/src/FastDFS/init.d/fdfs_trackerd /etc/init.d /[root@localhost ~]# chkconfig --add fdfs_trackerd

[root@localhost ~]# chkconfig fdfs_trackerd on

구성

스토리지

(각각 192.168.80.101,102에서 구성)

1, 데이터 저장 디렉토리 생성 [root@localhost ~]# mkdir -p /data/fastdfs/storage

/data

2,

FastDFS

storage.conf

구성 파일을 수정합니다.

[root@localhost ~]# vim /etc/fdfs/storage.confgroup_name=g1

base_path=/data/fastdfs

##작업자 스레드 수, 일반적으로

CPU

번호

로 설정 work_threads=8store_path_count=1

store_path0=/data/fastdfs/storage

##tracker_server 주소

tracker_server=192.168.

80.100 :22122

##사용자 그룹 실행 FastDFS

run_by_group=fastdfs##사용자 실행

FastDFS

run_by_user=fastdfsfile_distribute_path_mode =1

rotate_error_log=true

3. nginx 모듈의 구성 파일을 /etc/fdfs에 복사하고 수정합니다

[root@localhost ~]# cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

[root@ localhost ~]# vim /etc/fdfs/mod_fastdfs.conf

c/span>

tracker_server=192.168.80.100:22122

group_name=g1

url_have_group_name = true

store_path_count =1

store_path0=/data/fastdfs/storage

4, 수정nginx구성 파일

[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf

사용자 nginx nginx;

worker_processes 8;

pid /usr/local/nginx/logs/nginx.pid;

worker_rlimit_nofile 1024;

이벤트 {

epoll 사용;

worker_connections 1024 ;

}

http {

include mime.types;

default_type 애플리케이션/옥텟-스트림;

log_format main '$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for"';

access_log /usr/local/nginx/logs/access.log main;

서버 {

listen 80;

server_name localhost;

위치 /g1/M00{

root /data/fastdfs/storage/ 데이터;

ngx_fastdfs_module;

}

}

}

5, 스토리지 에 넘겨주세요 [root@localhost ~]# cp /usr/local/src/FastDFS/init.d/fdfs_storaged /etc/init.d/

[root@localhost ~] # chkconfig --add fdfs_storaged

[root@localhost ~]# chkconfig fdfs_storaged on

[root@localhost ~]# service fdfs_storaged start 서비스

//소프트 연결 생성

에 대한 시작 관리 및 설정[ root@ localhost ~]# ln -s /data/fastdfs/storage/data /data/fastdfs/storage/data/M00

4개의 테스트

1, 192.168.80.100 , nginx에서 tracker

를 시작하세요

[root@localhost ~]# 서비스 fdfs_trackerd 시작

[root@localhost ~]# /usr/local/nginx/sbin/nginx

2, storagenginx

[ root@localhost ~]# 서비스 fdfs_storaged 시작

[root@localhost ~]# /usr/local/nginx/sbin/nginx

3

클라이언트

구성 tracker[root@localhost ~]# vim /etc/fdfs/client.conf

base_path=/data/ fastdfs

tracker_server=192.168.80.100:22122

4, 클러스터 세부 정보 보기

[ root@localhost ~]# fdfs_monitor /etc/fdfs/client.conf

5, 테스트 업로드

root@localhost ~]# fdfs_upload_file /etc/fdfs/client.conf aa.jpg

g1/M00 /AC/2F/wKgKDVMppoGAMCFNAAIFvJcyojY165.jpg

브라우저를 통해

http:// 192.168.

80.101/g1/M00/AC/2F/wKgKDVMppoGAMCFNAAIFvJcyojY165.jpghttp://192.168.

80.102/g1/M00/AC/2F/wKgKDVMppoGAMCFNAAIFvJcyojY165.jpg 위 내용은 관련 내용을 포함하여 FastDFS+Nginx 경량 분산 파일 시스템의 설치 및 사용 방법을 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿