Cassandra 노드 추가

Private Cloud용 Edge v4.18.01

이 문서에서는 기존 프라이빗 클라우드용 Edge 설치에 Cassandra 노드 3개를 새로 추가하는 방법을 설명합니다.

기존 Edge 설치에 Cassandra 노드를 1~2개 추가할 수 있지만 한 번에 3개 노드를 추가하는 것이 좋습니다.

Cassandra 노드의 시스템 요구사항 목록은 설치 요구사항을 참조하세요.

기존 Edge 구성

프로덕션 시스템에 지원되는 모든 Edge 토폴로지는 Cassandra 노드 3개를 사용하도록 지정합니다. 세 개의 노드는 아래와 같이 구성 파일의 CASS_HOSTS 속성에 지정됩니다.

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com 
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt 
MSIP=$IP1 
USE_LDAP_REMOTE_HOST=n 
LDAP_TYPE=1
APIGEE_LDAPPW=secret 
MP_POD=gateway
REGION=dc-1 
ZK_HOSTS="$IP1 $IP2 $IP3" 
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" 
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" 
SKIP_SMTP=n
SMTPHOST=smtp.example.com 
SMTPUSER=smtp@example.com  
SMTPPASSWORD=smtppwd       

REGION 속성은 리전 이름을 'dc-1'로 지정합니다. 새 Cassandra 노드를 추가할 때 이 정보가 필요합니다.

구성 파일을 수정하여 새 Cassandra 노드 3개 추가

이 예시에서 새 Cassandra 노드 3개는 다음 IP 주소에 있습니다.

  • 10.10.0.14
  • 10.10.0.15
  • 10.10.0.16

먼저 Edge 구성 파일을 업데이트하여 새 노드를 추가해야 합니다.

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
# Add the new node IP addresses.
IP14=10.10.0.14
IP15=10.10.0.15
IP16=10.10.0.16
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com 
...
# Update CASS_HOSTS to add each new node after an existing nodes. 
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1" 

중요: 각 새 Cassandra 노드를 CASS_HOSTS기존 노드 뒤에 추가합니다.

이렇게 하면 기존 노드가 초기 토큰 설정을 유지하고 각 새 노드의 초기 토큰이 기존 노드의 토큰 값 사이에 있게 됩니다.

Edge 구성

구성 파일을 수정한 후에는 다음을 수행해야 합니다.

  • 기존 Cassandra 노드 재구성
  • 새 노드에 Cassandra 설치
  • 관리 서버 재구성

기존 Cassandra 노드 재구성

기존 Cassandra 노드에서 다음을 실행합니다.

  1. '-p c' 프로필과 새 구성 파일을 사용하여 setup.sh를 다시 실행합니다.
    > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile

새 노드에 Cassandra 설치

새 Cassandra 노드에서 다음을 실행합니다.

  1. 세 노드에 Cassandra를 설치합니다.
    1. Edge apigee-setup 유틸리티 설치에 설명된 대로 첫 번째 노드에 apigee-setup을 설치합니다.
    2. 업데이트된 구성 파일을 사용하여 첫 번째 노드에 Cassandra를 설치합니다.
      > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
    3. 나머지 새 Cassandra 노드에 대해 이 두 단계를 반복합니다.
  2. 구성 파일에 설정된 리전 이름을 REGION 속성으로 지정하여 새 Cassandra 노드 3개를 다시 빌드합니다. 이 예시에서는 'dc-1'입니다.
    1. 첫 번째 노드에서 다음을 실행합니다.
      > /opt/apigee/apigee-cassandra/bin/nodetool -h nodeIP rebuild dc-1
      여기서 nodeIP는 Cassandra 노드의 IP 주소입니다.
    2. 나머지 새 Cassandra 노드에서 이 단계를 반복합니다.

관리 서버 재구성

관리 서버 노드

  1. setup.sh를 다시 실행하여 새로 추가된 Cassandra 노드의 관리 서버를 업데이트합니다.
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile

모든 라우터 및 메시지 프로세서 다시 시작

  1. 모든 라우터:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  2. 모든 메시지 프로세서:
    > /opt/apigee/apigee-service/bin/apigee-service Edge-message-processor 재시작

기존 Cassandra 노드의 메모리 확보

기존 Cassandra 노드에서 nodetool cleanup 명령어를 실행하여 메모리를 확보합니다.

> /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP cleanup