Apigee Edge 문서입니다.
Apigee X 문서로 이동 정보
2015년 9월 8일 화요일에 프라이빗 클라우드용 Apigee Edge의 주요 기능 출시가 발표되었습니다.
이전 프라이빗 클라우드용 Edge 분기 출시 (4.15.04.00) 이후 다음과 같은 출시가 있었으며 이번 분기 출시에 포함되어 있습니다.
4.15.07.00으로 업그레이드할 수 있는 Edge 버전
현재 사용 중인 Edge 버전에 따라 다음 중 하나를 수행할 수 있습니다.
- 4.15.07.00으로 직접 업그레이드
- 점진적 업그레이드: 현재 버전에서 다른 버전의 Edge로 업그레이드한 다음 4.15.07.00으로 업그레이드해야 합니다.
자세한 내용은 4.15.07.00으로 업그레이드할 수 있는 Private Cloud용 Edge 버전을 참고하세요.
버전 4.15.01.x 또는 이전 버전에서 업그레이드하기 전
- Cassandra SSTable 버전을 확인합니다.
- 디렉터리를 /<install-root>/apigee4/data/cassandra/data로 변경합니다.
- find 명령어를 실행합니다.
> find . -name *-ic-*
Cassandra 1 .2 SSTable을 실행하는 경우 결과에.db 파일 세트가 반환됩니다. - 다음 find 명령어를 실행합니다.
> find . -name *-hf-*
결과는 비어 있어야 합니다. 즉, hf 형식의 .db 파일이 없습니다. hf 형식의 파일이 표시되지 않으면 완료된 것이므로 4.15.07.00으로 업그레이드할 수 있습니다.
hf 형식은 Cassandra 1.0 SSTable용입니다. hf 형식의 *.db 파일이 있는 경우 이 절차의 나머지 부분에 설명된 대로 SSTable을 업그레이드해야 합니다.
- hf 형식의 *.db 파일이 있는 경우 모든 Cassandra 노드를 업그레이드할 때까지 모든 Cassandra 노드에서 다음 명령어를 실행하여 SSTable을 업그레이드합니다.
> /<install-root>/apigee4/share/apache-cassandra/bin/nodetool -h localhost upgradesstables -a - 1단계를 반복하여 모든 *.db 파일이 Cassandra 1.2 버전의 ic 형식인지 확인합니다.
- Edge 설치의 모든 Cassandra 노드에서 1~3단계를 반복합니다.
- Edge 4.15.07.00으로 업그레이드합니다.
- 4.15.07.00 업그레이드 후 *.db 파일이 모두 C* 2.0 스타일 sstable로 업그레이드되었는지 확인합니다.
> cd /<install-root>/apigee4/data/cassandra/data
> find . -name *-jb-*
Cassandra 2 .0을 실행하는 경우 이 명령어는.db 파일 세트를 반환해야 합니다.
새로운 기능 및 개선사항
다음은 이번 출시의 새로운 기능과 개선사항입니다.
설치 및 업그레이드
선택적 구성요소 업그레이드 및 제거
이제 apigee-upgrade.sh 및 apigee-uninstall.sh 스크립트를 사용하여 업그레이드하거나 제거할 Edge 구성요소를 선택할 수 있습니다. 이전에는 노드의 모든 구성요소를 업그레이드하거나 제거했습니다. (OPDK-1377, OPDK-1175)
업그레이드 롤백
업그레이드 중에 apigee-upgrade.sh가 실패하면 이제 apigee-rollback.sh 스크립트를 사용하여 업그레이드를 롤백할 수 있습니다. 업그레이드 문제를 해결한 후 업그레이드를 다시 시도할 수 있습니다. (OPDK-1275)
설치 프로그램 스크립트 옵션 축소
설치 스크립트가 더 이상 --help와 같은 긴 형식의 옵션을 사용하지 않습니다. 이제 -h와 같은 단일 문자 옵션만 사용합니다. (OPDK-1356)
SmartDocs 설치
setup-smartdocs.sh 스크립트로 SmartDocs를 설치할 때 조직, 환경, 가상 호스트를 입력하라는 메시지가 표시됩니다. 이렇게 하면 SmartDocs가 예상 위치에 설치됩니다. 이전에는 이러한 값이 스크립트에 하드 코딩되었습니다. (OPDK-1310)
메시지 없이 update-cass-pwd-in-config.sh 실행
ENABLE_CASS_AUTH, CASS_USERNAME, CASS_PASSWORD 환경 변수를 설정하면 update-cass-pwd-in-config.sh 스크립트를 메시지 없이 실행할 수 있습니다. (OPDK-1309)
Edge 플랫폼
다음은 이번 출시에 포함된 새로운 Edge 플랫폼 기능입니다.
Edge Private Cloud에서 지원되는 OpenJDK 1.7
이 Edge 버전은 Oracle JDK 1.7 및 OpenJDK 7을 지원하며 JDK 1.6 지원은 삭제되었습니다. (OPDK-1187)
OS 지원
프라이빗 클라우드용 Apigee Edge는 Red Hat Enterprise Linux 6.6 및 7.0 (64비트), CentOS 6.5, 6.6, 7.0 (64비트), Oracle Linux 6.5를 포함하도록 운영체제 지원을 확장했습니다.
OPDK 15.07에 포함된 Cassandra 2.0.15
이 버전에서는 Cassandra 2.0.15를 설치합니다. 이전 출시 버전으로 업그레이드하는 경우 Cassandra 버전이 업데이트됩니다. (OPDK-1197)
OAuth 토큰 해싱을 위한 SHA2 지원
데이터베이스 보안 침해 시 OAuth 토큰을 더 효과적으로 보호하기 위해 Edge는 SHA1 외에도 OAuth 토큰 해싱을 위한 SHA2 알고리즘을 지원합니다. 새로운 조직 수준 속성을 사용하면 새 토큰의 해싱을 사용 설정하고 구성할 수 있으며 이 새로운 기능 이전에 존재했던 모든 토큰에 기존 해싱을 유지할 수 있습니다. 이전에는 프라이빗 클라우드용 Edge에서 관리 서버 및 메시지 프로세서의 keymanagement.properties 파일에 있는 hash.oauth.tokens.enabled 속성을 통해 OAuth 토큰의 자동 SHA1 해싱이 사용 설정되었습니다. 이 속성은 현재 지원 중단되었습니다.
이전에 hash.oauth.tokens.enabled 속성을 사용하여 SHA1 해싱을 사용 설정한 경우 이 출시의 업그레이드 스크립트가 새 조직 수준 속성을 자동으로 생성합니다. 업그레이드 후 확인하려면 시스템 관리자로 https://{host}:{port}/v1/o/{your_org} API를 사용하여 GET을 실행합니다.
- 새 속성으로 조직에서 토큰 해싱을 사용 설정하는 방법에 관한 자세한 내용은 액세스 토큰 요청 주제의 '데이터베이스에서 토큰 해싱'을 참고하세요.
- 기존 토큰 일괄 해싱에 관한 자세한 내용은 프라이빗 클라우드용 Edge 운영 가이드를 참고하세요. (APIRT-1389)
로그 파일의 플랫 디렉터리 구조
message-logging.properties 파일에서 새 enable.flat.directory.structure
속성을 true로 설정하여 로그 파일을 평면 디렉터리 구조에 저장하도록 Edge를 구성할 수 있습니다. 자세한 내용은 메시지 로깅 정책을 참고하세요.
(APIRT-1394)
환경 캐시 성능
인메모리 캐시 관리 및 활용을 개선하기 위해 환경 캐시 리소스의 '메모리의 최대 요소 수' 설정이 지원 중단되었습니다. 모든 캐시 리소스 (기본 캐시 포함)에 있는 총 요소 수는 캐시에 할당된 총 메모리에 따라 다릅니다. 기본적으로 특정 메시지 프로세서의 인메모리 캐시에 할당되는 총 메모리는 메시지 프로세서 cache.properties 파일의 캐시 속성 설정에 따라 결정되는 사용 가능한 총 메모리의 40% 입니다. 캐시 메모리가 부족하거나 요소가 만료된 경우에만 요소가 메모리 내 캐시에서 삭제됩니다.
캐시 관리에 '메모리의 최대 요소 수' 속성을 사용하는 이전 동작으로 되돌리려면 cache.properties 파일에서 overrideMaxElementsInCacheResource=false
속성을 설정하세요. (APIRT-1140)
API 서비스
다음은 이번 출시에 포함된 새로운 API 서비스 기능입니다.
새 프록시 편집기를 기본값으로 설정
새 API 프록시 편집기는 관리 UI에서 기본적으로 사용 설정됩니다. 새 편집기에는 개요 페이지의 조건부 흐름 및 엔드포인트에 대한 포괄적인 보기, 개발 페이지의 모든 구성, 조건부 흐름, 엔드포인트, 정책을 더 직관적으로 추가하는 기능, 작은 스니펫이 아닌 더 완전한 XML 보기, 파일 이름과 텍스트를 크롤링하는 검색 등 여러 가지 사용성 개선사항이 포함되어 있습니다. (MGMT-2279)
새로운 OAuth v2.0 정보 삭제 정책
새로운 'Delete OAuth v2.0 Info'(OAuth v2.0 정보 삭제) 정책을 사용하면 OAuth v2 액세스 토큰과 승인 코드를 삭제할 수 있습니다. 이 정책은 이전에 관리 API에서 제공한 기능을 대체합니다. 자세한 내용은 OAuthV2 정보 정책 삭제를 참고하세요. (MGMT-2257)
새로운 OAuth v1.0 정보 삭제 정책
새로운 'OAuth v1.0 정보 삭제' 정책을 사용하면 OAuth v1.0 요청 토큰, 액세스 토큰, 인증자 코드를 삭제할 수 있습니다. 이 정책은 이전에 관리 API에서 제공한 기능을 대체합니다. 자세한 내용은 OAuth V1 정보 정책 삭제를 참고하세요. (APIRT-1351)
액세스 제어 정책
IP 주소가 X-FORWARDED-FOR
HTTP 헤더에 포함된 경우 허용 목록 및 차단 목록에 관한 IP 주소를 더 세분화하여 평가할 수 있도록 액세스 제어 정책이 개선되었습니다.
헤더에서 다중 IP 주소 확인을 사용 설정하면 (feature.enableMultipleXForwardCheckForACL을 설정하려면 지원팀에 문의하세요) 정책의 새 <ValidateBasedOn>
요소를 사용하여 헤더의 첫 번째 IP, 마지막 IP 또는 모든 IP를 확인할 수 있습니다. 자세한 내용은 액세스 제어 정책을 참고하세요.
액세스 항목 정책의 새 항목
액세스 항목 정책은 consumerkey-scopes, authorizationcode, requesttoken, verifier와 같은 새 항목에 대한 액세스를 제공합니다. 자세한 내용은 항목 액세스 정책을 참고하세요.
통계 수집기 정책: 통계 이름을 소문자로 자동 변환
API 프록시 편집기 (개발 페이지 > 도구 > 맞춤 애널리틱스 수집)에서 맞춤 애널리틱스 수집을 만들 때 수집기 변수 (통계) '이름'은 소문자로 지정해야 합니다. 이름을 대문자로 입력하면 도구가 Statistics Collector 정책에서 통계 이름을 자동으로 소문자로 변환합니다. (MGMT-740)
API 프록시 편집기에서 기존 트레이스 삭제
API 프록시 편집기의 최신 버전 Trace 기능이 베타 버전에서 정식 버전으로 전환되었습니다. '기존 버전의 트레이스 액세스' 링크를 통한 '기존 트레이스' 액세스는 더 이상 사용할 수 없습니다.
관리 UI 도움말 메뉴에서 Apigee 커뮤니티 액세스
관리 UI의 도움말 메뉴에서 Apigee 커뮤니티에 액세스할 수 있습니다.
관리 UI의 오류 메시지
다음은 관리 UI의 오류 메시지 개선사항입니다.
- 닫지 않는 한 전체 로그인 세션의 UI에 모든 오류 메시지를 그룹화하고 표시하는 데 사용되는 관리 UI입니다. 이번 업데이트를 통해 오류 메시지가 발생한 페이지에서 벗어나면 오류 메시지가 자동으로 삭제됩니다. (MGMT-2254)
- 관리 UI에서 더 이상 중복 오류 메시지가 숨겨지지 않습니다. (MGMT-2242)
UI 성능 및 오류 개선
페이지 표시 성능 및 오류 메시지 정리를 비롯하여 관리 UI의 여러 영역이 전반적으로 개선되었습니다.
관리 UI의 조직 사용자 페이지에 있는 역할 하이퍼링크
관리 UI (관리 > 조직 사용자)의 조직 사용자 페이지에서 역할 이름에 하이퍼링크가 추가되어 역할 페이지로 빠르게 이동할 수 있습니다. (MGMT-1055)
메시지 흐름의 새 타겟 변수
메시지 흐름의 새 변수는 대상 엔드포인트와 대상 서버에 관한 더 완전한 URL 정보를 제공합니다.
-
TargetEndpoint:
request.url
가target.basepath.with.query
를 대체합니다. -
TargetServer:
loadbalancing.targetserver
이targetserver.name
를 대체합니다. 또한target.basepath
는 TargetEndpoint의 HTTPTargetConnection<LoadBalancer>
요소에서<Path>
요소가 사용될 때만 채워집니다.
서버 이름 표시 (SNI) 지원
Edge는 서버 이름 표시 남방향 (메시지 프로세서에서 대상 엔드포인트로) 사용을 지원합니다. SNI를 사용하려면 Apigee 지원팀에 문의하세요.
Java 1.7이 필요합니다.
TLS/SSL의 확장인 SNI를 사용하면 모든 대상이 동일한 인증서를 사용할 필요 없이 동일한 IP 주소와 포트에서 여러 HTTPS 대상을 제공할 수 있습니다.
Edge 관련 구성은 필요하지 않습니다. 환경이 southbound SNI (기본적으로 Edge Cloud)로 구성된 경우 Edge에서 이를 지원합니다.
Edge는 요청 URL에서 호스트 이름을 자동으로 추출하여 SSL 핸드셰이크 요청에 추가합니다. 예를 들어 대상 호스트가 https://example.com/request/path인 경우 Edge는 아래와 같이 server_name 확장자를 추가합니다.
SNI에 관한 자세한 내용은 http://en.wikipedia.org/wiki/Server_Name_Indication을 참고하세요.
SSL 인증서 세부정보의 '서명 알고리즘'
SSL 인증서 세부정보에 새로운 '서명 알고리즘' 필드가 추가되었습니다. 이 필드는 관리 UI (관리 > SSL 인증서) 및 관리 API (키 저장소 또는 신뢰 저장소에서 인증서 세부정보 가져오기)에서 확인할 수 있습니다. 이 필드는 인증서를 생성하는 데 사용된 해싱 알고리즘 유형에 따라 'sha1WithRSAEncryption' 또는 'sha256WithRSAEncryption'을 표시합니다.
만료일이 가까운 SSL 인증서 표시
관리 UI (관리 > SSL 인증서)의 SSL 인증서 페이지에는 새 만료 드롭다운 필드에서 선택한 값에 따라 10일, 15일, 30일 또는 90일 이내에 SSL 인증서가 만료되는 시점이 표시됩니다.
위협 방지 오류 구성
기본적으로 Edge는 메시지가 JSON 또는 XML 위협 보호 조치 정책을 통과하지 못한 경우 HTTP 500 내부 서버 오류 상태 코드와 ExecutionFailed 오류를 표시합니다. 새로운 조직 수준 속성으로 이 오류 동작을 변경할 수 있습니다. 조직 속성 features.isPolicyHttpStatusEnabled
를 true로 설정하면 다음과 같은 동작이 발생합니다.
- 요청: 위협 방지 정책이 모든 요청 흐름에 연결되어 잘못된 메시지는 해당 정책 오류 메시지와 함께 400 상태 코드를 반환합니다.
- 응답: 위협 방지 정책이 모든 응답 흐름에 연결되어 잘못된 메시지는 여전히 500 상태 코드를 반환하고 ExecutionFailed뿐 아니라 해당하는 정책 오류 메시지 중 하나가 발생합니다.
Cloud 고객은 Apigee 지원팀에 문의하여 조직 속성을 설정해야 합니다. 이 기능은 다음 Private Cloud 분기별 출시에서 Edge Private Cloud 고객에게 제공될 예정입니다.
엔드포인트, 프록시, 기타 항목의 스키마 업데이트
TargetEndpoint, ProxyEndpoint, APIProxy 등 정책 외 항목의 참조 스키마가 업데이트되었습니다. https://github.com/apigee/api-platform-samples/tree/master/schemas를 참고하세요. (APIRT-1249)
개발자 서비스
다음은 이번 출시에 포함된 개발자 서비스의 새로운 기능입니다.
SmartDocs 정식 버전
SmartDocs가 베타 버전에서 정식 버전으로 전환됩니다. 업데이트 및 새로운 기능은 다음과 같습니다.
- 맞춤 이름이 지정된 보안 객체 지원을 비롯하여 파일 또는 URL을 통한 가져오기를 비롯한 Swagger 2.0 지원
- SmartDocs를 생성하는 템플릿의 시각적 디자인이 개선되었습니다.
- Drupal의 콘텐츠 > SmartDocs 메뉴를 통해 사용할 수 있는 개발자 포털의 사용성 및 워크플로 개선사항
- '맞춤 토큰' 인증이라고 했던 것을 이제 'API 키'라고 합니다.
- 버전 수준에서 정의된 인증 '보안' 객체입니다.
- 템플릿 수준에서 클라이언트 인증을 구성합니다. 새 버전은 더 이상 사전 구성된 SmartDocs 클라이언트 사용자 인증 정보를 재설정하지 않습니다.
기능에 관한 자세한 설명은 이 블로그 게시물을 참고하세요.
SmartDocs 문서는 SmartDocs를 사용하여 API 문서화를 참고하세요.
관리 UI에 표시되는 개발자 앱 이름
Edge의 개발자 앱에는 변경되지 않는 내부 이름과 변경할 수 있는 표시 이름이 모두 있습니다. 관리 UI (게시 > 개발자 앱 > 앱 이름)의 개발자 앱 페이지에서 앱 내부 '이름'이 '표시 이름'과 함께 표시되므로 문제 해결 및 API 관리를 위해 내부 이름으로 앱을 더 쉽게 시각적으로 식별할 수 있습니다.
분석 서비스
다음은 이번 출시에 포함된 새로운 분석 서비스 기능입니다.
보존된 데이터 시간 제한
관리 UI 또는 API로 분석 보고서를 생성할 때 현재 날짜로부터 6개월 이상 오래된 데이터는 기본적으로 액세스할 수 없습니다. 6개월 이상 오래된 데이터에 액세스하려면 Apigee 지원팀에 문의하세요.
관리 UI에서 기존 버전의 맞춤 보고서가 삭제됨
맞춤 분석 보고서의 기존 버전(선택사항)은 더 이상 관리 UI에서 사용할 수 없습니다.
개발자 참여도 위젯 실적
기본 분석 대시보드 (개발자 참여도 섹션)의 유입경로 위젯이 성능을 개선하기 위해 개선되었습니다.
수익 창출
다음은 이번 출시에 포함된 새로운 수익 창출 기능입니다.
요금제 이메일 알림
새로운 요금제 이메일 알림 유형을 사용하면 개발자가 구매한 볼륨 범위 요금제 또는 번들 요금제에서 특정 거래 또는 금액 한도에 도달하면 개발자에게 알릴 수 있습니다. 자세한 내용은 알림 템플릿을 사용하여 알림 설정하기를 참고하세요.
반복 요금 및 집계 기준 기간 동기화
요금제에는 두 가지 기간이 적용될 수 있습니다.
- 요금제의 요금 탭에서 구성된 반복 요금 기간으로, 개발자에게 반복 요금이 청구되는 시점을 결정합니다.
- 볼륨 구간 또는 번들 요금제의 요금 카드에 정의된 집계 기준 기간으로, 개발자의 번들 사용이 재설정되는 시점을 결정합니다.
이제 두 기간이 동기화됩니다. 요금제에 0이 아닌 반복 수수료와 볼륨 구간 또는 번들 요금 카드가 모두 있는 경우 반복 수수료 기간이 둘 다에 사용됩니다. 예를 들어 월별 반복 요금이 있는 경우 요금표 번들도 매월 재설정됩니다 (기본적으로 매월 초).
반복 요금이 없는 경우 요금 카드에 정의된 집계 기준에 따라 번들이 재설정됩니다. 예를 들어 개발자가 매월 19일에 요금표를 사용하기 시작했고 집계 기준이 매월인 경우 19일 후 한 달이 지나면 번들 사용이 재설정됩니다.
집계 기준은 지원 중단되었으며 향후 출시에서 수익 창출에서 삭제될 예정입니다. 자세한 내용은 요율표 요금제 세부정보 지정을 참고하세요.
요약 수익 보고서의 맞춤 속성
트랜잭션 기록 정책을 사용하면 원하는 경우 거래에서 맞춤 속성 데이터를 캡처할 수 있으며 이제 이러한 맞춤 거래 속성을 요약 수익 보고서에 포함할 수 있습니다. 조직에 MINT.SUMMARY_CUSTOM_ATTRIBUTES 속성을 추가하면 보고서에 사용할 맞춤 속성을 데이터베이스 테이블에 추가할 수 있습니다.
Apigee Edge for Private Cloud 고객은 다음 API 호출 및 시스템 관리자 사용자 인증 정보로 플래그를 설정할 수 있습니다.
curl -u email:password -X PUT -H "Content-type:application/xml" http://host:8080/v1/o/myorg -d \ "<Organization type="trial" name="MyOrganization"> <Properties> <Property name="features.isMonetizationEnabled">true</Property> <Property name="MINT.SUMMARY_CUSTOM_ATTRIBUTES">["my_attribute_1","my_attribute_2"]</Property> <Property name="features.topLevelDevelopersAreCompanies">false</Property> </Properties> </Organization>"
API 호출의 맞춤 속성 배열은 URL로 인코딩됩니다.
SmartDocs 업그레이드 절차
베타 기간 동안 이미 SmartDocs를 사용하고 있다면 정식 버전의 새로운 기능과 기능을 사용하려면 개발자 포털에서 SmartDocs를 업그레이드해야 합니다.
개발자 포털에 이미 게시된 SmartDocs 페이지는 계속 작동하지만 기존 페이지 또는 새 페이지의 변경사항을 수정하거나 게시하기 전에 업데이트 절차를 따라야 합니다.
개발자 포털 내에서 SmartDocs를 렌더링하고 게시할 수는 있지만, SmartDocs는 Apigee의 Edge API 관리 서비스 내에 있는 API 모델에서 생성됩니다. Edge에서 API 모델을 변경하면 모든 Pantheon 환경에서 동일하게 변경됩니다 (Pantheon 환경 전반에서 개발자가 존재하는 방식과 유사).
SmartDocs 베타에서 정식 버전으로 업그레이드하기
- Pantheon의 dev 또는 test 환경에서 15.05.27 출시를 업데이트하고 테스트합니다.
- 기존에 사용하고 있는 기존 API 모델을 대체할 새 모델을 만듭니다.
- Swagger 또는 WADL 문서를 가져오고 있다면 새 버전으로 다시 가져옵니다.
- SmartDocs 모듈을 통해 API 모델을 유지 관리해 왔다면 SmartDocs JSON으로 내보낸 후 파일 첨부파일을 사용하여 새 모델로 가져옵니다.
- 모델 버전의 보안 속성을 설정합니다. 콘텐츠 >
SmartDocs > 모델 페이지에서 보안 설정을 선택합니다.
- 모델 설정 페이지 (콘텐츠 > SmartDocs)에서 작업 열의 설정을 클릭하여 사전 구성된 인증을 확인합니다.
- CSS 및 JS 애셋의 v6을 사용하도록 맞춤 템플릿을 업데이트하고 authSchemes 및 apiSchema와 같은 새 객체 이름을 반영하도록 변경합니다. SmartDocs 템플릿을 업데이트하는 방법에 관한 자세한 내용은 SmartDocs를 사용하여 API 문서화를 참고하세요.
- 모델 수정사항을 다시 렌더링하고 게시합니다.
- 새 문서를 검증한 후 프로덕션 포털을 15.05.27 버전으로 업데이트합니다.
Edge Enterprise 고객이 업그레이드 프로세스에 관해 질문이나 우려사항이 있는 경우 marsh@apigee.com 및 cnovak@apigee.com으로 이메일을 보내주세요. 그 외의 경우 Apigee 커뮤니티를 사용하여 최선의 답변을 받으시기 바랍니다.
향후 기능 변경 및 개선사항
이 섹션에서는 향후 예상되는 기능 변경사항과 개선사항을 미리 살펴봅니다.
응답 캐시 정책 동작 변경
향후 출시 (미정)에서 응답 캐시 정책의 <ExcludeErrorResponse> 요소의 기본 동작이 변경됩니다.
현재 동작: 응답 캐시 정책의 <ExcludeErrorResponse> 요소는 기본적으로 false입니다. 즉, 기본적으로 가능한 모든 HTTP 상태 코드 (3xx 포함)가 있는 응답은 Response Cache 정책에 의해 캐시됩니다.
향후 동작: Response Cache 정책의 <ExcludeErrorResponse> 요소는 기본적으로 true로 설정됩니다. 즉, 기본적으로 HTTP 상태 코드가 200~205인 응답만 캐시됩니다. 이 동작을 재정의하고 모든 상태 코드의 응답을 캐시하려면 <ExcludeErrorResponse> 요소를 명시적으로 true로 설정해야 합니다.
현재 해결 방법: 비공개 클라우드 4.15.07.00 이하 버전의 경우 상태 코드 200~205의 응답만 캐시하려면 요소 <ExcludeErrorResponse>를 명시적으로 true로 설정해야 합니다.
수정된 버그
다음은 이번 출시 버전에서 수정된 버그입니다.
문제 ID | 설명 |
---|---|
OPDK-1521 | 비밀번호 암호화 문제 |
OPDK-1201 | UI 데이터를 복원할 수 없음 |
OPDK-1112 | 맞춤 LDAP 비밀번호 정책이 Apigee 관리자 사용자에게 적용되지 않음 |
OPDK-1097 | OPDK 업그레이드 중 키스페이스 예외 |
OPDK-1068 | 설치 중에 실패하면 관리자 비밀번호를 변경할 수 있음 |
OPDK-1053 | Zookeeper가 루트로 실행 중입니다 |
OPDK-967 | set-autostart.sh를 사용하여 OpenLDAP를 자동 시작으로 설정하면 all-status.sh에서 OpenLDAP가 비활성 상태로 보고됨 |
OPDK-905 | Smartdocs prod가 이미 그룹 axgroup001에 등록됨 |
OPDK-899 | 온보딩 중 오류 발생 |
OPDK-847 | 온보딩 중에 생성된 사용자에게 비밀번호 재설정 이메일이 수신되지 않음 |
OPDK-817 | init.d 스크립트에서 오류가 발생함 |
OPDK-815 | ax-purge.sh 스크립트에서 샘플링 테이블을 삭제해야 함 |
MGMT-2246 | 맞춤 보고서 만들기 페이지가 관리 UI에 올바르게 표시되지 않음 |
MGMT-2235 | 만료되는 SSL 인증서의 경우 만료 상대 시간이 혼란스럽게 반올림될 수 있음 만료되는 SSL 인증서의 경우 인증서가 90일 이내에 만료되는 경우, 만료일의 상대 시간이 월 단위로 반올림되지 않고 항상 일 단위로 표시됩니다. |
MGMT-2193 | API를 수정할 때 로드 스피너 |
MGMT-2173 | Trace UI에서 법적 URL을 허용하지 않음 이제 Trace UI를 사용하여 중첩된 쿼리 매개변수가 포함된 쿼리 매개변수 값으로 요청을 전송할 수 있습니다. |
MGMT-2162 | JavaScript 컴파일 문제 |
MGMT-2124 | UI에 권한을 저장하면 고객 역할의 권한이 재설정됨 |
MGMT-2114 | MessageLogging 정책의 잘못된 Syslog IP가 배포 중에 적절한 오류를 발생시켜야 함 |
MGMT-2067 | 트레이스: API 프록시 버전이 두 환경에 배포된 경우 버전 및 환경을 선택해도 제대로 작동하지 않음 |
MGMT-2061 | 비밀번호 찾기에서 등록된 사용자에게만 이메일을 보내야 함 관리 UI 로그인 페이지의 '비밀번호 찾기' 링크는 등록된 Apigee 사용자에게만 이메일을 보냅니다. |
MGMT-2048 | 배포 권한을 하나의 환경으로 제한하는 맞춤 역할을 가진 사용자가 다른 환경에 배포할 수 있음 |
MGMT-2041 | 기본 첨부파일 템플릿에서 FaultRules 요소 삭제 정책 또는 API 프록시 단계에서 사용되지 않는 FaultRules 요소가 API 프록시를 만들거나 정책을 추가할 때 더 이상 자동으로 추가되지 않습니다. |
MGMT-2034 | WSDL 가져오기가 실패를 반환함: 'WSDL 가져오기 오류: WSDL 처리 오류' |
MGMT-1986 | 개발자를 추가하는 동안 UI 오류 발생 |
MGMT-1983 | Get an OAuth 2.0 authorization code API가 잘못된 상태를 반환함 |
MGMT-1962 | 강력한 비밀번호로 관리 UI에 로그인할 때 오류 발생 백분율 기호와 같은 특정 특수문자로 UI에 로그인해도 더 이상 실패하지 않습니다. |
MGMT-1947 | 관리 UI의 직관적이지 않은 역할 사용자에게 거래 기록 정책을 만들거나 수정할 권한이 없는 경우 거래 기록 정책을 만들고 수정하는 UI 버튼이 사용 중지됩니다. |
MGMT-1899 | 제품 설정을 저장한 후 리소스 경로가 삭제됨 API 제품을 수정할 때 사용자가 저장 버튼을 더블클릭하면 제품의 리소스 경로가 삭제될 수 있습니다. 이 문제는 해결되었습니다. |
MGMT-1894 | 개발자 앱 페이지의 개발자 열이 로드되지 않음 |
MGMT-1882 | WSDL의 새 API 프록시에 마지막 매개변수 세부정보만 표시됨 |
MGMT-1878 | 환경에 여러 버전이 배포된 경우 Trace에는 버전 중 하나만 표시됨 |
MGMT-1872 | 맞춤 보고서를 다운로드할 수 없음 |
MGMT-1863 | 관리 UI에서 Node.js 로그를 볼 수 없음 |
MGMT-1843 | API 프록시가 열리지 않음 |
MGMT-1833 | sysadmin 사용자는 OPDK의 UI에서 비밀번호를 변경할 수 있는 옵션이 없어야 합니다. |
MGMT-1825 | 교차 사이트 스크립팅 (XSS) 버그 |
MGMT-1824 | .xml 확장자가 있는 WSDL 파일을 가져오는 동안 WSDL 가져오기 오류 발생 |
MGMT-1812 | 가져오기 중에 TargetEndpoint 유효성 검사 추가 ProxyEndpoint와 마찬가지로 TargetEndpoint는 API 프록시 가져오기 중에 조건에 사용된 적절한 스키마 및 표현식에 대해 유효성 검사를 받습니다. |
MGMT-1804 | 일부 경우 Node.js API가 잘못된 JSON을 전송함 json 데이터에 잘못된 문자가 있는 경우 형식이 지정되지 않은 로그를 표시하는 데 사용되는 Node.js 로그 화면 이 버전에서 이 문제가 수정되었으며 이제 UI에 형식이 잘 지정된 node.js 로그가 표시됩니다. |
MGMT-1802 | 비밀번호 재설정 URL #118 관리 UI가 SSL 종료 서버 뒤에 있는 경우 이제 관리 UI에서 http URL 대신 https URL 링크가 포함된 비밀번호 재설정 이메일을 올바르게 생성합니다. |
MGMT-1799 | Trace에서 UI 보안 취약점 전송 요청 |
MGMT-1777 | TLD가 .acn인 이메일 주소를 사용하는 사용자를 추가할 수 없음 |
MGMT-1735 | 브랜딩 'W 가져오기 중 오류' Edge OPDK에서 맞춤 브랜딩 지원이 즉시 중단되었습니다. 이 기능을 사용하고 있는 소수의 고객에게는 실망스러울 수 있지만, 이 기능은 API 관리와 관련된 Edge의 기능을 직접 개선하는 기능이 아닙니다. |
MGMT-1569 | 기존 API 제품에 API 프록시 연결 문제 API 프록시에 '/' 경로의 리소스가 있는 경우 관리 UI에서 API 제품에 API 프록시를 연결하는 문제가 수정되었습니다. |
MGMT-1563 | 오류가 발생하면 Trace의 전송 버튼이 사용 중지된 상태로 유지됨 |
MGMT-1362 | 이메일 주소에 '_'가 포함된 경우 비밀번호 찾기 이메일이 작동하지 않음 밑줄이 포함된 이메일 주소로 OPDK에서 비밀번호 재설정 문제를 수정합니다. |
MGMT-1345 | 여러 네임스페이스가 있는 WSDL을 가져오면 잘못된 빌드 SOAP 단계가 발생함 |
MGMT-1193 | 프록시를 새 버전으로 저장하면 예상치 않게 경로 규칙이 변경됨 |
MGMT-1061 | SmartDocs: Swagger 정의의 본문 유형 매개변수 설명이 문서 UI에 표시되지 않음 |
MGMT-800 | 이름이 'default'인 리소스를 만들면 UI가 손상됨 |
MGMT-787 | UI 알림 사용성 문제 관리 UI에서 + API 프록시를 클릭하고 새 API 프록시 대화상자가 표시되면 Esc 키를 눌러 대화상자를 닫을 수 있습니다. |
MGMT-619 | API 프록시 UI 페이지에서 페이징 활성화 |
MGMT-602 | API 프록시 개발 보기: 엔드포인트에 PreFlow/PostFlow가 없으면 응답 캐시 정책을 추가하면 오류가 발생함 |
MGMT-460 | 정책 이름을 변경하면 글리치 동작이 발생하고 삭제할 수 없는 중복 정책이 생성됨 |
DEVRT-1644 | 이름으로 알림을 조회하면 잘못된 이메일이 전송됨 |
DEVRT-1583 | 수익 창출 UI에 현재 요금제에 '향후' 배지가 표시됨 |
DEVRT-1546 | 계획 한도가 작동하지 않음 |
DEVRT-1511 | 기존 개발자의 mint.resourceDoesNotExist 오류 |
CORERT-639 | TCPSysLogSocket은 비동기여야 함 |
CORERT-613 | 'unrecognized_name'으로 인한 SSL 핸드셰이크 실패 |
AXAPP-1728 | 분석에서 수익 창출 변수 무시하기 |
AXAPP-1708 | Analytics API가 요청 방식에 따라 동일한 통계에 대해 서로 다른 숫자를 생성하는 것 같습니다 |
AXAPP-1707 | 무료 포드 분석 성능 개선 |
AXAPP-1690 | 맞춤 보고서에 '잘못된 API 오류'가 표시됨 |
AXAPP-1533 | 애널리틱스 Geomap에서 잘못된 API 호출 오류가 발생함 |
AXAPP-1493 | 캐시 성능 통계가 잘못됨 |
APIRT-1436 | 해싱되지 않은 토큰을 해싱하는 도구/스크립트 만들기 |
APIRT-1425 | continueOnError 속성을 'true'로 설정해도 JavaCallout 정책에 영향을 미치지 않음 |
APIRT-1346 | OAuth2.0 - hash.oauth.tokens.enabled가 true이면 액세스 토큰 응답에 해싱된 값이 반환됨 |
APIRT-1206 | 503 및 대부분의 504의 경우 fact 테이블에 target_ip가 기록되지 않음 |
APIRT-1170 | 리소스 파일이 누락되어 MP가 환경을 로드하지 못함 |
APIRT-1148 | ResponseFlow에서 {message.version} 변수의 GET이 Node.js 타겟의 경우 NPE를 발생시킴 |
APIRT-1054 | 기본 디렉터리가 아닌 다른 디렉터리에 로깅하려고 하면 메시지 로깅이 실패함 |
APIRT-387 | MP에서 OrganizationService가 'others' 버전으로 실행되도록 하기 |
APIRT-67 | OAuth GenerateAccessToken 정책이 oauthV2.failed 변수를 올바르게 설정하지 않음 |
APIRT-52 | 맞춤 보고서: 많은 API의 응답 상태 코드가 null임 |
알려진 문제
이 출시에는 다음과 같은 알려진 문제가 있습니다.
문제 ID | 설명 |
---|---|
OPDK-1586 |
IPV6 지원이 사용 설정되지 않으면 API BaaS 포털이 시작되지 않음
|
OPDK-1785 |
업그레이드된 Edge 설치 환경에 수익 창출 구성요소 설치
해결 방법은 수익 창출을 설치하기 전에 apigee-env.sh 파일에서 올바른 수익 창출 버전을 설정하는 것입니다. 4.15.07에서 수익 창출 버전을 가져오려면(이미 Edge 4.15.07로 업그레이드한 후) 다음을 실행합니다.
> source /{install-dir}/apigee4/bin/apigee-env.sh > VER=`basename $(find $SHARE_DIR/installer/monetization -name "mint-*.zip") | cut -d "-" -f 2,3,4`
기본적으로 install-dir은 /opt입니다.
위의 VER 값은 apigee-env.sh에서 설정해야 합니다.
> sed -i "s/^MONETIZATION_VERSION=.*/MONETIZATION_VERSION=$VER/" /install-dir/apigee4/bin/apigee-env.sh
위 단계를 수행하지 않고 수익 창출을 설치하려고 하면 설치가 실패하고 공유 디렉터리에 비활성 링크가 있을 수 있습니다. 다음과 같이 심볼릭 링크를 삭제해야 합니다.
> rm /install-dir/apigee4/share/monetization
심볼릭 링크를 삭제한 후 위 단계에 따라 수익 창출 버전을 설정한 다음 수익 창출 설치를 다시 시도합니다.
|
OPDK-1857 |
bin/qpid-stat.sh 및 bin/qpid-config.sh에 Python 2.6 버전이 하드 코딩됨 CentOS 및 RedHat 7.0에서 bin/qpid-stat.sh 및 bin/qpid-config.sh의 여러 스크립트가 Python 버전 2.6을 사용하도록 하드코딩되어 있습니다. 이 문제를 해결하려면 apigee4/bin 디렉터리의 qpid-stat.sh 및 qpid-config.sh에서 PYTHONPATH를 내보내는 줄을 변경하세요.
시스템의 Python 버전을 확인하려면 /opt/apigee4/share/apache-qpid/lib 디렉터리에서 Python 버전을 확인합니다. 디렉터리는 python2.7일 가능성이 큽니다. 그런 다음 qpid-stat.sh 및 qpid-config.sh의 PYTHONPATH 설정을 올바른 경로로 업데이트해야 합니다. 예를 들면 다음과 같습니다.
|
DEVRT-1574 | 활성 요금제가 여러 개인 개발자의 불일치하는 잔액 및 사용량 수익 창출에서 개발자가 API 호출당 요금이 청구되는 요금제를 두 개 이상 사용하고 있는 경우 금전 잔액 사용량이 일치하지 않을 수 있습니다. |
APIBAAS-1647 | 시스템 관리자로 로그인한 후 BaaS UI에 '역할 가져오기 오류' 메시지가 표시됨 4.15.01에서 4.15.07로 업그레이드한 후 시스템 관리자가 시스템에 처음 로그인하면 이 오류 메시지가 표시됩니다. 이 메시지는 무시해도 됩니다. |
DEVRT-1834 |
4.15.07로 수익 창출 업그레이드 apigee-upgrade.sh 스크립트가 끝날 때 다른 스크립트를 실행하라는 메시지를 출력합니다. ************************************** In order to complete the monetization upgrade please run: sudo /opt/apigee4/share/monetization/schema/migration/MOPDK4.15.04.00/ 365-create-notification-condition.sh ************************************** 이 메시지는 무시해도 됩니다. 이 스크립트는 필수가 아니며 실행할 수 없습니다. |
DEVRT-1951 |
수익 창출 새로 설치 시 알림 구성 누락
프라이빗 클라우드용 Apigee Edge 버전 4.15.07.00을 새로 설치하면 수익 창출 알림에 관한 다음 구성이 누락됩니다. 이는 관리 UI의 관리 > 알림 페이지에 있는 알림 유형과 일치합니다.
mint.scheduler.${ORG_ID}.adhocnotify@@@management
mint.scheduler.${ORG_ID}.expiringrateplannotify@@@management
mint.scheduler.${ORG_ID}.newpkgnotify@@@management
mint.scheduler.${ORG_ID}.newproductnotify@@@management
mint.scheduler.${ORG_ID}.newrateplannotify@@@management
mint.scheduler.${ORG_ID}.tncacceptancenotify@@@management
이 문제를 해결하려면 다음 단계를 따르세요. Cassandra 인스턴스의 IP 주소가 필요합니다. 이를 찾으려면 <installation-root>/apigee4/conf/cassandra/cassandra.yaml 또는 <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties를 확인하세요.
|
DEVRT-1952 |
4.14.07.00에서 수익 창출 업그레이드 시 알림 구성 누락
프라이빗 클라우드용 Apigee Edge를 버전 4.14.07.00에서 4.15.07.00으로 업그레이드하면 수익 창출 알림에 관한 다음 구성이 누락되어 수익 창출 보고서가 잘못 작동합니다.
mint.scheduler.${ORG_ID}.chargedaily@@@management
mint.scheduler.${ORG_ID}.chargehourly@@@management
이 문제를 해결하려면 다음 단계를 따르세요. Cassandra 인스턴스의 IP 주소가 필요합니다. 이를 찾으려면 <installation-root>/apigee4/conf/cassandra/cassandra.yaml 또는 <installation-root>/apigee4/conf/cassandra/cassandra-topology.properties를 확인하세요.
|
OPDK-1878 | 다중 데이터 센터 설치에서 포드 이름을 설정할 수 없음 에지 설치 가이드에서는 다중 데이터 센터 설치의 자동 설치 파일에서 포드 이름을 'gateway-1' 및 'gateway-2'로 설정하도록 지정합니다. 그러나 Pod의 이름을 바꾸면 라우터와 메시지 프로세서가 제대로 등록되지 않고 액세스할 수 없게 됩니다. 이 문제로 인해 setup-org.sh 스크립트가 사용 가능한 메시지 프로세서를 찾을 수 없습니다. 해결 방법은 두 데이터 센터의 무음 설치 파일에서 MP_POD 속성을 사용하여 포드 이름을 '게이트웨이'로 설정하는 것입니다. |
OPDK-1886 |
노드가 192.168.x.y와 같은 로컬 IP 주소에 액세스할 수 없음 connect.ranges.denied=10.0.0.0/8,192.168.0.0/16,127.0.0.1/32 그런 다음 메시지 프로세서 노드를 다시 시작합니다. <install_dir>/apigge4/bin/apigee-service message-processor restart |
OPDK-1958 | 업그레이드할 때 모든 노드에서 관리 서버의 포트 8080에 액세스해야 함 런타임 시 라우터, 메시지 프로세서, UI, Postgres, Qpid 등 다음 구성요소는 관리 서버의 포트 8080에 액세스해야 합니다. 그러나 업그레이드할 때는 Cassandra 및 Zookeeper 노드를 비롯한 모든 노드에서 관리 서버의 포트 8080에 액세스해야 합니다. |
OPDK-1962 | 업그레이드 후 Edge API의 SSL을 다시 구성해야 함 4.15.07.00으로 업그레이드하기 전에 SSL을 사용하도록 Edge API를 구성한 경우 업그레이드 후 SSL을 다시 구성해야 합니다. Edge API의 SSL을 구성하는 절차는 Edge 작업 가이드를 참고하세요. |