이 문서는 하나 개의 시스템에 균형의 nginx 부하를 설정하는 방법에 대해 설명합니다, 나는 고정 표시기 3 창 Nginx에 시작됩니다, 그들은 요청을 처리에 대한 책임이 뒤에 하나의 nginx 프런트 데스크를 배포 할 책임이 있습니다.
첫째,가 / usr / local / 고정 표시기 / 폴더로 전환,이 폴더는 고정 표시기 맵 폴더를 사용하도록 설계되어, 중요한 폴더의 고정 표시기는 어디에서 실행, 여기에 매핑
MKDIR의 nginx
MKDIR nginx01
MKDIR nginx02
Nginx의 전면 Nginx의 파일에 저장되고
nginx를 서버 뒤에 nginx01와 nginx02 두 개의 파일을 저장하기위한 책임이있다
"하나의 nginx 구성 및 사전 시작"
nginx를 아래에 / / usr / 지방 / 고정 표시기로 전환
그런 다음 실행
에서 mkdir -p conf의 HTML 로그
conf의 전환
정력 nginx.conf
사용자의 nginx; 자동 worker_processes; 의 error_log /var/log/nginx/error.log; PID는 /run/nginx.pid; #로드 동적 모듈. /usr/share/nginx/README.dynamic를 참조하십시오. 포함은 / usr / 공유 / Nginx에 / 모듈 / * 의 .conf; 이벤트 { worker_connections 1024; } HTTP { log_format 주 '$ REMOTE_ADDR - $의 REMOTE_USER [$ time_local] "$ 요청' ' '$ 상태 $의 body_bytes_sent을"$ HTTP_REFERER '' ' "$ HTTP_USER_AGENT" "$ HTTP_X_FORWARDED_FOR"'; ACCESS_LOG /var/log/nginx/access.log 주요; 에 sendfile을; 에 tcp_nopush; keepalive_timeout 65; 2048 types_hash_max_size; /etc/nginx/mime.types을 포함한다; default_type 애플리케이션 / octet-stream을; # /etc/nginx/conf.d 디렉토리에서 모듈 식 구성 파일을로드합니다. # 참조 http://nginx.org/en/docs/ngx_core_module.html 사용법 #include 자세한 내용은 #을. /etc/nginx/conf.d/*.conf 포함한다; 서버 { 80 default_server을 듣고; 루트는 / usr / share /의 nginx / html로; # 기본 서버 블록에 대한 부하 구성 파일. /etc/nginx/default.d/*.conf 포함한다; 위치 / { proxy_pass 에 http : // 그림 ; } error_page /404.html을 404; 위치 /40x.html = { } error_page 500 502 503 504 /50x.html; 위치 /50x.html = { } } 상류 PIC { 서버 172.26.200.89:8088 중량 = 5; 서버 172.26.200.89:8089 중량 = 5; } }
구성 후 파일의 conf 저장
그런 다음 사전의 nginx를 시작합니다
고정 표시기 실행 --name mynginx -d -p 82:80 -v /usr/local/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v / usr / 지방 / 고정 표시기 /의 nginx / 로그 :는 / var / log / nginx를 -d의 nginx
"2, nginx01 구성 및 시작"
/ usr / 지방 / 고정 표시기 / nginx01 / 폴더로 전환
실행
에서 mkdir -p conf의 HTML 로그
그런 다음 conf 폴더로 전환
정력 nginx.conf
사용자의 nginx; 자동 worker_processes; 의 error_log /var/log/nginx/error.log; PID는 /run/nginx.pid; #로드 동적 모듈. /usr/share/nginx/README.dynamic를 참조하십시오. 포함은 / usr / 공유 / Nginx에 / 모듈 / * 의 .conf; 이벤트 { worker_connections 1024; } HTTP { log_format 주 '$ REMOTE_ADDR - $의 REMOTE_USER [$ time_local] "$ 요청' ' '$ 상태 $의 body_bytes_sent을"$ HTTP_REFERER '' ' "$ HTTP_USER_AGENT" "$ HTTP_X_FORWARDED_FOR"'; ACCESS_LOG /var/log/nginx/access.log 주요; 에 sendfile을; 에 tcp_nopush; keepalive_timeout 65; 2048 types_hash_max_size; /etc/nginx/mime.types을 포함한다; default_type 애플리케이션 / octet-stream을; # /etc/nginx/conf.d 디렉토리에서 모듈 식 구성 파일을로드합니다. # 참조 http://nginx.org/en/docs/ngx_core_module.html 사용법 #include 자세한 내용은 #을. /etc/nginx/conf.d/*.conf 포함한다; 서버 { 8088을 듣고; 루트는 / usr / share /의 nginx / html로; index.htm으로 index.html을 인덱스; } }
그런 다음 구성 파일을 저장하고 종료
전환에 / usr / 지방 / 고정 표시기 / nginx01 / HTML / 폴더
정력 index.html을은, 쓰기 뭔가 간단 같은 다음
8088 포트의 nginx
그런 다음 고정 표시기 시작
고정 표시기 실행 --name mynginx01 -d -p 8088 : 8088 -v /usr/local/docker/nginx01/conf/nginx.conf:/etc/nginx/nginx.conf -v / usr / 지방 / 고정 표시기 / nginx01 / 로그 :는 / var / log / nginx를 -v / usr / 지방 / 고정 표시기 / nginx01 / HTML :는 / usr / share /의 nginx / html로 -d의 nginx
"세, nginx02 구성 및 시작"
/ usr / 지방 / 고정 표시기 / nginx02 / 폴더로 전환
실행
에서 mkdir -p conf의 HTML 로그
그런 다음 conf 폴더로 전환
정력 nginx.conf
사용자의 nginx;
자동 worker_processes;
의 error_log /var/log/nginx/error.log;
PID는 /run/nginx.pid;
#로드 동적 모듈. /usr/share/nginx/README.dynamic를 참조하십시오.
포함은 / usr / 공유 / Nginx에 / 모듈 / * 의 .conf;
이벤트 {
worker_connections 1024;
}
HTTP {
log_format 주 '$ REMOTE_ADDR - $의 REMOTE_USER [$ time_local] "$ 요청' '
'$ 상태 $의 body_bytes_sent을"$ HTTP_REFERER ''
' "$ HTTP_USER_AGENT" "$ HTTP_X_FORWARDED_FOR"';
ACCESS_LOG /var/log/nginx/access.log 주요;
에 sendfile을;
에 tcp_nopush;
에 TCP_NODELAY;
2048 types_hash_max_size;
/etc/nginx/mime.types을 포함한다;
default_type 애플리케이션 / octet-stream을;
# /etc/nginx/conf.d 디렉토리에서 모듈 식 구성 파일을로드합니다.
# http://nginx.org/en/docs/ngx_core_module.html 참조 사용법 #include
자세한 내용은 #을.
/etc/nginx/conf.d/*.conf 포함한다;
서버 {
8089을 듣고;
루트는 / usr / share /의 nginx / html로;
index.htm으로 index.html을 인덱스;
}
}
그런 다음 구성 파일을 저장하고 종료
전환에 / usr / 지방 / 고정 표시기 / nginx02 / HTML / 폴더
정력 index.html을은, 쓰기 뭔가 간단 같은 다음
8089 포트의 nginx
그런 다음 고정 표시기 시작
고정 표시기 실행 --name mynginx02 -d -p 8089 : 8089 -v /usr/local/docker/nginx02/conf/nginx.conf:/etc/nginx/nginx.conf -v / usr / 지방 / 고정 표시기 / nginx02 / 로그 :는 / var / log / nginx를 -v / usr / 지방 / 고정 표시기 / nginx02 / HTML :는 / usr / share /의 nginx / html로 -d의 nginx
------------------------------- 라인 분할 ----------------- ------
이 시점에서, 전면과 두 개의 후면의 nginx는 이미, 우리는 테스트를 시작했다 nginx를
명령 줄을 실행
컬 127.0.0.1:82
도는 다음과 같습니다 :
사용자는, 따라서 제 요청 8088 nginx에하기의 nginx에서 우리는 때문에 예압 정책은 각각 50 %임을 알 수 있고, 두 번째 요청이 8088를 8089의 세 번째로 전송되는 nginx에 8089 네번째. . . . . .
우리는 참조 용으로 만 사용하면 전체 텍스트를 읽어 주셔서 감사합니다.