영구 채팅을 위한 고가용성 구성

영구 채팅의 고가용성 개요

영구 채팅의 고가용성(HA)은 영구 채팅방을 사용하고 프레즌스 이중화 그룹으로 구성된 시스템 이중화가 있는 경우 구축할 수있는 옵션 기능입니다.

영구 채팅의 고가용성은 영구 채팅방에 이중화 및 장애 조치 기능을 추가합니다. IM and Presence 서비스 노드 장애 또는 텍스트 전화회의(TC) 서비스가 실패할 경우 해당 서비스에서 호스팅하는 모든 영구 채팅방은 백업 노드 또는 TC 서비스에 의해 자동으로 호스팅됩니다. 장애 조치 후에 Cisco Jabber 클라이언트는 영구 채팅방을 원활하게 계속 사용할 수 있습니다.

외부 데이터베이스

영구 채팅(비 HA)과 영구 채팅 HA 설정의 주요 차이점은 외부 데이터베이스 요구 사항입니다.

  • 영구 채팅이 HA 없이 구축되는 경우 외부 데이터베이스는 개별 채팅 노드에만 연결됩니다. 영구 채팅방을 호스팅하는 각 노드에는 별도의 외부 데이터베이스 인스턴스가 필요합니다. 채팅 노드가 실패하는 경우 해당 노드에서 호스팅된 영구 채팅방은 채팅 노드가 다시 시작될 때까지 사용할 수 없게 됩니다.

  • 영구 채팅의 고가용성(HA)이 구축된 경우 외부 데이터베이스 인스턴스는 하위 클러스터(프레즌스 이중화 그룹)의 두 노드에 모두 연결됩니다. 영구 채팅 노드에 장애가 발생하는 경우 하위 클러스터의 백업 노드가 이를 인계 받아 채팅을 중단없이 계속할 수 있습니다.

영구 채팅의 고가용성 - 인터클러스터 예

다음 그림은 영구 채팅 고가용성이 클러스터 1에만 구축된 클러스터 간 네트워크를 표시합니다. 영구 채팅 고가용성을 사용하면 각 하위 클러스터는 외부 데이터베이스를 호스팅합니다. 클러스터 2에는 영구 채팅 고가용성이 활성화되어 있지 않으므로 외부 데이터베이스 요구 사항이 없습니다. 그러나 Cisco 텍스트 전화회의 관리자 서비스는 모든 노드에서 실행되므로 클러스터 2의 사용자는 클러스터 1에서 호스팅되는 영구 채팅방에 참가할 수 있습니다.


참고


이 예에서는 클러스터 1의 채팅 방만 영구 채팅 방을 호스트 하도록 구성 됩니다. 외부 데이터베이스 인스턴스와 함께 클러스터 2 노드에 영구 채팅 지원을 추가할 수도 있습니다. 이 경우 어느 한 클러스터의 모든 사용자가 어느 한 클러스터의 모든 노드에서 호스팅되는 영구 채팅방에 참가할 수 있습니다.


영구 채팅(비 HA) 및 영구 채팅 HA 요구 사항 비교

영구 채팅방을 구축하는 경우 영구 채팅방에 장애 조치 기능을 추가 할뿐만 아니라 영구 채팅을 위한 고가용성을 구축하는 것이 좋습니다. 그러나, 이는 필수가 아닙니다.

다음 표에서는 고가용성을 사용하거나 사용하지 않고 구축된 영구 채팅 간의 차이점에 대해 설명합니다.

표 1. 고가용성을 사용하거나 사용하지 않는 영구 채팅 비교

영구 채팅(HA 없음)

영구 채팅 HA

데이터베이스 요구 사항

영구 채팅방을 호스팅하는 각 클러스터 노드에 대해 별도의 외부 데이터베이스 인스턴스가 필요합니다. 이러한 외부 데이터베이스 인스턴스는 동일한 외부 데이터베이스 서버에서 생성될 수 있습니다.

권장: 최적의 성능 및 확장성을 위해 각 노드 또는 이중화 그룹에 대해 고유한 논리 외부 데이터베이스 인스턴스를 IM and Presence 클러스터에 구축합니다. 그러나, 이는 필수가 아닙니다.

최소 요구 사항: IM and Presence 클러스터 간 네트워크에서 영구 채팅을 위해 하나 이상의 외부 데이터베이스 인스턴스가 있어야 합니다. 그러나이 구축은 사용률이 높은 네트워크에서는 적절하지 않을 수 있습니다.

지원 되는 데이터베이스 형식

  • PostgreSql(버전 9.1 이상)

  • Oracle

  • Microsoft SQL Server

영구 채팅방을 호스팅하는 각 하위 클러스터(프레즌스 이중화 그룹)에 대해 별도의 외부 데이터베이스 인스턴스가 필요합니다. 이러한 외부 데이터베이스 인스턴스는 동일한 외부 데이터베이스 서버에서 생성될 수 있습니다.

권장: 최적의 성능 및 확장성을 위해 IM and Presence 클러스터 내의 각 하위 클러스터에 대해 별도의 외부 데이터베이스 인스턴스를 구축합니다. 그러나, 이는 필수가 아닙니다.

최소 요구 사항: IM and Presence 클러스터 간 네트워크에서 영구 채팅 HA를 위해 하나 이상의 외부 데이터베이스 인스턴스가 있어야 합니다. 그러나이 구축은 사용률이 높은 네트워크에서는 적절하지 않을 수 있습니다.

지원 되는 데이터베이스 형식

  • PostgreSql(버전 9.1 이상)

  • Oracle

  • Microsoft SQL Server(11.5(1)SU2)

영구 채팅 노드가 실패할 때의 행동

  • 실패한 노드에서 호스팅되는 영구 채팅방은 노드가 다시 복구될 때까지 액세스할 수 없습니다.

  • 장애가 발생한 노드에서 호스팅되는 사용자는 클러스터 이중화가 구성된 경우 하위 클러스터의 백업 노드로 장애 조치됩니다. 그러나 장애가 발생한 노드에서는 영구 채팅방에 액세스할 수 없습니다.

  • 영구 채팅방은 하위 클러스터의 백업 노드로 장애 조치합니다. 사용자는 서비스 중단없이 메시징을 계속할 수 있습니다.

  • 장애가 발생한 노드에서 호스팅되는 모든 사용자도 장애 조치됩니다.

영구 채팅의 고가용성 필수 조건

영구 채팅을 위한 고가용성을 구성하기 전에 다음 사항을 확인하십시오.

  • 영구 채팅방이 활성화되었습니다. 자세한 내용은 채팅방 설정 구성를 참조하십시오.

  • 고가용성은 각 프레즌스 이중화 그룹에서 활성화됩니다. 자세한 내용은 프레즌스 이중화 그룹 작업 흐름를 참조하십시오.

  • 외부 데이터베이스를 구성했습니다. 데이터베이스 설정 및 지원 정보는 IM and Presence 서비스 데이터베이스 설정 설명서를 참조하십시오.

영구 채팅의 고가용성 작업 흐름

프로시저

  명령 또는 동작 목적

단계 1

외부 데이터베이스 설정

영구 채팅방이 호스팅되는 각 하위 클러스터에 대해 별도의 외부 데이터베이스 인스턴스가 필요합니다. 이러한 별도의 외부 데이터베이스 인스턴스는 동일한 데이터베이스 서버에서 호스팅될 수 있습니다.

단계 2

외부 데이터베이스 연결 추가

IM and Presence 서비스에서 외부 데이터베이스에 대한 연결을 구성합니다.

단계 3

영구 채팅의 고가용성 설정 확인

영구 채팅 고가용성에 대한 시스템 설정을 확인하십시오.

단계 4

Cisco XCP 텍스트 전화회의 관리자 서비스 시작

모든 노드에서 Cisco XCP 텍스트 전화회의 관리자 서비스가 중지된 경우, 이 절차를 사용하여 서비스를 시작하십시오.

단계 5

외부 데이터베이스 병합

영구 채팅이 여러 외부 데이터베이스로 구성된 이전 릴리스에서 업그레이드하는 경우이 절차를 사용하여 외부 데이터베이스를 단일 데이터베이스로 병합합니다.

외부 데이터베이스 설정

영구 채팅을 위한 고가용성을 구축하려면 영구 채팅방이 호스팅되는 각 하위 클러스터에 대해 별도의 외부 데이터베이스 인스턴스가 필요합니다. 이러한 별도의 외부 데이터베이스 인스턴스는 동일한 데이터베이스 서버에서 호스팅될 수 있습니다.

하위 클러스터 쌍의 IM and Presence 노드 (프레 즌 스 그룹 Redudancy) 중복입니다. 6개의 노드로 구성된 IM and Presence 클러스터에는 최대 세 개의 하위 클러스터를 가질 수 있습니다. 6개의 노드로 구성된 IM and Presence 클러스터에서 영구 채팅용 HA가 활성화된 경우 세 개의 외부 데이터베이스 인스턴스와 세 개의 하위 클러스터 쌍이 있습니다.

PostgreSQL, Oracle 또는 Microsoft SQL Server를 외부 데이터베이스 연결에 사용할 수 있습니다. 설정에 대한 자세한 내용은 IM and Presence 서비스용 데이터베이스 설정 설명서를 참조하십시오.

다음에 수행할 작업

외부 데이터베이스 연결 추가

외부 데이터베이스 연결 추가

IM and Presence 서비스에서 영구 채팅 외부 데이터베이스 인스턴스에 대한 고가용성 연결을 구성합니다. 하위 클러스터의 두 노드가 동일하고 고유한 논리 외부 데이터베이스 인스턴스에 지정되었는지 확인합니다.

프로시저


단계 1

Cisco Unified CM IM and Presence 관리에서 메시징 > 외부 서버 설정 > 외부 데이터베이스를 선택합니다.

단계 2

새로 추가를 클릭합니다.

단계 3

데이터베이스 이름 필드에 데이터베이스 인스턴스 이름을 입력합니다.

단계 4

데이터베이스 유형 드롭다운에서 구축하는 외부 데이터베이스의 유형을 선택합니다.

단계 5

데이터베이스에 대한 사용자 이름암호 정보를 입력합니다.

단계 6

호스트 이름 필드에 데이터베이스의 호스트이름 또는 IP 주소를 입력합니다.

단계 7

나머지 설정은 외부 데이터베이스 설정 창에서 완료합니다. 필드 및 해당 설정에 대한 도움이 필요한 경우 온라인 도움말을 참조하십시오.

단계 8

저장을 클릭합니다.

단계 9

이 절차를 반복하여 각 외부 데이터베이스 인스턴스에 대한 연결을 만듭니다.


다음에 수행할 작업

영구 채팅의 고가용성 설정 확인

영구 채팅의 고가용성 설정 확인

이 절차를 사용하여 시스템이 영구 채팅을 위한 고가용성(HA)으로 설정되었는지 확인하십시오.


참고


프레즌스 이중화 그룹(하위 클러스터)에 대해 이미 고가용성을 활성화했으며 채팅방 구성에 영구 채팅이 포함된 경우 영구 채팅의 고가용성을 완료할 수 있습니다.


프로시저


단계 1

각 하위 클러스터에서 고가용성이 활성화되었는지 확인합니다.

  1. Cisco Unified CM 관리에서 시스템 > 프레즌스 이중화 그룹을 선택합니다.

  2. 찾기를 클릭하고 확인하려는 프레즌스 이중화 그룹을 선택합니다.

  3. 고가용성 활성화 확인란이 선택되었는지 확인합니다. 확인란이 선택 취소된 경우 확인란을 선택합니다.

  4. 저장을 클릭합니다.

  5. 클러스터의 각 이중화 그룹에 대해 이러한 단계를 반복합니다.

단계 2

영구 채팅이 활성화되었는지 확인합니다.

  1. Cisco Unified CM 관리에서 메시징 > 그룹 채팅 및 영구 채팅을 선택합니다.

  2. 영구 채팅 활성화 확인란이 선택되었는지 확인합니다. 확인란이 선택 취소된 경우 확인란을 선택합니다.

  3. 저장을 클릭합니다.

단계 3

Cisco Unified CM 관리에서 Cisco XCP 텍스트 전화회의 관리자 서비스가 모든 클러스터 노드에서 실행 중인지 확인합니다.

  1. 시스템 > 프레즌스 토폴로지를 선택합니다.

  2. 각 클러스터 노드에서 보기를 클릭하여 노드 세부 정보를 봅니다.

  3. 노드 상태에서 Cisco XCP 텍스트 전화회의 관리자 서비스가 시작됨인지 확인합니다.

  4. 왼쪽 탐색 모음에서 프레즌스 토폴로지를 클릭하여 클러스터 토폴로지로 돌아가서 모든 클러스터 노드의 상태를 확인할 때까지 위의 단계를 반복합니다.


다음에 수행할 작업

Cisco XCP 텍스트 전화회의 관리자 서비스를 활성화해야 하는 경우 Cisco XCP 텍스트 전화회의 관리자 서비스 시작.

Cisco XCP 텍스트 전화회의 관리자 서비스 시작

이 절차를 사용하여 Cisco XCP 텍스트 전화회의 관리자 서비스를 시작합니다. 이 서비스는 해당 노드의 사용자가 영구 채팅방에 참가할 수 있도록 모든 클러스터 노드에서 실행되어야 합니다.

프로시저


단계 1

Cisco Unified IM and Presence Service 가용성에서 도구 > 제어 센터 - 기능 서비스를 선택합니다.

단계 2

서버 드롭다운 목록에서 IM and Presence 클러스터 노드를 선택하고 이동을 클릭합니다.

단계 3

IM and Presence 서비스에서 Cisco XCP 텍스트 전화회의 관리자를 선택하고 시작을 클릭합니다.

단계 4

확인을 클릭합니다.

단계 5

(선택 사항) 서비스가 완전히 다시 시작되었는지 확인하려면 새로 고침을 클릭합니다.


외부 데이터베이스 병합

이 절차를 사용하여 외부 데이터베이스를 병합합니다.


참고


외부 데이터베이스 병합에 Microsoft SQL 데이터베이스는 지원되지 않습니다.


(선택 사항) 11.5(1) 이전 릴리스에서 업그레이드했고 여러 외부 데이터베이스를 사용하여 이중화를 관리하는 경우 외부 데이터베이스 병합 도구를 사용하여 외부 데이터베이스를 단일 데이터베이스로 병합합니다.

예제

11.5(1) 이전 릴리스에서 업그레이드했고 각 영구 채팅 노드가 별도의 외부 데이터베이스 인스턴스에 연결되도록 구성된 영구 채팅이 있는 경우 이 절차를 사용하여 하위 클러스터의 두 데이터베이스를 두 노드에 연결하는 단일 데이터베이스로 병합합니다.

시작하기 전에

  • 2개의 소스 대상 데이터베이스가 프레즌스 이중화 그룹의 각 IM and Presence Service 노드에 올바르게 할당되었는지 확인합니다. 그러면 두 스키마가 모두 유효한지 확인됩니다.

  • 대상 데이터베이스의 테이블스페이스를 백업합니다.

  • 대상 데이터베이스에 새로 병합된 데이터베이스를 위한 충분한 공간이 있는지 확인합니다.

  • 원본 및 대상 데이터베이스에 대해 생성된 데이터베이스 사용자에게 다음 명령을 실행할 권한이 있는지 확인하십시오.

    • CREATE TABLE

    • CREATE PUBLIC DATABASE LINK

  • 데이터베이스 사용자에게 이러한 권한이 없는 경우 다음 명령을 사용하여 권한을 부여할 수 있습니다.

    • PostgreSQL:

      CREATE EXTENTION - 그러면 dblink가 생성되고 수퍼 사용자 또는 dbowner 권한이 필요합니다. 그런 후에 다음을 실행하여 dblink에 대한 권한을 실행합니다.

      GRANT EXECUTE ON FUNCTION DBLINK_CONNECT(text) to <user>

      GRANT EXECUTE ON FUNCTION DBLINK_CONNECT(text,text) to <user>

    • Oracle:

      GRANT CREATE TABLE TO <user_name>;

      GRANT CREATE PUBLIC DATABASE LINK TO <user_name>;

  • PostgreSQL 외부 데이터베이스를 사용하는 경우 pg_hba.conf 파일에 다음 액세스가 구성되어 있는지 확인하십시오.

    • IM and Presence 게시자 노드는 각 외부 데이터베이스에 대한 모든 액세스 권한이 있어야 합니다.

    • 외부 PostgreSQL 데이터베이스는 각 데이터베이스 인스턴스에 대한 모든 액세스 권한이 있어야 합니다. 예를 들어 외부 데이터베이스가 192.168.10.1에 구성된 경우 각 데이터베이스 인스턴스는 pg_hba.conf 파일에서 host dbName username 192.168.10.0/24 password로 구성되어야 합니다.

프로시저


단계 1

IM and Presence 서비스 게시자 노드에서 Cisco Unified CM IM and Presence 관리에 로그인합니다.

단계 2

프레즌스 이중화 이중화 그룹의 각 IM and Presence 노드에 대한 시스템 > 서비스 창에서 Cisco XCP 텍스트 전화회의 서비스를 중지합니다.

단계 3

메시징 > 외부 서버 설정 > 외부 데이터베이스 작업을 클릭합니다.

단계 4

참고

 
이 단계는 릴리스 15SU2 이상에 적용됩니다.

"외부 데이터베이스 병합 작업"라디오 단추를 클릭하십시오.

단계 5

병합 작업 목록을 표시하려면 찾기를 클릭합니다. 병합 작업 추가를 선택하여 새 작업을 추가합니다.

단계 6

외부 데이터베이스 병합 창에서 다음 세부 정보를 입력합니다.

  • 데이터베이스 유형 드롭다운 목록에서 Oracle 또는 Postgres를 선택합니다.
  • 두 원본 데이터베이스의 IP 주소와 호스트 이름 및 병합된 데이터가 포함될 대상 데이터베이스를 선택합니다.

데이터베이스 유형으로 Oracle을 선택한 경우, 테이블 스페이스 이름과 데이터베이스 이름을 입력합니다. Postgres를 데이터베이스 유형으로 선택한 경우에는 데이터베이스 이름을 입력합니다.

예제

영구 채팅 방에 매핑되는 현재 사용 중인 외부 데이터베이스로 DB1을 선택합니다.

데이터를 병합해야 하는 외부 데이터베이스인 대상 데이터베이스로 DB2를 선택하고, DB2 데이터베이스는 비어 있지 않아야 하며 MINVALUE(1) 기준을 만족하는 하나 이상의 영구 채팅 방이 있어야 합니다.

병합 후 원본 데이터베이스 DB1과 대상 데이터베이스 DB2의 데이터는 대상 데이터베이스 DB2에 저장됩니다. 또한, DB1 및 DB2에는 고유한 데이터가 있을 것입니다.

단계 7

기능 테이블 창에 텍스트 Conference(TC) 확인란이 기본적으로 선택됩니다. 현재 릴리스의 경우 다른 옵션은 사용할 수 없습니다.

단계 8

선택한 테이블 유휴성 검사를 클릭합니다.

참고

 

Cisco XCP 텍스트 전화회의 서비스가 중지되지 않은 경우 오류 메시지가 나타납니다. 서비스가 중지되었으면 유효성 검사가 완료됩니다.

단계 9

유효성 검사 세부 정보 창에 오류가 없는 경우 선택한 테이블 병합을 클릭합니다.

단계 10

병합이 성공적으로 완료되면 외부 데이터베이스 작업 찾기 및 나열 창이 로드됩니다. 찾기를 클릭하여 창을 새로 고치고 새 작업을 봅니다.

찾기를 클릭하여 창을 새로 고치고 새 작업을 봅니다.

세부 정보를 보려는 경우 작업의 ID를 클릭합니다.

단계 11

Cisco XCP 라우터 서비스 다시 시작.

단계 12

IM and Presence 서비스 노드에서 Cisco XCP 텍스트 전화회의 서비스를 시작합니다.

단계 13

새로 병합된 외부 데이터베이스(대상 데이터베이스)를 프레즌스 이중화 그룹에 다시 할당해야 합니다


영구 채팅의 고가용성 사용 사례

다음 흐름은 장애 조치 및 페일백에 대한 영구 채팅 흐름의 고가용성을 보여줍니다. 이 예에서는 두 개의 노드가 있는 IM and Presence 클러스터에 대해 설명합니다. IM and Presence 클러스터는 최대 6개의 노드를 가질 수 있으며 3개의 하위 클러스터를 허용합니다. 영구 채팅방이 모든 노드에서 호스팅되는 경우 3개의 별도 외부 데이터베이스 인스턴스가 필요합니다.


참고


이 기능 향상을 위해 TC(텍스트 전화회의) 서비스가 중요한 서비스가 되었습니다. 결과적으로 장애 조치가 Cisco XCP 라우터 서비스와 같은 노드의 다른 중요한 서비스의 장애로 인해 발생하더라도 TC 고가용성 장애 조치 흐름은 동일하게 유지됩니다.
그림 1. 영구 채팅을 위한 고가용성 구조

영구 채팅의 고가용성 장애 조치 사용 사례

이 예의 경우 2개의 고가용성(HA) 쌍 또는 하위 클러스터가 있는 4개의 IM and Presence 노드에 4명의 사용자가 있습니다. 사용자는 다음과 같이 할당됩니다.

하위 클러스터 1

하위 클러스터 2

  • Andy는 노드 1A에 있고 1A는 채팅방을 호스팅

  • Bob은 노드 1B에 있음

  • Catherine은 노드 2A에 있음

  • Deborah는 노드 2B에 있음

  1. 4명의 사용자 모두 노드 1A에서 호스팅되는 동일한 채팅방에서 채팅하고 있습니다.

  2. 노드 1A에서 텍스트 전화회의(TC) 서비스가 실패합니다.

  3. 90초 후 SRM(서버 복구 관리자)은 TC 중요 서비스의 실패를 판별하고 자동 장애 조치를 시작합니다.

  4. HA 상태 백업 모드에서 실행 중 상태로 전환하기 전에 노드 1B는 1A에서 사용자를 인계하고 실행 중이 아닌 중요 서비스 대체 작동됨 상태로 전환합니다.

  5. HA 장애 조치 모델에 따라 Andy는 노드 1A에서 자동으로 로그아웃되고 백업 노드 1B에 로그인됩니다.

  6. 다른 사용자는 영향을 받지 않지만 이제 노드 1B에서 호스팅되는 채팅방에 메시지를 계속 게시합니다.

  7. Andy는 영구 채팅방에 입장하고 메시지를 계속 읽거나 룸에 게시합니다.

영구 채팅의 고가용성 폴백 사용 사례

이 예의 경우 2개의 고가용성(HA) 쌍 또는 하위 클러스터가 있는 4개의 IM and Presence 노드에 4명의 사용자가 있습니다. 사용자는 다음과 같이 할당됩니다.

하위 클러스터 1

하위 클러스터 2

  • Andy는 노드 1A에 있고 1A는 채팅방을 호스팅

  • Bob은 노드 1B에 있음

  • Catherine은 노드 2A에 있음

  • Deborah는 노드 2B에 있음

  1. 4명의 사용자 모두 노드 1A에서 호스팅되는 동일한 채팅방에서 채팅하고 있습니다.

  2. 노드 1A에서 텍스트 전화회의(TC) 서비스가 실패합니다.

  3. HA 상태 백업 모드에서 실행 중으로 전환하기 전에 노드 1B는 1A에서 사용자를 인계하고 실행 중이 아닌 중요 서비스 대체 작동됨으로 전환합니다.

  4. HA 장애 조치 모델에 따라 Andy는 자동으로 로그아웃되고 백업 노드 1B에 로그인됩니다.

  5. Bob, Catherine 및 Deborah는 영향을 받지 않지만 이제 노드 1B에서 호스팅되는 채팅방에 메시지를 계속 게시합니다.

  6. IM and Presence IM 서비스 관리자가 수동 폴백을 시작합니다.

  7. 노드 1A는 회수 중으로 전환되고 노드 1B는 폴백 중으로 전환됩니다.

  8. Andy는 노드 1B에서 로그아웃됩니다. Bob, Catherine 및 Deborah는 영구 채팅방을 계속 사용하고 폴백이 발생하면 룸이 노드 1A로 다시 이동합니다.

  9. 노드 1B는 HA 상태 폴백 중에서 정상으로 폴백하고 피어 노드 룸을 언로드합니다.

  10. 노드 1A는 HA 상태 Taking Back에서 정상으로 이동하고 채팅방을 다시로드합니다.

  11. Andy는 영구 채팅방에 입장하고 메시지를 계속 읽거나 룸에 게시합니다.