การเลิกใช้งานศูนย์ข้อมูล

บางครั้งคุณอาจต้องเลิกใช้งานศูนย์ข้อมูล ตัวอย่างเช่น หากคุณอัปเกรดระบบปฏิบัติการ คุณต้องติดตั้งระบบปฏิบัติการใหม่ในศูนย์ข้อมูลใหม่ แล้วจึงเลิกใช้ศูนย์ข้อมูลเก่า ส่วนต่อไปนี้แสดงตัวอย่างการเลิกใช้งานศูนย์ข้อมูล ซึ่งมีศูนย์ข้อมูล 2 แห่ง ได้แก่ dc-1 และ dc-2 ในการติดตั้งแบบคลัสเตอร์ 12 โหนด

  • dc-1 คือศูนย์ข้อมูลที่จะเลิกใช้งาน
  • dc-2 คือศูนย์ข้อมูลแห่งที่ 2 ซึ่งใช้ในขั้นตอนการเลิกใช้งาน

หากคุณกำลังอัปเกรดระบบปฏิบัติการ dc-2 อาจเป็นศูนย์ข้อมูลที่คุณติดตั้งระบบปฏิบัติการ (OS) เวอร์ชันใหม่ อย่างไรก็ตาม การติดตั้งระบบปฏิบัติการใหม่ไม่จำเป็นสำหรับการเลิกใช้งานศูนย์ข้อมูล

ข้อควรพิจารณาก่อนเลิกใช้งานศูนย์ข้อมูล

โปรดคำนึงถึงข้อควรพิจารณาต่อไปนี้เมื่อเลิกใช้งานศูนย์ข้อมูล

  • บล็อกการเข้าชมรันไทม์และการจัดการทั้งหมดไปยังศูนย์ข้อมูลที่เลิกใช้งานแล้ว และเปลี่ยนเส้นทางไปยังศูนย์ข้อมูลอื่นๆ
  • หลังจากเลิกใช้งานศูนย์ข้อมูลแล้ว คุณจะมีประสิทธิภาพการทำงานลดลงในคลัสเตอร์ Apigee เพื่อชดเชยการสูญเสียนี้ ให้พิจารณาเพิ่มความจุในศูนย์ข้อมูลที่เหลือหรือเพิ่มศูนย์ข้อมูลหลังจากเลิกใช้งาน
  • ในระหว่างกระบวนการเลิกใช้งาน อาจมีการสูญเสียข้อมูลวิเคราะห์ ทั้งนี้ขึ้นอยู่กับคอมโพเนนต์การวิเคราะห์ที่ติดตั้งในศูนย์ข้อมูลที่เลิกใช้งาน ดูรายละเอียดเพิ่มเติมได้ที่หัวข้อเพิ่มหรือนำโหนด Qpid ออก
  • ก่อนที่จะเลิกใช้งานศูนย์ข้อมูล คุณควรทำความเข้าใจวิธีกำหนดค่าคอมโพเนนต์ทั้งหมดในศูนย์ข้อมูลทั้งหมด โดยเฉพาะเซิร์ฟเวอร์ OpenLDAP, ZooKeeper, Cassandra และ Postgres นอกจากนี้ คุณควรสำรองข้อมูลคอมโพเนนต์ทั้งหมดและการกำหนดค่าของคอมโพเนนต์ด้วย

ก่อนจะเริ่มต้น

  • เซิร์ฟเวอร์การจัดการ: ขั้นตอนการเลิกใช้งานทั้งหมดขึ้นอยู่กับเซิร์ฟเวอร์การจัดการเป็นอย่างมาก หากคุณมี Management Server เพียงเครื่องเดียว เราขอแนะนำให้ติดตั้งคอมโพเนนต์ Management Server ใหม่ในศูนย์ข้อมูลอื่นที่ไม่ใช่ dc-1 ก่อนที่จะเลิกใช้งาน Management Server ใน dc-1 และตรวจสอบว่ามี Management Server เครื่องใดเครื่องหนึ่งพร้อมใช้งานอยู่เสมอ
  • เราเตอร์: ก่อนที่จะเลิกใช้งานเราเตอร์ ให้ปิดใช้ความสามารถในการเข้าถึงของเราเตอร์ โดยการบล็อกพอร์ต 15999 ตรวจสอบว่าไม่มีการรับส่งข้อมูลรันไทม์ไปยังเราเตอร์ที่เลิกใช้งานแล้ว
  • Cassandra และ ZooKeeper: ส่วนด้านล่างจะอธิบายวิธีเลิกใช้งาน dc-1 ในการตั้งค่าศูนย์ข้อมูล 2 แห่ง หากคุณมีศูนย์ข้อมูลมากกว่า 2 แห่ง โปรดตรวจสอบว่าได้นำการอ้างอิงทั้งหมดไปยังโหนดที่เลิกใช้งาน (dc-1 ในกรณีนี้) ออกจากไฟล์การกำหนดค่าแบบไม่มีการโต้ตอบทั้งหมดในศูนย์ข้อมูลที่เหลือทั้งหมด สำหรับโหนด Cassandra ที่จะเลิกใช้งาน ให้ลบโฮสต์เหล่านั้นออกจาก CASS_HOSTS โหนด Cassandra ที่เหลือควรยังคงอยู่ในลำดับเดิมของ CASS_HOSTS

  • Postgres: หากคุณเลิกใช้งาน Postgres Master ให้ตรวจสอบว่าได้โปรโมตโหนดสแตนด์บายที่พร้อมใช้งานโหนดใดโหนดหนึ่งเป็น Postgres Master ใหม่ แม้ว่าเซิร์ฟเวอร์ QPID จะเก็บข้อมูลบัฟเฟอร์ไว้ในคิว แต่หาก Postgres หลักไม่พร้อมใช้งานเป็นเวลานาน คุณอาจเสี่ยงต่อการสูญเสียข้อมูลวิเคราะห์

ข้อกำหนดเบื้องต้น

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

    หมายเหตุ: หากคุณมีโหนด Cassandra หรือ ZooKeeper หลายโหนด ให้สำรองข้อมูลทีละโหนด เนื่องจากกระบวนการสำรองข้อมูลจะปิด ZooKeeper ชั่วคราว

  • ตรวจสอบว่า Edge ทำงานอยู่ก่อนที่จะเลิกใช้งาน โดยใช้คำสั่งต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-all status
  • ตรวจสอบว่าไม่มีการเข้าชมรันไทม์ที่กำลังมาถึงศูนย์ข้อมูลที่คุณกำลังเลิกใช้งาน

ลำดับการเลิกใช้งานคอมโพเนนต์

หากติดตั้ง Edge สำหรับ Private Cloud ในหลายโหนด คุณควรเลิกใช้งานคอมโพเนนต์ Edge ในโหนดเหล่านั้นตามลำดับต่อไปนี้

  1. Edge UI (edge-ui)
  2. Management Server (edge-management-server)
  3. OpenLDAP (apigee-openldap)
  4. เราเตอร์ (Edge Router)
  5. Message Processor (edge-message-processor)
  6. เซิร์ฟเวอร์ Qpid และ Qpidd (edge-qpid-server และ apigee-qpidd)
  7. ฐานข้อมูล Postgres และ PostgreSQL (edge-postgres-server และ apigee-postgresql)
  8. ZooKeeper (apigee-zookeeper)
  9. Cassandra (apigee-cassandra)

ส่วนต่อไปนี้จะอธิบายวิธีเลิกใช้งานคอมโพเนนต์แต่ละรายการ

Edge UI

หากต้องการหยุดและถอนการติดตั้งคอมโพเนนต์ Edge UI ของ dc-1 ให้ป้อนคำสั่งต่อไปนี้

/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui uninstall

เซิร์ฟเวอร์การจัดการ

หากต้องการเลิกใช้งานเซิร์ฟเวอร์การจัดการใน dc-1 ให้ทำตามขั้นตอนต่อไปนี้

  1. หยุดเซิร์ฟเวอร์การจัดการใน dc-1 โดยทำดังนี้
    apigee-service edge-management-server stop
  2. ค้นหา UUID ของเซิร์ฟเวอร์การจัดการที่ลงทะเบียนใน dc-1 โดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword>' \
    -X GET “http://{MS_IP}:8080/v1/servers?pod=central&region=dc-1&type=management-server”
  3. ประเภทของเซิร์ฟเวอร์ที่ยกเลิกการลงทะเบียน:
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=management-server&region=dc-1&pod=central&uuid=UUID&action=remove"
  4. ลบเซิร์ฟเวอร์ หมายเหตุ: หากมีการติดตั้งคอมโพเนนต์อื่นๆ ในเซิร์ฟเวอร์นี้ด้วย ให้ยกเลิกการลงทะเบียนคอมโพเนนต์ทั้งหมดก่อนที่จะลบ UUID
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
  5. ถอนการติดตั้งคอมโพเนนต์ Management Server ใน dc-1:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall

Open LDAP

ส่วนนี้จะอธิบายวิธีเลิกใช้งาน OpenLDAP ใน dc-1

หมายเหตุ: หากคุณมีศูนย์ข้อมูลมากกว่า 2 แห่ง โปรดดูหัวข้อการตั้งค่าที่มีศูนย์ข้อมูลมากกว่า 2 แห่งด้านล่าง

หากต้องการเลิกใช้ OpenLDAP ใน dc-1 ให้ทำตามขั้นตอนต่อไปนี้

  1. สำรองข้อมูลโหนด OpenLDAP dc-1 โดยทำตามขั้นตอนในหัวข้อวิธีสำรองข้อมูล
  2. หยุดการจำลองข้อมูลระหว่างศูนย์ข้อมูล 2 แห่ง ได้แก่ dc-1 และ dc-2 โดยทำตามขั้นตอนต่อไปนี้ในศูนย์ข้อมูลทั้ง 2 แห่ง

    1. ตรวจสอบสถานะปัจจุบัน ดังนี้
      ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl

      เอาต์พุตควรมีลักษณะคล้ายกับตัวอย่างต่อไปนี้

      olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={credentials} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
    2. สร้างไฟล์ break_repl.ldif ที่มีคำสั่งต่อไปนี้
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcSyncRepl
      
      dn: olcDatabase={2}bdb,cn=config
      changetype: modify
      delete: olcMirrorMode
    3. เรียกใช้คำสั่ง ldapmodify ดังนี้
      ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif

      เอาต์พุตควรมีลักษณะคล้ายกับตัวอย่างต่อไปนี้

      modifying entry "olcDatabase={2}bdb,cn=config"
      modifying entry "olcDatabase={2}bdb,cn=config"
  3. คุณสามารถยืนยันว่า dc-2 ไม่ได้จำลองไปยัง dc-1 อีกต่อไปโดยสร้างรายการใน LDAP ของ dc-2 และตรวจสอบว่ารายการดังกล่าวไม่ปรากฏใน LDAP ของ dc-1

    หรือจะทำตามขั้นตอนด้านล่างก็ได้ ซึ่งจะสร้างผู้ใช้ที่มีสิทธิ์อ่านอย่างเดียวในโหนด OpenLDAP dc-2 แล้วตรวจสอบว่ามีการจำลองผู้ใช้หรือไม่ จากนั้นระบบจะลบผู้ใช้

    1. สร้างไฟล์ readonly-user.ldif ใน dc-2 โดยมีเนื้อหาต่อไปนี้
      dn: uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com
      objectClass: organizationalPerson
      objectClass: person
      objectClass: inetOrgPerson
      objectClass: top
      cn: readonly-user
      sn: readonly-user
      userPassword: {testPassword}
    2. เพิ่มผู้ใช้ด้วยคำสั่ง `ldapadd` ใน dc-2:
      ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif

      เอาต์พุตจะมีลักษณะคล้ายกับตัวอย่างต่อไปนี้

      adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
    3. ค้นหาผู้ใช้ใน dc-1 เพื่อให้แน่ใจว่าไม่มีการจำลองผู้ใช้ หากผู้ใช้ไม่อยู่ใน dc-1 คุณจะมั่นใจได้ว่า LDAP ทั้ง 2 รายการไม่ได้จำลองข้อมูลอีกต่อไป
      ldapsearch -H ldap://{HOST}:{PORT} -x -w {credentials} -D "cn=manager,dc=apigee,dc=com" -b uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com -LLL

      เอาต์พุตควรมีลักษณะคล้ายกับตัวอย่างต่อไปนี้

      No such object (32)
      Matched DN: ou=users,ou=global,dc=apigee,dc=com
    4. นำผู้ใช้ที่มีสิทธิ์อ่านอย่างเดียวที่คุณเพิ่มไว้ก่อนหน้านี้ออก โดยทำดังนี้
      ldapdelete -v -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
  4. หยุด OpenLDAP ใน dc-1:
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
  5. ถอนการติดตั้งคอมโพเนนต์ OpenLDAP ใน dc-1 โดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall

เราเตอร์

ส่วนนี้จะอธิบายวิธีเลิกใช้งานเราเตอร์ ดูรายละเอียดเพิ่มเติมเกี่ยวกับการนำเราเตอร์ออกได้ที่ นำเซิร์ฟเวอร์ออก

ขั้นตอนต่อไปนี้จะเลิกใช้งานเราเตอร์จาก dc-1 หากมีโหนดเราเตอร์หลายโหนดที่กำหนดค่าใน dc-1 ให้ทำตามขั้นตอนในโหนดเราเตอร์ทั้งหมดทีละโหนด

หมายเหตุ: ในที่นี้ถือว่ามีการกำหนดค่าพอร์ตการตรวจสอบประสิทธิภาพ 15999 ของเราเตอร์ในตัวจัดสรรภาระงาน และการบล็อกพอร์ต 15999 จะทำให้เราเตอร์เข้าถึงไม่ได้ คุณอาจต้องมีสิทธิ์เข้าถึงระดับรูทเพื่อบล็อกพอร์ต

หากต้องการเลิกใช้งานเราเตอร์ ให้ทำตามขั้นตอนต่อไปนี้

  1. ปิดใช้ความสามารถในการเข้าถึงของเราเตอร์โดยบล็อกพอร์ต 15999 ซึ่งเป็นพอร์ตการตรวจสอบประสิทธิภาพการทำงาน ตรวจสอบว่าการรับส่งข้อมูลรันไทม์ถูกบล็อกในศูนย์ข้อมูลนี้:

    iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
  2. ตรวจสอบว่าเราเตอร์เข้าถึงได้โดยทำดังนี้

    curl -vvv -X GET http://{ROUTER_IP}:15999/v1/servers/self/reachable

    เอาต์พุตควรมีลักษณะคล้ายกับตัวอย่างต่อไปนี้

    About to connect() to 10.126.0.160 port 15999 (#0)
    Trying 10.126.0.160...
    Connection refused
    Failed connect to 10.126.0.160:15999; Connection refused
    Closing connection 0
    curl: (7) Failed connect to 10.126.0.160:15999; Connection refused
  3. รับ UUID ของเราเตอร์ตามที่อธิบายไว้ในรับ UUID
  4. หยุดเราเตอร์:
    /opt/apigee/apigee-service/bin/apigee-service edge-router stop
  5. แสดงรายการพ็อดเกตเวย์ที่พร้อมใช้งานในองค์กรโดยใช้คำสั่งต่อไปนี้
    curl -u  <AdminEmailID>:<AdminPassword> -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"

    ดู เกี่ยวกับพ็อด

  6. ยกเลิกการลงทะเบียนประเภทของเซิร์ฟเวอร์โดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=router&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"
  7. ลบเซิร์ฟเวอร์:
    curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. ถอนการติดตั้ง edge-router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
    โปรดดูหัวข้อ นำเซิร์ฟเวอร์ออก
  9. ล้างกฎ iptables เพื่อเปิดใช้พอร์ต 15999 ที่ถูกบล็อก
    iptables -F

Message Processor

ส่วนนี้จะอธิบายวิธีเลิกใช้งาน Message Processor จาก dc-1 ดูรายละเอียดเพิ่มเติมเกี่ยวกับการนำ Message Processor ออกได้ที่ นำเซิร์ฟเวอร์ออก

เนื่องจากเราสมมติว่า dc-1 มีการติดตั้งแบบคลัสเตอร์ 12 โหนด จึงมีการกำหนดค่าโหนด Message Processor 2 โหนดใน dc-1 เรียกใช้คำสั่งต่อไปนี้ในทั้ง 2 โหนด

  1. รับ UUID ของ Message Processor ตามที่อธิบายไว้ในรับ UUID
  2. หยุด Message Processor โดยทำดังนี้
    apigee-service edge-message-processor stop
  3. ยกเลิกการลงทะเบียนประเภทของเซิร์ฟเวอร์โดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers  \
    -d "type=message-processor&amp;region=dc-1&amp;pod=gateway-1&amp;uuid=UUID&amp;action=remove"/pre>
  4. Disassociate an environment from the Message Processor.

    Note: You need to remove the bindings on each org/env that associates the Message Processor UUID.

    curl -H "Content-Type:application/x-www-form-urlencoded" -u <AdminEmailID>:''  \
    -X POST http://{MS_IP}:8080/v1/organizations/{ORG}/environments/{ENV}/servers \
    -d "action=remove&uuid=UUID"
  5. ยกเลิกการลงทะเบียนประเภทของเซิร์ฟเวอร์โดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=message-processor&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"
  6. ถอนการติดตั้ง Message Processor โดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
  7. ยกเลิกการลงทะเบียนเซิร์ฟเวอร์โดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/UUID

เซิร์ฟเวอร์ Qpid และ Qpidd

ส่วนนี้จะอธิบายวิธีเลิกใช้งานเซิร์ฟเวอร์ Qpid (edge-qpid-server) และ Qpidd (apigee-qpidd) มีโหนด Qpid 2 โหนดที่กำหนดค่าใน dc-1 ดังนั้นคุณต้องทำตามขั้นตอนต่อไปนี้สำหรับทั้ง 2 โหนด

  1. รับ UUID สำหรับ Qpidd ตามที่อธิบายไว้ในรับ UUID
  2. หยุดedge-qpid-serverและapigee-qpidd:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
  3. ดูรายการกลุ่ม Analytics และกลุ่มผู้บริโภค
    curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
  4. นำ Qpid ออกจากกลุ่มผู้บริโภคโดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword>' -H "Content-Type: application/json"  -X DELETE \ "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/consumer-groups/{consumer_group}/consumers/{QPID_UUID}"
  5. นำ Qpid ออกจากกลุ่ม Analytics
    curl -v -u <AdminEmailID>:'<AdminPassword>' \
    -X DELETE "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/servers?uuid={QPID_UUID}&type=qpid-server"
  6. ยกเลิกการลงทะเบียนเซิร์ฟเวอร์ Qpid จากการติดตั้ง Edge โดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
    -d "type=qpid-server&region=dc-1&pod=central&uuid={QPID_UUID}&action=remove"
  7. นำเซิร์ฟเวอร์ Qpid ออกจากการติดตั้ง Edge โดยทำดังนี้
    curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
  8. รีสตาร์ทคอมโพเนนต์ edge-qpid-server ทั้งหมดในทุกโหนดเพื่อให้แน่ใจว่าคอมโพเนนต์เหล่านั้นจะรับการเปลี่ยนแปลง
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
  9. ถอนการติดตั้ง edge-qpid-server และ apigee-qpidd:
    $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
    $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall

Postgres และ Postgresql

ศูนย์ข้อมูลที่คุณกำลังเลิกใช้งานอาจมี Postgres หลักหรือ Postgres สำรอง ส่วนต่อไปนี้จะอธิบายวิธีเลิกใช้งาน

กำลังเลิกใช้งาน Postgres Master

หมายเหตุ: หากคุณเลิกใช้งาน Postgres Master ให้ตรวจสอบว่าได้โปรโมตโหนดสแตนด์บายที่พร้อมใช้งานโหนดใดโหนดหนึ่งเป็น Postgres Master ใหม่ แม้ว่าคิว QPID จะบัฟเฟอร์ข้อมูล แต่หาก Postgres Master ไม่พร้อมใช้งานเป็นเวลานาน คุณอาจเสี่ยงต่อการสูญเสียข้อมูลวิเคราะห์

วิธีเลิกใช้งาน Postgres Master

  1. สำรองข้อมูลโหนดหลัก Postgres ของ dc-1 โดยทำตามวิธีการในลิงก์ต่อไปนี้
  2. รับ UUID ของเซิร์ฟเวอร์ Postgres ตามที่อธิบายไว้ในรับ UUID
  3. ใน dc-1 ให้หยุด edge-postgres-server และ apigee-postgresql ในมาสเตอร์ปัจจุบัน โดยทำดังนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  4. ในโหนดสแตนด์บายบน dc-2 ให้ป้อนคำสั่งต่อไปนี้เพื่อทำให้เป็นโหนดหลัก
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>

    หมายเหตุ: หากคุณมีโหนด Postgres สำรองมากกว่า 1 โหนด คุณต้องเพิ่มรายการโฮสต์ในมาสเตอร์ใหม่และอัปเดตการตั้งค่าการจำลองสำหรับโหนด Postgres สำรองที่ใช้ได้ทั้งหมด

    หากต้องการเพิ่มรายการโฮสต์ไปยัง Postgres Master ใหม่ ให้ทำตามขั้นตอนในส่วนที่เหมาะสมด้านล่าง

    หากเหลือโหนดสแตนด์บายเพียงโหนดเดียว

    ตัวอย่างเช่น สมมติว่าก่อนการเลิกใช้งาน มีการกำหนดค่าโหนด Postgres ไว้ 3 โหนด คุณเลิกใช้งานมาสเตอร์ที่มีอยู่และเลื่อนระดับโหนดสแตนด์บาย Postgres ที่เหลืออยู่โหนดหนึ่งให้เป็นมาสเตอร์ กำหนดค่าโหนดสแตนด์บายที่เหลือโดยทำตามขั้นตอนต่อไปนี้

    1. ในมาสเตอร์ใหม่ ให้แก้ไขไฟล์การกำหนดค่าเพื่อตั้งค่าต่อไปนี้
      PG_MASTER=IP_or_DNS_of_new_PG_MASTER
      PG_STANDBY=IP_or_DNS_of_PG_STANDBY
    2. เปิดใช้การจำลองในมาสเตอร์ใหม่โดยทำดังนี้
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle

    หากมีโหนดสแตนด์บายเหลืออยู่มากกว่า 1 โหนด

    1. เพิ่มการกำหนดค่าต่อไปนี้ใน /opt/apigee/customer/application/postgresql.properties
      conf_pg_hba_replication.connection=host replication apigee standby_1_ip/32 trust \n host replication apigee standby_2_ip/32 trust
    2. ตรวจสอบว่าไฟล์ /opt/apigee/customer/application/postgresql.properties เป็นของผู้ใช้ apigee:
            chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
    3. รีสตาร์ท apigee-postgresql:
      apigee-service apigee-postgresql restart
    4. วิธีอัปเดตการตั้งค่าการจำลองในโหนดสแตนด์บาย

      1. แก้ไขไฟล์การกำหนดค่า /opt/silent.conf และอัปเดตช่อง PG_MASTER ด้วยที่อยู่ IP ของ Postgres Master ใหม่
      2. นำข้อมูล Postgres เก่าออกด้วยคำสั่งต่อไปนี้
        rm -rf /opt/apigee/data/apigee-postgresql/
      3. ตั้งค่าการจำลองในโหนดสแตนด์บายโดยทำดังนี้
        /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
    5. ยืนยันว่าตั้งค่า Postgres Master อย่างถูกต้องแล้วโดยป้อนคำสั่งต่อไปนี้ใน dc-2
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
    6. นำเซิร์ฟเวอร์ Postgresql ออกและเพิ่มเซิร์ฟเวอร์ Postgresql จากกลุ่ม Analytics และกลุ่มผู้ใช้
      1. นำเซิร์ฟเวอร์ Postgres เก่าออกจากกลุ่มการวิเคราะห์โดยทำตามวิธีการในหัวข้อ นำเซิร์ฟเวอร์ Postgres ออกจากกลุ่มการวิเคราะห์
      2. เพิ่มเซิร์ฟเวอร์ Postgres ใหม่ลงในกลุ่ม Analytics โดยทำตามวิธีการในหัวข้อ เพิ่มเซิร์ฟเวอร์ Postgres ที่มีอยู่ลงในกลุ่ม Analytics
    7. ยกเลิกการลงทะเบียนเซิร์ฟเวอร์ postgres เก่าจาก dc-1 โดยทำดังนี้
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    8. ลบเซิร์ฟเวอร์ postgres เก่าออกจาก dc-1 โดยทำดังนี้
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    9. ตอนนี้คุณสามารถเลิกใช้งาน Postgres Master เก่าได้อย่างปลอดภัยแล้ว ถอนการติดตั้ง edge-postgres-server และ apigee-postgresql โดยทำดังนี้
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    การเลิกใช้งาน Postgres สแตนด์บาย

    หมายเหตุ: เอกสารประกอบสำหรับการติดตั้งแบบคลัสเตอร์ 12 โหนดจะแสดงโหนด dc-1 postgresql เป็นมาสเตอร์ แต่เพื่อความสะดวก ในส่วนนี้จะถือว่าโหนด dc-1 postgresql เป็นสแตนด์บายและโหนด dc-2 postgresql เป็นมาสเตอร์

    หากต้องการเลิกใช้งาน Postgres Standby ให้ทำตามขั้นตอนต่อไปนี้

    1. รับ UUID ของเซิร์ฟเวอร์ Postgres โดยทำตามวิธีการในหัวข้อรับ UUID
    2. หยุด apigee-postgresql ในโหนดสแตนด์บายปัจจุบันใน dc-1:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
    3. นำเซิร์ฟเวอร์ Postgresql ออกและเพิ่มเซิร์ฟเวอร์ Postgresql จากกลุ่ม Analytics และกลุ่มผู้ใช้
      1. นำเซิร์ฟเวอร์ Postgres เก่าออกจากกลุ่มการวิเคราะห์โดยทำตามวิธีการในหัวข้อ นำเซิร์ฟเวอร์ Postgres ออกจากกลุ่มการวิเคราะห์
      2. เพิ่มเซิร์ฟเวอร์ Postgres ใหม่ลงในกลุ่ม Analytics โดยทำตามวิธีการในหัวข้อ เพิ่มเซิร์ฟเวอร์ Postgres ที่มีอยู่ลงในกลุ่ม Analytics
    4. ยกเลิกการลงทะเบียนเซิร์ฟเวอร์ postgres เก่าจาก dc-1 โดยทำดังนี้
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \
      -d "type=postgres-server&region=dc-1&pod=analytics&uuid=UUID&action=remove"<
    5. ลบเซิร์ฟเวอร์ postgres เก่าออกจาก dc-1 โดยทำดังนี้
      curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
    6. ตอนนี้คุณสามารถเลิกใช้งาน Postgres Master เก่าได้อย่างปลอดภัยแล้ว ถอนการติดตั้ง edge-postgres-server และ apigee-postgresql โดยทำดังนี้
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall

    ZooKeeper และ Cassandra

    ส่วนนี้จะอธิบายวิธีเลิกใช้งานเซิร์ฟเวอร์ ZooKeeper และ Cassandra ในการตั้งค่าศูนย์ข้อมูล 2 แห่ง

    หากคุณมีศูนย์ข้อมูลมากกว่า 2 แห่ง โปรดตรวจสอบว่าได้นำการอ้างอิงทั้งหมดไปยังโหนดที่เลิกใช้งาน (dc-1 ในกรณีนี้) ออกจากไฟล์การกำหนดค่าแบบไม่มีการโต้ตอบทั้งหมดในศูนย์ข้อมูลที่เหลือทั้งหมด สำหรับโหนด Cassandra ที่จะเลิกใช้งาน ให้ลบโฮสต์เหล่านั้นออกจาก CASS_HOSTS โหนด Cassandra ที่เหลือควรยังคงอยู่ในลำดับเดิมของ CASS_HOSTS

    หมายเหตุเกี่ยวกับ ZooKeeper: คุณต้องรักษาองค์ประชุมของโหนดผู้ลงคะแนนขณะแก้ไขพร็อพเพอร์ตี้ ZK_HOST ในไฟล์การกำหนดค่า เพื่อให้แน่ใจว่ากลุ่ม ZooKeeper ยังคงทำงานได้ คุณต้องมีโหนดผู้ลงคะแนนเป็นจำนวนคี่ในการกำหนดค่า ดูข้อมูลเพิ่มเติมได้ที่งานบำรุงรักษา Apache ZooKeeper

    วิธีเลิกใช้งานเซิร์ฟเวอร์ ZooKeeper และ Cassandra

    1. สำรองข้อมูลโหนด Cassandra และ ZooKeeper ของ dc-1 โดยทำตามวิธีการในลิงก์ต่อไปนี้
    2. แสดงรายการ UUID ของเซิร์ฟเวอร์ ZooKeeper และ Cassandra ในศูนย์ข้อมูลที่โหนด Cassandra กำลังจะเลิกใช้งาน

      apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
    3. ยกเลิกการลงทะเบียนประเภทของเซิร์ฟเวอร์โดยทำดังนี้
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=cache-datastore&type=user-settings-datastore&type=scheduler-datastore&type=audit-datastore&type=apimodel-datastore&type=application-datastore&type=edgenotification-datastore&type=identityzone-datastore&type=user-settings-datastore&type=auth-datastore&region=dc-1&pod=central&uuid=UUID&action=remove"
    4. ยกเลิกการลงทะเบียนเซิร์ฟเวอร์โดยทำดังนี้
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
    5. อัปเดตไฟล์การกำหนดค่าด้วย IP ของโหนดที่เลิกใช้งานซึ่งนำออกจาก ZK_HOSTS และ CASS_HOSTS

      ตัวอย่าง: สมมติว่าคุณมี IP $IP1 $IP2 $IP3 ใน dc-1 และ $IP4 $IP5 $IP6 ใน dc-2 และคุณกำลังเลิกใช้งาน dc-1 จากนั้นคุณควรนำ IP $IP1 $IP2 $IP3 ออกจากไฟล์การกำหนดค่า

      • รายการไฟล์การกำหนดค่าที่มีอยู่:
        ZK_HOSTS="$IP1 $IP2 $IP3 $IP4 $IP5 $IP6"
        CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1, $IP4:2,1 $IP5:2,1 $IP6:2,1”
      • รายการไฟล์การกำหนดค่าใหม่
        ZK_HOSTS="$IP4 $IP5 $IP6"
        CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
    6. อัปเดตไฟล์การกำหนดค่าแบบไม่มีการโต้ตอบ (แก้ไขในขั้นตอน e) ด้วย IP ของโหนดที่เลิกใช้งานซึ่งถูกนำออกแล้ว และเรียกใช้โปรไฟล์เซิร์ฟเวอร์การจัดการในโหนดทั้งหมดที่โฮสต์เซิร์ฟเวอร์การจัดการ โดยทำดังนี้
      /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
    7. อัปเดตไฟล์การกำหนดค่าด้วย IP ของโหนดที่เลิกใช้งานซึ่งถูกนำออกแล้ว และเรียกใช้โปรไฟล์ MP/RMP ในโหนดเราเตอร์และ Message Processor ทั้งหมด โดยทำดังนี้
      • หากกำหนดค่า Edge Router และ Message Processor ในโหนดเดียวกัน ให้ป้อนค่าต่อไปนี้
        /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
      • หากกำหนดค่า Edge Router และ Message Processor ในโหนดแยกกัน ให้ป้อนข้อมูลต่อไปนี้

        สำหรับเราเตอร์

        /opt/apigee/apigee-setup/bin/setup.sh -p r -f updated_config_file

        สำหรับ Message Processor ให้ทำดังนี้

        /opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
    8. กำหนดค่าโหนด Qpid ทั้งหมดใหม่ โดยนำ IP ของโหนดที่เลิกใช้งานออกจากไฟล์คำตอบ ดังนี้
      /opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
    9. กำหนดค่าโหนด Postgres ทั้งหมดใหม่ โดยนำ IP ของโหนดที่เลิกใช้งานออกจากไฟล์คำตอบ ดังนี้
      /opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
    10. แก้ไขคีย์สเปซ system_auth หากคุณเปิดใช้การตรวจสอบสิทธิ์ Cassandra ในโหนด Cassandra ที่มีอยู่ ให้อัปเดตปัจจัยการจำลองของคีย์สเปซ system_auth โดยเรียกใช้คำสั่งต่อไปนี้
      ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};

      คำสั่งนี้จะตั้งค่าปัจจัยการจำลองเป็น '3' ซึ่งหมายถึงโหนด Cassandra 3 โหนดในคลัสเตอร์ แก้ไขค่านี้ตามความจำเป็น

      หลังจากทำขั้นตอนนี้เสร็จแล้ว โทโพโลยี Cassandra ไม่ควรมี dc-1 ในคีย์สเปซใดๆ

    11. เลิกใช้งานโหนด Cassandra ใน dc-1 ทีละโหนด

      หากต้องการเลิกใช้งานโหนด Cassandra ให้ป้อนคำสั่งต่อไปนี้

      /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission
    12. ตรวจสอบการเชื่อมต่อของโหนด Cassandra จาก dc-1 โดยใช้คำสั่งใดคำสั่งหนึ่งต่อไปนี้
      /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'

      หรือคำสั่งการยืนยันรองที่จะเรียกใช้ในโหนดที่เลิกใช้งานแล้ว ดังนี้

      /opt/apigee/apigee-cassandra/bin/nodetool netstats

      คำสั่งข้างต้นควรแสดงผลดังนี้

      Mode: DECOMMISSIONED
    13. เรียกใช้โปรไฟล์ DS สำหรับโหนด Cassandra และ ZooKeeper ทั้งหมดใน dc-2 โดยทำดังนี้
      /opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
    14. หยุด apigee-cassandra และ apigee-zookeeper ใน dc-1:
      apigee-service apigee-cassandra stop
      apigee-service apigee-zookeeper stop
    15. ถอนการติดตั้ง apigee-cassandra และ apigee-zookeeper ใน dc-1:
      apigee-service apigee-cassandra uninstall
      apigee-service apigee-zookeeper uninstall

    ลบการเชื่อมโยงออกจาก dc-1

    หากต้องการลบการเชื่อมโยงจาก dc-1 ให้ทำตามขั้นตอนต่อไปนี้

    1. ลบการเชื่อมโยงออกจาก dc-1
      1. แสดงรายการพ็อดทั้งหมดที่มีในองค์กร
        curl -v -u  <AdminEmailID>:<AdminPassword> -X GET "http://MS_IP:8080/v1/o/ORG/pods"
      2. หากต้องการตรวจสอบว่าได้นำการเชื่อมโยงทั้งหมดออกแล้วหรือไม่ ให้รับ UUID ของเซิร์ฟเวอร์ที่เชื่อมโยงกับพ็อดโดยทำดังนี้
        curl -v -u  <AdminEmailID>:<AdminPassword> \
        -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"

        หากคำสั่งนี้ไม่แสดงผล UUID ใดๆ แสดงว่าขั้นตอนก่อนหน้านี้ได้นำการเชื่อมโยงทั้งหมดออกแล้ว และคุณสามารถข้ามขั้นตอนถัดไปได้ หรือทำตามขั้นตอนถัดไป

      3. นำการเชื่อมโยงเซิร์ฟเวอร์ทั้งหมดสำหรับ UUID ที่ได้ในขั้นตอนก่อนหน้าออก โดยทำดังนี้
        curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
      4. ยกเลิกการเชื่อมโยงองค์กรจากพ็อด:
        curl -v -u  <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/o/ORG/pods" -d "action=remove&region=dc-1&pod=gateway-1" -H "Content-Type: application/x-www-form-urlencoded" -X POST
    2. ลบพ็อดโดยทำดังนี้
      curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
    3. ลบภูมิภาค
      curl -v -u <AdminEmailID>:<AdminPassword>  "http://MS_IP:8080/v1/regions/dc-1" -X DELETE

    หมายเหตุ: หากคุณข้ามขั้นตอนใดขั้นตอนหนึ่งในการลบเซิร์ฟเวอร์ ขั้นตอนข้างต้นจะแสดงข้อความแสดงข้อผิดพลาดว่าเซิร์ฟเวอร์บางเครื่องในพ็อดยังคงอยู่ ดังนั้น ให้ลบออกโดยทำตามขั้นตอนการแก้ปัญหาด้านล่างขณะปรับแต่งประเภทในคำสั่ง curl

    ถึงตอนนี้ คุณได้เลิกใช้งาน dc-1 เสร็จสมบูรณ์แล้ว

    ภาคผนวก

    การแก้ปัญหา

    หากทำตามขั้นตอนก่อนหน้าแล้ว แต่ยังมีเซิร์ฟเวอร์อยู่ในพ็อดบางพ็อด ให้ทำตามขั้นตอนต่อไปนี้เพื่อยกเลิกการลงทะเบียนและลบเซิร์ฟเวอร์ หมายเหตุ: เปลี่ยนประเภทและพ็อดตามความจำเป็น

    1. รับ UUID โดยใช้คำสั่งต่อไปนี้
      apigee-adminapi.sh servers list -r dc-1 -p POD -t  --admin <AdminEmailID> --pwd  '<AdminPassword>’ --host localhost
    2. ประเภทของเซิร์ฟเวอร์ที่ยกเลิกการลงทะเบียน:
      curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MP_IP:8080/v1/servers -d "type=TYPE=REGION=dc-1&pod=POD&uuid=UUID&action=remove"
    3. ลบเซิร์ฟเวอร์ทีละรายการ โดยทำดังนี้
      curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID

    การตรวจสอบความถูกต้อง

    คุณตรวจสอบความถูกต้องของการเลิกใช้งานได้โดยใช้คำสั่งต่อไปนี้

    เซิร์ฟเวอร์การจัดการ

    เรียกใช้คำสั่งต่อไปนี้จากเซิร์ฟเวอร์การจัดการในทุกภูมิภาค

    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=central&region=dc-1
    curl -v  -u  <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=gateway&region=dc-1
    curl -v -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/servers?pod=analytics&region=dc-1

    เรียกใช้คำสั่งต่อไปนี้ในคอมโพเนนต์ทั้งหมดเพื่อตรวจสอบข้อกำหนดของพอร์ตสำหรับพอร์ตการจัดการทั้งหมด

    curl -v http://MS_IP:8080/v1/servers/self

    ตรวจสอบกลุ่ม Analytics

    curl  -v  -u  <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080}/v1/o/ORG/e/ENV/provisioning/axstatus"
    curl -v  -u  <AdminEmailID>:'<AdminPassword>'  http://MS_IP:8080/v1/analytics/groups/ax

    โหนด Cassandra/ZooKeeper

    ในโหนด Cassandra ทั้งหมด ให้ป้อนข้อมูลต่อไปนี้

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> statusthrift

    ซึ่งจะแสดงสถานะ running หรือ not running สำหรับโหนดนั้นๆ

    ในโหนดเดียว ให้ป้อนดังนี้

    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> ring
    /opt/apigee/apigee-cassandra/bin/nodetool -h <host> status

    คำสั่งข้างต้นจะแสดงข้อมูลศูนย์ข้อมูลที่ใช้งานอยู่

    ในโหนด ZooKeeper ให้ป้อนคำสั่งต่อไปนี้ก่อน

    echo ruok | nc <host> 2181

    คำสั่งนี้จะแสดงผล imok

    จากนั้นป้อน

    echo stat | nc <host> 2181 | grep Mode

    ค่าของ Mode ที่แสดงผลโดยคำสั่งด้านบนจะเป็นค่าใดค่าหนึ่งต่อไปนี้ observer, leader หรือ follower

    ในโหนด ZooKeeper 1 โหนด ให้ทำดังนี้

    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh >> /tmp/zk-tree.out.txt

    ในโหนดหลักของ Postgres ให้เรียกใช้คำสั่งต่อไปนี้

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

    ตรวจสอบว่าการตอบกลับระบุว่าโหนดเป็นมาสเตอร์

    ในโหนดสแตนด์บาย ให้ทำดังนี้

    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

    ตรวจสอบว่าการตอบกลับระบุว่าโหนดอยู่ในสถานะสแตนด์บาย

    เข้าสู่ระบบฐานข้อมูล PostgreSQL โดยใช้คำสั่ง

    psql -h localhost -d apigee -U postgres

    เมื่อได้รับข้อความแจ้ง ให้ป้อนรหัสผ่านของผู้ใช้ "postgres" เป็น 'postgres' เลือก max(client_received_start_timestamp) จากข้อมูลวิเคราะห์

    ”$org.$env.fact” limit 1;

    บันทึก

    ตรวจสอบบันทึกในคอมโพเนนต์เพื่อให้แน่ใจว่าไม่มีข้อผิดพลาด