Solaris OS용 Sun Cluster 개념 안내서

로드 균형 조정 정책

로드 균형 조정은 응답 시간과 처리량에서 확장 가능 서비스의 성능을 개선합니다.

확장 가능한 데이터 서비스에는 puresticky 두 가지가 있습니다. pure 서비스는 모든 인스턴스가 클라이언트 요청에 응답할 수 있는 서비스입니다. sticky 서비스는 클라이언트가 같은 인스턴스에 요청을 보내는 서비스이며 그러한 요청이 다른 인스턴스로 전달되지는 않습니다.

pure 서비스는 가중치를 적용한 로드 균형 조정 정책을 사용합니다. 이 로드 균형 조정 정책에서 클라이언트 요청은 기본적으로 클러스터의 서버 인스턴스에서 일정하게 분산됩니다. 예를 들어, 3노드 클러스터에서 각 노드의 가중치가 1이라고 가정하면 각 노드는 해당 서비스 대신 전체 클라이언트 요청의 1/3을 처리합니다. 관리자는 언제든지 scrgadm(1M) 명령 인터페이스나 SunPlex Manager GUI를 통해 노드의 처리량을 변경할 수 있습니다.

sticky 서비스에는 일반 sticky와일드카드 sticky 등의 두 가지 종류가 있습니다. Sticky 서비스는 여러 TCP 연결을 통해 동시 응용 프로그램 수준 세션이 in-state 메모리(응용 프로그램 세션 상태)를 공유할 수 있게 합니다.

보통 sticky 서비스는 클라이언트가 여러 개의 동시 TCP 연결 사이에 상태를 공유할 수 있게 합니다. 서버 인스턴스가 단일 포트에서 수신하는 경우에 클라이언트를 “sticky”라고 합니다. 해당 서버 인스턴스가 활성 상태이고, 액세스 가능하며, 서비스가 온라인 상태인 동안 로드 균형 조정 정책이 변경되지 않는 경우 클라이언트의 모든 요청은 동일한 서버 인스턴스로 가도록 보장됩니다.

예를 들어, 클라이언트의 웹 브라우저는 세 개의 서로 다른 TCP 연결을 사용하여 포트 80에서 공유 IP 주소에 연결되지만, 그 연결들은 서비스에서 캐시된 세션 정보를 교환합니다.

sticky 정책을 일반화하면 여러 개의 확장 가능한 서비스가 동일한 인스턴스의 후면에서 세션 정보를 교환하는 것으로 확장할 수 있습니다. 이러한 서비스가 같은 인스턴스의 후면에서 세션 정보를 교환할 경우, 같은 노드의 서로 다른 포트에서 여러 서버 인스턴스가 수신하는 것과 비교하여 “sticky”하다고 합니다.

예를 들어, 전자 상거래 사이트의 고객은 포트 80에서 일반 HTTP를 사용하여 시장 바구니에 상품을 채우지만, 바구니의 상품 대금을 신용 카드로 지불하기 위해 보안 데이터를 보낼 때는 443 포트의 SSL로 전환합니다.

와일드 카드 sticky 서비스는 동적으로 할당된 포트 번호를 사용하지만, 클라이언트 요청은 여전히 같은 노드로 전달됩니다. 클라이언트는 IP 주소가 동일한 포트에 대해 “sticky wildcard”입니다.

이 정책의 좋은 예는 수동 모드 FTP입니다. 클라이언트는 포트 21의 FTP 서버에 연결되고, 동적 포트 범위의 청취자 포트 서버에 다시 연결하도록 서버에서 알립니다. IP 주소에 대한 모든 요청은 제어 정보를 통해 서버가 클라이언트에게 알렸던 동일 노드로 전송됩니다.

이 sticky 정책 각각에 대해 기본적으로 가중치가 적용된 로드 균형 조정 정책이 사용되므로 클라이언트의 초기 요청은 로드 균형 조정기가 지정한 인스턴스에 보내집니다. 클라이언트가 인스턴스 실행 노드에 대한 밀접성을 설정한 후에는 해당 노드가 액세스 가능하고 로드 균형 조정 정책이 변경되지 않은 경우, 이후 요청은 이 인스턴스로 보내집니다.

특정 로드 균형 조정 정책에 대한 추가 세부사항이 아래에 설명되어 있습니다.