ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 로드 밸런서(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에 등록해주면 요청을 두개의 서버에서 나누어 처리하게 된다. 각각의 서버에 서로 구분할 수 있도록 콘솔 출력하면 결과를 확인할 수 있을 것이다.


    'Spring > 클러스터' 카테고리의 다른 글

    EhCache  (0) 2018.09.07
Designed by Tistory.