Các vấn đề đã biết với Apigee

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về Apigee X.
thông tin

Các phần sau đây mô tả các vấn đề đã biết với Apigee. Trong hầu hết các trường hợp, các vấn đề đã nêu sẽ được khắc phục ở bản phát hành sau này.

Các vấn đề đã biết khác của Edge

Các phần sau đây mô tả các vấn đề khác đã biết với Edge.

Khu vực Vấn đề đã biết
Bộ nhớ đệm hết hạn dẫn đến giá trị cachehit không chính xác

Khi biến luồng cachehit được sử dụng sau chính sách LookupCache, do cách các điểm gỡ lỗi được gửi đi cho hành vi không đồng bộ, nên LookupPolicy sẽ điền đối tượng DebugInfo trước khi lệnh gọi lại được thực thi, dẫn đến lỗi.

Giải pháp: Lặp lại quy trình (thực hiện cuộc gọi thứ hai) ngay sau cuộc gọi đầu tiên.

Việc đặt chính sách InvalidateCache PurgeChildEntries thành true không hoạt động đúng cách

Việc đặt PurgeChildEntries trong chính sách InvalidateCache sẽ chỉ xoá hoàn toàn các giá trị phần tử KeyFragment nhưng sẽ xoá toàn bộ bộ nhớ đệm.

Giải pháp: Sử dụng chính sách KeyValueMapOperations để lặp lại phiên bản bộ nhớ đệm và bỏ qua nhu cầu vô hiệu hoá bộ nhớ đệm.

Các vấn đề đã biết với giao diện người dùng Edge

Các phần sau đây mô tả các vấn đề đã biết với giao diện người dùng Edge.

Khu vực Vấn đề đã biết
Không thể truy cập vào trang Quản trị vùng SSO của Edge từ thanh điều hướng sau khi tổ chức được liên kết với một vùng nhận dạng Khi kết nối một tổ chức với một vùng nhận dạng, bạn sẽ không thể truy cập vào trang Quản trị vùng SSO của Edge từ thanh điều hướng bên trái bằng cách chọn Quản trị viên > SSO. Để khắc phục vấn đề này, hãy chuyển đến trang trực tiếp bằng URL sau: https://apigee.com/sso

Vấn đề đã biết với cổng thông tin tích hợp

Các phần sau đây mô tả các vấn đề đã biết với cổng thông tin tích hợp.

Khu vực Vấn đề đã biết
SmartDocs
  • Apigee Edge hỗ trợ quy cách OpenAPI 3.0 khi bạn tạo thông số kỹ thuật bằng trình chỉnh sửa thông số kỹ thuậtphát hành API bằng SmartDocs trên cổng thông tin của bạn, mặc dù một số tính năng chưa được hỗ trợ.

    Ví dụ: các tính năng sau đây trong OpenAPI Specification 3.0 chưa được hỗ trợ:

    • Các thuộc tính allOf để kết hợp và mở rộng giản đồ
    • Tham chiếu từ xa

    Nếu một tính năng không được hỗ trợ được tham chiếu trong Thông số kỹ thuật OpenAPI của bạn, thì trong một số trường hợp, các công cụ sẽ bỏ qua tính năng đó nhưng vẫn hiển thị tài liệu tham khảo API. Trong các trường hợp khác, tính năng không được hỗ trợ sẽ gây ra lỗi khiến tài liệu tham khảo API không hiển thị thành công. Trong cả hai trường hợp, bạn sẽ cần sửa đổi Thông số kỹ thuật OpenAPI của mình để tránh sử dụng tính năng không được hỗ trợ cho đến khi tính năng đó được hỗ trợ trong bản phát hành sau này.

    Lưu ý: Vì trình chỉnh sửa thông số ít hạn chế hơn SmartDocs khi hiển thị tài liệu tham khảo API, nên bạn có thể thấy kết quả khác nhau giữa các công cụ.

  • Khi sử dụng API Thử này trong cổng thông tin, tiêu đề Accept được đặt thành application/json bất kể giá trị được thiết lập cho consumes trong Thông số kỹ thuật OpenAPI.
Nhà cung cấp danh tính SAML Đăng xuất một lần (SLO) với nhà cung cấp danh tính SAML không được hỗ trợ cho các miền tuỳ chỉnh. Để bật một miền tuỳ chỉnh với nhà cung cấp danh tính SAML, hãy để trống trường URL đăng xuất khi bạn định cấu hình chế độ cài đặt SAML.
Quản trị viên cổng thông tin
  • Việc nhiều người dùng thực hiện cập nhật đồng thời cổng thông tin (chẳng hạn như trang, giao diện, CSS hoặc tập lệnh) hiện không được hỗ trợ.
  • Nếu xoá trang tài liệu tham khảo API khỏi cổng thông tin thì bạn sẽ không thể tạo lại trang đó. Bạn sẽ phải xoá và thêm lại sản phẩm API, đồng thời tạo lại tài liệu tham khảo API.
  • Khi định cấu hình chính sách bảo mật nội dung, có thể mất tới 15 phút để các thay đổi được áp dụng đầy đủ.
  • Khi tuỳ chỉnh giao diện cổng thông tin, có thể mất đến 5 phút để các thay đổi có hiệu lực đầy đủ.
Tính năng cổng thông tin
  • Tính năng Tìm kiếm sẽ được tích hợp vào cổng thông tin tích hợp trong bản phát hành trong tương lai.

Vấn đề đã biết với Edge dành cho đám mây riêng tư

Các phần sau đây mô tả các vấn đề đã biết với Edge dành cho đám mây riêng tư.

Khu vực Vấn đề đã biết
OPDK 4.52.01 Mint Cập nhật

Sự cố này chỉ ảnh hưởng đến những người đang sử dụng MINT hoặc đã bật MINT trong Edge để cài đặt Đám mây riêng tư.

Thành phần bị ảnh hưởng: Edge-message-processor

Vấn đề: Nếu đã bật tính năng kiếm tiền và đang cài đặt 4.52.01 dưới dạng một bản cài đặt mới hoặc nâng cấp từ các phiên bản Đám mây riêng tư trước đó, thì bạn sẽ gặp vấn đề với trình xử lý thông báo. Số lượng luồng mở sẽ tăng dần, dẫn đến tình trạng cạn kiệt tài nguyên. Ngoại lệ sau đây sẽ xuất hiện trong system.log lề-message-processor:

Error injecting constructor, java.lang.OutOfMemoryError: unable to create new native thread
Lỗ hổng Apigee HTTP/2

Gần đây, chúng tôi đã phát hiện một lỗ hổng Từ chối dịch vụ (DoS) trong nhiều lần triển khai giao thức HTTP/2 (CVE-2023-44487), kể cả trong Apigee Edge cho đám mây riêng tư. Lỗ hổng bảo mật này có thể dẫn đến chức năng quản lý API Apigee có sự xuất hiện của DoS. Để biết thêm thông tin chi tiết, hãy xem Apigee Security Tin nhắn GCP-2023-032.

Các thành phần của bộ định tuyếnmáy chủ quản lý Edge for Private Cloud trên Internet có thể dễ bị tấn công. Mặc dù HTTP/2 được bật trên cổng quản lý của các thành phần khác dành riêng cho Edge của Edge dành cho Đám mây riêng tư, nhưng không có thành phần nào trong số đó có thể tiếp xúc với Internet. Trên các thành phần không phải Edge, như Cassandra, Zookeeper và các thành phần khác, HTTP/2 không được bật. Bạn nên thực hiện các bước sau để xử lý lỗ hổng Edge for Private Cloud:

Hãy làm theo các bước sau nếu bạn đang dùng Edge Private Cloud phiên bản 4.51.00.11 trở lên:

  1. Cập nhật máy chủ quản lý:

    1. Trên mỗi nút máy chủ quản lý, hãy mở /opt/apigee/customer/application/management-server.properties
    2. Thêm dòng này vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
    3. Khởi động lại thành phần máy chủ quản lý:
      apigee-service edge-management-server restart
  2. Cập nhật trình xử lý thư:

    1. Trên mỗi nút xử lý thông báo, hãy mở /opt/apigee/customer/application/message-processor.properties
    2. Thêm dòng này vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-message-processor restart
  3. Cập nhật bộ định tuyến:

    1. Trên mỗi nút bộ định tuyến, hãy mở /opt/apigee/customer/application/router.properties
    2. Thêm dòng này vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-router restart
  4. Cập nhật QPID:

    1. Trên mỗi nút QPID, hãy mở /opt/apigee/customer/application/qpid-server.properties
    2. Thêm dòng này vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-qpid-server restart
  5. Cập nhật Postgres:

    1. Trên mỗi nút Postgres, hãy mở /opt/apigee/customer/application/postgres-server.properties
    2. Thêm dòng này vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-postgres-server restart

Hãy làm theo các bước sau nếu bạn đang sử dụng Edge cho phiên bản Đám mây riêng tư trước phiên bản 4.51.00.11:

  1. Cập nhật máy chủ quản lý:

    1. Trên mỗi nút máy chủ quản lý, hãy mở /opt/apigee/customer/application/management-server.properties
    2. Thêm hai dòng sau vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Khởi động lại thành phần máy chủ quản lý:
      apigee-service edge-management-server restart
  2. Cập nhật trình xử lý thư:

    1. Trên mỗi nút xử lý thông báo, hãy mở /opt/apigee/customer/application/message-processor.properties
    2. Thêm hai dòng sau vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-message-processor restart
  3. Cập nhật bộ định tuyến:

    1. Trên mỗi nút bộ định tuyến, hãy mở /opt/apigee/customer/application/router.properties
    2. Thêm hai dòng sau vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-router restart
  4. Cập nhật QPID:

    1. Trên mỗi nút QPID, hãy mở /opt/apigee/customer/application/qpid-server.properties
    2. Thêm hai dòng sau vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-qpid-server restart
  5. Cập nhật Postgres:

    1. Trên mỗi nút Postgres, hãy mở /opt/apigee/customer/application/postgres-server.properties
    2. Thêm hai dòng sau vào tệp thuộc tính:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. Khởi động lại thành phần của trình xử lý tin nhắn:
      apigee-service edge-postgres-server restart
Nâng cấp Postgresql khi cập nhật lên phiên bản 4.52

Apigee-postgresql đang gặp vấn đề khi nâng cấp từ Edge cho Đám mây riêng tư phiên bản 4.50 hoặc 4.51 lên phiên bản 4.52. Vấn đề chủ yếu xảy ra khi số lượng bảng lớn hơn 500.

Bạn có thể kiểm tra tổng số bảng trong Postgres bằng cách chạy truy vấn SQL dưới đây:

select count(*) from information_schema.tables

Giải pháp: Khi cập nhật Apigee Edge 4.50.00 hoặc 4.51.00 lên 4.52.00, hãy nhớ thực hiện bước sơ bộ trước khi nâng cấp Apigee-postgresql.

apigee-mirror trên RHEL 8.0

apigee-mirror không hoạt động trên Red Hat Enterprise Linux (RHEL) 8.0.

Giải pháp: Để giải quyết vấn đề này, hãy cài đặt apigee-mirror trên một máy chủ chạy phiên bản RHEL thấp hơn hoặc một hệ điều hành được hỗ trợ khác cho Apigee. Sau đó, bạn có thể dùng bản sao này để thêm các gói ngay cả khi đã cài đặt Apigee trên máy chủ RHEL 8.0.

Chính sách LDAP

149245401: Cài đặt nhóm kết nối LDAP cho JNDI được định cấu hình thông qua tài nguyên LDAP không được phản ánh và giá trị mặc định JNDI sẽ tạo kết nối sử dụng một lần mỗi lần. Do đó, các kết nối sẽ được mở và đóng mỗi lần để sử dụng một lần, tạo ra một lượng lớn kết nối mỗi giờ tới máy chủ LDAP.

Giải pháp tạm thời:

Để thay đổi các thuộc tính nhóm kết nối LDAP, hãy làm theo các bước sau để thiết lập thay đổi chung trên tất cả các chính sách LDAP.

  1. Tạo một tệp thuộc tính cấu hình nếu chưa có:
    /opt/apigee/customer/application/message-processor.properties
  2. Thêm mục sau vào tệp (thay thế giá trị của các thuộc tính Đặt tên Java và Giao diện thư mục (JNDI) dựa trên yêu cầu về cấu hình tài nguyên LDAP).
    bin_setenv_ext_jvm_opts="-Dcom.sun.jndi.ldap.connect.pool.maxsize=20
    -Dcom.sun.jndi.ldap.connect.pool.prefsize=2
    -Dcom.sun.jndi.ldap.connect.pool.initsize=2
    -Dcom.sun.jndi.ldap.connect.pool.timeout=120000
    -Dcom.sun.jndi.ldap.connect.pool.protocol=ssl"
  3. Đảm bảo tệp /opt/apigee/customer/application/message-processor.properties thuộc sở hữu của apigee:apigee.
  4. Khởi động lại từng bộ xử lý thư.

Để xác minh rằng các thuộc tính JNDI của nhóm kết nối đang có hiệu lực, bạn có thể thực hiện lệnh tcpdump để quan sát hành vi của nhóm kết nối LDAP theo thời gian.

Độ trễ xử lý yêu cầu cao

139051927: Các độ trễ xử lý proxy cao trong Trình xử lý thông báo đang ảnh hưởng đến tất cả Proxy API. Các triệu chứng bao gồm thời gian xử lý chậm hơn 200-300 mili giây so với thời gian phản hồi bình thường của API và có thể xảy ra ngẫu nhiên ngay cả với TPS thấp. Điều này có thể xảy ra khi có hơn 50 máy chủ mục tiêu mà trong đó bộ xử lý thông báo tạo kết nối.

Nguyên nhân gốc: Trình xử lý thông báo lưu một bộ nhớ đệm để ánh xạ URL máy chủ mục tiêu với đối tượng HTTPClient cho các kết nối gửi đi tới máy chủ mục tiêu. Theo mặc định, chế độ cài đặt này được đặt thành 50. Đây có thể là mức quá thấp đối với hầu hết các đợt triển khai. Khi quá trình triển khai có nhiều tổ hợp org/env trong một quá trình thiết lập và có số lượng lớn máy chủ đích vượt quá 50 máy chủ, thì các URL máy chủ mục tiêu sẽ liên tục bị loại khỏi bộ nhớ đệm, gây ra độ trễ.

Xác thực: Để xác định xem việc loại bỏ URL máy chủ mục tiêu có gây ra vấn đề về độ trễ hay không, hãy tìm từ khoá "onEvict" hoặc "Eviction" trên hệ thống Bộ xử lý tin nhắn. Sự hiện diện của các URL này trong nhật ký cho biết rằng URL máy chủ mục tiêu đang bị loại khỏi bộ nhớ đệm HTTPClient vì dung lượng bộ nhớ đệm quá nhỏ.

Giải pháp: Đối với Edge for Private Cloud phiên bản 19.01 và 19.06, bạn có thể chỉnh sửa và định cấu hình bộ nhớ đệm HTTPClient, /opt/apigee/customer/application/message-processor.properties:

conf/http.properties+HTTPClient.dynamic.cache.elements.size=500

Sau đó, khởi động lại bộ xử lý thư. Thực hiện các thay đổi tương tự cho tất cả trình xử lý thư.

Giá trị 500 là một ví dụ. Giá trị tối ưu cho chế độ thiết lập của bạn nên lớn hơn số lượng máy chủ mục tiêu mà trình xử lý thông báo sẽ kết nối. Việc đặt thuộc tính này cao hơn không có tác dụng phụ nào và tác động duy nhất sẽ là cải thiện thời gian xử lý yêu cầu proxy của trình xử lý thư.

Lưu ý: Edge for Private Cloud phiên bản 50.00 có chế độ cài đặt mặc định là 500.

Nhiều mục nhập cho bản đồ giá trị khoá

157933959: Việc chèn và cập nhật đồng thời cùng một bản đồ khoá giá trị (KVM) trong phạm vi cấp tổ chức hoặc môi trường sẽ khiến dữ liệu không nhất quán và nội dung cập nhật bị mất.

Lưu ý: Giới hạn này chỉ áp dụng cho Edge dành cho đám mây riêng tư. Edge cho Đám mây công cộng và Kết hợp không có hạn chế này.

Để biết giải pháp trong Edge dành cho đám mây riêng tư, hãy tạo KVM ở phạm vi apiproxy.