구성요소를 한 머신에서 다른 머신으로 이동하면 다음과 같은 경우 구성 불일치가 발생할 수 있습니다. 구성요소 구성 파일의 IP 주소가 동기화된 상태로 유지되지 않습니다.
이 섹션에서는 구성 불일치를 진단하고 해결하는 방법을 설명합니다.
IP 주소와 호스트 이름 비교
구성요소 구성 파일에는 호스트 이름이 아닌 IP 주소를 사용해야 합니다.
일부 구성 요소 구성 파일을 사용하면 호스트 이름을 사용하면 문제 해결이 복잡해질 수 있습니다. 예를 들어 호스트 이름은 DNS 서버 연결, 조회 실패 및 DNS 전송과 관련된 문제의 원인이 될 수 있습니다. 동기화를 지원합니다.
따라서 Apigee에서는 모든 구성요소에 IP 주소를 사용하는 것이 좋습니다. 구성할 수 있습니다 Cassandra와 같은 일부 경우에는 IP 주소를 사용해야 하며 호스트 이름 문서에 있는 대부분의 예에서는 구성요소 구성에 IP 주소를 사용합니다.
호스트 이름과 IP 주소의 경우 다음 시나리오의 영향을 고려하세요. 다음 사항에 유의하세요.
시나리오 | 서버 이동에 미치는 영향 |
---|---|
IP 주소 변경 | 원래 IP 주소를 참조하는 모든 관련 파일 업데이트 |
IP 주소 변경 없이 호스트 이름 변경 | 영향 없음 |
IP 주소 변경에 따른 호스트 이름 변경 | IP 주소 변경과 동일 |
Cassandra 노드의 IP 주소 변경
Cassandra 노드의 IP 주소를 변경하려면 다음 단계를 수행합니다.
대상 단일 Cassandra 노드로 구성된
/opt/apigee/customer/application/cassandra.properties
수정 할 수 있습니다. 파일이 없으면 새로 만듭니다.- 다음 매개변수를 변경합니다.
<ph type="x-smartling-placeholder">
- </ph>
conf_cassandra_seeds
및conf_cassandra_listen_address
설정 매개변수를 사용하여 시스템의 새 IP 주소를 지정합니다.- 사용할
conf_cassandra_rpc_address
변경 새 IP 주소 또는 0.0.0.0 (Cassandra Thrift가 인터페이스).
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
열기 생성하는 방법을 알아보겠습니다 다음과 같은 형식으로 이전 IP 주소와 기본 설정이 표시됩니다.192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
해당 정보를 저장합니다.
/opt/apigee/customer/application/cassandra.properties
수정 지정된 이전 IP 주소를 새 IP 주소로 변경할 수 있습니다.conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
'\n'을(를) 삽입해야 합니다. 동일한 IP 주소 뒤에 사용할 수 있습니다.
- Cassandra를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- 필요한 경우 ZooKeeper도 복구합니다 (ZooKeeper 노드의 IP 주소 변경 참고). 그 외의 경우에는 관리 서버부터 시작하여 모든 Apigee 플랫폼 구성요소를 다시 시작합니다.
대상 여러 Cassandra 노드가 있는 구성 (링)
- 변경할 노드가 시드 노드인 경우
/opt/apigee/customer/application/cassandra.properties
을 수정합니다. 파일을 생성하고conf_cassandra_seeds
매개변수를 변경하여 수정된 시스템의 새 IP를 반환합니다. cassandra.properties 파일이 존재하지 않는 경우 있습니다. /opt/apigee/customer/application/cassandra.properties
수정 를 확인하고 다음 매개변수를 변경합니다. <ph type="x-smartling-placeholder">- </ph>
- 새 IP 주소를 사용하도록
conf_cassandra_listen_address
를 설정합니다. - 새 IP 주소 또는 '0.0.0.0'을 사용하도록
conf_cassandra_rpc_address
를 설정합니다. 이를 통해 Cassandra Thrift가 모든 인터페이스에서 리슨할 수 있습니다.
- 새 IP 주소를 사용하도록
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
열기 생성하는 방법을 알아보겠습니다 모든 Cassandra IP 주소와 기본 설정이 양식:192.168.56.101=dc-1:ra-1 192.168.56.102=dc-1:ra-1 192.168.56.103=dc-1:ra-1 default=dc-1:ra-1
해당 정보를 저장합니다.
/opt/apigee/customer/application/cassandra.properties
수정 지정된 이전 IP 주소를 새 IP 주소로 변경할 수 있습니다.conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n
'\n'을(를) 삽입해야 합니다. 동일한 기본 설정을 사용합니다. 확인할 수 있습니다.
- 수정된 시스템에서 Cassandra를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- 다른 모든 노드의 경우, 3단계와 4단계에서 변경한 내용을 반복하여 Cassandra 링에서 이 노드의 위치를 알립니다. 또한 1단계에 설명된 대로 시드 노드 IP를 변경합니다.
- 남아 있는 각 Cassandra 노드를 하나씩 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- 수정된 노드에서
nodetool ring
명령어를 실행하여 링이 완료되었는지 확인합니다. 이 유틸리티는/opt/apigee/apigee-cassandra/bin
에서 찾을 수 있습니다.nodetool [-u username -pw password] -h localhost ring
- 수정된 노드에서
nodetool repair
를 실행합니다. 이 프로세스는 다소 시간이 걸릴 수 있으므로 API 트래픽이 가장 많은 시간에는 실행하지 않는 것이 좋습니다.nodetool [-u username -pw password] -h localhost repair -pr
- 필요한 경우 ZooKeeper를 복구한 다음 (ZooKeeper 노드의 IP 주소 변경 참고) 관리 서버부터 시작하여 모든 Apigee 플랫폼 구성요소를 다시 시작합니다.
데이터 스토어 업데이트 등록
- 다음 명령어를 사용하여 이전 IP 주소를 지정하는 데이터 저장소 등록의 UUID를 찾습니다.
명령어를 참조하세요 '유형'을 기록합니다. 'UUID' 매개변수:
<ph type="x-smartling-placeholder">
- </ph>
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
여기서 DC은 데이터 센터 이름입니다. 단일 데이터 센터 설치에서 값은 일반적으로 'dc-1'입니다.
-
- 아래 명령어 중 하나를 사용하여 새 IP 주소를 등록합니다. 필요한 명령어는
변경된 노드의 유형에 따라 다릅니다.
- type="application-datastore"의 경우:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP®ion=REGION&pod=central" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- type="kms-datastore"의 경우:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \ &InternalIP=NEWIP®ion=REGION&pod=GATEWAY_POD" -H 'content-type: \ application/x-www-form-urlencoded' -X POST
- type="reportcrud-datastore"의 경우:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \ "Type=reportcrud-datastore&InternalIP=NEW_IP®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- type="application-datastore"의 경우:
- IP 주소가 사용된 시스템의 UUID에 대한 이전 등록을 삭제합니다.
변경할 수 있습니다. 이러한 UUID 문제 각각에 대해 다음을 수행합니다.
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
주키퍼 노드의 IP 주소 변경
주키퍼 노드의 IP 주소를 변경하려면 다음 단계를 따르세요.
IP 주소 변경 및 ZooKeeper 앙상블 다시 시작 (다중 노드 앙상블 구성의 경우) 만 해당)
- 편집기에서
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
을 엽니다. 다음과 같이 표시됩니다. 다음 형식의 기본 설정server.1=192.168.56.101:2888:3888 server.2=192.168.56.102:2888:3888 server.3=192.168.56.103:2888:3888
해당 정보를 저장합니다.
- 각 ZaKeeper 노드에서
/opt/apigee/customer/application/zookeeper.properties
파일을 수정합니다. 파일을 사용하여conf_zoo_quorum
속성을 올바른 IP 주소로 설정합니다. 파일 존재하지 않으면 새로 만듭니다conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n
'\n'을(를) 삽입해야 합니다. 각 IP 주소 뒤에, 그리고 그 항목은 실행할 수도 있습니다
- 다음 명령어(
node를 주키퍼 머신의 IP 주소로 바꿉니다.
echo srvr | nc node 2181
출력의 Mode 행에 'leader'가 표시되어야 합니다.
- 리더로 시작하고 사용 중인 노드로 끝나는 동물원키퍼를 하나씩 다시 시작합니다.
IP 주소가 변경된 것을 볼 수 있습니다. 둘 이상의 zookeeper 노드가 IP 주소를 변경한 경우
모든 노드를 재시작할 수 있습니다
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- 위에 설명된
echo
명령어를 사용하여 각 주키퍼 노드를 확인합니다.
Apigee 노드에 변경된 구성 알림
- 각 라우터 노드에서
/opt/apigee/customer/application/router.properties
파일을 수정합니다. 변경할 수 있습니다. 파일이 없으면 새로 만듭니다.- 새 IP를 포함하도록
conf_zookeeper_connection.string
매개변수를 변경합니다. 주소 - 새 IP를 포함하도록
conf_zookeeper_zk1.host
매개변수를 변경합니다. 주소
- 새 IP를 포함하도록
- 모든 메시지 프로세서 노드에서
/opt/apigee/customer/application/message-processor.properties
파일을 수정합니다. 변경할 수 있습니다. 파일이 없으면 새로 만듭니다.- 새 매개변수를 포함하도록
conf_zookeeper_connection.string
매개변수를 변경합니다. IP 주소 - 새 IP를 포함하도록
conf_zookeeper_zk1.host
매개변수를 변경합니다. 주소
- 새 매개변수를 포함하도록
- 관리 서버 노드에서
/opt/apigee/customer/application/management-server.properties
파일을 수정합니다. 변경할 수 있습니다. 파일이 없으면 새로 만듭니다.- 새 매개변수를 포함하도록
conf_zookeeper_connection.string
매개변수를 변경합니다. IP 주소 - 새 IP를 포함하도록
conf_zookeeper_zk1.host
매개변수를 변경합니다. 주소
- 새 매개변수를 포함하도록
- 각 노드에서 다음 명령어를 실행하여 모든 Apigee 플랫폼 구성요소를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-all restart
LDAP 서버의 IP 주소 변경 (OpenLDAP)
OpenLDAP 노드의 IP 주소를 변경하려면 다음 안내를 따르세요.
- 관리 서버 노드에서
/opt/apigee/customer/application/management-server.properties
파일을 수정합니다. 파일에서 참조됩니다. 파일이 없으면 새로 만듭니다. management-server.properties
파일에서 다음과 같이 설정합니다.conf_security_ldap.server.host
매개변수를 새 IP 주소로 설정합니다.- 관리 서버를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
다른 Apigee 노드의 IP 주소 변경 유형
이러한 노드 유형 (라우터, 메시지 프로세서, Postgres)의 IP 주소를 변경하려면 다음을 수행하세요. 서버 (postgresql 아님) 및 Qpid 서버 (qpidd 아님):
- 다음
curl
명령어를 사용하여 새 내부 및 외부 IP 주소를 등록합니다.curl -u ADMINEMAIL:PW -X PUT \ http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
curl -u ADMINEMAIL:PW -X PUT \ http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip
여기서 uuid는 노드의 UUID입니다.
구성요소의 UUID를 가져오는 방법은 UUID 가져오기를 참고하세요.