วิธีกําหนดค่า Edge

หากต้องการกำหนดค่า Edge หลังจากติดตั้ง ให้ใช้ไฟล์รวมกัน .properties รายการ และ Edgeยูทิลิตี ตัวอย่างเช่น ในการกำหนดค่า TLS/SSL ใน Edge UI คุณจะต้องแก้ไข .properties ไฟล์เพื่อตั้งค่าพร็อพเพอร์ตี้ที่จำเป็น การเปลี่ยนแปลงเป็น ไฟล์ .properties รายการกำหนดให้คุณต้องรีสตาร์ทคอมโพเนนต์ Edge ที่ได้รับผลกระทบ

Apigee จะใช้เทคนิคการแก้ไขไฟล์ .properties เป็นโค้ดด้วย config (บางครั้งชื่อย่อคือ CwC) โดยพื้นฐานแล้ว โค้ดที่มีการกำหนดค่าคือการค้นหาคีย์/ค่า เครื่องมือที่ขึ้นอยู่กับการตั้งค่าในไฟล์ .properties ในโค้ดที่มีการกำหนดค่า คีย์จะเรียกว่า โทเค็น ดังนั้น หากต้องการกำหนดค่า Edge คุณจึงต้องตั้งค่าโทเค็นใน .properties

โค้ดที่มีการกำหนดค่าช่วยให้คอมโพเนนต์ Edge ตั้งค่าเริ่มต้นที่มาพร้อมกับ ช่วยให้ทีมติดตั้งสามารถแทนที่การตั้งค่าเหล่านั้นตามโทโพโลยีการติดตั้ง และให้ลูกค้าลบล้างที่พักที่เลือกได้

ถ้าคุณมองเป็นลำดับชั้น การตั้งค่าจะจัดเรียงตามนี้โดยที่ลูกค้า ที่มีลําดับความสําคัญสูงสุดในการลบล้างการตั้งค่าจากทีมโปรแกรมติดตั้งหรือ Apigee:

  1. ลูกค้า
  2. ผู้ติดตั้ง
  3. ส่วนประกอบ

ระบุค่าปัจจุบันของโทเค็น

ก่อนที่คุณจะกำหนดค่าใหม่สำหรับโทเค็นในไฟล์ .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
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 ระบุคอมโพเนนต์ ค่าที่เป็นไปได้ ได้แก่

  • 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 แบบคลาสสิก)

ตั้งค่าโทเค็น

คุณแก้ไขได้เฉพาะไฟล์ .properties ใน ไดเรกทอรี /opt/apigee/customer/application คอมโพเนนต์แต่ละอย่างมี .properties ไฟล์ในไดเรกทอรีนั้น เช่น router.properties และ management-server.properties หากต้องการดูรายการไฟล์พร็อพเพอร์ตี้ทั้งหมด ดูตำแหน่งของไฟล์ .properties

วิธีสร้างไฟล์ .properties:

  1. สร้างไฟล์ข้อความใหม่ในเครื่องมือแก้ไข ชื่อไฟล์ต้องตรงกับรายการที่แสดงใน ตารางข้างต้นสำหรับไฟล์ของลูกค้า
  2. เปลี่ยนเจ้าของไฟล์เป็น "apigee:apigee" ตามตัวอย่างต่อไปนี้
    chown apigee:apigee /opt/apigee/customer/application/router.properties

    หากคุณเปลี่ยนผู้ใช้ที่เรียกใช้บริการ Edge จาก "Apigee" ผู้ใช้, ใช้ chown เพื่อเปลี่ยนการเป็นเจ้าของให้กับผู้ใช้ที่เรียกใช้ Edge service.

เมื่อคุณอัปเกรด Edge ไฟล์ .properties รายการใน อ่านไดเรกทอรี /opt/apigee/customer/application แล้ว ซึ่งหมายความว่าการอัปเกรดจะ จะรักษาคุณสมบัติใดๆ ก็ตามที่คุณตั้งค่าไว้ในคอมโพเนนต์

วิธีตั้งค่าโทเค็น

  1. แก้ไขไฟล์ .properties ของคอมโพเนนต์
  2. เพิ่มหรือเปลี่ยนค่าของโทเค็น ตัวอย่างต่อไปนี้ตั้งค่าของ พร็อพเพอร์ตี้ 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/*

    หากต้องการเพิ่มค่าใหม่ลงในรายการเช่นนี้ โดยทั่วไปแล้วคุณจะต้องเพิ่มค่าใหม่ต่อท้ายรายการ ของรายการ

  3. รีสตาร์ทคอมโพเนนต์โดยทำดังนี้
    /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
  4. (ไม่บังคับ) ตรวจสอบว่าได้ตั้งค่าโทเค็นเป็นค่าใหม่โดยใช้พารามิเตอร์ ตัวเลือก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