דרישות החומרה
לתשתית עם זמינות גבוהה בסביבת ייצור, אתם צריכים לעמוד בדרישות החומרה המינימליות הבאות.
בסרטון הבא מוסבר איך לקבוע את הגודל הרצוי לכם בהתקנה:
לכל תרחישי ההתקנה שמתוארים בטופולוגיות ההתקנה, בטבלאות הבאות מפורטות דרישות החומרה המינימליות לרכיבי ההתקנה.
בטבלאות האלה הדרישות לדיסק הקשיח הן בנוסף לשטח הדיסק הקשיח שנדרש על ידי מערכת ההפעלה. בהתאם לאפליקציות ולתעבורת הנתונים ברשת, יכול להיות שההתקנה תדרוש יותר משאבים או פחות משאבים ממה שמפורט בהמשך.
רכיב התקנה | RAM | (CPU) מעבד | מינימום דיסק קשיח |
---|---|---|---|
קסנדרה | 16GB | 8 ליבות | אחסון מקומי בנפח 250GB עם SSD שתומך ב-2000 IOPS |
מעבד מעבד/נתב באות מכונה | 16GB | 8 ליבות | 100GB |
מעבד הודעות (עצמאי) | 16GB | 8 ליבות | 100GB |
נתב (עצמאי) | 16GB | 8 ליבות | 100GB |
Analytics – Postgres/Qpid באותו שרת | 16GB* | 8 ליבות* | אחסון ברשת בנפח 500GB - 1TB*****, עדיף עם קצה עורפי SSD, עם תמיכה ב-1000 IOPS ומעלה* |
Analytics – פעולות העברה במאסטר או במצב המתנה (עצמאי) | 16GB* | 8 ליבות* | אחסון ברשת בנפח 500GB - 1TB*****, עדיף עם קצה עורפי SSD, עם תמיכה ב-1000 IOPS ומעלה* |
Analytics – Qpid עצמאי | 8GB | 4 ליבות | 30GB - אחסון מקומי של 50GB עם SSD
גודל ברירת המחדל של תור Qpid הוא 1GB, ואפשר להגדיל אותו ל-2GB. אם אתם צריכים עוד קיבולת, תוכלו להוסיף עוד צומתי Qpid. |
OpenLDAP/ממשק משתמש/שרת ניהול | 8GB | 4 ליבות | 60GB |
ממשק משתמש/שרת ניהול | 4GB | 2 ליבות | 60GB |
OpenLDAP (עצמאי) | 4GB | 2 ליבות | 60GB |
* התאמת דרישות המערכת של Postgres בהתאם לתפוקה:
** הערך בכונן הקשיח של Postgres מבוסס על ניתוח הנתונים שנוצר על ידי Edge מחוץ לתיבה. אם מוסיפים ערכים מותאמים אישית לנתוני ניתוח הנתונים, צריך להגדיל את הערכים האלה בהתאם. משתמשים בנוסחה הבאה כדי להעריך את נפח האחסון הנדרש:
למשל:
*** מומלץ להשתמש באחסון רשת עבור מסד נתונים של Postgresql מהסיבות הבאות:
|
בנוסף, בהמשך מפורטות דרישות החומרה אם ברצונך להתקין את שירותי המונטיזציה (לא נתמכים בהתקנה של All-in-One):
רכיב עם מונטיזציה | RAM | (CPU) מעבד | דיסק קשיח |
---|---|---|---|
שרת ניהול (עם שירותי מונטיזציה) | 8GB | 4 ליבות | 60GB |
Analytics – Postgres/Qpid באותו שרת | 16GB | 8 ליבות | אחסון ברשת בנפח 500GB - 1TB, עדיף עם קצה עורפי של SSD, עם תמיכה ב-1000 IOPS ומעלה או להשתמש בכלל שמתואר בטבלה שלמעלה. |
Analytics – העברות ראשיות או זמניות במצב המתנה בנפרד | 16GB | 8 ליבות | אחסון ברשת בנפח 500GB - 1TB, עדיף עם קצה עורפי של SSD, עם תמיכה ב-1000 IOPS ומעלה או להשתמש בכלל שמתואר בטבלה שלמעלה. |
Analytics – Qpid עצמאי | 8GB | 4 ליבות | אחסון מקומי בנפח 40GB - 500GB עם SSD או HDD מהיר
אם ההתקנה גבוהה מ-250 TPS, מומלץ להשתמש ב-HDD עם אחסון מקומי שתומך ב-1000 IOPS. |
דרישות לגבי מערכת ההפעלה ותוכנות צד שלישי
הוראות ההתקנה וקובצי ההתקנה שסופקו נבדקו במערכות ההפעלה ובתוכנות הצד השלישי שמפורטות בתוכנות נתמכות וגרסאות נתמכות.
Java
נדרשת גרסה נתמכת של Java 1.8 בכל מחשב לפני ההתקנה. מפתחות ה-JDK הנתמכים מפורטים במאמר תוכנות נתמכות וגרסאות נתמכות.
מוודאים שמשתנה הסביבה JAVA_HOME
מפנה לרמה הבסיסית (root) של ה-JDK של המשתמש שמבצע את ההתקנה.
SELinux
בהתאם להגדרות של SELinux, ייתכן ש-Edge ייתקל בבעיות בהתקנה ובהפעלה של רכיבי Edge. במקרה הצורך, אפשר להשבית את SELinux או להגדיר אותו למצב מתירני במהלך ההתקנה, ואז להפעיל אותו מחדש לאחר ההתקנה. למידע נוסף, ראו התקנת כלי ההגדרה של Edge apigee-setup.
יצירת המשתמש ב-apigee
תהליך ההתקנה יוצר משתמש במערכת Unix בשם 'apigee'. ספריות קצה וקבצים הם בבעלות 'apigee' וגם תהליכי Edge. כלומר, רכיבי Edge יפעלו בתור משתמש 'apigee'. במקרה הצורך, אפשר להריץ רכיבים כמשתמש אחר.
ספריית התקנה
כברירת מחדל, מנהל ההתקנה כותב את כל הקבצים לספרייה /opt/apigee
. אי אפשר לשנות את מיקום הספרייה הזה. אי אפשר לשנות את הספרייה הזו, אבל אפשר ליצור
קישור סימבולי כדי למפות את /opt/apigee
למיקום אחר, כפי שמתואר
ביצירת קישור סימבולי מ- /opt/apigee.
בהוראות שבמדריך הזה, ספריית ההתקנה מצוינת כ-/opt/apigee
.
יצירת קישור סימבולי מ-/opt/apigee
לפני שיוצרים את הקישור הסמלי, צריך קודם ליצור משתמש וקבוצה בשם 'apigee'. אלה הקבוצה והמשתמש שנוצרו על ידי מנהל ההתקנה של Edge.
כדי ליצור את הקישור הסמלי, צריך לבצע את השלבים הבאים לפני שמורידים את הקובץ shoestrap_4.52.02.sh. צריך לבצע את כל השלבים האלה ברמה הבסיסית (root):
- יוצרים את המשתמש והקבוצה של 'apigee':
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- יוצרים קישור סימבולי מ-
/opt/apigee
לרמה הבסיסית (root) של ההתקנה:ln -Ts /srv/myInstallDir /opt/apigee
כאשר /srv/myInstallDir הוא המיקום הרצוי של קובצי ה-Edge.
- שינוי הבעלות על הרמה הבסיסית (root) של ההתקנה והקישור הסמלי למשתמש ה-apigee:
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
הגדרת רשת
ב-Apigee מומלץ לבדוק את הגדרות הרשת לפני ההתקנה. מנהל ההתקנה מצפה שלכל המכונות יהיו כתובות IP קבועות. משתמשים בפקודות הבאות כדי לאמת את ההגדרה:
hostname
מחזיר את שם המכונה- הפקודה
hostname -i
מחזירה את כתובת ה-IP של שם המארח שאפשר להפנות אליו ממכונות אחרות.
בהתאם לסוג של מערכת ההפעלה ולגרסה, יכול להיות שיהיה צורך לערוך את /etc/hosts
ואת /etc/sysconfig/network
אם שם המארח לא מוגדר בצורה נכונה. לקבלת מידע נוסף, אפשר לעיין בתיעוד של מערכת ההפעלה הספציפית.
אם לשרת יש מספר כרטיסי ממשק, הפקודה 'שם מארח -i' מחזירה רשימה של כתובות IP שמופרדות ברווחים. כברירת מחדל, מנהל ההתקנה של Edge משתמש בכתובת ה-IP הראשונה שהוחזרה. ייתכן שהיא לא תהיה נכונה בכל המצבים. לחלופין, אפשר להגדיר את המאפיין הבא בקובץ התצורה של ההתקנה:
ENABLE_DYNAMIC_HOSTIP=y
כאשר המאפיין מוגדר כ-'y', מנהל ההתקנה יבקש מכם לבחור את כתובת ה-IP שבה תשתמשו כחלק מההתקנה. ערך ברירת המחדל הוא 'n'. מידע נוסף זמין בחומר העזר בנושא קובץ תצורת קצה.
רכיבי wrapper של TCP
רכיבי TCP wrapper יכולים לחסום את התקשורת של יציאות מסוימות, והם יכולים להשפיע על התקנת OpenLDAP, Postgres ו-Cassandra. בצמתים האלה, צריך לבדוק את /etc/hosts.allow
ואת /etc/hosts.deny
כדי לוודא שאין הגבלות על יציאות ביציאות OpenLDAP, Postgres ו-Cassandra.
מכשירי iptable
צריך לבדוק שאין מדיניות של טבלאות IP שמונעת קישוריות בין צמתים ביציאות ה-Edge הנדרשות. במקרה הצורך, אפשר לעצור את טבלאות ה-IP במהלך ההתקנה באמצעות הפקודה:
sudo/etc/init.d/iptables stop
ב-CentOS 7.x:
systemctl stop firewalld
גישה לספרייה
בטבלה הבאה מפורטות הספריות בצומתי Edge שיש להן דרישות מיוחדות מתהליכי Edge:
שירות | ספרייה | תיאור |
---|---|---|
נתב | /etc/rc.d/init.d/functions |
נתב Edge משתמש בנתב Nginx ומחייב גישת קריאה ל- אם בתהליך האבטחה יש צורך להגדיר הרשאות
ב- כדי לאפשר גישת קריאה ל- |
שומר גן חיות | /dev/random |
ספריית הלקוח שלzokeeper דורשת גישת קריאה למחולל המספרים האקראיים /dev/random . אם האפליקציה /dev/random חסומה בזמן הקריאה, יכול להיות שלא תהיה אפשרות להפעיל את שירות Zoomkeeper. |
קסנדרה
כל הצמתים של Cassandra חייבים להיות מחוברים לטבעת. Cassandra מאחסנת רפליקות של נתונים במספר צמתים כדי להבטיח אמינות ועמידות לכשלים. אסטרטגיית הרפליקציה לכל מרחב מפתחות של Edge קובעת את צומתי Cassandra שבהם מוצבים רפליקציות. למידע נוסף, ראו מידע על גורם הרפליקציה ורמת העקביות של Cassandra.
גודל הערימה של Java ב-Cassandra מכוונן אוטומטית את גודל הערימה של Java בהתאם לזיכרון הזמין. מידע נוסף זמין במאמר כוונון של משאבי Java במקרה של ירידה בביצועים או במקרה של צריכת זיכרון גבוהה.
אחרי שמתקינים את Edge לענן פרטי, אפשר לבדוק את קובץ /opt/apigee/apigee-cassandra/conf/cassandra.yaml
כדי לבדוק אם Cassandra מוגדרת נכון. לדוגמה, צריך לוודא שסקריפט ההתקנה של Edge for Private Cloud מגדיר את המאפיינים הבאים:
cluster_name
initial_token
partitioner
seeds
listen_address
rpc_address
snitch
מסד נתונים של 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 /opt/apigee/customer/application/postgresql.properties
אם הקובץ לא קיים, יוצרים אותו.
- מגדירים את המאפיינים המפורטים למעלה.
- שומרים את השינויים.
- מפעילים מחדש את מסד הנתונים של PostgreSQL:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
מגבלות מערכת
חשוב לוודא שהגדרתם את מגבלות המערכת הבאות בצמתים של Cassandra ומעבד ההודעות:
- בצמתים של Cassandra, צריך להגדיר מגבלות soft memlock , nofile ומרחב כתובות (as) למשתמש ההתקנה (ברירת המחדל היא 'apigee') ב-
/etc/security/limits.d/90-apigee-edge-limits.conf
כפי שמוצג בהמשך:apigee soft memlock unlimited apigee hard memlock unlimited apigee soft nofile 32768 apigee hard nofile 65536 apigee soft as unlimited apigee hard as unlimited apigee soft nproc 32768 apigee hard nproc 65536
- בצמתים של מעבד הודעות, מגדירים את המספר המקסימלי של מתארי קבצים פתוחים ל-64K
ב-
/etc/security/limits.d/90-apigee-edge-limits.conf
כפי שמוצג בהמשך:apigee soft nofile 32768 apigee hard nofile 65536
במקרה הצורך, אפשר להגדיל את המגבלה. לדוגמה, אם פותחים מספר גדול של קבצים זמניים בכל רגע נתון.
אם תופיע השגיאה הבאה בנתב או במעבד ההודעות
system.log
, יכול להיות שהמגבלות של מתאר הקובץ מוגדרות נמוכות מדי:"java.io.IOException: Too many open files"
כדי לבדוק את מגבלות המשתמשים, אפשר להריץ את הפקודה:
# su - apigee $ ulimit -n 100000
אם עדיין הגעת למגבלות הקבצים הפתוחים אחרי שהגדרת את המגבלות של מתאר הקובץ ל-
100000
, אפשר לפתוח פנייה בתמיכה ב-Apigee Edge לקבלת פתרונות נוספים לבעיות.
שירותי אבטחת רשתות (NSS)
Network Security Services (NSS) היא קבוצה של ספריות שתומכות בפיתוח של אפליקציות לקוח ושרתים עם אבטחה. עליך לוודא שהתקנת את NSS מגרסה 3.19 ואילך.
כדי לבדוק את הגרסה הנוכחית:
yum info nss
כדי לעדכן את ה-NSS:
yum update nss
מידע נוסף זמין במאמר הזה באתר RedHat.
השבתה של חיפוש DNS ב-IPv6 בעת שימוש ב-NSCD (Name Cache Daemon)
אם התקנתם והפעלתם את NSCD (Name Service Cache Daemon), מעבדי ההודעות מבצעים שני חיפושי DNS: אחת ל-IPv4 ואחת ל-IPv6. צריך להשבית חיפוש DNS ב-IPv6 כשמשתמשים ב-NSCD.
כדי להשבית את חיפוש ה-DNS ב-IPv6:
- בכל צומת של מעבד הודעות, עורכים את
/etc/nscd.conf
- מגדירים את המאפיין הבא:
enable-cache hosts no
השבתת IPv6 ב-Google Cloud Platform עבור RedHat/CentOS 7
אם מתקינים את Edge ב-RedHat 7 או CentOS 7 ב-Google Cloud Platform, צריך להשבית את IPv6 בכל צומתי Qpid.
לקבלת הוראות להשבתת IPv6, אפשר לעיין במסמכים של RedHat או CentOS לגבי הגרסה של מערכת ההפעלה הספציפית. לדוגמה, אתם יכולים:
- פתיחת
/etc/hosts
בעורך. - כדי להגיב, מוסיפים תו '#' בעמודה אחת מהשורה הבאה:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- שומרים את הקובץ.
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 |
expr |
libtxtt |
סיבובים לדקה |
unzip |
basename |
grep |
לואה-שקע |
rpm2cpio |
הוספת משתמש |
באש |
hostname |
ls |
sed |
wc |
bc |
id |
net-tools |
sudo |
Wget |
curl |
ליביו |
perl (מ-procps) |
זפת |
Xerces-c |
קירוס-סאסל | libdb4 | pgRep (מ-procps) | tr | טעים |
date |
libdb-cxx |
ps |
uuid |
chkconfig |
dirname | ליביבים | pwd | אושם | |
echo | LibrdMacm | python |
ntpdate
לפי המלצת Apigee, הזמנים של השרתים שלכם יסתנכרנו. אם הוא לא מוגדר עדיין, כלי השירות 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 מארחים עם שני מרכזי נתונים נדרשת רפליקציית OpenLDAP כי יש כמה צמתים שמארחים את OpenLDAP.
חומות אש ומארחים וירטואליים
המונח virtual
עמוס בדרך כלל בזירת ה-IT, ולכן הוא קיים גם ב-Apigee Edge לפריסה של ענן פרטי ולמארחים וירטואליים. כדי להבהיר, יש שני
שימושים עיקריים במונח virtual
:
- מכונות וירטואליות (VM): לא חובה, אבל בחלק מהפריסה נעשה שימוש בטכנולוגיית VM כדי ליצור שרתים מבודדים לרכיבי Apigee. למארחי מכונות וירטואליות, כמו מארחים פיזיים, יכולים להיות ממשקי רשת וחומות אש.
- מארחים וירטואליים: נקודות קצה באינטרנט, בדומה למארח וירטואלי של Apache.
נתב במכונה וירטואלית יכול לחשוף כמה מארחים וירטואליים (כל עוד הם שונים זה מזה בכתובת האימייל החלופית של המארח או ביציאת הממשק).
דוגמה למתן שמות, יכול להיות שבשרת פיזי אחד, A
, יכולות לפעול שתי מכונות וירטואליות שנקראות 'VM1' ו-'VM2'. נניח ש-"VM1" חושפת ממשק אתרנט וירטואלי בשם 'eth0' בתוך המכונה הווירטואלית, וכתובת ה-IP שלו מוקצית 111.111.111.111
על ידי מכונות הווירטואליות או שרת DHCP של הרשת. לאחר מכן נצא מנקודת הנחה ש-VM2 חושפת ממשק אתרנט וירטואלי שנקרא גם 'eth0' ושמוקצית לו כתובת ה-IP
111.111.111.222
.
יכול להיות שיש לנו נתב Apigee שפועל בכל אחת משתי המכונות הווירטואליות. הנתבים חושפים נקודות קצה של מארח וירטואלי כמו בדוגמה ההיפותטית הבאה:
נתב Apigee ב-VM1 חושף שלושה מארחים וירטואליים בממשק ה-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
). בנוסף, כל מערכת הפעלה של מכונה וירטואלית עשויה לספק חומת אש משלה בממשק eth0 שלה, וגם הן צריכות לאפשר חיבור ליציאות 80 ו-443.
Basepath הוא הרכיב השלישי שמעורב בניתוב קריאות ל-API לשרתי proxy שונים ל-API שאולי פרסתם. חבילות proxy ל-API יכולות לשתף נקודת קצה אם יש להן נתיבי בסיס שונים. לדוגמה, Basepath אחד יכול להיות מוגדר כ-http://api.mycompany.com:80/
ו-basepath אחר מוגדר כ-http://api.mycompany.com:80/salesdemo
.
במקרה כזה, תצטרכו מאזן עומסים או מנהל תעבורת נתונים, שיפוצלו את תעבורת הנתונים http://api.mycompany.com:80/ בין שתי כתובות ה-IP (111.111.111.111
ב-VM1 ו-111.111.111.222
ב-VM2). הפונקציה הזו היא ספציפית להתקנה הספציפית שלכם, והיא מוגדרת על ידי קבוצת הרשתות המקומית שלכם.
הנתיב הבסיסי מוגדר כשפורסים API. מהדוגמה שלמעלה, אפשר לפרוס שני ממשקי API, mycompany
ו-testmycompany
, עבור הארגון mycompany-org
באמצעות המארח הווירטואלי עם כינוי המארח של api.mycompany.com
והיציאה מוגדרת ל-80
. אם לא מצהירים על הנתיב הבסיסי בפריסה, הנתב לא יודע לאיזה API לשלוח הבקשות הנכנסות.
עם זאת, אם פורסים את ה-API testmycompany
עם כתובת ה-URL הבסיסית /salesdemo
, המשתמשים ניגשים ל-API הזה באמצעות http://api.mycompany.com:80/salesdemo
. אם פורסים את ה-API של mycompany עם
כתובת ה-URL הבסיסית /
, המשתמשים שלכם ניגשים ל-API דרך כתובת ה-URL
http://api.mycompany.com:80/
.
רישוי
כל התקנה של Edge דורשת קובץ רישיון ייחודי שמקבלים מ-Apigee. צריך לספק את הנתיב לקובץ הרישיון כשמתקינים את שרת הניהול, לדוגמה /tmp/License.txt.
מנהל ההתקנה מעתיק את קובץ הרישיון אל /opt/apigee/customer/conf/license.txt
.
אם קובץ הרישיון תקף, שרת הניהול מאמת את מספר התוקף של מעבד ההודעות (MP) ואת התוקף שלו. אם פג התוקף של אחת מהגדרות הרישיון, אפשר למצוא את היומנים
במיקום הבא: /opt/apigee/var/log/edge-management-server/logs
.
במקרה כזה, תוכלו לפנות לתמיכה של Apigee Edge כדי לקבל פרטי העברה.
אם עדיין אין לכם רישיון, צריך לפנות למחלקת המכירות של Apigee.