HA - Proxy + Nginx 웹 부하 균형 구현 (nginx 편)
실험 환경:
HAProxy IP:10.2.18.219 Centos6.4-64bit
Web1 IP:10.2.16.254 Centos6.4-64bit
Web2 IP:10.2.16.253 Centos6.4-64bit
vlan , web nginx, web
nginx 에 대한 소 개 는 더 이상 말 하지 않 겠 습 니 다. 다음은 설치 설정 을 직접 말씀 드 리 겠 습 니 다.
이 예 는 nginx - 1.6.0 버 전 을 사용 합 니 다.
우선 설치 의존
yum -y install pcre* (이 컴퓨터 에 필요 한 의존 도 는 pcre 이 며, 컴 파일 알림 에 따라 설치 의존 도 를 선택 할 수 있 습 니 다)
압축 해제 설치 nginx:
tar -zxvf nginx-1.6.0.tar.gz -C ./
mkdir /usr/local/nginx #nginx 루트 디 렉 터 리 만 들 기
cd nginx-1.6.0
./configure --prefix=/usr/local/nginx
make && make install
설치 완료 후 프로필 수정
Nginx 프로필 은 주로 main (전역 설정), server (호스트 설정), upstream (부하 균형 서버 설정) 과 location (URL 이 특정 위치 에 맞 는 설정) 으로 나 뉜 다.main 부분 에서 설정 한 명령 은 다른 모든 설정 에 영향 을 줍 니 다.server 부분의 명령 은 주로 호스트 와 포트 를 지정 하 는 데 사 용 됩 니 다.upstream 명령 은 주로 부하 균형 에 사용 되 며 일련의 백 엔 드 서버 를 설정 합 니 다.location 부분 은 웹 페이지 위치 와 일치 하 는 데 사 용 됩 니 다.이 네 가지 관계 식: server 계승 main, location 계승 server, upstream 은 다른 설정 도 계승 하지 않 고 계승 되 지 않 습 니 다.
vim nginx.conf #다음은 이 예 에서 nginx 설정 입 니 다. 비교적 간단 합 니 다.
user nobody; #Nginx Worker 프로 세 스 를 지정 하여 사용자 와 사용자 그룹 을 실행 합 니 다. 기본 값 은 nobody 계 정 에서 실 행 됩 니 다.
worker_processes 5; #Nginx 가 시작 할 프로 세 스 수 를 지정 하 였 습 니 다.Nginx 프로 세 스 마다 평균 10M ~ 12M 의 메모 리 를 소모 합 니 다.경험 치 에 따라 일반적으로 하나의 프로 세 스 를 지정 하면 충분 합 니 다. 다 중 핵 CPU 라면 CPU 와 같은 프로 세 스 수 를 지정 하 는 것 을 권장 합 니 다.
error_log logs/error.log notice; #전역 오류 로그 파일 을 정의 하 는 데 사용 합 니 다.로그 출력 단 계 는 debug, info, notice, warn, error, crit 가 선택 할 수 있 습 니 다. 그 중에서 debug 출력 로그 가 가장 상세 하고 crit 출력 로그 가 가장 적 습 니 다.
pid logs/nginx.pid; #pid 파일 위치 지정
events { #이벤트 명령 은 Nginx 의 작업 모드 와 연결 수 상한 선 을 설정 합 니 다.
use epoll; #Nginx 의 작업 모드 를 epoll 로 지정 합 니 다. Nginx 가 지원 하 는 작업 모드 는 select, poll, kqueue, epoll, rtsig, / dev / poll 입 니 다. 그 중에서 select 와 poll 은 모두 표준 작업 모드 입 니 다. kqueue 와 epoll 은 효율 적 인 작업 모드 입 니 다. 다른 것 은 epoll 은 Linux 플랫폼 에 사용 되 고 kqueue 는 BSD 시스템 에 사 용 됩 니 다. Linux 시스템 에 대해 서 는 epoll 작업 모드 가 우선 입 니 다.
worker_connections 1024; #Nginx 의 모든 프로 세 스 의 최대 연결 수 를 정의 하 는 데 사용 합 니 다. 기본 값 은 1024 입 니 다.
}
#최대 클 라 이언 트 연결 수 는 위 에서 정의 하 는 workerprocesses 와 이 workerconnections 결정, 즉 최대 연결 수 = workerprocesses*worker_connections, 역방향 에이전트 일 때 최대 연결 수 = workerprocesses * worker_connections / 4 프로 세 스 의 최대 연결 수 는 Linux 시스템 프로 세 스 의 최대 열 린 파일 수 에 제한 을 받 습 니 다. 운영 체제 명령 "ulimit - n 65536" 을 실행 한 후 workerconnections 설정 이 유효 합 니 다.
http { #HTTP 서버 설정
include mime.types;
default_type application/octet-stream; #로그 형식 설정
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 logs/access.log main; #로그 에 접근 할 경 로 를 지정 합 니 다.
sendfile on; #고 효율 파일 전송 모드 열기
keepalive_timeout 60; #클 라 이언 트 연결 은 활동 시간 을 초과 합 니 다. 이 시간 을 초과 하면 서버 가 이 연결 을 닫 습 니 다.
gzip on; #GZIP 압축 을 열 고 출력 데이터 흐름 을 실시 간 으로 압축 합 니 다.
gzip_min_length 1100; #압축 을 허용 하 는 페이지 의 최소 바이트 수 입 니 다. 페이지 의 바이트 수 는 header 헤더 의 Content - Length 에서 가 져 옵 니 다. 기본 값 은 0 입 니 다. 페이지 가 많 든 많 든 압축 을 합 니 다. 1K 이상 의 바이트 수로 설정 하 는 것 을 권장 합 니 다. 1K 보다 작 으 면 눌 릴 수록 클 수 있 습 니 다.
gzip_buffers 4 8k; #4 개 단위 8K 의 메모 리 를 압축 결과 스 트림 캐 시 로 신청 합 니 다. 기본 값 은 원본 데이터 크기 와 같은 메모리 공간 을 신청 하여 gzip 압축 결 과 를 저장 하 는 것 입 니 다.
gzip_types text/plain; #압축 형식 을 지정 합 니 다. 지정 하 든 안 하 든 'text / html' 형식 은 항상 압축 됩 니 다.
output_buffers 1 32k;
postpone_output 1460;
server { #가상 호스트 설정
listen 80; #가상 호스트 의 서비스 포트 지정
server_name 10.2.16.254 www.czy.com; #IP 주소 나 도 메 인 이름 을 지정 하고 여러 도 메 인 이름 사 이 를 빈 칸 으로 구분 합 니 다.
charset utf8; #웹 페이지 기본 인 코딩 형식 지정
access_log logs/czy.access.log main; #가상 호스트 의 로그 파일 지정
location / { #URL 매 칭 설정 (URL 주소 매 칭 은 Nginx 설정 에서 가장 유연 한 부분 입 니 다. location 은 정규 표현 식 매 칭 을 지원 하고 조건 판단 매 칭 도 지원 합 니 다. 사용 자 는 location 명령 을 통 해 Nginx 대 동, 정적 웹 페이지 를 여과 처리 할 수 있 습 니 다.
root html; #웹 파일 저장 폴 더 지정
index index.html index.htm; #첫 페이지 파일
}
error_page 500 502 503 504 /50x.html; #가상 호스트 의 오류 정보 반환 페이지 를 설정 하 였 습 니 다.
location = /50x.html { #error page 명령 은 각종 오류 정보의 반환 페이지 를 맞 출 수 있 습 니 다. 특히 이 오류 정보의 반환 페이지 크기 는 512 K 를 초과 해 야 합 니 다.
root html; #웹 파일 저장 폴 더 지정
}
}
}
:wq
종료 저장, nginx 프로필 이 완료 되 었 습 니 다!
시작 nginx:
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
시작 에 성공 하면 같은 동작 은 다른 웹 2 서버 에서 두 대의 nginx 가 모두 설정 되면 HA - proxy 를 설정 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
nginx 파일 서버 구축 에 설치nginx 상용 명령: 2. nginx - s stop 정지 3. 로 딩 설정 nginx - s reload 다시 시작 4. nginx - s 종료 5. 도움말: nginx - h 원본 코드 방식 설치 nginx: ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.