התקנת הפורטל

Edge for Private Cloud גרסה 4.19.01

לפני שמתקינים את הפורטל של Apigee Developer Services (או פשוט הפורטל), צריך לוודא:

  1. מתקינים את Postgres לפני שמתקינים את הפורטל. אפשר להתקין את Postgres כחלק מהתקנת Edge, או להתקין את Postgres בנפרד לשימוש בפורטל.
    • אם מתקינים את Postgres בנפרד, הן יכולות להיות באותו צומת שבו נמצא הפורטל.
    • אם אתם מתחברים ל-Postgres שמותקן כחלק מ-Edge, ו-Postgres מוגדר במצב master/standby, צריך לציין את כתובת ה-IP של שרת ה-Postgres הראשי.
  2. אתם מבצעים את ההתקנה בגרסה של 64 סיביות של גרסה נתמכת של Red Hat Enterprise Linux,‏ CentOS או Oracle. רשימת הגרסאות הנתמכות זמינה במאמר תוכנות נתמכות וגרסאות נתמכות.
  3. Yum מותקן.

מנהל ההתקנות כולל רק מודולים של Drupal שנתרמו על ידי משתמשים, שנדרשים בפורטל של Apigee Developer Services (או פשוט הפורטל). למידע על התקנת מודולים נוספים שנתרמו, ראו Extending Drupal 7.

סקירה כללית על ההתקנה

כדי להתקין את הפורטל, מבצעים את השלבים הבאים. כל אחד מהשלבים האלה מתואר בפירוט בסעיפים הבאים.

  1. בדיקת החיבור
  2. הסרת גרסאות של PHP שקדמו ל-7.0
  3. התקנה של Postgres
  4. התקנת הפורטל
  5. מוודאים ש'מנהל העדכונים' מופעל
  6. (אופציונלי) הגדרת Apache Solr
  7. (אופציונלי) התקנה של SmartDocs
  8. (אופציונלי) הגדרת JQuery

הוצאה משימוש של מאפיין SMTPSSL

בגרסאות קודמות, השתמשתם בנכס SMTPSSL כדי להגדיר את הפרוטוקול שבו משתמש שרת ה-SMTP שמחובר לפורטל. המאפיין הזה יצא משימוש.

עכשיו משתמשים במאפיין SMTP_PROTOCOL, במקום במאפיין SMTPSSL, כדי להגדיר את הפרוטוקול שבו משתמש שרת ה-SMTP שמחובר לפורטל. הערכים החוקיים הם: 'standard',‏ 'ssl' או 'tls'.

יצירת קובץ תצורה של פורטל

בהמשך מוצג קובץ תצורה לדוגמה להתקנה של פורטל ללא תצוגה. עורכים את הקובץ הזה לפי הצורך בהתאם לתצורה שלכם. כדי לכלול את הקובץ הזה, צריך להשתמש באפשרות -f ב-setup.sh.

IP1=IPorDNSnameOfNode

# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost.
HOSTIP=$(hostname -i)

# Specify the name of the portal database in Postgres.
PG_NAME=devportal

# Specify the Postgres admin credentials.
# The portal connects to Postgres by using the 'apigee' user.
# If you changed the Postgres password from the default of 'postgres'
# then set PG_PWD accordingly.
# If connecting to a Postgres node installed with Edge,
# contact the Edge sys admin to get these credentials.
PG_USER=apigee
PG_PWD=postgres

# The IP address of the Postgres server.
# If it is installed on the same node as the portal, specify that IP.
# If connecting to a remote Postgres server,specify its IP address.
PG_HOST=$IP1

# The Postgres user credentials used by the portal
# to access the Postgres database,
# This account is created if it does not already exist.
DRUPAL_PG_USER=drupaladmin
DRUPAL_PG_PASS=portalSecret

# Specify 'postgres' as the database.
DEFAULT_DB=postgres

# Specify the Drupal admin account details.
# DO NOT set DEVPORTAL_ADMIN_USERNAME=admin.
# The installer creates this user on the portal.
DEVPORTAL_ADMIN_FIRSTNAME=firstName
DEVPORTAL_ADMIN_LASTNAME=lastName
DEVPORTAL_ADMIN_USERNAME=userName
DEVPORTAL_ADMIN_PWD=PORTAL_ADMIN_PASSWORD
DEVPORTAL_ADMIN_EMAIL=foo@bar.com

# Edge connection details.
# If omitted, you can set them in the portal UI.
# Specify the Edge organization associated with the portal.
EDGE_ORG=edgeOrgName

# Specify the URL of the Edge management API.
# For a Cloud based installation of Edge, the URL is:
# https://api.enterprise.apigee.com/v1
# For a Private Cloud installation, it is in the form:
# http://ms_IP_or_DNS:8080/v1 or
# https://ms_IP_or_DNS:TLSport/v1
MGMT_URL=https://api.enterprise.apigee.com/v1

# The org admin credentials for the Edge organization in the form
# of Edge emailAddress:pword.
# The portal uses this information to connect to Edge.
DEVADMIN_USER=orgAdmin@myCorp.com
DEVADMIN_PWD=ORG_ADMIN_PASSWORD

# The PHP port.
# If omitted, it defaults to 8888.
PHP_FPM_PORT=8888

# Optionally configure the SMTP server used by the portal.
# If you do, the properties SMTPHOST and SMTPPORT are required.
# The others are optional with a default value as notated below.
# SMTP hostname. For example, for the Gmail server, use smtp.gmail.com.
SMTPHOST=smtp.gmail.com

# Set the SMTP protocol as "standard", "ssl", or "tls",
# where "standard" corresponds to HTTP.
# Note that in previous releases, this setting was controlled by the
# SMTPSSL property. That property has been deprecated.
SMTP_PROTOCOL="standard"

# SMTP port (usually 25).
# The value can be different based on the selected encryption protocol.
# For example, for Gmail, the port is 465 when using SSL and 587 for TLS.
SMTPPORT=25

# Username used for SMTP authentication, defaults is blank.
SMTPUSER=your@email.com

# Password used for SMTP authentication, default is blank.
SMTPPASSWORD=YOUR_EMAIL_PASSWORD

1. בדיקת החיבור ל-Apigee Edge

כדי לבדוק את החיבור בין השרת שבו מתכננים להתקין את הפורטל לבין שרת הניהול של Edge, מריצים את הפקודה curl הבאה בשרת הפורטל:

curl -u EMAIL:PASSWORD http://ms_IP_or_DNS:8080/v1/organizations/ORGNAME

או:

curl -u EMAIL:PASSWORD https://ms_IP_or_DNS:TLSPort/v1/organizations/ORGNAME

כאשר EMAIL ו-PASSWORD הן כתובת האימייל והסיסמה של האדמין של ORGNAME.

חשוב לציין את שם המארח ואת מספר היציאה הספציפיים להתקנת Edge. יציאה 8080 היא יציאת ברירת המחדל שבה Edge משתמש. אם מתחברים לארגון בענן, כתובת ה-URL של הבקשה היא: https://api.enterprise.apigee.com/v1/organizations/ORGNAME.

אם הפעולה מסתיימת בלי שגיאות, הפקודה curl מחזירה תשובה שדומה לזו:

{
  "createdAt" : 1348689232699,
  "createdBy" : "USERNAME",
  "displayName" : "cg",
  "environments" : [ "test", "prod" ],
  "lastModifiedAt" : 1348689232699,
  "lastModifiedBy" : "foo@bar.com",
  "name" : "cg",
  "properties" : {
    "property" : [ ]
  },
  "type" : "trial"
}

2. הסרת גרסאות של PHP שקדמו לגרסה 7.0

סקריפט ההתקנה בודק אם יש במערכת גרסאות של PHP שקדמו ל-7.0 לפני שהוא מתחיל את ההתקנה. אם יש גרסאות של PHP שקדמו ל-7.0, תוצג הודעת האזהרה הבאה:

The following packages present on your system conflict with software we are
about to install. You will need to manually remove each one, then re-run this install script.

php
php-cli
php-common
php-gd
php-mbstring
php-mysql
php-pdo
php-pear
php-pecl-apc
php-process
php-xml

מסירים את חבילות ה-PHP באמצעות הפקודה הבאה:

yum remove package_name

אם אתם לא בטוחים אם PHP מותקן בשרת, תוכלו להשתמש בפקודה הבאה:

rpm -qa | grep -i php

הערה: בפורטל נעשה שימוש ב-PHP בגרסה 4.18.01-0.0.49. הוא לא מיועד להיות זהה למספר הגרסה של Apigee Edge לענן פרטי.

3. התקנת Postgres

כדי להתקין את הפורטל, צריך להתקין את Postgres. אפשר להתקין את Postgres כחלק מהתקנת Edge, או להתקין את Postgres בנפרד לשימוש בפורטל.

  • אם אתם מתחברים ל-Postgres שמותקן כחלק מ-Edge, ו-Postgres מוגדר במצב master/standby, צריך לציין את כתובת ה-IP של שרת ה-Postgres הראשי.
  • אם מתקינים את Postgres כתוכנה עצמאית, אפשר להתקין אותו באותו צומת שבו מותקן הפורטל.

למידע על התקנת Postgres כחלק מהתקנת Edge, ראו התקנת רכיבי Edge בצומת.

כדי להתקין את Postgres בנפרד:

  1. מתקינים את הכלי apigee-setup של Edge בצומת באמצעות ההליך באינטרנט או בלי אינטרנט. מידע נוסף זמין במאמר התקנת כלי ההגדרה של Edge apigee-setup.
  2. יוצרים קובץ תצורה של Postgres, כמו בדוגמה הבאה:
    # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost
    HOSTIP=$(hostname -i)
    
    # The pod and region of Postgres. Use the default values shown below.
    MP_POD=gateway
    REGION=dc-1
    
    # Set the Postgres password. The default value is 'postgres'.
    PG_PWD=postgres
  3. בשורת הפקודה, מריצים את סקריפט ההגדרה כדי להתקין את Postgres:
    /opt/apigee/apigee-setup/bin/setup.sh -p pdb -f postgres_config_file

    האפשרות -p pdb מציינת להתקין את Postgre. קובץ התצורה צריך להיות נגיש או קריא למשתמש 'apigee'.

4. התקנת הפורטל

לפני שתתקינו את הפורטל, עליכם לוודא שביצעת את הפעולות הבאות כפי שמתואר בקטע 3. מתקינים את Postgres:

  1. התקנת כלי השירות Edge apigee-setup בצומת של הפורטל
  2. מתקינים את Postgres, ב-Postgres בנפרד או כחלק מהתקנת Edge

כדי להתקין את הפורטל:

  1. מריצים את הסקריפט setup במסוף:
    /opt/apigee/apigee-setup/bin/setup.sh -p dp -f configFile

    כאשר:

    • configFile הוא קובץ התצורה של הפורטל, כפי שמתואר במאמר יצירת קובץ תצורה של פורטל.
    • -p dp מורה לסקריפט setup להתקין את הפורטל.

כדי לוודא שההתקנה של הפורטל בוצעה בהצלחה:

  1. עוברים לדף הבית של הפורטל בכתובת http://localhost:8079 או לשם ה-DNS של הפורטל.
  2. מתחברים לפורטל באמצעות פרטי הכניסה של האדמין שהגדרתם בקובץ התצורה של הפורטל.
  3. בתפריט Drupal, בוחרים באפשרות Reports > Status Report כדי לוודא שאפשר לראות את הסטטוס הנוכחי של הפורטל.
  4. מוודאים שהחיבור לשרת הניהול בוצע בהצלחה. אם לא:
    1. עוברים לדף Connection Configuration (הגדרת החיבור) בפורטל (לדוגמה, http://portal_IP:8079/admin/config/devconnect).
    2. לוחצים על הלחצן בדיקת החיבור. אם החיבור הצליח, זהו. אם החיבור נכשל, ממשיכים.
    3. בודקים את הגדרות האימות ונקודת הקצה:
      • כתובת ה-URL של נקודת הקצה של Management API: בודקים שהפרוטוקול (HTTP או HTTPS), שם ה-IP או ה-DNS ומספר היציאה נכונים. לדוגמה:
        http://10.10.10.10:8080/v1
      • משתמש שאומת בנקודת קצה (endpoint): שם המשתמש של האדמין בארגון.
      • סיסמה של משתמש מאומת: הסיסמה של האדמין הארגוני.

      ערכי ברירת המחדל משקפים את ההגדרות בקובץ התצורה של הפורטל, שיצרתם במהלך ההתקנה.

      הערכים האלה צריכים להתאים לערכים ms_IP_or_DNS, email ו-password שבהם השתמשתם בשלב 1: בדיקת החיבור ל-Apigee Edge. שם המשתמש והסיסמה צריכים להתאים גם לערכים של המאפיינים USER_NAME ו-USER_PWD בקובץ התצורה של תהליך ההצטרפות, או לפרטי הכניסה של כל משתמש בתפקיד 'אדמין ארגוני'.

    4. אחרי שמתחברים לשרת הניהול, לוחצים על הלחצן Save configuration בתחתית הדף כדי לשמור את השינויים.

5. מוודאים שהמודול של מנהל העדכונים מופעל

כדי לקבל התראות על עדכוני Drupal, צריך לוודא שהמודול Drupal Update manager מופעל. בתפריט Drupal, בוחרים באפשרות Modules (מודולים) וגלילים למטה אל המודול Update manager (מנהל עדכונים). אם היא לא מופעלת, מפעילים אותה.

אחרי ההפעלה, אפשר לראות את העדכונים הזמינים בקטע דוחות > עדכונים זמינים. אפשר גם להשתמש בפקודה הבאה של Drush:

drush pm-info update

צריך להריץ את הפקודה הזו מהספרייה ברמה הבסיסית (root) של האתר. כברירת מחדל, הפורטל מותקן ב-/opt/apigee/apigee-drupal/wwwroot. לכן, קודם צריך לשנות את הספרייה ל-/opt/apigee/apigee-drupal/wwwroot ואז להריץ את הפקודה. אם לא התקנתם את הפורטל בספריית ברירת המחדל, צריך לעבור לספריית ההתקנה.

אפשר להשתמש באפשרות דוחות > עדכונים זמינים > הגדרות כדי להגדיר שהמודול ישלח לכם אימייל כשיהיו עדכונים זמינים, ולהגדיר את התדירות של בדיקת העדכונים.

6. הגדרת מנוע החיפוש Apache Solr (אופציונלי)

כברירת מחדל, המודולים של Drupal שמתחברים למנוע החיפוש Apache Solr מושבתים כשמתקינים את הפורטל. רוב הפורטלים משתמשים במנוע החיפוש הפנימי של Drupal, ולכן לא נדרשים המודולים של Drupal Solr.

אם תחליטו להשתמש ב-Solr כמנוע החיפוש, תצטרכו להתקין את Solr באופן מקומי בשרת ואז להפעיל ולהגדיר את המודולים של Drupal Solr בפורטל.

כדי להפעיל את המודולים של Drupal Solr:

  1. מתחברים לפורטל בתור משתמש עם הרשאות אדמין או הרשאות ליצירת תוכן.
  2. בוחרים באפשרות מודולים בתפריט Drupal.
  3. מפעילים את המודול Apache Solr Framework ואת המודול Apache Solr Search.
  4. שומרים את השינויים.
  5. מגדירים את Solr כפי שמתואר במאמר https://drupal.org/node/1999280.

7. התקנת SmartDocs (אופציונלי)

בעזרת SmartDocs תוכלו לתעד את ממשקי ה-API בפורטל באופן שמאפשר ליצור מסמכי תיעוד אינטראקטיביים של ממשקי ה-API. בכל מקרה, כדי להשתמש ב-SmartDocs דרך הפורטל, קודם צריך להתקין את SmartDocs ב-Edge.

  • אם אתם מחברים את הפורטל להתקנה של Edge Cloud, SmartDocs כבר מותקן ואין צורך בהגדרות נוספות.
  • אם אתם מחברים את הפורטל להתקנה של Edge for Private Cloud, עליכם לוודא ש-SmartDocs מותקן ב-Edge. למידע נוסף על התקנת Edge ו-SmartDocs, אפשר לעיין במאמר התקנת SmartDocs.

צריך גם להפעיל את SmartDocs בפורטל. מידע נוסף על SmartDocs זמין במאמר שימוש ב-SmartDocs לתיעוד ממשקי API.

8. הגדרת המודול של עדכון jQuery להתקנות שלא מחוברות לאינטרנט (אופציונלי)

אם מתקינים את המודול של JQuery Update ומשתמשים בו בהתקנה שלא קשורה לאינטרנט, צריך להגדיר את המודול כך שישתמש בגרסה המקומית של JQuery. אם תגדירו את המודול להשתמש ב-CDN להתקנה שלא באינטרנט, הוא ינסה לגשת ל-CDN ויגרום לעיכובים בחיוב הדפים. מידע נוסף על המודול 'עדכון JQuery' זמין בכתובת https://www.drupal.org/project/jquery_update.

כדי להגדיר את המודול של JQuery Update לשימוש בגרסה המקומית של JQuery:

  1. מתחברים לפורטל בתור משתמש עם הרשאות אדמין או הרשאות ליצירת תוכן.
  2. בתפריט Drupal בוחרים באפשרות Configuration > Development > JQuery Update.
  3. בתפריט הניווט הימני, לוחצים על ביצועים.
  4. בתפריט הנפתח של JQuery ו-JQuery UI CDN, בוחרים באפשרות None.
  5. לוחצים על Save configuration.

9. השלבים הבאים

בטבלה הבאה מפורטות חלק מהמשימות הנפוצות ביותר שאפשר לבצע אחרי ההתקנה, ויש בה קישורים למסמכי התיעוד של Apigee שבהם אפשר למצוא מידע נוסף:

משימה תיאור

התאמה אישית של העיצוב

העיצוב קובע את המראה של הפורטל, כולל צבעים, סגנון ותכונות חזותיות אחרות.

התאמה אישית של המראה

דף הבית כולל את התפריט הראשי, הודעת הפתיחה, הכותרת, הכותרת התחתונה והשם.

הוספה וניהול של חשבונות משתמשים

תהליך הרישום קובע איך מפתחים חדשים יירשמו לחשבון בפורטל. לדוגמה, האם מפתחים חדשים מקבלים גישה מיידית לפורטל, או האם הם צריכים לעבור אימות על ידי אדמין. התהליך הזה קובע גם איך האדמין של הפורטל יקבל הודעה כשיוצרים חשבון חדש.

הגדרת אימייל

המערכת שולחת אימיילים בתגובה לאירועים מסוימים. לדוגמה, כשמפתח חדש נרשם בפורטל ומפתח מאבד את הסיסמה.

הוספה וניהול של חשבונות משתמשים

מוסיפים דף תנאים והגבלות שהמפתחים צריכים לאשר כדי לקבל גישה לפורטל.

הוספה וניהול של חשבונות משתמשים

בפורטל מוטמע מודל הרשאה מבוסס-תפקיד. לפני שמאפשרים למפתחים להירשם, צריך להגדיר את ההרשאות והתפקידים שבהם הפורטל משתמש.

הוספת פוסטים בבלוג ובפורומים

הפורטל כולל תמיכה מובנית בבלוגים ובפורומים מחולקים לשרשורים. להגדיר את ההרשאות שנדרשות כדי להציג, להוסיף, לערוך ולמחוק פוסטים בבלוג ובפורום.

מוודאים שמתבצע גיבוי של מסד הנתונים

חשוב לוודא שגיביתם את מסד הנתונים של Drupal. חשוב לזכור שכל התקנה היא שונה, ולכן אתם צריכים לקבוע איך הכי טוב לגבות את מסד הנתונים.

אפשר גם לעיין במאמר איך מבצעים גיבוי.

הגדרה של שם מארח

אם לא תגדירו שם מארח בשרת ה-DNS, תמיד תוכלו לגשת לאתר דרך כתובת ה-IP של השרת. אם רוצים להשתמש בשם מארח, אפשר להגדיר את ה-DNS בשרת. הוא אמור לפעול בצורה תקינה ללא הגדרות נוספות בהגדרה הבסיסית.

אם הגדרתם מאזן עומסים או אם מופיעות כתובות URL שגויות באתר מסיבה אחרת, תוכלו להגדיר את $base_url ב-Drupal לפי השלבים הבאים:

  1. יוצרים את הספרייה /opt/apigee/data/apigee-drupal-devportal/sites/default/includes אם היא לא קיימת.
  2. יוצרים קובץ בשם settings.php בספרייה הזו.
  3. מוסיפים את הטקסט הבא לקובץ settings.php:
    /**
    * Base URL (optional).
    *
    * If Drupal is generating incorrect URLs on your site, which could
    * be in HTML headers (links to CSS and JS files) or visible links
    * on pages (such as in menus), uncomment the Base URL statement
    * below (remove the leading hash sign) and fill in the absolute URL
    * to your Drupal installation.
    *
    * You might also want to force users to use a given domain.
    * See the .htaccess file for more information.
    *
    * Examples:
    *   $base_url = 'http://www.example.com';
    *   $base_url = 'http://www.example.com:8888';
    *   $base_url = 'http://www.example.com/drupal';
    *   $base_url = 'https://www.example.com:8888/drupal';
    *
    * It is not allowed to have a trailing slash; Drupal will add it
    * for you.
    */
    # $base_url = 'http://www.example.com/';  // NO trailing slash!
    $base_url = ‘http://www.example.com’;
    
  4. צריך לשנות את השורה האחרונה ($base_url) לשם המארח של האתר.
  5. שומרים את הקובץ.

חשוב לזכור שאפשר להוסיף לקובץ הזה הגדרות אחרות מ-/opt/apigee/data/apigee-drupal-devportal/ sites/default/default.settings.php.

מידע נוסף על המאפיין $base_url זמין במאמרים הבאים:

פיתוח בהתאמה אישית כדאי גם להרחיב את היכולות של הפורטל באמצעות קוד בהתאמה אישית מחוץ לעיצוב. כדי לעשות זאת, יוצרים מודול Drupal משלכם כפי שמתואר בנושאים של פיתוח מודול ב-Drupal, ומכניסים את המודול לספרייה /sites/all/modules.