ข้อกําหนดในการติดตั้ง

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 ตามอัตราการส่งข้อมูล:

  • น้อยกว่า 250 TPS: 8 GB, 4 คอร์ พิจารณาได้เมื่อใช้พื้นที่เก็บข้อมูลเครือข่ายที่จัดการ*** ที่รองรับ IOPS 1,000 ขึ้นไป
  • มากกว่า 250 TPS: พื้นที่เก็บข้อมูลเครือข่ายที่จัดการ 16 GB, 8 คอร์*** ที่รองรับ IOPS 1, 000 รายการขึ้นไป
  • มากกว่า 1,000 TPS: พื้นที่เก็บข้อมูลเครือข่ายที่จัดการ 16 GB, 8 คอร์*** ที่รองรับ IOPS 2,000 รายการขึ้นไป
  • มากกว่า 2,000 TPS: พื้นที่เก็บข้อมูลเครือข่ายที่จัดการ 32 GB, 16 คอร์*** ที่รองรับ IOPS 2,000 รายการขึ้นไป
  • มากกว่า 4,000 TPS: พื้นที่เก็บข้อมูลเครือข่ายที่จัดการ 64 GB, 32 คอร์*** ที่รองรับ IOPS 4,000 รายการขึ้นไป

**ค่าฮาร์ดดิสก์ Postgres จะอิงตามข้อมูลวิเคราะห์ที่พร้อมใช้งานโดยค่าเริ่มต้นซึ่ง Edge บันทึกไว้ หากคุณเพิ่มค่าที่กําหนดเองลงในข้อมูลวิเคราะห์ ค่าเหล่านี้ควรเพิ่มขึ้นตาม ใช้สูตรต่อไปนี้เพื่อประมาณพื้นที่เก็บข้อมูลที่ต้องการ

(# ไบต์/คำขอ) * (คำขอต่อวินาที) * (วินาทีต่อชั่วโมง) * (ชั่วโมงการใช้งานสูงสุดต่อวัน) * (วันต่อเดือน) * (การคงข้อมูลไว้เป็นเวลา 3 เดือน) = ไบต์ของพื้นที่เก็บข้อมูลที่ต้องการ

ตัวอย่างเช่น

(ข้อมูลวิเคราะห์ 2,000 ไบต์ต่อคำขอ) * 100 คำขอ/วินาที * 3,600 วินาที/ชั่วโมง * การใช้งานสูงสุด 18 ชั่วโมงต่อวัน * 30 วัน/เดือน * การเก็บรักษา 3 เดือน = 1,194,393,600,000 ไบต์หรือ 1,194.4 GB

*** เราขอแนะนำให้ใช้พื้นที่เก็บข้อมูลเครือข่ายสำหรับฐานข้อมูล PostgreSQL เนื่องจากเหตุผลต่อไปนี้

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

นอกจากนี้ รายการต่อไปนี้แสดงข้อกำหนดด้านฮาร์ดแวร์หากคุณต้องการติดตั้งบริการสร้างรายได้

องค์ประกอบที่มีการสร้างรายได้

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

วิธีตั้งค่าค่าเหล่านี้

  1. แก้ไข postgresql.properties
    > vi /<inst_root>/apigee/customer/application/postgresql.properties

    หากไม่มีไฟล์ ให้สร้างไฟล์
  2. ตั้งค่าพร็อพเพอร์ตี้ที่ระบุไว้ด้านบน
  3. บันทึกการแก้ไข
  4. รีสตาร์ทฐานข้อมูล 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 ที่ไม่ได้ใช้งาน เราขอแนะนําให้ทําดังนี้

  1. ตั้งค่า net.ipv4.tcp_keepalive_time = 1800 ในการตั้งค่า sysctl บน Linux OS โดยที่ 1800 ควรต่ำกว่า tcpระยะหมดเวลา tcp ที่ไม่มีการใช้งานไฟร์วอลล์ การตั้งค่านี้ควรทำให้การเชื่อมต่ออยู่ในสถานะที่สร้างขึ้นเพื่อให้ไฟร์วอลล์ไม่ตัดการเชื่อมต่อ
  2. ในโปรแกรมประมวลผลข้อความทั้งหมด ให้แก้ไข /<inst_root>/apigee/customer/application/message-processor.properties เพื่อเพิ่มพร็อพเพอร์ตี้ต่อไปนี้ หากไม่มีไฟล์ ให้สร้างขึ้นมา
    conf_system_casssandra.maxconnecttimeinmillis=-1
  3. รีสตาร์ทโปรแกรมประมวลผลข้อความ
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  4. ในเราเตอร์ทั้งหมด ให้แก้ไข /<inst_root>/apigee/customer/application/router.properties เพื่อเพิ่มพร็อพเพอร์ตี้ต่อไปนี้ หากไม่มีไฟล์ดังกล่าว ให้สร้างไฟล์
    conf_system_casssandra.maxconnecttimeinmillis=-1
  5. รีสตาร์ทเราเตอร์
    > /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 เพื่อขอรายละเอียดการย้ายข้อมูล