본문 바로가기

IT-Consultant

Apache를 이용한 로드밸런서 설정

인터넷에 찾아보니 많이 복잡하게 설명되어 있어서 간단하게 정리한다.
1. Apache HTTPD Server 설치
   - yum install httpd로 설치 가능 
   - 원래는 mod_proxy 설정을 해줘야하는데, yum으로 설치할 경우 별도 조치가 필요 없다.  

2. httpd.conf 파일 수정
<Proxy balancer://mycluster>
BalancerMember http://web1:80
BalancerMember http://web2:80
</Proxy>
ProxyPass / balancer://mycluster/
ProxyPassReverse / balancer://mycluster/

3. 브라우저에서 테스트해보면 된다.

PHP의 경우 제대로 설정되었는지 확인해보려면 아래 코드를 만들어서 호출해보면 된다.

<?
if ($_SERVER["HTTP_X_FORWARDED_FOR"]) {
   if ($_SERVER["HTTP_CLIENT_IP"]) {
    $proxy = $_SERVER["HTTP_CLIENT_IP"];
  } else {
    $proxy = $_SERVER["REMOTE_ADDR"];
  }
  $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else {
  if ($_SERVER["HTTP_CLIENT_IP"]) {
    $ip = $_SERVER["HTTP_CLIENT_IP"];
  } else {
    $ip = $_SERVER["REMOTE_ADDR"];
  }
}

echo "ip:".$ip;
echo "<BR>proxy:".$proxy;

?>