이 문서에서는 기존 비공개 Edge에 새로운 주키퍼 노드 3개를 추가하는 방법을 설명합니다. Cloud 설치
기존 Edge 설치에 하나 또는 두 개의 주키퍼 노드를 추가할 수 있지만 아래에 설명된 대로 동물원키퍼 투표자 노드 수가 항상 홀수인지 확인하세요.
기존 Edge 구성
프로덕션 시스템에 지원되는 모든 Edge 토폴로지는 ZooKeeper 노드 3개를 사용하도록 지정합니다. 노드 세 개는 ZK_HOSTS
에 지정되고
ZK_CLIENT_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" CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd
각 항목의 의미는 다음과 같습니다.
ZK_HOSTS
는 ZooKeeper 노드의 IP 주소 또는 DNS 이름을 지정합니다. IP 주소 또는 DNS 이름은 모든 ZooKeeper 노드에 동일한 순서로 나열되어야 합니다. 멀티 데이터 센터 환경에서 두 데이터 센터의 모든 동물원 Keeper 노드를 나열합니다.ZK_CLIENT_HOSTS
는 다음을 지정합니다. 이 데이터 센터에서 사용하는 주키퍼(ZooKeeper) 노드의 IP 주소 또는 DNS 이름입니다. IP 주소 또는 DNS 이름이 모든 동물원Keeper 노드에서 동일한 순서로 나열되어야 합니다.단일 데이터 센터 설치의 경우
ZK_HOSTS
에 지정된 것과 동일한 노드입니다. 다중 데이터 센터 환경에서 이 환경의 동물원키퍼 노드만 나열하세요. 데이터 센터
새 ZooKeeper 노드 3개를 추가하도록 구성 파일 수정
이 예시에서 새 ZooKeeper 노드 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 ZK_HOSTS to add each new node after an existing nodes. ZK_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16:observer" # Update ZK_Client_HOSTS to add each new node after an existing nodes. ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16"
ZK_HOSTS
의 마지막 노드를 다음으로 표시합니다.
:observer
수정자. :observer
수정자가 없는 노드를 '투표자'라고 합니다. '투표자' 수가 홀수여야 합니다. 변경할 수 있습니다 따라서 이 구성에는 ZooKeeper 투표자 5명과 관찰자 1명이 있습니다.
노드를 ZK_HOSTS
및 둘 다에 추가해야 합니다.
같은 순서로 ZK_CLIENT_HOSTS
. 그러나 :observer
수정자는 생략합니다.
ZK_CLIENT_HOSTS
설정 시
Edge 구성
구성 파일을 수정한 후에는 다음 작업을 모두 실행해야 합니다.
새 노드에 ZooKeeper 설치
- 다음에 설명된 대로 첫 번째 노드에
apigee-setup
를 설치합니다. Edge Apigee-setup 유틸리티를 설치합니다. - 다음 명령어를 사용하여 첫 번째 노드에 주키퍼를 설치합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
- 나머지 새 주키퍼 노드에 1단계와 2단계를 반복합니다.
기존 주키퍼 재구성 노드
기존 ZooKeeper 노드에서 다음을 실행합니다.
- 새 구성 파일을 사용하여 설정 명령어를 다시 실행합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
모든 주키퍼 노드 다시 시작
모든 ZooKeeper 노드에서 다음을 실행합니다.
- 노드를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
모든 ZooKeeper 노드를 다시 시작해야 하지만 다시 시작하는 순서는 중요하지 않습니다.
관리 서버 노드 재구성
관리 서버 노드에서 다음을 실행합니다.
- 설정 명령어를 실행합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-management-server setup -f updatedConfigFile
- 관리 서버를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
모든 라우터 재구성
모든 라우터 노드에서 다음을 실행합니다.
- setup 명령어를 실행합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-router setup -f updatedConfigFile
- 라우터를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
모든 메시지 프로세서 재구성
모든 메시지 프로세서 노드에서 다음을 실행합니다.
- 설정 명령어를 실행합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
- 메시지 프로세서를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
모든 Qpid 노드 재구성
모든 Qpid 노드:
- 설정 명령어를 실행합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server setup -f updatedConfigFile
- Qpid를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
모든 Postgres 노드 재구성
모든 Postgres 노드에서 다음을 실행합니다.
- 설정 명령어를 실행합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server setup -f updatedConfigFile
- Postgres를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
설치 유효성 검사
netcat(nc) 또는 telnet을 사용하여 포트 2181에 명령어를 전송하여 새 ZooKeeper 노드의 설치를 확인할 수 있습니다. ZooKeeper 명령어에 관한 자세한 내용은 https://zookeeper.apache.org/doc/r3.8.3/zookeeperAdmin.html#sc_zkCommands를 참고하세요.
유효성 검사 방법은 다음과 같습니다.
- ZooKeeper 노드에 이 앱이 설치되어 있지 않으면 nc:를 설치합니다.
sudo yum install nc
- 다음 nc 명령어를 실행합니다.
echo stat | nc localhost 2181
- 각 주키퍼 노드에서 1단계와 2단계를 반복합니다. 노드 출력의
Mode
줄에서 한 노드는 관찰자로, 한 노드는 리더로, 나머지는 팔로워로 지정해야 합니다.