Cách định cấu hình Edge

Edge cho đám mây riêng tư phiên bản 4.18.05

Để định cấu hình Edge sau khi cài đặt, bạn cần sử dụng kết hợp các tệp .properties và tiện ích Edge. Ví dụ: để định cấu hình TLS/SSL trên giao diện người dùng Edge, bạn cần chỉnh sửa các tệp .properties để đặt các thuộc tính cần thiết. Các thay đổi đối với tệp .properties yêu cầu bạn khởi động lại thành phần Edge bị ảnh hưởng.

Apigee đề cập đến kỹ thuật chỉnh sửa các tệp .properties dưới dạng mã có cấu hình. Về cơ bản, mã có cấu hình là công cụ tra cứu khoá/giá trị dựa trên các chế độ cài đặt trong các tệp .properties. Trong mã có cấu hình, các khoá này được gọi là mã thông báo. Do đó, để định cấu hình Edge, bạn phải đặt mã thông báo trong các tệp .properties.

Mã có cấu hình cho phép các thành phần Edge đặt các giá trị mặc định được vận chuyển cùng với sản phẩm, cho phép nhóm cài đặt ghi đè các chế độ cài đặt đó dựa trên cấu trúc liên kết cài đặt, sau đó cho phép khách hàng ghi đè mọi thuộc tính mà họ chọn.

Nếu bạn coi đây là một hệ phân cấp, thì các chế độ cài đặt sẽ được sắp xếp như sau, trong đó chế độ cài đặt của khách hàng có mức độ ưu tiên cao nhất sẽ ghi đè mọi chế độ cài đặt của nhóm trình cài đặt hoặc Apigee:

  1. Khách hàng
  2. Trình cài đặt
  3. Apigee

Cách sử dụng tệp .properties

Là khách hàng, bạn chỉ có thể sửa đổi các tệp .properties trong thư mục /opt/apigee/customer/application. Mỗi thành phần đều có tệp .properties riêng trong thư mục đó. Ví dụ: router.propertiesmanagement-server.properties.

Ví dụ: để tạo tệp .properties:

  1. Tạo tệp trong trình chỉnh sửa với tư cách là bất kỳ người dùng nào.
  2. Sử dụng chown để thay đổi chủ sở hữu của tệp thành "apigee:apigee" hoặc nếu bạn đã thay đổi người dùng đang chạy dịch vụ Edge từ người dùng "apigee", hãy chọn tệp đó cho người dùng đang chạy dịch vụ Edge.

Để thiết lập thuộc tính cho một thành phần, hãy chỉnh sửa tệp .properties tương ứng để thiết lập mã thông báo, sau đó khởi động lại thành phần đó:

/opt/apigee/apigee-service/bin/apigee-service component restart

Ví dụ: sau khi chỉnh sửa router.properties, hãy khởi động lại Bộ định tuyến:

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

Khi bạn nâng cấp Edge, các tệp .properties trong thư mục /opt/apigee/customer/application sẽ được đọc. Điều đó có nghĩa là bản nâng cấp sẽ giữ lại mọi thuộc tính mà bạn đã thiết lập cho thành phần.

Vị trí của các tệp .properties

Có 3 thư mục cấp cao nhất cho các tệp .properties của các thành phần của Edge: cài đặt, chủ sở hữu và khách hàng. Các vị trí mặc định được hiển thị trong bảng sau:

Chủ sở hữu Thư mục gốc của mã thông báo mặc định
Thành phần
/opt/apigee/component_name/conf

Trong đó component_name xác định thành phần. Các giá trị có thể có bao gồm:

  • apigee-cassandra (Cassandra)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (Cơ sở dữ liệu PostgreSQL)
  • apigee-qpidd (Qpidd)
  • apigee-sso (Edge SSO)
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (Máy chủ quản lý)
  • edge-management-ui (Giao diện người dùng Edge mới)
  • edge-message-processor (Bộ xử lý thông báo)
  • edge-postgres-server (Máy chủ Postgres)
  • edge-qpid-server (Máy chủ Qid)
  • edge-router (Bộ định tuyến Edge)
  • edge-ui (Giao diện người dùng cổ điển)
Cài đặt
/opt/apigee/token
Khách hàng
/opt/apigee/customer

Xác định giá trị hiện tại của mã thông báo

Trước khi thiết lập mã thông báo trong tệp .properties cho thành phần, trước tiên, bạn có thể xác định giá trị hiện tại của mã đó bằng lệnh sau:

/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token

Trong đó component_name là tên của thành phần và token là mã thông báo cần kiểm tra.

Lệnh này tìm kiếm hệ thống phân cấp của các tệp .properties để xác định giá trị hiện tại của mã thông báo.

Ví dụ: để kiểm tra giá trị hiện tại của mã thông báo conf_http_HTTPRequest.line.limit cho Bộ định tuyến:

/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Bạn sẽ thấy kết quả dưới dạng:

Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties

Đặt mã thông báo trong tệp .properties

Cách ghi đè giá trị của mã thông báo:

  1. Chỉnh sửa tệp .properties cho thành phần để đặt giá trị mã thông báo. Hãy tạo tệp nếu chưa có.
  2. Khởi động lại thành phần.
  3. Kiểm tra giá trị mã thông báo.

Ví dụ: để đặt giới hạn dòng yêu cầu cho Bộ định tuyến cạnh:

  1. Chỉnh sửa tệp /opt/apigee/customer/application/router.properties để thiết lập mã thông báo conf_http_HTTPRequest.line.limit:
    conf_http_HTTPRequest.line.limit=8k
  2. Khởi động lại Bộ định tuyến Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  3. Kiểm tra giá trị của mã thông báo:
    /opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit

Thiết lập một mã thông báo nhận nhiều giá trị

Một số mã thông báo sử dụng một danh sách các giá trị được phân tách bằng dấu phẩy. Ví dụ: mã thông báo conf_security_rbac.restricted.resources lấy một danh sách các URI bị hạn chế để chỉ quản trị viên hệ thống mới có thể gọi các URI đó. Cách xem giá trị của conf_security_rbac.restricted.resources:

cd /opt/apigee/edge-management-server
grep -ri "conf_security_rbac.restricted.resources" *

Kết quả chứa thông tin sau:

token/default.properties:conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status

Để thiết lập một mã thông báo lấy danh sách giá trị, hãy thêm mọi giá trị mới vào giá trị hiện tại của mã thông báo trong tệp .properties. Do đó, để thêm URI /myuri/* vào conf_security_rbac.restricted.resources, hãy chỉnh sửa tệp /opt/apigee/customer/application/management-server.properties như sau:

conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*

Tìm mã thông báo

Trong hầu hết các trường hợp, các mã thông báo bạn cần đặt sẽ được xác định trong hướng dẫn này. Tuy nhiên, nếu bạn cần xác định mã thông báo dùng để ghi đè một thuộc tính, hãy thực hiện grep trong thư mục source của thành phần đó.

Ví dụ: nếu bạn biết rằng trong bản phát hành trước của Edge, bạn đã đặt thuộc tính session.maxAge và muốn biết giá trị mã thông báo dùng để đặt giá trị đó, thì grep cho thuộc tính trong thư mục /opt/apigee/edge-ui/source:

grep -ri "session.maxAge" /opt/apigee/edge-ui/source

Bạn sẽ thấy một kết quả trong biểu mẫu:

/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}

Chuỗi giữa các thẻ {T}{/T} là mã thông báo mà bạn đặt trong tệp .properties.

Thiết lập một mã thông báo đang bị nhận xét

Một số mã thông báo sẽ được nhận xét trong các tệp cấu hình Edge. Nếu bạn cố thiết lập một mã thông báo được nhận xét, chế độ cài đặt này sẽ bị bỏ qua.

Để đặt mã thông báo được nhận xét, bạn sử dụng một cú pháp đặc biệt, theo biểu mẫu:

conf/file.extension+propertyName=propertyValue

Ví dụ: bạn muốn đặt thuộc tính có tên HTTPClient.proxy.host trên Trình xử lý tin nhắn. Sau đó, bạn grep cho thuộc tính để xác định mã thông báo của thuộc tính đó:

cd /opt/apigee/edge-message-processor
grep -ri "HTTPClient.proxy.host" *

Lệnh grep trả về kết quả có dạng chứa giá trị mã thông báo. Hãy lưu ý cách nhận xét tên tài sản, thể hiện bằng tiền tố # trên tên tài sản:

source/conf/http.properties:#HTTPClient.proxy.host={T}conf_http_HTTPClient.proxy.host{/T}
token/default.properties:conf_http_HTTPClient.proxy.host=
conf/http.properties:#HTTPClient.proxy.host=

Để thiết lập thuộc tính, hãy chỉnh sửa /opt/apigee/customer/application/message-processor.properties để đặt thuộc tính thành:

conf/http.properties+HTTPClient.proxy.host=myhost.name.com

Hãy lưu ý rằng tên thuộc tính có tiền tố là conf/http.properties+, vị trí và tên của tệp cấu hình chứa thuộc tính theo sau là dấu "+".

Sau khi bạn khởi động lại Bộ xử lý tin nhắn, hãy kiểm tra tệp /opt/apigee/edge-message-processor/conf/http.properties:

cat /opt/apigee/edge-message-processor/conf/http.properties

Ở cuối tệp, bạn sẽ thấy nhóm tài sản có dạng như sau:

conf/http.properties:HTTPClient.proxy.host=myhost.name.com