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 đề được liệt kê sẽ được khắc phục trong một bản phát hành trong tương lai.

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

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

Khu vực/Tóm tắt Vấn đề đã biết
Kết quả hết hạn bộ nhớ đệm dẫn đến giá trị cachehit không chính xác

Khi biến flow cachehit được sử dụng sau chính sách LookupCache, do cách các điểm gỡ lỗi được gửi cho hành vi không đồng bộ, LookupPolicy sẽ điền sẵ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 lệnh gọi thứ hai) ngay sau lệnh 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 chỉ nên xoá các giá trị phần tử KeyFragment mà còn xoá toàn bộ bộ nhớ đệm.

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

Các yêu cầu triển khai đồng thời cho một SharedFlow hoặc proxy API có thể dẫn đến trạng thái không nhất quán trong Máy chủ quản lý, trong đó nhiều bản sửa đổi được hiển thị là đã triển khai.

Điều này có thể xảy ra, ví dụ: khi các lần chạy đồng thời của quy trình triển khai CI/CD xảy ra bằng các bản sửa đổi khác nhau. Để tránh vấn đề này, hãy tránh triển khai proxy API hoặc SharedFlow trước khi quá trình triển khai hiện tại hoàn tất.

Giải pháp: Tránh triển khai proxy API hoặc SharedFlow đồng thời.

Số lệnh gọi API hiển thị trong Phân tích API Edge có thể chứa dữ liệu trùng lặp.

Đôi khi, Edge API Analytics có thể chứa dữ liệu trùng lặp cho các lệnh gọi API. Trong trường hợp đó, số lượng hiển thị cho các lệnh gọi API trong Edge API Analytics sẽ cao hơn các giá trị tương đương hiển thị trong các công cụ phân tích của bên thứ ba.

Giải pháp: Xuất dữ liệu phân tích và sử dụng trường gateway_flow_id để loại bỏ dữ liệu trùng lặp.

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

Các vấn đề đã biết về trang tổng quan 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ợ Bản đặc tả OpenAPI 3.0 khi bạn tạo bản đặc tả bằng trình chỉnh sửa bản đặc tảphát hành API bằng SmartDocs trên cổng thông tin, 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 Quy cách OpenAPI 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 Quy cách OpenAPI, 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, một tính năng không được hỗ trợ sẽ gây ra lỗi khiến bạn không thể hiển thị thành công tài liệu tham khảo API. Trong cả hai trường hợp, bạn sẽ cần sửa đổi Thông số kỹ thuật OpenAPI để 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 trong tương lai.

    Lưu ý: Vì trình chỉnh sửa thông số kỹ thuật í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ể nhận được kết quả khác nhau giữa các công cụ.

  • Khi sử dụng tính năng Thử API này trong cổng thông tin, tiêu đề Accept sẽ được đặt thành application/json bất kể giá trị được đặt cho consumes trong Thông số kỹ thuật OpenAPI.
  • 138438484: Không hỗ trợ nhiều máy chủ.
Nhà cung cấp dịch vụ danh tính SAML Chúng tôi không hỗ trợ tính năng đăng xuất một lần (SLO) bằng nhà cung cấp dịch vụ danh tính SAML cho miền tuỳ chỉnh. Để bật miền tuỳ chỉnh bằng 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
  • Hiện tại, chúng tôi không hỗ trợ việc nhiều người dùng cập nhật cùng lúc trang web (chẳng hạn như chỉnh sửa trang, giao diện, CSS hoặc tập lệnh).
  • Nếu xoá một trang tài liệu tham khảo API khỏi cổng thông tin, bạn sẽ không thể tạo lại trang đó; bạn cần xoá và thêm lại sản phẩm API rồ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 đến 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 áp dụng đầy đủ.
Các tính năng của 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 một bản phát hành trong tương lai.

Các vấn đề đã biết với Edge cho Đám mây riêng tư

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

Khu vực Vấn đề đã biết
Edge cho Đám mây riêng tư 4.53.00 412696630: Không tải được kho khoá khi khởi động

Thành phần edge-message-processor có thể không tải được một hoặc nhiều kho khoá khi khởi động, dẫn đến lỗi lưu lượng truy cập khi kho khoá được một proxy API sử dụng. Việc khởi động lại thành phần edge-message-processor thường sẽ giải quyết được vấn đề.

Edge cho Đám mây riêng tư 4.53.00 Chú thích Java

Các lệnh gọi Java tuỳ chỉnh cố gắng tải trình cung cấp mật mã Bouncy Castle bằng tên "BC" có thể không thành công vì trình cung cấp mặc định đã được thay đổi thành Bouncy Castle FIPS để hỗ trợ FIPS. Tên trình cung cấp mới cần sử dụng là "BCFIPS".

Bản cập nhật Edge for Private Cloud 4.52.01 Mint

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

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 phiên bản 4.52.01 dưới dạng bản cài đặt mới hoặc nâng cấp từ các phiên bản trước của Đám mây riêng tư, bạn sẽ gặp phải vấn đề với bộ 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 xuất hiện trong system.log của edge-message-processor:

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

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

Các thành phần bộ định tuyếnmáy chủ quản lý của Edge cho Đám mây riêng tư được cung cấp cho Internet và có thể dễ gặp vấn đề về lỗ hổng. Mặc dù HTTP/2 được bật trên cổng quản lý của các thành phần dành riêng cho Edge khác của Edge cho Đám mây riêng, nhưng không có thành phần nào trong số đó được hiển thị trên Internet. Trên các thành phần không phải Edge, chẳng hạn 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 để giải quyết lỗ hổng Edge cho Đám mây riêng tư:

Hãy làm theo các bước sau nếu bạn đang sử 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ông báo:

    1. Trên mỗi nút của trình 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 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 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 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 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 các phiên bản Đám mây riêng tư cũ hơ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 2 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ông báo:

    1. Trên mỗi nút của trình xử lý thông báo, hãy mở /opt/apigee/customer/application/message-processor.properties
    2. Thêm 2 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 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 2 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 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 2 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 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 2 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 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 for Private Cloud phiên bản 4.50 hoặc 4.51 lên phiên bản 4.52. Vấn đề này 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 bên dưới:

select count(*) from information_schema.tables

Giải pháp tạm thời: 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.

Chính sách LDAP

149245401: Các chế độ 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à các chế độ cài đặt mặc định của JNDI sẽ gây ra các kết nối một lần mỗi khi. Do đó, các kết nối sẽ được mở và đóng mỗi lần sử dụng, tạo ra một số lượng lớn kết nối mỗi giờ đến máy chủ LDAP.

Giải pháp:

Để thay đổi các thuộc tính của nhóm kết nối LDAP, hãy thực hiện các bước sau để thiết lập thay đổi chung cho 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 tệp này chưa tồn tại:
    /opt/apigee/customer/application/message-processor.properties
  2. Thêm nội dung sau vào tệp (thay thế các giá trị của thuộc tính Giao diện đặt tên và thư mục Java (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 trình xử lý thông báo.

Để 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 tcpdump để quan sát hành vi của nhóm kết nối LDAP theo thời gian.

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

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

Nguyên nhân gốc: Bộ xử lý thông báo duy trì một bộ nhớ đệm ánh xạ URL máy chủ đích đến đối tượng HTTPClient cho các kết nối đi đến máy chủ đích. Theo mặc định, chế độ cài đặt này được đặt thành 50, có thể quá thấp đối với hầu hết các hoạt động triển khai. Khi một hoạt động triển khai có nhiều tổ hợp tổ chức/môi trường trong một chế độ thiết lập và có tổng cộng hơn 50 máy chủ đích, thì các URL máy chủ đích sẽ liên tục bị loại bỏ 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ủ đích có gây ra vấn đề về độ trễ hay không, hãy tìm kiếm từ khoá "onEvict" hoặc "Eviction" trong Message Processor system.logs. Sự xuất hiện của chúng trong nhật ký cho thấy các URL máy chủ đích đang bị loại bỏ khỏi bộ nhớ đệm HTTPClient vì kích thước bộ nhớ đệm quá nhỏ.

Giải pháp tạm thời: Đối với Edge cho Đám mây riêng tư 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 đó, hãy khởi động lại trình xử lý tin nhắn. Thực hiện các thay đổi tương tự cho tất cả các trình xử lý thông báo.

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

Lưu ý: Edge cho Đám mây riêng tư phiên bản 50.00 có chế độ cài đặt mặc định là 500.

Nhiều mục cho các mối liên kết khoá-giá trị

157933959: Các thao tác chèn và cập nhật đồng thời vào cùng một bản đồ giá trị khoá (KVM) có phạm vi ở cấp tổ chức hoặc môi trường gây ra dữ liệu không nhất quán và mất nội dung cập nhật.

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

Để khắc phục vấn đề trong Edge cho Đám mây riêng tư, hãy tạo KVM ở phạm vi apiproxy.