-
로드 밸런서(Load Balancer) 이용한 클러스터(Cluster) 처리Spring/클러스터 2018. 9. 7. 10:42
웹 사이트를 운영할 때 보통 하나의 서버에서 모든 요청을 처리 할 수 없다. 따라서 요청을 여러 서버로 나눠 처리하는 분산환경이 필수적인데, 이때 요청 처리하는 서버들에 적절하게 요청을 분배하는 것이 더 효율적일 것이다. 이를 위해 톰캣, 아파치에서 로드 밸런서(Load Balancer)를 지원하고 있다.
1) http://tomcat.apache.org 접속 -> Download -> Tomcat 8 -> 64 bit Windows zip 다운
2) http://www.apachehaus.com -> download -> Apache 2.4.25 x64 검색
-> 독일 국기 클릭하면 자동 다운로드 된다.3) Mod_jk 다운 (Tomcat, Apache 통신 돕는 라이브러리)
http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/ 접속해
150k ctrl + f로 검색해 받는다.서버 관리하기 위한 새 폴더 생성.
3개 집파일 압축을 푼다. httpd-2.4.25-x64-r1.zip 파일 압축 풀어 Apache24만 가져온다.
1) 톰캣 설정. apache-tomcat8.1.x - bin 들어가 경로 복사 (service 배치파일 수행시키기 위해 )
cmd 켜 복사한 경로로 이동 후 service install 명령 입력한다. 이로써 제어판에 서비스가 등록된다.
제어판 - 관리도구 - 서비스 - 새로고침 하면 Apache Tomcat 등록되어 있음을 확인할 수 있다. 시작 유형이 수동인데, 자동으로 바꿔줘 컴퓨터 켜지면 톰캣 켜도록 한다. 마우스 오른쪽 버튼 - 속성 클릭
시작 유형 자동으로 변경
localhost:8080으로 접속했을 때 톰캣 홈페이지가 나오면 설치 완료. 이후 아파치 설치 해야 한다.
로드밸런서 지원하는 mod_jk 모듈을 아파치에 등록해야 한다. tomcap-connecters 폴더에서 mod_jk 파일 복사해
Apache24 - modules에 붙여넣는다.
Apache24 - conf 이동해 httpd.conf 파일 메모장으로 열기.
SRVROOT 검색. 서버 루트 경로를 적어줘야 한다. 현재 Apache24 폴더의 경로로 지정해준다.
httpd.conf 설정을 적용시키는 절차 수행한다. bin 폴더에서 httpd install 명령어 사용한다.
- Apache24 - bin 폴더로 이동해 경로 복사한다.cmd에서 cd 명령어로 이동해 httpd -k install 명령어 통해 설정 적용 및 서비스 등록한다. 이미 설치되어 있다고 나오지만 처음 하면 잘 되야 한다.
제어판 - 관리도구 - 서비스 탭 새로고침 해 Apache24 찾아 시작 유형 자동으로 바꾸고 서비스 시작
localhost로 접속했을 때 Apache 홈페이지 나오면 설치 완료.
LoadModule 목록 하단에 LoadModule jk_module modules/mod_jk.so 입력한다.
위에 등록한 jk_module에 대한 설정을 httpd.conf 파일 최하단에 해준다.
JkWorkersFile에 요청 분할해 처리할 서버들에 대한 정보 설정하도록 한다.
Apache24/conf에 workers.properties 파일 생성한다. 확장자를 꼭 지켜줘야 한다.다음과 같이 클러스터링 수행할 서버에 대한 정보를 입력한다. host에 ip, lbfacter에 1로 하면
tomcat1과 tomcat2가 1:1의 비율로 수행한다. 이후 worker.balancer.balance_workers에 등록해주면 요청을 두개의 서버에서 나누어 처리하게 된다. 각각의 서버에 서로 구분할 수 있도록 콘솔 출력하면 결과를 확인할 수 있을 것이다.