포털에서 SmartDocs를 사용하여 사양 편집기를 사용하여 사양을 만들고API를 게시하는 경우 Apigee Edge는 OpenAPI 사양 3.0을 지원하지만 일부 기능은 아직 지원되지 않습니다.
예를 들어 다음의 OpenAPI 사양 3.0 기능이 아직 지원되지 않습니다.
스키마 결합 및 확장을 위한 allOf 속성
원격 참조
OpenAPI 사양에서 지원되지 않는 기능을 참조하는 경우, 도구가 기능을 무시하지만 API 참조 문서는 계속 렌더링합니다. 다른 경우에는 지원되지 않는 기능이 API 참조 문서의 성공적인 렌더링을 방지하는 오류를 일으킵니다. 두 경우 모두 지원되지 않는 기능이 향후 출시 버전에서 지원될 때까지 사용되지 않도록 OpenAPI 사양을 수정해야 합니다.
참고: API 참조 문서를 렌더링할 때 사양 편집기는 SmartDocs보다 제한이 적으므로 도구에 따라 결과가 다를 수 있습니다.
포털에서 이 API 사용해 보기를 사용하는 경우 OpenAPI 사양에서 consumes에 설정된 값에 관계없이 Accept 헤더가 application/json으로 설정됩니다.
프라이빗 클라우드용 Edge 4.53.00 이상에서는 Cassandra와 애플리케이션 구성요소 (관리 서버, 메시지 프로세서 또는 라우터) 간의 특정 유형의 상호작용으로 인해 데이터 저장소 오류가 발생할 수 있습니다. 이러한 오류가 발생하면 특정 애플리케이션 구성요소의 시스템 로그에 다음 패턴의 로그가 표시됩니다.
com.datastax.driver.core.exceptions.ProtocolError: An unexpected protocol error occurred on host /WW.XX.YY.ZZ:9042.
이러한 오류는 Cassandra 데이터베이스에서 경고가 생성되지만 애플리케이션 구성요소가 이를 처리할 수 없기 때문에 발생합니다. 완화하려면 Cassandra 노드에서 경고를 방지하거나 억제하세요. 대부분의 경우 과도한 툼스톤으로 인해 경고가 생성됩니다. 과도한 툼스톤과 관련된 경고를 해결하려면 아래에 나열된 옵션 중 하나 또는 조합을 따르세요.
gc_grace_seconds 줄이기: 오류와 연결된 로그 메시지에 표시된 테이블의 경우 cqlsh를 통해 다음과 같이 명령어를 실행하여 gc_grace_seconds를 줄입니다.
# Below command sets gc_grace_seconds of kms.oauth_20_access_tokens to 1 day from default 10 days ALTER TABLE kms.oauth_20_access_tokens WITH gc_grace_seconds = '86400';
경고를 생성하기 위해 Cassandra에서 묘비 임계값 증가 방법은 다음과 같습니다.
Cassandra 노드에서 $APIGEE_ROOT/customer/application/cassandra.properties 파일을 만들거나 수정합니다.
묘비 경고 기준점을 기본값인 10,000에서 100,000으로 늘리거나 다음 줄을 추가하여 적절한 더 큰 값을 설정합니다. conf_cassandra_tombstone_warn_threshold=100000
위 파일이 apigee 사용자(chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties)가 소유하고 읽을 수 있는지 확인합니다.
노드에서 Cassandra 애플리케이션을 다시 시작합니다. apigee-service apigee-cassandra restart
각 Cassandra 노드에서 위 단계를 하나씩 반복합니다.
42733857: 암호화된 키-값 맵 (KVM) 업데이트 시 지연 시간
항목이 많은 암호화된 키 값 맵을 사용하는 경우 관리 API를 통해 항목을 추가하거나 업데이트할 때 또는 KeyValueMapOperations 정책 내의 PUT 요소를 통해 항목을 추가하거나 업데이트할 때 지연 시간이 발생할 수 있습니다 . 성능에 미치는 영향의 정도는 일반적으로 암호화된 KVM에 저장된 총 항목 수에 비례합니다.
이 문제를 완화하려면 항목 수가 과도한 암호화된 KVM을 만들지 않는 것이 좋습니다. 실행 가능한 해결책은 큰 KVM을 여러 개의 작은 KVM으로 나누는 것입니다. 또한 사용 사례에서 허용하는 경우 암호화되지 않은 KVM으로 마이그레이션하는 것도 효과적인 완화 전략이 될 수 있습니다. Apigee는 이 문제를 인지하고 있으며 향후 패치에서 수정사항을 출시할 계획입니다.
Java 콜아웃
'BC' 이름을 사용하여 Bouncy Castle 암호화 제공자를 로드하려고 하는 고객 Java 콜아웃은 기본 제공자가 FIPS를 지원하기 위해 Bouncy Castle FIPS로 변경되었기 때문에 실패할 수 있습니다. 사용할 새 제공업체 이름은 'BCFIPS'입니다.
Private Cloud용 Edge 4.53.00
443272053: 에지 구성요소의 Datastore 오류
프라이빗 클라우드용 Edge 4.53.00 이상에서는 Cassandra와 애플리케이션 구성요소 (관리 서버, 메시지 프로세서 또는 라우터) 간의 특정 유형의 상호작용으로 인해 데이터 저장소 오류가 발생할 수 있습니다. 이러한 오류가 발생하면 특정 애플리케이션 구성요소의 시스템 로그에 다음 패턴의 로그가 표시됩니다.
com.datastax.driver.core.exceptions.ProtocolError: An unexpected protocol error occurred on host /WW.XX.YY.ZZ:9042.
이러한 오류는 Cassandra 데이터베이스에서 경고를 생성하지만 애플리케이션 구성요소가 이를 처리할 수 없기 때문에 발생합니다.이를 완화하려면 Cassandra 노드에서 경고를 방지하거나 억제하세요. 대부분의 경우 과도한 툼스톤으로 인해 경고가 생성됩니다. 과도한 툼스톤과 관련된 경고를 해결하려면 아래에 나열된 옵션 중 하나 또는 조합을 따르세요.
gc_grace_seconds 줄이기: 오류와 연결된 로그 메시지에 표시된 테이블의 경우 cqlsh를 통해 다음과 같이 명령어를 실행하여 gc_grace_seconds를 줄입니다.
# Below command sets gc_grace_seconds of kms.oauth_20_access_tokens to 1 day from default 10 days ALTER TABLE kms.oauth_20_access_tokens WITH gc_grace_seconds = '86400';
경고를 생성하기 위해 Cassandra에서 묘비 임계값 증가 방법은 다음과 같습니다.
Cassandra 노드에서 $APIGEE_ROOT/customer/application/cassandra.properties 파일을 만들거나 수정합니다.
묘비 경고 기준점을 기본값인 10,000에서 100,000으로 늘리거나 다음 줄을 추가하여 적절한 더 큰 값을 설정합니다. conf_cassandra_tombstone_warn_threshold=100000
위 파일이 apigee 사용자(chown apigee:apigee $APIGEE_ROOT/customer/application/cassandra.properties)가 소유하고 읽을 수 있는지 확인합니다.
노드에서 Cassandra 애플리케이션을 다시 시작합니다. apigee-service apigee-cassandra restart
각 Cassandra 노드에서 위 단계를 하나씩 반복합니다.
42733857: 암호화된 키-값 맵 (KVM) 업데이트 시 지연 시간
항목이 많은 암호화된 키 값 맵을 사용하는 경우 관리 API를 통해 항목을 추가하거나 업데이트할 때 또는 KeyValueMapOperations 정책 내의 PUT 요소를 통해 항목을 추가하거나 업데이트할 때 지연 시간이 발생할 수 있습니다 . 성능에 미치는 영향의 정도는 일반적으로 암호화된 KVM에 저장된 총 항목 수에 비례합니다.
이 문제를 완화하려면 항목 수가 과도한 암호화된 KVM을 만들지 않는 것이 좋습니다. 실행 가능한 해결책은 큰 KVM을 여러 개의 작은 KVM으로 나누는 것입니다. 또한 사용 사례에서 허용하는 경우 암호화되지 않은 KVM으로 마이그레이션하는 것도 효과적인 완화 전략이 될 수 있습니다. Apigee는 이 문제를 인지하고 있으며 향후 패치에서 수정사항을 출시할 계획입니다.
412696630: 시작 시 키 저장소를 로드하지 못함
edge-message-processor 또는 edge-router 구성요소가 시작 시 하나 이상의 키 저장소를 간헐적으로 로드하지 못하여 키 저장소가 API 프록시 또는 가상 호스트에서 사용될 때 트래픽 오류가 발생할 수 있습니다.
이 문제를 완화하려면 다음을 수행하세요.
메시지 프로세서 노드에서 파일 $APIGEE_ROOT/customer/application/message-processor.properties 추가 또는 수정
conf_deployment_bootstrap.executor.thread.count=1 속성 추가
파일을 저장하고 apigee 사용자 chown apigee:apigee $APIGEE_ROOT/customer/application/message-processor.properties가 파일을 읽을 수 있고 소유하고 있는지 확인합니다.
메시지 프로세서 서비스 apigee-service edge-message-processor restart를 다시 시작합니다.
각 메시지 프로세서 노드에서 위 단계를 하나씩 반복합니다.
라우터 노드에서 파일 $APIGEE_ROOT/customer/application/router.properties 추가 또는 수정
conf_deployment_bootstrap.executor.thread.count=1 속성 추가
파일을 저장하고 apigee 사용자 chown apigee:apigee $APIGEE_ROOT/customer/application/router.properties가 파일을 읽고 소유하는지 확인합니다.
라우터 서비스 apigee-service edge-router restart를 다시 시작합니다.
각 라우터 노드에서 위 단계를 하나씩 반복합니다.
Java 콜아웃
'BC' 이름을 사용하여 Bouncy Castle 암호화 제공자를 로드하려고 하는 고객 Java 콜아웃은 기본 제공자가 FIPS를 지원하기 위해 Bouncy Castle FIPS로 변경되었기 때문에 실패할 수 있습니다. 사용할 새 제공업체 이름은 'BCFIPS'입니다.
프라이빗 클라우드용 Edge 4.52.01 Mint 업데이트
이 문제는 MINT를 사용하거나 프라이빗 클라우드용 Edge 설치에서 MINT를 사용 설정한 사용자에게만 영향을 미칩니다.
영향을 받는 구성요소: edge-message-processor
문제: 수익 창출이 사용 설정되어 있고 4.52.01을 새로 설치하거나 이전 Private Cloud 버전에서 업그레이드하는 경우 메시지 프로세서에 문제가 발생합니다. 열린 스레드 수가 점진적으로 증가하여 리소스가 소진됩니다. edge-message-processor system.log에 다음 예외가 표시됩니다.
최근 프라이빗 클라우드용 Apigee Edge를 포함하여 HTTP/2 프로토콜 (CVE-2023-44487)의 여러 구현에서 서비스 거부 (DoS) 취약점이 발견되었습니다. 이 취약점으로 인해 Apigee API 관리 기능에 대한 DoS가 발생할 수 있습니다.
자세한 내용은 Apigee 보안 게시판 GCP-2023-032를 참고하세요.
프라이빗 클라우드용 Edge 라우터 및 관리 서버 구성요소는 인터넷에 노출되며 잠재적으로 취약할 수 있습니다. HTTP/2가 프라이빗 클라우드용 Edge의 다른 Edge 관련 구성요소의 관리 포트에서 사용 설정되더라도 이러한 구성요소는 인터넷에 노출되지 않습니다. Cassandra, Zookeeper 등과 같은 에지가 아닌 구성요소에서 HTTP/2는 사용 설정되지 않습니다. 프라이빗 클라우드용 Edge 취약점을 해결하려면 다음 단계를 따르는 것이 좋습니다.
/opt/apigee/customer/application/message-processor.properties 파일이 apigee:apigee에 의해 소유되는지 확인합니다.
각 메시지 프로세서를 다시 시작합니다.
연결 풀 JNDI 속성이 적용되고 있는지 확인하려면 tcpdump를 실행하여 시간 경과에 따른 LDAP 연결 풀의 동작을 관찰하면 됩니다.
높은 요청 처리 지연 시간
139051927: 메시지 프로세서에서 발견된 높은 프록시 처리 지연 시간이 모든 API 프록시에 영향을 미칩니다. 증상으로는 일반적인 API 응답 시간보다 처리 시간이 200~300ms 지연되는 것이 있으며 TPS가 낮은 경우에도 무작위로 발생할 수 있습니다. 이는 메시지 프로세서가 연결하는 대상 서버가 50개를 초과하는 경우 발생할 수 있습니다.
근본 원인:
메시지 프로세서는 대상 서버 URL을 대상 서버로의 아웃바운드 연결을 위한 HTTPClient 객체에 매핑하는 캐시를 유지합니다. 기본적으로 이 설정은 50으로 설정되어 있으며, 이는 대부분의 배포에서 너무 낮을 수 있습니다. 설정에 여러 조직/환경 조합이 있고 대상 서버가 모두 50개를 초과하는 배포의 경우 대상 서버 URL이 캐시에서 계속 삭제되어 지연 시간이 발생합니다.
유효성 검사:
타겟 서버 URL 삭제로 인해 지연 시간 문제가 발생하는지 확인하려면 메시지 프로세서 system.logs에서 'onEvict' 또는 'Eviction' 키워드를 검색합니다. 로그에 표시되면 캐시 크기가 너무 작기 때문에 타겟 서버 URL이 HTTPClient 캐시에서 삭제되고 있음을 나타냅니다.
해결 방법:
Edge for Private Cloud 버전 19.01 및 19.06의 경우 HTTPClient 캐시 /opt/apigee/customer/application/message-processor.properties를 수정하고 구성할 수 있습니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-15(UTC)"],[],[],null,[]]