Private Cloud용 Edge v4.18.01
이 문서에서는 기존 프라이빗 클라우드용 Edge 설치에 새 ZooKeeper 노드 3개를 추가하는 방법을 설명합니다.
기존 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 노드에 동일한 순서로 나열되어야 합니다. 다중 데이터 센터 환경에서 두 데이터 센터의 모든 ZooKeeper 노드를 나열합니다.
- ZK_CLIENT_HOSTS는 이 데이터 센터에서 사용하는 ZooKeeper 노드의 IP 주소 또는 DNS 이름을 지정합니다. IP 주소 또는 DNS 이름은 모든 ZooKeeper 노드에 동일한 순서로 나열되어야 합니다.
단일 데이터 센터 설치에서 이는 ZK_HOSTS에 지정된 것과 동일한 노드입니다. 다중 데이터 센터 환경에서 이 데이터 센터의 ZooKeeper 노드만 나열합니다.
새 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' 한정자가 없는 노드를 'voters'라고 합니다. 구성에 '투표자'가 홀수여야 합니다. 따라서 이 구성에는 ZooKeeper 투표자 5명과 관찰자 1명이 있습니다.
노드를 ZK_HOSTS 및 ZK_CLIENT_HOSTS에 동일한 순서로 추가해야 합니다. 단, ZK_CLIENT_HOSTS를 설정할 때는 ':observer' 수정자를 생략합니다.
Edge 구성
구성 파일을 수정한 후에는 다음 작업을 모두 실행해야 합니다.
새 노드에 ZooKeeper 설치
- Edge apigee-setup 유틸리티 설치에 설명된 대로 첫 번째 노드에 apigee-setup을 설치합니다.
- 다음 명령어를 사용하여 첫 번째 노드에 ZooKeeper를 설치합니다.
> /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
> /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile - 나머지 새 ZooKeeper 노드에 1단계와 2단계를 반복합니다.
기존 주키퍼 노드 재구성
기존 ZooKeeper 노드에서 다음을 실행합니다.
- '-p c' 프로필과 새 구성 파일을 사용하여 설정 명령어를 다시 실행합니다.
> /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 재시작
모든 라우터 재구성
모든 라우터 노드:
- 설정 명령어를 실행합니다.
> /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 명령어에 관한 자세한 내용은 http://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands를 참고하세요.
유효성 검사 방법은 다음과 같습니다.
- ZooKeeper 노드에 설치되어 있지 않으면 nc를 설치합니다.
> sudo yum install nc - 다음 nc 명령어를 실행합니다.
> echo stat | nc localhost 2181 - 각 ZooKeeper 노드에서 1단계와 2단계를 반복합니다.
노드 출력의 모드 줄에서 한 노드는 관찰자로, 한 노드는 리더로, 나머지는 팔로워로 지정되어야 합니다.