AEM TarMK 콜드 대기에 대한 유지된 상태 검사 구성

이 문서에서는 기본 작성자 인스턴스만 사용자 트래픽을 수신하여 수동 승격 전에 대기 노드가 요청을 제공하지 않도록 Adobe Experience Manager(AEM) TarMK 콜드 대기 환경에서 Keepalived를 구성하는 방법에 대해 설명합니다.

설명 description

TarMK 콜드 대기를 사용하는 AEM 작성자 배포에서 Keepalived는 종종 활성 노드로 트래픽을 안내하는 가상 IP(VIP)를 관리하는 데 사용됩니다. 기본적으로 많은 구성은 VIP 할당에 대한 상태 검사로 간단한 포트 검사(예: 포트 8443이 수신 대기 중인지 확인)를 사용합니다. 그러나 이 접근 방식을 사용하면 기본 노드로 승격되지 않았더라도 대기 노드가 정상으로 간주되고 트래픽을 받을 수 있는 자격이 생길 수 있습니다. 이렇게 하면 사용자 또는 API 트래픽이 대기 노드로 라우팅될 수 있으며 이는 명시적으로 승격될 때까지 지원되지 않습니다.

환경

  • Adobe Experience Manager (AEM) TarMK 콜드 대기 상태로 작성자
  • 1개의 기본 및 1개의 대기(콜드 대기) 작성자 인스턴스
  • 로드 밸런싱을 위한 가상 IP(VIP) 관리 유지

증상

  • API 또는 사용자 트래픽이 기본 노드로 승격되기 전에 대기 노드에 도달하는 것으로 관찰됨
  • 특정 오류 메시지가 기록되지 않지만 트래픽이 예기치 않게 대기 노드로 라우팅됩니다.

원인

포트 가용성(예: 포트 8443)만을 기준으로 한 상태 검사는 기본 역할과 대기 역할을 구분하지 않습니다. 이렇게 하면 대기 노드가 VIP에 대한 자격이 있고 트래픽을 수신할 수 있습니다. TarMK 콜드 대기 토폴로지에서는 지원되지 않습니다.

해결 방법 resolution

아래 단계에 따라 문제를 해결하십시오.

  1. 현재 보관 상태 검사 구성을 검토하십시오. 포트 8443만 확인하는 경우(예: /usr/bin/nc -w 3 -zv localhost 8443과(와) 같은 명령을 사용하는 경우) 노드 역할을 결정하기에 충분하지 않습니다.

  2. 포트 검사를 노드가 주 작성자 인스턴스로 실행 중인지 확인하는 사용자 정의 상태 검사 스크립트로 대체합니다. 예를 들어 주 노드에만 있는 마커 파일 또는 다른 신뢰할 수 있는 표시기를 사용할 수 있습니다.

  3. 예제 사용자 정의 상태 확인 스크립트(마커 파일 사용):

    bash #!/bin/bash if [ -f /opt/aem/is_primary ] ; then exit 0 else exit 1 fi

    마커 파일(예: /opt/aem/is_primary)이 주 노드에만 있는지 확인하십시오. 수동 프로모션 프로세스의 일부로 이 파일을 제거하거나 생성합니다.

  4. 이 사용자 지정 스크립트를 VIP 자격 여부에 대한 상태 검사로 사용하도록 Keepalived 구성을 업데이트합니다.

  5. 일반 작업 중에 상태 확인 스크립트가 기본 노드에서만 성공을 반환하는지 확인합니다. 대기 노드는 승격될 때까지 상태 검사를 통과하지 않아야 합니다.

  6. 수동 프로모션의 경우:

    1. 페일오버가 필요한 경우 현재 기본 노드에서 AEM을 중지합니다.
    2. 구성을 업데이트하고 마커 파일을 만들어 대기 노드를 기본으로 승격합니다(예: touch /opt/aem/is_primary).
    3. 새 기본 노드에서 AEM을 시작합니다.
    4. 이제 상태 확인 스크립트가 성공하여 Keepalived가 새 기본 앱에 VIP을 광고할 수 있습니다.
    5. 지속적인 고가용성을 위해 필요에 따라 대기 노드를 다시 만들거나 재구성합니다.
    6. 활성 기본 노드만 VIP을 광고하고, 홍보 후 VIP을 통한 액세스를 테스트하여 사용자 트래픽을 수신하는지 확인합니다.
recommendation-more-help
experience-cloud-kcs-help-kbarticles