Edge for Private Cloud v. 4.16.05
ข้อกำหนดเกี่ยวกับฮาร์ดแวร์
คุณต้องมีคุณสมบัติตรงตามข้อกำหนดขั้นต่ำต่อไปนี้สำหรับฮาร์ดแวร์เพื่อให้โครงสร้างพื้นฐานพร้อมใช้งานสูงในสภาพแวดล้อมระดับเวอร์ชันที่ใช้งานจริง สำหรับสถานการณ์การติดตั้งทั้งหมดที่อธิบายไว้ในโทโปโลยีการติดตั้ง ตารางต่อไปนี้แสดงข้อกำหนดขั้นต่ำของฮาร์ดแวร์สำหรับคอมโพเนนต์การติดตั้ง
ในตารางเหล่านี้ ข้อกำหนดของฮาร์ดดิสก์จะเป็นค่าเพิ่มเติมจากพื้นที่ในฮาร์ดดิสก์ที่จําเป็นสําหรับระบบปฏิบัติการ การติดตั้งอาจต้องใช้ทรัพยากรมากกว่าหรือน้อยกว่าที่ระบุไว้ด้านล่าง ทั้งนี้ขึ้นอยู่กับแอปพลิเคชันและปริมาณการเข้าชมเครือข่าย
คอมโพเนนต์การติดตั้ง |
RAM |
CPU |
ฮาร์ดดิสก์ขั้นต่ำ |
---|---|---|---|
Cassandra |
16 GB |
8 แกน |
พื้นที่เก็บข้อมูลภายใน 250 GB ที่มี SSD หรือ HDD แบบเร็วที่รองรับ IOPS 2,000 ครั้ง |
Message Processor/Router ในเครื่องเดียวกัน |
8/16GB |
4 คอร์† |
100 GB |
Analytics - Postgres/Qpid ในเซิร์ฟเวอร์เดียวกัน (ไม่แนะนำสำหรับเวอร์ชันที่ใช้งานจริง) |
16GB* |
8 แกน* |
พื้นที่เก็บข้อมูลเครือข่าย 500 GB - 1 TB***** โดยควรมีแบ็กเอนด์ SSD ที่รองรับ IOPS 1,000 รายการขึ้นไป* |
Analytics - Postgres แบบสแตนด์อโลน |
16GB* |
8 แกน* |
พื้นที่เก็บข้อมูลเครือข่าย 500 GB - 1 TB***** โดยควรมีแบ็กเอนด์ SSD ที่รองรับ IOPS 1,000 รายการขึ้นไป* |
Analytics - Qpid แบบสแตนด์อโลน |
8 GB |
4 แกน |
พื้นที่เก็บข้อมูลในเครื่อง 30-50 GB ที่มี SSD หรือ HDD ความเร็วสูง สำหรับการติดตั้งมากกว่า 250 TPS ขอแนะนำ HDD ที่มีพื้นที่เก็บข้อมูลในเครื่องซึ่งรองรับ 1, 000 IOPS |
อื่นๆ (OpenLDAP, UI, เซิร์ฟเวอร์การจัดการ) |
4 GB |
2 แกน |
60GB |
† ปรับข้อกำหนดของระบบโปรแกรมประมวลผลข้อความตามปริมาณข้อมูล: คำแนะนำขั้นต่ำคือ 4 แกนและ 8 แกนสำหรับระบบอัตราการส่งข้อมูลสูง คุณสามารถเรียกใช้การทดสอบประสิทธิภาพเพื่อระบุขนาดที่เหมาะสมที่สุดสําหรับ API |
|||
*ปรับข้อกำหนดของระบบ Postgres ตามอัตราการส่งข้อมูล:
|
|||
**ค่าฮาร์ดดิสก์ Postgres จะอิงตามข้อมูลวิเคราะห์ที่พร้อมใช้งานโดยค่าเริ่มต้นซึ่ง Edge บันทึกไว้ หากคุณเพิ่มค่าที่กําหนดเองลงในข้อมูลวิเคราะห์ ค่าเหล่านี้ควรเพิ่มขึ้นตาม ใช้สูตรต่อไปนี้เพื่อประมาณพื้นที่เก็บข้อมูลที่ต้องการ |
|||
*** เราขอแนะนำให้ใช้พื้นที่เก็บข้อมูลเครือข่ายสำหรับฐานข้อมูล PostgreSQL เนื่องจากเหตุผลต่อไปนี้
|
นอกจากนี้ รายการต่อไปนี้แสดงข้อกำหนดด้านฮาร์ดแวร์หากคุณต้องการติดตั้งบริการสร้างรายได้
องค์ประกอบที่มีการสร้างรายได้ |
RAM |
CPU |
ฮาร์ดดิสก์ |
---|---|---|---|
เซิร์ฟเวอร์การจัดการ (มีบริการสร้างรายได้) |
8GB |
4 แกน |
60GB |
Analytics - Postgres/Qpid ในเซิร์ฟเวอร์เดียวกัน |
16 GB |
8 แกน |
พื้นที่เก็บข้อมูลเครือข่าย 500 GB - 1 TB ควรมีแบ็กเอนด์แบบ Solid ที่รองรับ 1,000 IOPS ขึ้นไป หรือใช้กฎจากตารางด้านบน |
Analytics - Postgres แบบสแตนด์อโลน |
16 GB |
8 แกน |
พื้นที่เก็บข้อมูลเครือข่าย 500 GB - 1 TB โดยควรมีแบ็กเอนด์ SSD ที่รองรับ IOPS 1,000 รายการขึ้นไป หรือใช้กฎจากตารางด้านบน |
Analytics - Qpid แบบสแตนด์อโลน |
8 GB |
4 แกน |
40GB |
ต่อไปนี้เป็นข้อกำหนดด้านฮาร์ดแวร์หากคุณต้องการติดตั้ง API BaaS
คอมโพเนนต์ API BaaS |
RAM |
CPU |
ฮาร์ดดิสก์ |
---|---|---|---|
ElasticSearch* |
8 GB |
4 แกน |
60 - 80GB |
สแต็ก BaaS ของ API * |
8GB |
4 แกน |
60 - 80GB |
พอร์ทัล BaaS ของ API |
1GB |
2 แกน |
20GB |
Cassandra (ไม่บังคับ - โดยปกติแล้วคุณจะใช้คลัสเตอร์ Cassandra เดียวกันสำหรับทั้ง Edge และบริการ BaaS ของ API) |
16 GB |
8 แกน |
พื้นที่เก็บข้อมูลภายใน 250 GB ที่มี SSD หรือ HDD ความเร็วสูงที่รองรับ IOPS 2,000 ครั้ง |
* คุณสามารถติดตั้ง ElasticSearch และ API BaaS Stack ในโหนดเดียวกันได้ หากมี ให้กำหนดค่า ElasticSearch ให้ใช้หน่วยความจำ 4 GB (ค่าเริ่มต้น) หากติดตั้ง ElasticSearch ในโหนดของตัวเอง ให้กําหนดค่าให้ใช้หน่วยความจํา 6 GB |
หมายเหตุ
- หากระบบไฟล์รูทมีขนาดเล็กเกินไปสำหรับการติดตั้ง เราขอแนะนำให้วางข้อมูลลงในดิสก์ขนาดใหญ่ขึ้น
- หากติดตั้ง Apigee Edge สำหรับ Private Cloud เวอร์ชันเก่าไว้ในเครื่อง โปรดตรวจสอบว่าได้ลบโฟลเดอร์ /tmp/java ก่อนการติดตั้งใหม่
- โฟลเดอร์ชั่วคราวทั่วทั้งระบบ /tmp ต้องมีสิทธิ์เรียกใช้เพื่อเริ่ม Cassandra
- หากสร้างผู้ใช้ "apigee" ไว้ก่อนการติดตั้ง ให้ตรวจสอบว่า "/home/apigee" มีอยู่ในฐานะไดเรกทอรีหน้าแรกและเป็นของ "apigee:apigee"
ข้อกำหนดของระบบปฏิบัติการและซอฟต์แวร์ของบุคคลที่สาม
วิธีการติดตั้งเหล่านี้และไฟล์การติดตั้งที่ให้มาได้รับการทดสอบในระบบปฏิบัติการและซอฟต์แวร์ของบุคคลที่สามที่ระบุไว้ที่นี่ https://apigee.com/docs/api-services/reference/supported-software
การสร้างผู้ใช้ apigee
ขั้นตอนการติดตั้งจะสร้างผู้ใช้ระบบ Unix ชื่อ "apigee" ไดเรกทอรีและไฟล์ Edge เป็นของ "apigee" เช่นเดียวกับกระบวนการ Edge ซึ่งหมายความว่าคอมโพเนนต์ Edge จะทํางานในฐานะผู้ใช้ "apigee" คุณสามารถทําให้คอมโพเนนต์ทํางานในฐานะผู้ใช้อื่นได้หากจําเป็น ดูตัวอย่างได้ที่ "การเชื่อมโยงเราเตอร์กับพอร์ตที่มีการป้องกัน" ในติดตั้งคอมโพเนนต์ Edge ในโหนด
ไดเรกทอรีการติดตั้ง
โดยค่าเริ่มต้น โปรแกรมติดตั้งจะเขียนไฟล์ทั้งหมดลงในไดเรกทอรี /opt/apigee คุณจะเปลี่ยนตำแหน่งไดเรกทอรีนี้ไม่ได้
ในวิธีการในคู่มือนี้ ไดเรกทอรีการติดตั้งจะระบุเป็น /<inst_root>/apigee โดยที่ /<inst_root> คือ /opt โดยค่าเริ่มต้น
Java
คุณต้องติดตั้ง Java1.8 เวอร์ชันที่รองรับในแต่ละเครื่องก่อนทำการติดตั้ง JDK ที่รองรับแสดงอยู่ที่นี่
https://apigee.com/docs/api-services/reference/supported-software
ตรวจสอบว่า JAVA_HOME ชี้ไปที่รูทของ JDK สำหรับผู้ใช้ที่ดำเนินการติดตั้ง
การตั้งค่าเครือข่าย
ขอแนะนำให้ตรวจสอบการตั้งค่าเครือข่ายก่อนการติดตั้ง โปรแกรมติดตั้งจะคาดหวังว่าเครื่องทั้งหมดจะมีที่อยู่ IP แบบคงที่ ใช้คําสั่งต่อไปนี้เพื่อตรวจสอบการตั้งค่า
- hostname แสดงชื่อเครื่อง
- hostname -i จะแสดงที่อยู่ IP ของชื่อโฮสต์ที่เข้าถึงได้จากเครื่องอื่นๆ
คุณอาจต้องแก้ไข /etc/hosts และ /etc/sysconfig/network หากไม่ได้ตั้งค่าชื่อโฮสต์อย่างถูกต้อง ทั้งนี้ขึ้นอยู่กับประเภทและเวอร์ชันของระบบปฏิบัติการ โปรดดูข้อมูลเพิ่มเติมในเอกสารประกอบของระบบปฏิบัติการที่คุณใช้
Cassandra
โหนด Cassandra ทั้งหมดต้องเชื่อมต่อกับวงแหวน
Cassandra จะปรับขนาดฮีป Java โดยอัตโนมัติตามหน่วยความจําที่มีอยู่ ดูข้อมูลเพิ่มเติมได้ที่การปรับทรัพยากร Java ในกรณีที่ประสิทธิภาพลดลงหรือมีการใช้หน่วยความจําสูง
หลังจากติดตั้ง Edge สำหรับ Private Cloud แล้ว คุณสามารถตรวจสอบว่า Cassandra ได้รับการกําหนดค่าอย่างถูกต้องโดยตรวจสอบไฟล์ /<inst_root>/apigee/apigee-cassandra/conf/cassandra.yaml เช่น ตรวจสอบว่าสคริปต์การติดตั้ง Edge for Private Cloud ตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้
- cluster_name
- initial_token
- partitioner
- เมล็ดพันธุ์
- listen_address
- rpc_address
- หัวขโมย
คำเตือน: อย่าแก้ไขไฟล์นี้
ฐานข้อมูล PostgreSQL
หลังจากติดตั้ง Edge คุณจะปรับการตั้งค่าฐานข้อมูล PostgreSQL ต่อไปนี้ตามปริมาณ RAM ที่มีในระบบได้
conf_postgresql_shared_buffers = 35% of RAM # min 128kB conf_postgresql_effective_cache_size = 45% of RAM conf_postgresql_work_mem = 512MB # min 64kB
วิธีตั้งค่าค่าเหล่านี้
- แก้ไข postgresql.properties
> vi /<inst_root>/apigee/customer/application/postgresql.properties
หากไม่มีไฟล์ ให้สร้างไฟล์ - ตั้งค่าพร็อพเพอร์ตี้ที่ระบุไว้ด้านบน
- บันทึกการแก้ไข
- รีสตาร์ทฐานข้อมูล PostgreSQL
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql รีสตาร์ท
jsvc
"jsvc" เป็นข้อกำหนดเบื้องต้นสำหรับการใช้ API BaaS ระบบจะติดตั้งเวอร์ชัน 1.0.15-dev เมื่อคุณติดตั้ง API BaaS
บริการรักษาความปลอดภัยของเครือข่าย (NSS)
บริการรักษาความปลอดภัยเครือข่าย (NSS) คือชุดไลบรารีที่รองรับการพัฒนาแอปพลิเคชันไคลเอ็นต์และเซิร์ฟเวอร์ที่เปิดใช้การรักษาความปลอดภัย โปรดตรวจสอบว่าคุณได้ติดตั้ง NSS v3.19 ขึ้นไปแล้ว
วิธีตรวจสอบเวอร์ชันปัจจุบัน
> yum info nss
วิธีอัปเดต NSS
> yum update nss
ดูข้อมูลเพิ่มเติมได้ในบทความนี้จาก RedHat
AWS AMI
หากติดตั้ง Edge ใน AWS Amazon Machine Image (AMI) สำหรับ Red Hat Enterprise Linux 7.x คุณต้องเรียกใช้คำสั่งต่อไปนี้ก่อน
> yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
เครื่องมือ
โปรแกรมติดตั้งใช้เครื่องมือ UNIX ต่อไปนี้ในเวอร์ชันมาตรฐานตามที่ EL5 หรือ EL6 มีให้
awk |
ไดเรกทอรี |
ls |
rpm |
แตกไฟล์ |
basename |
echo |
perl |
rpm2cpio |
useradd |
bash |
expr |
pgrep (จาก procps) |
sed |
wc |
bc |
grep |
เกมที่เล่น |
ทาร์ |
อร่อย |
curl |
hostname |
pwd |
tr |
chkconfig |
วันที่ |
id |
python |
Uname |
sudo |
หมายเหตุ:
- ไฟล์ปฏิบัติการของเครื่องมือ "useradd" อยู่ใน /usr/sbin และของ chkconfig อยู่ใน /sbin
- การเข้าถึง Sudo ช่วยให้คุณเข้าถึงสภาพแวดล้อมของผู้ใช้ที่โทรได้ เช่น โดยปกติแล้วคุณจะเรียกใช้ "sudo <command>" หรือ "sudo PATH=$PATH:/usr/sbin:/sbin <command>"
- ตรวจสอบว่าคุณได้ติดตั้งเครื่องมือ "แพตช์" ก่อนการติดตั้ง Service Pack (แพตช์)
ntpdate – ขอแนะนำให้ซิงค์เวลาของเซิร์ฟเวอร์ หากยังไม่ได้กําหนดค่า ยูทิลิตี "ntpdate" อาจใช้เพื่อวัตถุประสงค์นี้ ซึ่งจะตรวจสอบว่าเซิร์ฟเวอร์มีการซิงค์เวลาหรือไม่ คุณใช้ "yum install ntp" เพื่อติดตั้งยูทิลิตีได้ ซึ่งจะเป็นประโยชน์อย่างยิ่งสำหรับการทำซ้ำการตั้งค่า OpenLDAP โปรดทราบว่าคุณตั้งค่าเขตเวลาของเซิร์ฟเวอร์เป็น UTC
openLDAP 2.4 – การติดตั้งภายในองค์กรต้องใช้ OpenLDAP 2.4 หากเซิร์ฟเวอร์มีการเชื่อมต่ออินเทอร์เน็ต สคริปต์การติดตั้ง Edge จะดาวน์โหลดและติดตั้ง OpenLDAP หากเซิร์ฟเวอร์ไม่มีการเชื่อมต่ออินเทอร์เน็ต คุณต้องตรวจสอบว่ามีการติดตั้ง OpenLDAP ไว้แล้วก่อนที่จะเรียกใช้สคริปต์การติดตั้ง Edge ใน RHEL/CentOS ให้เรียกใช้ "yum install openldap-clients openldap-servers" เพื่อติดตั้ง OpenLDAP
สำหรับการติดตั้ง 13 โฮสต์และการติดตั้ง 12 โฮสต์ที่มีศูนย์ข้อมูล 2 แห่ง คุณต้องใช้การจำลองข้อมูล OpenLDAP เนื่องจากมีโหนดหลายโหนดที่โฮสต์ OpenLDAP
ไฟร์วอลล์และโฮสต์เสมือน
คำว่า "เสมือน" มักใช้กันอย่างแพร่หลายในวงการไอที และ Apigee Edge สำหรับการติดตั้งใช้งาน Private Cloud และโฮสต์เสมือนก็ใช้คำนี้ด้วย เพื่อความชัดเจน ประโยชน์หลักของคำว่า "ออนไลน์" มีอยู่ 2 ประการดังนี้
- เครื่องเสมือน (VM): ไม่จําเป็น แต่การติดตั้งใช้งานบางรายการใช้เทคโนโลยี VM เพื่อสร้างเซิร์ฟเวอร์แยกต่างหากสําหรับคอมโพเนนต์ Apigee โฮสต์ VM เช่นเดียวกับโฮสต์จริงอาจมีอินเทอร์เฟซเครือข่ายและไฟร์วอลล์ วิธีการติดตั้งเหล่านี้ไม่รองรับการติดตั้ง VM โดยเฉพาะ
- โฮสต์เสมือน: ปลายทางของเว็บที่คล้ายกับโฮสต์เสมือนของ Apache
เราเตอร์ใน VM สามารถแสดงโฮสต์เสมือนได้หลายรายการ (ตราบใดที่โฮสต์เหล่านั้นแตกต่างกันในอีเมลแทนของโฮสต์หรือพอร์ตอินเทอร์เฟซ)
ตัวอย่างเช่นeth0
เราอาจมีเราเตอร์ Apigee ที่ทำงานอยู่ใน VM ทั้ง 2 เครื่อง เราเตอร์จะแสดงปลายทางโฮสต์เสมือนดังในตัวอย่างสมมตินี้
เราเตอร์ Apigee ใน VM1 แสดงโฮสต์เสมือน 3 ตัวในอินเทอร์เฟซ eth0 (ซึ่งมีที่อยู่ IP ที่เจาะจง) ได้แก่ api.mycompany.com:80, api.mycompany.com:443 และ test.mycompany.com:80
เราเตอร์ใน VM2 แสดง api.mycompany.com:80 (ชื่อและพอร์ตเดียวกับที่ VM1 แสดง)
ระบบปฏิบัติการของโฮสต์จริงอาจมีไฟร์วอลล์เครือข่าย หากเป็นเช่นนั้น คุณต้องกำหนดค่าไฟร์วอลล์ดังกล่าวให้ส่งการรับส่งข้อมูล TCP ที่กําหนดให้พอร์ตที่แสดงในอินเทอร์เฟซที่ผ่านการจัดการเสมือน (111.111.111.111:{80, 443} และ 111.111.111.222:80) นอกจากนี้ ระบบปฏิบัติการของ VM แต่ละระบบอาจมีไฟร์วอลล์ของตัวเองในอินเทอร์เฟซ eth0 และไฟร์วอลล์เหล่านี้ต้องอนุญาตให้การรับส่งข้อมูลผ่านพอร์ต 80 และ 443 เชื่อมต่อด้วย
Basepath เป็นคอมโพเนนต์ที่ 3 ที่เกี่ยวข้องกับการกำหนดเส้นทางการเรียก API ไปยังพร็อกซี API ต่างๆ ที่คุณอาจทำให้ใช้งานได้แล้ว พารามิเตอร์การเรียก API ของพร็อกซีสามารถแชร์อุปกรณ์ปลายทางได้หากมีเส้นทางฐานต่างกัน เช่น เส้นทางพื้นฐานหนึ่งอาจกำหนดเป็น http://api.mycompany.com:80/ และอีกเส้นทางหนึ่งกำหนดเป็น http://api.mycompany.com:80/salesdemo
ในกรณีนี้ คุณต้องมีตัวจัดสรรภาระงานหรือตัวควบคุมการรับส่งข้อมูลบางประเภทที่จะแยกการรับส่งข้อมูล http://api.mycompany.com:80/ ระหว่างที่อยู่ IP 2 รายการ (111.111.111.111 ใน VM1 และ 111.111.111.222 ใน VM2) ฟังก์ชันนี้มีไว้สำหรับการติดตั้งเฉพาะของคุณและได้รับการกำหนดค่าโดยกลุ่มเครือข่ายในพื้นที่
ระบบจะตั้งค่าเส้นทางฐานเมื่อคุณติดตั้งใช้งาน API จากตัวอย่างข้างต้น คุณสามารถติดตั้งใช้งาน API 2 รายการ ได้แก่ mycompany และ testmycompany สำหรับองค์กร mycompany-org ด้วยโฮสต์เสมือนซึ่งมีอีเมลแทนของโฮสต์เป็น api.mycompany.com และตั้งค่าพอร์ตเป็น 80 หากคุณไม่ได้ประกาศ BasePath ในการติดตั้งใช้งาน เราเตอร์จะไม่ทราบว่าควรส่งคําขอขาเข้าไปยัง API ใด
อย่างไรก็ตาม หากคุณติดตั้งใช้งาน API testmycompany ที่มี Base URL ของ /salesdemo ผู้ใช้จะเข้าถึง API นั้นโดยใช้ http://api.mycompany.com:80/salesdemo หากคุณทำให้ API mycompany พร้อมใช้งานด้วย URL พื้นฐาน / ผู้ใช้จะเข้าถึง API โดยใช้ URL http://api.mycompany.com:80/
ข้อกำหนดของพอร์ต Edge
ความจำเป็นในการจัดการไฟร์วอลล์ไม่ได้มีเพียงโฮสต์เสมือนเท่านั้น ทั้ง VM และไฟร์วอลล์ของโฮสต์จริงต้องอนุญาตให้มีการรับส่งข้อมูลสำหรับพอร์ตที่คอมโพเนนต์จำเป็นต้องใช้เพื่อสื่อสารกัน
รูปภาพต่อไปนี้แสดงข้อกำหนดพอร์ตสำหรับคอมโพเนนต์ Edge แต่ละรายการ
หมายเหตุเกี่ยวกับแผนภาพนี้
-
*พอร์ต 8082 ในโปรแกรมประมวลผลข้อความต้องเปิดอยู่เพื่อให้เราเตอร์เข้าถึงได้เมื่อคุณกำหนดค่า TLS/SSL ระหว่างเราเตอร์กับโปรแกรมประมวลผลข้อความเท่านั้น หากคุณไม่ได้กำหนดค่า TLS/SSL ระหว่างเราเตอร์และโปรแกรมประมวลผลข้อความ พอร์ต 8082 ที่กำหนดค่าเริ่มต้นจะต้องเปิดอยู่ในโปรแกรมประมวลผลข้อความเพื่อจัดการคอมโพเนนต์ แต่เราเตอร์ไม่จำเป็นต้องเข้าถึงพอร์ตดังกล่าว
- พอร์ตที่มี "M" นำหน้าคือพอร์ตที่ใช้จัดการคอมโพเนนต์และต้องเปิดในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้
- คอมโพเนนต์ต่อไปนี้ต้องมีสิทธิ์เข้าถึงพอร์ต 8080 บนเซิร์ฟเวอร์การจัดการ ซึ่งได้แก่ เราเตอร์, Message Processor, UI, Postgres และ Qpid
- ตัวประมวลผลข้อความต้องเปิดพอร์ต 4528 เป็นพอร์ตการจัดการ หากคุณมี Message Processor หลายตัว อุปกรณ์ทั้งหมดต้องเข้าถึงกันได้ผ่านพอร์ต 4528 (ระบุด้วยลูกศรวนในแผนภาพด้านบนสำหรับพอร์ต 4528 ใน Message Processor) หากคุณมีศูนย์ข้อมูลหลายแห่ง พอร์ตต้องเข้าถึงได้จากตัวประมวลผลข้อความทั้งหมดในศูนย์ข้อมูลทั้งหมด
- แม้ว่าจะไม่จำเป็น แต่คุณสามารถเปิดพอร์ต 4527 บนเราเตอร์เพื่อให้ Message Processor เข้าถึงได้ ไม่เช่นนั้นคุณอาจเห็นข้อความแสดงข้อผิดพลาดในไฟล์บันทึกของ Message Processor
- เราเตอร์ต้องเปิดพอร์ต 4527 เป็นพอร์ตการจัดการ หากคุณมีเราเตอร์หลายตัว เราเตอร์ทั้งหมดต้องเข้าถึงกันและกันได้ผ่านพอร์ต 4527 (ซึ่งระบุด้วยลูกศรแบบวนซ้ำในแผนภาพด้านบนสำหรับพอร์ต 4527 บนเราเตอร์)
- UI ของ Edge ต้องใช้สิทธิ์เข้าถึงเราเตอร์ในพอร์ตที่พร็อกซี API แสดงเพื่อรองรับปุ่มส่งในเครื่องมือการติดตาม
- เซิร์ฟเวอร์การจัดการต้องมีสิทธิ์เข้าถึงพอร์ต JMX ในโหนด Cassandra
- คุณสามารถกำหนดค่าการเข้าถึงพอร์ต JMX ให้ต้องใช้ชื่อผู้ใช้/รหัสผ่านได้ ดูข้อมูลเพิ่มเติมได้ที่วิธีตรวจสอบ
- คุณเลือกกำหนดค่าการเข้าถึง TLS/SSL สำหรับการเชื่อมต่อบางรายการได้ ซึ่งจะใช้พอร์ตอื่นได้ โปรดดูข้อมูลเพิ่มเติมที่ TLS/SSL
- หากกำหนดค่าโหนด Postgres 2 โหนดให้ใช้การจำลองแบบมาสเตอร์สแตนด์บาย คุณต้องเปิดพอร์ต 22 ในโหนดแต่ละโหนดสำหรับการเข้าถึง SSH คุณเปิดพอร์ตในโหนดแต่ละโหนดเพื่ออนุญาตการเข้าถึง SSH หรือไม่ก็ได้
- คุณกำหนดค่าเซิร์ฟเวอร์การจัดการและ Edge UI ให้ส่งอีเมลผ่านเซิร์ฟเวอร์ SMTP ภายนอกได้ หากมี คุณต้องตรวจสอบว่าเซิร์ฟเวอร์การจัดการและ UI เข้าถึงพอร์ตที่จำเป็นในเซิร์ฟเวอร์ SMTP ได้ สําหรับ SMTP ที่ไม่ใช่ TLS หมายเลขพอร์ตมักจะเป็น 25 สำหรับ SMTP ที่เปิดใช้ TLS มักจะเป็น 465 โปรดตรวจสอบกับผู้ให้บริการ SMTP ของคุณ
ตารางด้านล่างแสดงพอร์ตที่ต้องเปิดในไฟร์วอลล์ตามคอมโพเนนต์ Edge
ส่วนประกอบ |
พอร์ต |
คำอธิบาย |
---|---|---|
พอร์ต HTTP มาตรฐาน |
80, 443 |
HTTP และพอร์ตอื่นๆ ที่คุณใช้สำหรับโฮสต์เสมือน |
เซิร์ฟเวอร์การจัดการ |
8080 |
พอร์ตสำหรับการเรียก API การจัดการ Edge คอมโพเนนต์เหล่านี้จำเป็นต้องเข้าถึงพอร์ต 8080 ในเซิร์ฟเวอร์การจัดการ ได้แก่ เราเตอร์, โปรแกรมประมวลผลข้อความ, UI, Postgres และ Qpid |
1099 |
พอร์ต JMX |
|
4526 |
สําหรับแคชแบบกระจายและการเรียกใช้การจัดการ |
|
UI การจัดการ |
9000 |
พอร์ตสําหรับการเข้าถึง UI การจัดการด้วยเบราว์เซอร์ |
ตัวประมวลผลข้อความ |
8998 |
พอร์ต Message Processor สำหรับการสื่อสารจากเราเตอร์ |
8082 |
พอร์ตการจัดการเริ่มต้นสำหรับโปรแกรมประมวลผลข้อความและต้องเปิดอยู่ในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้
หากคุณกำหนดค่า TLS/SSL ระหว่างเราเตอร์และโปรแกรมประมวลผลข้อความ ซึ่งเราเตอร์ใช้เพื่อตรวจสอบสถานะโปรแกรมประมวลผลข้อความ
|
|
1101 |
พอร์ต JMX |
|
4528 |
สําหรับแคชแบบกระจายและการเรียกใช้การจัดการระหว่างโปรแกรมประมวลผลข้อความ และการสื่อสารจากเราเตอร์ |
|
เราเตอร์ |
8081 |
พอร์ตการจัดการเริ่มต้นสำหรับเราเตอร์และต้องเปิดในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ |
4527 |
สําหรับแคชแบบกระจายและการเรียกใช้การจัดการ |
|
15999 |
พอร์ตการตรวจสอบประสิทธิภาพการทำงาน ตัวจัดสรรภาระงานใช้พอร์ตนี้เพื่อตรวจสอบว่าเราเตอร์พร้อมใช้งานหรือไม่ หากต้องการดูสถานะของเราเตอร์ ตัวจัดสรรภาระงานจะส่งคำขอไปยังพอร์ต 15999 ของเราเตอร์ > curl -v http://<routerIP>:15999/v1/servers/self/reachable หากเข้าถึงเราเตอร์ได้ คำขอจะแสดงผลเป็น HTTP 200 |
|
ZooKeeper |
2181 |
คอมโพเนนต์อื่นๆ เช่น เซิร์ฟเวอร์การจัดการ เราเตอร์ โปรแกรมประมวลผลข้อความ และอื่นๆ จะใช้ |
2888, 3888 |
ZooKeeper ใช้ภายในเพื่อการสื่อสารคลัสเตอร์ ZooKeeper (หรือที่เรียกว่า ZooKeeper Ensemble) |
|
Cassandra |
7000, 9042, 9160 |
พอร์ต Apache Cassandra สำหรับการสื่อสารระหว่างโหนด Cassandra และสำหรับการเข้าถึงโดยคอมโพเนนต์ Edge อื่นๆ |
7199 |
พอร์ต JMX ต้องเปิดอยู่เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ |
|
Qpid |
5672 |
ใช้สำหรับการสื่อสารจากเราเตอร์และ Message Processor ไปยังเซิร์ฟเวอร์ Qpid |
8083 |
พอร์ตการจัดการเริ่มต้นในเซิร์ฟเวอร์ Qpid และต้องเปิดอยู่ในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ |
|
1102 |
พอร์ต JMX |
|
4529 |
สําหรับแคชแบบกระจายและการเรียกใช้การจัดการ |
|
Postgres |
5432 |
ใช้สำหรับการสื่อสารจากเซิร์ฟเวอร์ Qpid/การจัดการไปยัง Postgres |
8084 |
พอร์ตการจัดการเริ่มต้นในเซิร์ฟเวอร์ Postgres และต้องเปิดในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ |
|
1103 |
พอร์ต JMX |
|
4530 |
สําหรับแคชแบบกระจายและการเรียกใช้การจัดการ |
|
22 |
หากกำหนดค่าโหนด Postgres 2 โหนดให้ใช้การจำลองแบบมาสเตอร์สแตนด์บาย คุณต้องเปิดพอร์ต 22 ในโหนดแต่ละโหนดสำหรับการเข้าถึง SSH |
|
LDAP |
10389 |
OpenLDAP |
SmartDocs |
59002 |
พอร์ตในเราเตอร์ Edge ที่ส่งคำขอหน้า SmartDocs |
หมายเหตุ: นอกจากนี้ คุณอาจต้องเปิดพอร์ตในไฟร์วอลล์เพื่อทำการทดสอบ เช่น 59001 เป็นต้น |
ตารางถัดไปแสดงพอร์ตเดียวกันซึ่งแสดงเป็นตัวเลขพร้อมคอมโพเนนต์ต้นทางและปลายทาง
หมายเลขพอร์ต |
วัตถุประสงค์ |
คอมโพเนนต์ต้นทาง |
คอมโพเนนต์ปลายทาง |
---|---|---|---|
<virtual host port#> |
HTTP และพอร์ตอื่นๆ ที่คุณใช้สำหรับการเข้าชมการเรียก API ของโฮสต์เสมือน พอร์ต 80 และ 443 มีการใช้งานบ่อยที่สุด โดย Message Router จะยุติการเชื่อมต่อ TLS/SSL ได้ |
ไคลเอ็นต์ภายนอก (หรือตัวจัดสรรภาระงาน) |
โปรแกรมฟังใน Message Router |
1099 ถึง 1103 |
การจัดการ JMX |
ไคลเอ็นต์ JMX |
เซิร์ฟเวอร์การจัดการ (1099) Message Processor (1101) เซิร์ฟเวอร์ Qpid (1102) เซิร์ฟเวอร์ Postgres (1103) |
2181 |
การสื่อสารกับไคลเอ็นต์ Zookeeper |
เซิร์ฟเวอร์การจัดการ เราเตอร์ Message Processor เซิร์ฟเวอร์ Qpid เซิร์ฟเวอร์ Postgres |
ผู้ดูแลสวนสัตว์ |
2888 และ 3888 |
การจัดการโหนดของผู้ดูแลสวนสัตว์ |
ผู้ดูแลสวนสัตว์ |
ผู้ดูแลสวนสัตว์ |
4526 ถึง 4530 |
พอร์ตการจัดการ RPC ที่ใช้สําหรับแคชแบบกระจายและการเรียกใช้จากเซิร์ฟเวอร์การจัดการไปยังคอมโพเนนต์อื่นๆ |
เซิร์ฟเวอร์การจัดการ |
เซิร์ฟเวอร์การจัดการ (4526) เราเตอร์ (4527) Message Processor (4528) เซิร์ฟเวอร์ Qpid (4529) เซิร์ฟเวอร์ Postgres (4530) |
4528 |
สําหรับการเรียกใช้แคชแบบกระจายระหว่างโปรแกรมประมวลผลข้อความ และการสื่อสารจากเราเตอร์ |
เราเตอร์ Message Processor |
Message Processor |
5432 |
ไคลเอ็นต์ Postgres |
เซิร์ฟเวอร์ Qpid |
Postgres |
5,672 |
ใช้สำหรับส่งข้อมูลวิเคราะห์จากเราเตอร์และโปรแกรมประมวลผลข้อความไปยัง Qpid |
เราเตอร์ Message Processor |
เซิร์ฟเวอร์ Qpid |
7000 |
การสื่อสารระหว่างโหนด Cassandra |
Cassandra |
โหนด Cassandra อื่นๆ |
7199 |
การจัดการ JMX ต้องเปิดเพื่อเข้าถึงโหนด Cassandra โดยเซิร์ฟเวอร์การจัดการ |
ไคลเอ็นต์ JMX |
Cassandra |
8080 |
พอร์ต Management API |
ไคลเอ็นต์ API การจัดการ |
เซิร์ฟเวอร์การจัดการ |
8081 ถึง 8084 |
พอร์ต API ของคอมโพเนนต์ ซึ่งใช้สำหรับส่งคําขอ API ไปยังคอมโพเนนต์แต่ละรายการโดยตรง คอมโพเนนต์แต่ละรายการจะเปิดพอร์ตอื่น พอร์ตที่แน่นอนที่ใช้จะขึ้นอยู่กับการกำหนดค่า แต่ต้องเปิดในคอมโพเนนต์เพื่อให้เซิร์ฟเวอร์การจัดการเข้าถึงได้ |
ไคลเอ็นต์ Management API |
เราเตอร์ (8081) Message Processor (8082) เซิร์ฟเวอร์ Qpid (8083) เซิร์ฟเวอร์ Postgres (8084) |
8998 |
การสื่อสารระหว่างเราเตอร์กับโปรแกรมประมวลผลข้อความ |
เราเตอร์ |
Message Processor |
9,000 |
พอร์ต UI การจัดการ Edge เริ่มต้น |
เบราว์เซอร์ |
เซิร์ฟเวอร์ UI การจัดการ |
9042 |
การรับส่งข้อมูล CQL เนทีฟ |
เราเตอร์ Message Processor เซิร์ฟเวอร์การจัดการ |
Cassandra |
9160 |
ไคลเอ็นต์ Thrift ของ Cassandra |
เราเตอร์ Message Processor เซิร์ฟเวอร์การจัดการ |
Cassandra |
10389 |
พอร์ต LDAP |
เซิร์ฟเวอร์การจัดการ |
OpenLDAP |
15999 | พอร์ตการตรวจสอบประสิทธิภาพการทำงาน ตัวจัดสรรภาระงานใช้พอร์ตนี้เพื่อตรวจสอบว่าเราเตอร์พร้อมใช้งานหรือไม่ | ตัวจัดสรรภาระงาน | เราเตอร์ |
59002 |
พอร์ตเราเตอร์ที่ส่งคำขอหน้า SmartDocs |
SmartDocs |
เราเตอร์ |
โปรแกรมประมวลผลข้อความจะเปิดพูลการเชื่อมต่อเฉพาะกับ Cassandra ไว้ ซึ่งได้รับการกําหนดค่าให้ไม่มีการหมดเวลา เมื่อไฟร์วอลล์อยู่ระหว่างเครื่องมือประมวลผลข้อความและเซิร์ฟเวอร์ Cassandra ไฟร์วอลล์อาจหมดเวลาการเชื่อมต่อ อย่างไรก็ตาม ตัวประมวลผลข้อความไม่ได้ออกแบบมาเพื่อสร้างการเชื่อมต่อกับ Cassandra อีกครั้ง
เพื่อป้องกันไม่ให้เกิดกรณีนี้ขึ้น Apigee ขอแนะนำให้เซิร์ฟเวอร์ Cassandra, โปรแกรมประมวลผลข้อความ และเราเตอร์อยู่ในซับเน็ตเดียวกันเพื่อไม่ให้ไฟร์วอลล์เข้ามาเกี่ยวข้องในการติดตั้งใช้งานคอมโพเนนต์เหล่านี้
หากมีไฟร์วอลล์อยู่ระหว่างเราเตอร์และโปรแกรมประมวลผลข้อความ และมีการตั้งค่าการหมดเวลา TCP ที่ไม่ได้ใช้งาน เราขอแนะนําให้ทําดังนี้
- ตั้งค่า net.ipv4.tcp_keepalive_time = 1800 ในการตั้งค่า sysctl บน Linux OS โดยที่ 1800 ควรต่ำกว่า tcpระยะหมดเวลา tcp ที่ไม่มีการใช้งานไฟร์วอลล์ การตั้งค่านี้ควรทำให้การเชื่อมต่ออยู่ในสถานะที่สร้างขึ้นเพื่อให้ไฟร์วอลล์ไม่ตัดการเชื่อมต่อ
- ในโปรแกรมประมวลผลข้อความทั้งหมด ให้แก้ไข /<inst_root>/apigee/customer/application/message-processor.properties เพื่อเพิ่มพร็อพเพอร์ตี้ต่อไปนี้ หากไม่มีไฟล์ ให้สร้างขึ้นมา
conf_system_casssandra.maxconnecttimeinmillis=-1 - รีสตาร์ทโปรแกรมประมวลผลข้อความ
> /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart - ในเราเตอร์ทั้งหมด ให้แก้ไข /<inst_root>/apigee/customer/application/router.properties เพื่อเพิ่มพร็อพเพอร์ตี้ต่อไปนี้ หากไม่มีไฟล์ดังกล่าว ให้สร้างไฟล์
conf_system_casssandra.maxconnecttimeinmillis=-1 - รีสตาร์ทเราเตอร์
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart
หากคุณติดตั้งการกำหนดค่าคลัสเตอร์โฮสต์ 12 ตัวด้วยศูนย์ข้อมูล 2 แห่ง ให้ตรวจสอบว่าโหนดในศูนย์ข้อมูล 2 แห่งสามารถสื่อสารผ่านพอร์ตที่แสดงด้านล่าง
ข้อกำหนดของพอร์ต API BaaS
หากเลือกติดตั้ง API BaaS คุณจะต้องเพิ่มคอมโพเนนต์ API BaaS Stack และ API BaaS Portal คอมโพเนนต์เหล่านี้ใช้พอร์ตที่แสดงในรูปภาพด้านล่าง
หมายเหตุในแผนภาพนี้
- คุณสามารถใช้โหนด Cassandra สำหรับ API BaaS โดยเฉพาะ หรือจะแชร์กับ Edge ก็ได้
- การติดตั้ง API BaaS ในเวอร์ชันที่ใช้งานจริงจะใช้ตัวจัดสรรภาระงานระหว่างโหนดพอร์ทัล API BaaS กับโหนดสแต็ก API BaaS เมื่อกำหนดค่าพอร์ทัลและทำการเรียก API ของ BaaS คุณต้องระบุที่อยู่ IP หรือชื่อ DNS ของโหลดบาลานเซอร์ ไม่ใช่ของโหนดสแต็ก
- คุณต้องกำหนดค่าโหนด Baas Stack ทั้งหมดให้ส่งอีเมลผ่านเซิร์ฟเวอร์ SMTP ภายนอก สําหรับ SMTP ที่ไม่ใช่ TLS หมายเลขพอร์ตมักจะเป็น 25 สำหรับ SMTP ที่เปิดใช้ TLS มักจะเป็น 465 โปรดตรวจสอบกับผู้ให้บริการ SMTP ของคุณ
ตารางด้านล่างแสดงพอร์ตเริ่มต้นที่ต้องเปิดในไฟร์วอลล์ตามคอมโพเนนต์
ส่วนประกอบ |
พอร์ต |
คำอธิบาย |
---|---|---|
API BaaS Portal |
9000 |
พอร์ตสำหรับ API BaaS UI |
API BaaS Stack |
8080 |
พอร์ตที่รับคําขอ API |
ElasticSearch |
9200 ถึง 9400 |
สําหรับการสื่อสารกับสแต็ก BaaS ของ API และการสื่อสารระหว่างโหนด ElasticSearch |
การอนุญาตให้ใช้สิทธิ
การติดตั้ง Edge แต่ละครั้งต้องใช้ไฟล์ใบอนุญาตที่ไม่ซ้ำกันซึ่งคุณได้รับจาก Apigee คุณจะต้องระบุเส้นทางไปยังไฟล์ใบอนุญาตเมื่อติดตั้งเซิร์ฟเวอร์การจัดการ เช่น /tmp/license.txt
โปรแกรมติดตั้งจะคัดลอกไฟล์ใบอนุญาตไปยัง /<inst_root>/apigee/customer/conf/license.txt
หากไฟล์ใบอนุญาตถูกต้อง เซิร์ฟเวอร์การจัดการจะตรวจสอบวันหมดอายุและจำนวน Message Processor (MP) ที่อนุญาต หากการตั้งค่าใบอนุญาตหมดอายุ คุณจะดูบันทึกได้ที่ตำแหน่งต่อไปนี้ /<inst_root>/apigee/var/log/edge-management-server/logs ในกรณีนี้ โปรดติดต่อทีมสนับสนุนของ Apigee เพื่อขอรายละเอียดการย้ายข้อมูล