หากต้องการกำหนดค่า Edge หลังจากติดตั้ง ให้ใช้ไฟล์รวมกัน .properties
รายการ
และ Edgeยูทิลิตี ตัวอย่างเช่น ในการกำหนดค่า TLS/SSL ใน Edge UI คุณจะต้องแก้ไข
.properties
ไฟล์เพื่อตั้งค่าพร็อพเพอร์ตี้ที่จำเป็น การเปลี่ยนแปลงเป็น
ไฟล์ .properties
รายการกำหนดให้คุณต้องรีสตาร์ทคอมโพเนนต์ Edge ที่ได้รับผลกระทบ
Apigee จะใช้เทคนิคการแก้ไขไฟล์ .properties
เป็นโค้ดด้วย
config (บางครั้งชื่อย่อคือ CwC) โดยพื้นฐานแล้ว โค้ดที่มีการกำหนดค่าคือการค้นหาคีย์/ค่า
เครื่องมือที่ขึ้นอยู่กับการตั้งค่าในไฟล์ .properties
ในโค้ดที่มีการกำหนดค่า คีย์จะเรียกว่า
โทเค็น ดังนั้น หากต้องการกำหนดค่า Edge คุณจึงต้องตั้งค่าโทเค็นใน .properties
โค้ดที่มีการกำหนดค่าช่วยให้คอมโพเนนต์ Edge ตั้งค่าเริ่มต้นที่มาพร้อมกับ ช่วยให้ทีมติดตั้งสามารถแทนที่การตั้งค่าเหล่านั้นตามโทโพโลยีการติดตั้ง และให้ลูกค้าลบล้างที่พักที่เลือกได้
ถ้าคุณมองเป็นลำดับชั้น การตั้งค่าจะจัดเรียงตามนี้โดยที่ลูกค้า ที่มีลําดับความสําคัญสูงสุดในการลบล้างการตั้งค่าจากทีมโปรแกรมติดตั้งหรือ Apigee:
- ลูกค้า
- ผู้ติดตั้ง
- ส่วนประกอบ
ระบุค่าปัจจุบันของโทเค็น
ก่อนที่คุณจะกำหนดค่าใหม่สำหรับโทเค็นในไฟล์ .properties
คุณควรระบุค่าปัจจุบันก่อนโดยใช้คำสั่งต่อไปนี้
/opt/apigee/apigee-service/bin/apigee-service component_name configure -search token
โดย component_name คือชื่อของคอมโพเนนต์และ token คือโทเค็น เพื่อตรวจสอบ
คำสั่งนี้จะค้นหาลำดับชั้นไฟล์ .properties
ของคอมโพเนนต์เพื่อ
กำหนดค่าปัจจุบันของโทเค็น
ตัวอย่างต่อไปนี้จะตรวจสอบค่าปัจจุบันของ conf_http_HTTPRequest.line.limit
โทเค็นสำหรับเราเตอร์:
/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
คุณควรจะเห็นเอาต์พุตที่มีลักษณะดังนี้
Found key conf_http_HTTPRequest.line.limit, with value, 4k, in /opt/apigee/edge-router/token/default.properties
ถ้าค่าของโทเค็นเริ่มต้นด้วย #
แสดงว่ามีการแสดงความคิดเห็นแล้ว และคุณต้องใช้
ไวยากรณ์พิเศษเพื่อแก้ไข สำหรับข้อมูลเพิ่มเติม โปรดดู
ตั้งค่าโทเค็นที่มีการแสดงความคิดเห็นอยู่ในขณะนี้
หากไม่ทราบชื่อเต็มของโทเค็น ให้ใช้เครื่องมือ เช่น grep
เพื่อค้นหา
ตามชื่อพร็อพเพอร์ตี้หรือคีย์เวิร์ด ดูข้อมูลเพิ่มเติมได้ที่ค้นหา
โทเค็น
ไฟล์พร็อพเพอร์ตี้
ซึ่งมีไฟล์การกำหนดค่าคอมโพเนนต์ที่แก้ไขได้และแก้ไขไม่ได้ ส่วนนี้จะอธิบายเกี่ยวกับ
ไฟล์การกำหนดค่าคอมโพเนนต์ที่แก้ไขได้
ตารางต่อไปนี้แสดงคอมโพเนนต์ Apigee และไฟล์พร็อพเพอร์ตี้ที่คุณใช้ได้ แก้ไขเพื่อกำหนดค่าคอมโพเนนต์เหล่านั้น
ส่วนประกอบ | ชื่อคอมโพเนนต์ | ไฟล์การกำหนดค่าที่แก้ไขได้ |
---|---|---|
Cassandra | apigee-cassandra |
/opt/apigee/customer/application/cassandra.properties |
เราเตอร์ Edge | edge-router |
/opt/apigee/edge-router/conf/load_balancing.properties |
SSO ของ Apigee | apigee-sso |
/opt/apigee/customer/application/sso.properties |
เซิร์ฟเวอร์การจัดการ | edge-management-server |
/opt/apigee/customer/application/management-server.properties |
Message Processor | edge-message-processor |
/opt/apigee/customer/application/message-processor.properties |
apigee-monit |
apigee-monit |
/opt/apigee/customer/application/monit.properties |
UI แบบคลาสสิก (ไม่มีผลกับ Edge UI ใหม่) | edge-ui |
/opt/apigee/customer/application/ui.properties |
Edge UI (UI แบบใหม่ของ Edge เท่านั้น ไม่ส่งผลต่อ UI แบบคลาสสิก) | apigee-management-ui |
ไม่มี (ใช้ไฟล์การกำหนดค่าการติดตั้ง) |
OpenLDAP | apigee-openldap |
/opt/apigee/customer/application/openldap.properties |
เซิร์ฟเวอร์ Postgres | edge-postgres-server |
/opt/apigee/customer/application/postgres-server.properties |
ฐานข้อมูล PostgreSQL | apigee-postgresql |
/opt/apigee/customer/application/postgressql.properties |
เซิร์ฟเวอร์ Qpid | edge-qpid-server |
/opt/apigee/customer/application/qpid-server.properties |
คพิด | apigee-qpidd |
/opt/apigee/customer/application/qpidd.properties |
เราเตอร์ | edge-router |
/opt/apigee/customer/application/router.properties |
ผู้ดูแลสวนสัตว์ | apigee-zookeeper |
/opt/apigee/customer/application/zookeeper.properties |
หากคุณต้องการตั้งค่าพร็อพเพอร์ตี้ในไฟล์การกำหนดค่าคอมโพเนนต์ไฟล์ใดไฟล์หนึ่งเหล่านี้ แต่กลับไม่มี ที่มีอยู่ คุณสามารถสร้างได้ในตำแหน่งที่ระบุไว้ข้างต้น
นอกจากนี้ คุณต้องตรวจสอบว่าไฟล์พร็อพเพอร์ตี้เป็นของ "Apigee" ผู้ใช้:
chown apigee:apigee /opt/apigee/customer/application/configuration_file.properties
ไฟล์การกำหนดค่าคอมโพเนนต์ที่แก้ไขไม่ได้
นอกจากไฟล์การกำหนดค่าคอมโพเนนต์ที่แก้ไขได้ ยังมีไฟล์การกำหนดค่า ที่คุณไม่สามารถแก้ไขได้
ไฟล์ที่ให้ข้อมูล (แก้ไขไม่ได้) มีดังนี้
เจ้าของ | ชื่อไฟล์หรือไดเรกทอรี |
---|---|
การติดตั้ง | /opt/apigee/token |
ส่วนประกอบ | /opt/apigee/component_name/conf ตำแหน่งที่ component_name ระบุคอมโพเนนต์ ค่าที่เป็นไปได้ ได้แก่
|
ตั้งค่าโทเค็น
คุณแก้ไขได้เฉพาะไฟล์ .properties
ใน
ไดเรกทอรี /opt/apigee/customer/application
คอมโพเนนต์แต่ละอย่างมี
.properties
ไฟล์ในไดเรกทอรีนั้น เช่น router.properties
และ management-server.properties
หากต้องการดูรายการไฟล์พร็อพเพอร์ตี้ทั้งหมด
ดูตำแหน่งของไฟล์ .properties
วิธีสร้างไฟล์ .properties
:
- สร้างไฟล์ข้อความใหม่ในเครื่องมือแก้ไข ชื่อไฟล์ต้องตรงกับรายการที่แสดงใน ตารางข้างต้นสำหรับไฟล์ของลูกค้า
- เปลี่ยนเจ้าของไฟล์เป็น "apigee:apigee" ตามตัวอย่างต่อไปนี้
chown apigee:apigee /opt/apigee/customer/application/router.properties
หากคุณเปลี่ยนผู้ใช้ที่เรียกใช้บริการ Edge จาก "Apigee" ผู้ใช้, ใช้
chown
เพื่อเปลี่ยนการเป็นเจ้าของให้กับผู้ใช้ที่เรียกใช้ Edge service.
เมื่อคุณอัปเกรด Edge ไฟล์ .properties
รายการใน
อ่านไดเรกทอรี /opt/apigee/customer/application
แล้ว ซึ่งหมายความว่าการอัปเกรดจะ
จะรักษาคุณสมบัติใดๆ ก็ตามที่คุณตั้งค่าไว้ในคอมโพเนนต์
วิธีตั้งค่าโทเค็น
- แก้ไขไฟล์
.properties
ของคอมโพเนนต์ - เพิ่มหรือเปลี่ยนค่าของโทเค็น ตัวอย่างต่อไปนี้ตั้งค่าของ
พร็อพเพอร์ตี้
conf_http_HTTPRequest.line.limit
เป็น "10k":conf_http_HTTPRequest.line.limit=10k
ถ้าโทเค็นใช้ค่าหลายค่า ให้คั่นแต่ละค่าด้วยเครื่องหมายจุลภาคดังนี้ ตัวอย่างได้แก่
conf_security_rbac.restricted.resources=/environments,/environments/*,/environments/*/virtualhosts,/environments/*/virtualhosts/*,/pods,/environments/*/servers,/rebuildindex,/users/*/status,/myuri/*
หากต้องการเพิ่มค่าใหม่ลงในรายการเช่นนี้ โดยทั่วไปแล้วคุณจะต้องเพิ่มค่าใหม่ต่อท้ายรายการ ของรายการ
- รีสตาร์ทคอมโพเนนต์โดยทำดังนี้
/opt/apigee/apigee-service/bin/apigee-service component_name restart
โดยที่ component_name คือค่าใดค่าหนึ่งต่อไปนี้
apigee-cassandra
(คาสซานดรา)apigee-openldap
(OpenLDAP)apigee-postgresql
(ฐานข้อมูล PostgreSQL)apigee-qpidd
(Qpidd)apigee-sso
(SSO ของ Edge)apigee-zookeeper
(ZooKeeper)edge-management-server
(เซิร์ฟเวอร์การจัดการ)edge-management-ui
(UI ใหม่ของ Edge)edge-message-processor
(ตัวประมวลผลข้อความ)edge-postgres-server
(เซิร์ฟเวอร์ Postgres)edge-qpid-server
(เซิร์ฟเวอร์ Qpid)edge-router
(เราเตอร์ Edge)edge-ui
(UI แบบคลาสสิก)
เช่น หลังจากแก้ไข
router.properties
ให้รีสตาร์ทเราเตอร์ดังนี้/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- (ไม่บังคับ) ตรวจสอบว่าได้ตั้งค่าโทเค็นเป็นค่าใหม่โดยใช้พารามิเตอร์
ตัวเลือก
configure -search
เช่น/opt/apigee/apigee-service/bin/apigee-service edge-router configure -search conf_http_HTTPRequest.line.limit
ดูข้อมูลเพิ่มเติมเกี่ยวกับ
configure -search
ได้ที่ ระบุค่าปัจจุบันของโทเค็น
ค้นหาโทเค็น
ในกรณีส่วนใหญ่ โทเค็นที่คุณต้องตั้งค่าจะระบุอยู่ในคู่มือนี้ แต่หากต้องการ
หากต้องการลบล้างค่าของโทเค็นที่มีอยู่ซึ่งมีชื่อเต็มหรือตำแหน่งที่คุณไม่แน่ใจ ให้ใช้
grep
เพื่อค้นหาไดเรกทอรี source
ของคอมโพเนนต์
ตัวอย่างเช่น ถ้าคุณทราบว่า Edge รุ่นก่อนหน้าได้กำหนดค่า
session.maxAge
พร็อพเพอร์ตี้ และต้องการทราบค่าโทเค็นที่ใช้ตั้งค่า
และ grep
สำหรับพร็อพเพอร์ตี้ใน /opt/apigee/edge-ui/source
ไดเรกทอรี:
grep -ri "session.maxAge" /opt/apigee/edge-ui/source
คุณควรเห็นผลลัพธ์ในรูปแบบต่อไปนี้
/opt/apigee/component_name/source/conf/application.conf:property_name={T}token_name{/T}
ตัวอย่างต่อไปนี้แสดงค่าโทเค็น session.maxAge
ของ UI
/opt/apigee/edge-ui/source/conf/application.conf:session.maxAge={T}conf_application_session.maxage{/T}
สตริงระหว่างแท็ก {T}{/T} คือชื่อของโทเค็นที่คุณตั้งค่าได้
ในไฟล์ .properties
ของ UI
ตั้งค่าโทเค็นที่มีการแสดงความคิดเห็นอยู่ในขณะนี้
โทเค็นบางรายการจะมีการแสดงความคิดเห็นในไฟล์การกำหนดค่า Edge หากพยายามตั้งค่าโทเค็นที่ มีการแสดงความคิดเห็นในไฟล์การติดตั้งหรือการกำหนดค่าคอมโพเนนต์ ระบบจะไม่สนใจการตั้งค่าของคุณ
หากต้องการตั้งค่าของโทเค็นที่มีการแสดงความคิดเห็นในไฟล์การกำหนดค่า Edge ให้ใช้แบบพิเศษ ในรูปแบบต่อไปนี้
conf/filename+propertyName=propertyValue
ตัวอย่างเช่น หากต้องการตั้งค่าพร็อพเพอร์ตี้ชื่อ HTTPClient.proxy.host
ในข้อความ
ผู้ประมวลผลข้อมูล grep
แรกสำหรับพร็อพเพอร์ตี้เพื่อกำหนดโทเค็น
grep -ri /opt/apigee/edge-message-processor/ -e "HTTPClient.proxy.host"
คำสั่ง grep
จะแสดงผลลัพธ์ที่มีชื่อโทเค็น ประกาศ
การแสดงความคิดเห็นเกี่ยวกับชื่อพร็อพเพอร์ตี้ ตามที่ระบุด้วยคำนำหน้า # ดังนี้
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=
หากต้องการตั้งค่าของพร็อพเพอร์ตี้นี้ ให้แก้ไข
/opt/apigee/customer/application/message-processor.properties
แต่ใช้อักขระพิเศษ
ตามตัวอย่างต่อไปนี้
conf/http.properties+HTTPClient.proxy.host=myhost.name.com
ในกรณีนี้ คุณต้องนำหน้าชื่อพร็อพเพอร์ตี้ด้วย conf/http.properties+
ช่วงเวลานี้
คือตำแหน่งและชื่อของไฟล์การกำหนดค่าที่มีพร็อพเพอร์ตี้ แล้วตามด้วย "+"
หลังจากที่คุณรีสตาร์ทโปรแกรมประมวลผลข้อความ ให้ตรวจสอบไฟล์
/opt/apigee/edge-message-processor/conf/http.properties
:
cat /opt/apigee/edge-message-processor/conf/http.properties
คุณจะเห็นชุดพร็อพเพอร์ตี้ในตอนท้ายของไฟล์ในรูปแบบ
conf/http.properties:HTTPClient.proxy.host=myhost.name.com
กำหนดค่าพร็อกซีการส่งต่อสำหรับคำขอจากส่วนส่งคำขอของ Trace UI
ส่วนนี้จะอธิบายวิธีกำหนดค่าพร็อกซีการส่งต่อสำหรับคำขอจาก ส่วนส่งคำขอใน UI การติดตามพร้อมข้อมูลเข้าสู่ระบบพร็อกซีที่ไม่บังคับ วิธีกำหนดค่าพร็อกซีการส่งต่อ
- แก้ไข
/opt/apigee/customer/application/ui.properties
และตรวจสอบว่าไฟล์ เป็นของapigee:apigee
- เพิ่มการลบล้างต่อไปนี้ (เปลี่ยนค่าในการกำหนดค่าพร็อกซีเฉพาะ)
conf_application_http.proxyhost=proxy.example.com conf_application_http.proxyport=8080 conf_application_http.proxyuser=apigee conf_application_http.proxypassword=Apigee123!
- บันทึกและรีสตาร์ท UI แบบคลาสสิก
เพิ่มรูปแบบบันทึกที่กำหนดเองในเราเตอร์/Nginx ของ Apigee
ในบางกรณี คุณจำเป็นต้องเปลี่ยนรูปแบบบันทึกเริ่มต้นของ Apigee/Nginx หรือ เพิ่มตัวแปร หากต้องการอัปเดตรูปแบบบันทึกเริ่มต้นของ Apigee/Nginx การกำหนดค่า:
- สร้างไฟล์
router.properties
(หากยังไม่มี) โดยใช้เส้นทางดังที่แสดงด้านล่าง/opt/apigee/customer/application/router.properties
- เพิ่มเนื้อหาต่อไปนี้ลงในไฟล์
router.properties
เพื่อสร้างการกำหนดค่าlog_format
ใหม่โดยใช้ชื่อrouter_new
:conf_load_balancing_load.balancing.driver.nginx.global.http.parameters.template.extra=log_format router_new 'time_iso8601\\\\thostname\\\\tremote_addr:remote_port\\\\t'\\\\n\\n 'upstream_addr\\\\trequest_time\\\\t-\\\\t-\\\\t'\\\\n\\n '
status\\\\tupstream_status\\\\trequest_length\\\\t'\\\\n\\n 'body_bytes_sent\\\\t'\\\\n\\n 'request\\\\tupstream_http_x_apigee_message_id\\\\t'\\\\n\\n 'http_user_agent\\\\thost\\thostname-pid-connection-connection_requests\\\\tmy_nginx_var_xff\\t'\\\\n\\n 'upstream_http_x_apigee_fault_flag\\\\tupstream_http_x_apigee_fault_source\\\\tupstream_http_x_apigee_fault_code\\\\t'\\\\n\\n 'upstream_http_x_apigee_fault_policy\\tupstream_http_x_apigee_fault_flow\\tupstream_http_x_apigee_fault_revision\\t'\\\\n\\n 'upstream_http_x_apigee_dp_color\\\\tmy_x_apigee_target_latency\\\\t'\\\\n\\n 'upstream_http_x_apigee_proxy\\\\tupstream_http_x_apigee_proxy_basepath\\\\t'\\\\n\\n 'self_region\\\\tself_pod\\\\tself_color\\\\tssl_protocol\\\\tssl_client_verify\\\\tssl_session_id\\\\tssl_session_reused\\\\tupstream_pod\\\\tupstream_region';\\\\n\\n\n conf_load_balancing_load.balancing.driver.nginx.access.log={conf_load_balancing_load.balancing.driver.nginx.log.dir}/{org}~{env}.{port}_access_log router_new อัปเดตตัวแปรในคําสั่งข้างต้นตามความเหมาะสม คุณสามารถดูค่าเริ่มต้น ค่าของการกำหนดค่าสำหรับ
log_format
ในไฟล์ด้านล่าง/opt/apigee/edge-router/conf/load_balancing.properties
รายการตัวแปร Nginx จะแสดงที่ http://nginx.org/en/docs/varindex.html
- รีสตาร์ทเราเตอร์เพื่อใช้การกำหนดค่าใหม่
apigee-service edge-router restart
- ตรวจสอบว่าการกำหนดค่า
log_format
ใหม่หรือไม่ เพิ่ม (router_new
) ลงในไฟล์แล้ว/opt/nginx/conf.d/0-default.conf
:cat /opt/nginx/conf.d/0-default.conf | grep router_new -A 10
- ส่งคำขอ API บางรายการไปยังพร็อกซี API และยืนยันรูปแบบบันทึกใหม่ในไฟล์
/opt/apigee/var/log/edge-router/nginx/${org}~${env}.${port}_access_log file