Nginx + keepalived 부하 균형 높 은 사용 편 ③ 판

Nginx + keepalived 부하 균형 높 은 사용 편 ③ 판
중 소기 업 에 대해 비 싼 4 / 7 층 부하 균형 교환 기 를 구 매 할 자금 이 없다 면 Nginx 는 좋 은 7 층 부하 균형 선택 이 고 Nginx + Keepalived 를 통 해 Nginx 부하 균형 기 를 서로 준비 할 수 있 으 며 자의 적 으로 딱딱 한 판 에 방해 가 되 어 상대방 은 가짜 IP 를 이미 받 아 들 였 을 지도 모른다.다음 내용 은 세 번 째 업데이트 입 니 다. 다음은 설치 보 조 를 구체 적 으로 설명 하 겠 습 니 다.
1. 토폴로지 환경: 2.keepalivedwget 을 keepalived - 1.1.15. tar. gzcd kekeepalivedd - 1.1.115. / config-- prefix = / usr / local / / kekekeepalivedmake instacp / usr / local / / loca/ / / / kekeepalived/ / / usr / bin / / / / / / / / loca/ / / / loca/ / loca/ / / / / sysconfig/ / / / / sysconfig/ / / / / / / / us/ / / loca/ / / / / / / loca/ / / / / / / / loca/ / / / / / / / / / / / / / / / / / / / / / / / / / loca/ / / / / / / / / / loca/ / / / / / / / / / / / / / / / / / / / / keepalived/
vim keepalived.conf! Configuration File for keepalivedglobal_defs { notification_email { } notification_email_from smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id LVS_DEVEL}vrrp_instance VI_1 {state MASTER interface eth 0 virtual router id 51 mcast src ip 192.168.0.154 < = = 주 nginx 의 IP 소재 priority 100 advert int 1 authentication {auth type PASS auth pass chtopnet} virtual ipaddress {192.168.0.188 < = vip 소재} \ # service keepalived start 일 기 를 살 펴 보 겠 습 니 다. [root@ltos ~]# tail /var/log/messagesOct 6 03:25:03 ltos avahi-daemon[2306]: Registering new address record for 192.168.0.188 on eth0.Oct 6 03:25:03 ltos avahi-daemon[2306]: Registering new address record for 192.168.0.154 on eth0.Oct 6 03:25:03 ltos avahi-daemon[2306]: Registering HINFO record with values 'I686'/'LINUX'.Oct 6 03:25:23 ltos avahi-daemon[2306]: Withdrawing address record for fe80::20c:29ff:feb9:eeab on eth0.Oct 6 03:25:23 ltos avahi-daemon[2306]: Withdrawing address record for 192.168.0.154 on eth0.Oct 6 03:25:23 ltos avahi-daemon[2306]: Host name conflict, retrying with Oct 6 03:25:23 ltos avahi-daemon[2306]: Registering new address record for fe80::20c:29ff:feb9:eeab on eth0.Oct 6 03:25:23 ltos avahi-daemon[2306]: Registering new address record for 192.168.0.188 on eth0.Oct 6 03:25:23 ltos avahi-daemon[2306]: Registering new address record for 192.168.0.154 on eth0.Oct 6 03:25:23 ltos avahi-daemon[2306]: Registering HINFO record with values 'I686'/'LINUX'.
vrrp 가 시작 되 었 음 이 분명 합 니 다. 우 리 는 명령 을 내 려 반성 할 수 있 습 니 다.root@ltos html]# ip a1: lo: mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:0c:29:ba:9b:e7 brd ff:ff:ff:ff:ff:ff inet 192.168.0.154/24 brd 192.168.0.255 scope global eth0 inet 192.168.0.188/32 scope global eth0 inet6 fe80::20c:29ff:feba:9be7/64 scope link valid_lft forever preferred_lft forever3: sit0: mtu 1480 qdisc noop link/sit 0.0.0.0 brd 0.0.0.0
설명 vip 가 시작 되 었 습 니 다. 만약 에 이사 기 를 설정 하면 보조 기기 의 설정 이 대체적으로 똑 같 습 니 다. 설정 파일 에 약간의 변동 이 있 는 것 을 제외 하고 아래 에 보조 기기 의 설정 파일 을 붙 입 니 다.!Configuration File for keepalivedglobal_defs { notification_email { } notification_email_from smtp_server 127.0.0.1 smtp_connect_timeout 30 router_id LVS_DEVEL}vrrp_instance VI_1 {state BACKUP interface eth 0 virtual router id 51 mcast src ip 192.168.0.155 < = nginx 를 보조 하 는 IP 가 있 는 priority 100 advert int 1 authentication {auth type PASS auth pass chtopnet} virtual ipaddress {192.168.0.188 < = vip 가 있 는}}}
설정 반성 [root@ltos html]# ip a1: lo: mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:0c:29:ba:9b:e7 brd ff:ff:ff:ff:ff:ff inet 192.168.0.155/24 brd 192.168.0.255 scope global eth0 inet 192.168.0.188/32 scope global eth0 inet6 fe80::20c:29ff:feba:9be7/64 scope link valid_lft forever preferred_lft forever3: sit0: mtu 1480 qdisc noop link/sit 0.0.0.0 brd 0.0.0.0
그 효과 행동 을 테스트 하 는 것 은 매우 대략적이다. 메 인 보조 기기 에서 / var / www / html / 아래 에 차 이 를 가 진 홈 페이지 와 내용 파일 index. html 로 구분 하고 내용 은 192.168.0.154, 192.168.0.155 로 판단 한 다음 에 클 라 이언 트 기기 에서 elinks 를 사용한다. 호스트 다운 이 떨 어 진 후 보조 기 는 즉시 공급 업 무 를 인계 하고 시간 을 차단 하여 감상 하지 못 할 뻔 한다.그러나 master 의 nginx 작업 을 멈 추 면 keepalived 는 nginx 작업 을 주동 적 으로 시작 할 수 없습니다. 이것 도 heartbeat 2. X 에 대응 하 는 완벽 하지 않 은 부분 입 니 다. 즉, 작업 등급 - nginx 의 HA 를 할 수 없습니다.
※ 여기 서 설명 하고 자 하 는 것 은 첫째, master 상황 의 호스트 를 끊 고 선점 하지 않 는 방법 입 니 다. Nginx 부하 이퀄 라이저 두 대 를 모두 backup 상황 으로 설정 하 는 것 은 nopreempt (선점 하지 않 음) 이 backup 모드 만 지원 하기 때 문 입 니 다. 어느 backup 을 master 로 만 드 는 지, 이것 은 우선 순위 priority 가 결정 합 니 다. 이 설정 은 을 참고 한 것 입 니 다. 둘째,이런 구조의 오 류 는 준비 기 작업 기 가 유 휴 상태 에 있 고 하드웨어 자원 을 낭비 한 것 이다. 만약 에 두 대의 nginx 부하 균형 기 를 효과적으로 조작 하려 면 장 연의 금 산 여유 망 nginx 부하 균형 적 인 쌍 기 열 준비 방법 을 참고 할 수 있다.3. keepalived 는 heartbeat 2. X 에 비해 현재 nginx 일 을 할 수 없 는 HA 입 니 다. 그러나 현재 nginx 는 역방향 서리 / 부하 이퀄 라이저 가 매우 안정 적 이기 때문에 지연 이 발생 할 확률 이 낮 습 니 다 (관건 은 nginx 의 master 프로 세 스 가 매우 안정 적 입 니 다). 제 가 한 nginx 부하 균형 을 바탕 으로 하 는 작은 프로젝트 들 은 온라인 에서 1 년 이상 안정 되 었 습 니 다.(하마터면 단일 nginx 부하 균형 이 끊 어 질 뻔 한 상황) 이 성숙 한 생산 환경 (예 를 들 어 시 나 닷 컴) 을 조종 할 수 있 기 때문에 생산 환경 에서 셸 스 크 립 트 로 nginx 의 master 상황 을 감시 하 는 것 보다 오히려 효과 가 nagios / 핸드폰 문자 로 신고 하 는 것 이 효율 적 이다.
51cto.com/a/luyoujiaohuan/index.html
http://www.net527.com
Linux

좋은 웹페이지 즐겨찾기