이 문서에서는 기존 비공개 Edge에 새로운 주키퍼 노드 3개를 추가하는 방법을 설명합니다. Cloud 설치
기존 Edge 설치에 하나 또는 두 개의 주키퍼 노드를 추가할 수 있지만 아래에 설명된 대로 ZooKeeper 투표자 노드 수가 항상 홀수인지 확인하세요.
기존 Edge 구성
프로덕션 시스템에 지원되는 모든 Edge 토폴로지는 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
주키퍼 노드의 IP 주소 또는 DNS 이름을 지정합니다. IP 주소 또는 DNS 이름 모든 ZaKeeper 노드에서 동일한 순서로 나열되어야 합니다. 멀티 데이터 센터 환경에서 두 데이터 센터의 모든 동물원 Keeper 노드를 나열합니다.ZK_CLIENT_HOSTS
는 다음을 지정합니다. 이 데이터 센터에서 사용하는 주키퍼(ZooKeeper) 노드의 IP 주소 또는 DNS 이름입니다. IP 주소 또는 DNS 이름이 모든 동물원Keeper 노드에서 동일한 순서로 나열되어야 합니다.단일 데이터 센터 설치에서 이들은
ZK_HOSTS
다중 데이터 센터 환경에서 이 리소스에 동물원키퍼 노드만 나열합니다. 데이터 센터
추가할 구성 파일 수정 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
수정자가 없는 노드가 호출됩니다.
'voters'(투표자)라고 합니다. '투표자' 수가 홀수여야 합니다. 변경할 수 있습니다 따라서 이
주키퍼 투표자는 5명, 관찰자는 1명입니다.
노드를 ZK_HOSTS
및 둘 다에 추가해야 합니다.
같은 순서로 ZK_CLIENT_HOSTS
. 그러나 :observer
수정자는 생략합니다.
ZK_CLIENT_HOSTS
설정 시
Edge 구성
구성 파일을 수정한 후에는 다음 작업을 모두 수행해야 합니다.
새 노드에 주키퍼 설치
- 다음에 설명된 대로 첫 번째 노드에
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 노드에서 다음을 실행합니다.
- 새 구성 파일로 setup 명령어를 다시 실행합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
모든 주키퍼 노드 다시 시작
모든 ZooKeeper 노드에서 다음을 실행합니다.
- 노드를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
모든 ZooKeeper 노드를 다시 시작해야 하지만 재시작 순서는 중요하지 않습니다.
관리 서버 재구성 노드
관리 서버 노드에서 다음을 실행합니다.
- setup 명령어를 실행합니다.
/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
모든 메시지 재구성 프로세서
모든 메시지 프로세서 노드에서 다음을 실행합니다.
- setup 명령어를 실행합니다.
/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 노드에서:
- setup 명령어를 실행합니다.
/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 노드:
- setup 명령어를 실행합니다.
/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
설치 유효성 검사
명령어를 포트 2181로 전송하여 새 주키퍼 노드 설치를 검증할 수 있습니다. netcat (nc) 또는 telnet을 사용합니다. ZooKeeper 명령어에 대한 자세한 내용은 http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands를 참조하세요.
유효성 검사 방법은 다음과 같습니다.
- ZooKeeper 노드에 이 앱이 설치되어 있지 않으면 nc:를 설치합니다.
sudo yum install nc
- 다음 nc 명령어를 실행합니다.
echo stat | nc localhost 2181
- 각 주키퍼 노드에서 1단계와 2단계를 반복합니다. 다음 출력의
Mode
줄에서 노드 1개, 리더 1개, 나머지 노드 1개를 팔로어입니다.