בשלב הזה מוסבר איך להוריד ולהתקין את apigeectl, להגדיר את ספריות ההתקנה וליצור חשבונות שירות ב-Google Cloud ופרטי כניסה ל-TLS שנדרשים להפעלה של Apigee Hybrid.
הורדה והתקנה של apigeectl
apigeectl הוא ממשק שורת הפקודה (CLI) להתקנה ולניהול של Apigee Hybrid באשכול Kubernetes.
כך מקבלים את apigeectl:
מורידים את חבילת הגרסה למערכת ההפעלה שלכם באמצעות הפקודה הבאה:
Mac 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_mac_64.tar.gzLinux 64 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_linux_64.tar.gzMac 32 bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_mac_32.tar.gzLinux 32 ביט:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.2.0/apigeectl_linux_32.tar.gz- יוצרים ספרייה במערכת שתשמש כספריית הבסיס להתקנה של Apigee Hybrid.
-
מחלצים את התוכן של קובץ ה-gzip שהורדתם אל ספריית הבסיס שיצרתם. לדוגמה:
tar xvzf filename.tar.gz -C path-to-base-directory
- משנים את הספרייה לספריית הבסיס.
-
כברירת מחדל, התוכן של קובץ ה-tar מורחב לספרייה עם הגרסה והפלטפורמה בשם שלה. לדוגמה:
./apigeectl_1.0.0-f7b96a8_linux_64. משנים את השם של הספרייה ל-apigeectlבאמצעות הפקודה הבאה:mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl - משנים את הספרייה לספרייה. לדוגמה:
cd ./apigeectlהספרייה הזו היא ספריית הבית
apigeectl. זה המקום שבו נמצאת הפקודהapigeectlexecutable. - יוצרים משתנה סביבה שיכיל את הנתיב של ספריית הבית באמצעות הפקודה הבאה:
export APIGEECTL_HOME=$PWD
- כדי לוודא שהמשתנה מכיל את הנתיב הנכון, משתמשים בפקודה הבאה:
echo $APIGEECTL_HOME
הגדרת מבנה ספריות הפרויקט
מבנה הספריות שמתואר בהמשך הוא הצעה לגישה. הוא מפריד בין תוכנת Apigee hybrid לבין קובצי התצורה שצריך ליצור. באמצעות המשתנה $APIGEECTL_HOME וקישורים סמליים שאתם יוצרים, אתם יכולים לעבור בקלות לגרסה חדשה של התוכנה אם תרצו. אפשר לעיין גם במאמר בנושא שדרוג Apigee Hybrid.
- חשוב לוודא שאתם בספריית הבסיס (הספרייה שבה נמצאת הספרייה
apigeectl). - יוצרים תיקייה חדשה בשם
hybrid-files. אתם יכולים לתת לספרייה כל שם שתרצו, אבל במסמכים אנחנו משתמשים בשםhybrid-filesבאופן עקבי. בהמשך, תאחסנו בתיקייה הזו קובצי הגדרות, מפתחות של חשבונות שירות ואישורי TLS. התיקייה הזו מאפשרת לכם לשמור את קובצי ההגדרות בנפרד מהתקנת התוכנהapigeectl:mkdir hybrid-files
- מבנה הספריות הנוכחי נראה עכשיו כך:
pwd && ls/hybrid-base-directory apigeectl hybrid-files - משנים את הספרייה לתיקייה
hybrid-filesבאמצעות הפקודה הבאה:cd hybrid-files
- בתוך התיקייה
hybrid-files, יוצרים את תיקיות המשנה הבאות כדי לארגן את הקבצים שייווצרו בהמשך באמצעות הפקודות הבאות:mkdir overridesmkdir service-accountsmkdir certs - בתוך הספרייה
hybrid-files, יוצרים את הקישורים הסמליים הבאים אל$APIGEECTL_HOME. הקישורים האלה מאפשרים להריץ את הפקודהapigeectlמתוך הספרייהhybrid-files.ln -s$APIGEECTL_HOME/tools toolsln -s$APIGEECTL_HOME/config configln -s$APIGEECTL_HOME/templates templatesln -s$APIGEECTL_HOME/plugins plugins - כדי לוודא שהקישורים הסמליים נוצרו בצורה נכונה, מריצים את הפקודה הבאה ומוודאים שנתיבי הקישורים מצביעים על המיקומים הנכונים:
ls -l | grep ^l
יצירת חשבונות שירות
Apigee hybrid משתמש בחשבונות שירות של Google Cloud כדי לאפשר לרכיבים היברידיים לתקשר באמצעות קריאות מורשות ל-API. בשלב הזה משתמשים בכלי של Apigee hybrid לשורת הפקודה כדי ליצור קבוצה של חשבונות שירות. הכלי גם מוריד בשבילכם את המפתחות הפרטיים של חשבון השירות. לאחר מכן צריך להוסיף את המפתחות האלה לקובץ ההגדרות של אשכול Apigee Hybrid.
יוצרים את המפתחות:
- חשוב לוודא שאתם נמצאים בספרייה
base_directory/hybrid-files. - מריצים את הפקודה הבאה מתוך הספרייה
hybrid-files. הפקודה הזו יוצרת חשבון שירות לרכיבapigee-metricsוממקמת את המפתח שהורד בספרייה./service-accounts../tools/create-service-account apigee-metrics ./service-accounts
כשמופיעה ההודעה הבאה, מזינים y:
[INFO]: gcloud configured project ID is project_id. Press: y to proceed with creating service account in project: project_id Press: n to abort.
אם זו הפעם הראשונה שנוצרת SA עם השם המדויק שהוקצה על ידי הכלי, הכלי פשוט יוצר אותה ואין צורך לבצע פעולות נוספות.
אם מוצגת לכם ההודעה וההנחיה הבאות, מזינים y כדי ליצור מפתחות חדשים:
[INFO]: Service account apigee-metrics@project_id.iam.gserviceaccount.com already exists. ... [INFO]: The service account might have keys associated with it. It is recommended to use existing keys. Press: y to generate new keys.(this does not de-activate existing keys) Press: n to skip generating new keys.
- עכשיו יוצרים את שאר חשבונות השירות באמצעות הפקודות הבאות:
./tools/create-service-account apigee-synchronizer ./service-accounts./tools/create-service-account apigee-udca ./service-accounts./tools/create-service-account apigee-mart ./service-accounts./tools/create-service-account apigee-cassandra ./service-accounts./tools/create-service-account apigee-logger ./service-accounts - מוודאים שמפתחות חשבון השירות נוצרו. באחריותכם לאחסן את המפתחות הפרטיים האלה בצורה מאובטחת. שמות הקבצים של המפתחות מתחילים בשם של הפרויקט בענן ב-Google Cloud.
לדוגמה:
ls ./service-accounts gcp-project-id-apigee-cassandra.json gcp-project-id-apigee-logger.json gcp-project-id-apigee-mart.json gcp-project-id-apigee-metrics.json gcp-project-id-apigee-synchronizer.json gcp-project-id-apigee-udca.json
יצירת אישורי TLS
אתם נדרשים לספק אישורי TLS עבור שערים של MART ושל זמן ריצה ב-Apigee hybrid. פרטי הכניסה שמשמשים לשער MART חייבים להיות מאושרים על ידי רשות אישורים (CA). לצורך המדריך למתחילים הזה (התקנת ניסיון שאינה בסביבת ייצור), שער זמן הריצה יכול לקבל פרטי כניסה בחתימה עצמית.
בשלב הזה, יוצרים את קובצי פרטי הכניסה של TLS ומוסיפים אותם לספרייה base_directory/hybrid-files/certs.
בשלב 3: הגדרת האשכול, מוסיפים את נתיבי הקבצים לקובץ ההגדרות של האשכול.
יצירת פרטי כניסה ל-TLS עבור שער זמן הריצה
שער הכניסה של סביבת זמן הריצה (השער שמטפל בתעבורת נתונים של proxy ל-API) דורש זוג מפתחות/אישור TLS. להתקנה של המדריך למתחילים הזה, אפשר להשתמש בפרטי כניסה עם חתימה עצמית. בשלבים הבאים, נעשה שימוש ב-openssl כדי ליצור את פרטי הכניסה.
- חשוב לוודא שאתם נמצאים בספרייה
base_directory/hybrid-files. - מריצים את הפקודה הבאה מתוך הספרייה
hybrid-files:openssl req -nodes -new -x509 -keyout ./certs/keystore.key -out \ ./certs/keystore.pem -subj '/CN=mydomain.net' -days 3650הפקודה הזו יוצרת זוג מפתחות/אישור עם חתימה עצמית שאפשר להשתמש בו להתקנה מהירה. הערך של CN mydomain.net יכול להיות כל ערך שרוצים עבור פרטי הכניסה בחתימה עצמית.
- כדי לוודא שהקבצים נמצאים בספרייה
./certs, מריצים את הפקודה הבאה:ls ./certskeystore.pem keystore.key
keystore.pemהוא קובץ אישור ה-TLS בחתימה עצמית ו-keystore.keyהוא קובץ המפתח.
יצירת פרטי כניסה של TLS לשער MART
כמו שצוין בקטע לפני שמתחילים, חובה להשתמש בצמד מפתח/אישור TLS מורשה להגדרת שער MART. אם עדיין לא עשיתם זאת, עליכם להשיג או ליצור את פרטי הכניסה האלה עכשיו.
- משיגים או יוצרים צמד של אישור ומפתח TLS שאושרו על ידי רשות אישורים. בהמשך מופיע לדוגמה תהליך להשגת פרטי הכניסה האלה באמצעות רשות האישורים Let's Encrypt. חשוב לדעת שהשם הנפוץ (CN) של האישור צריך להיות שם DNS תקין. במאמר הזה מופיעים שלבים לדוגמה.
- מעתיקים את פרטי הכניסה לספרייה
base_directory/hybrid-files/certs. - בסיום, אמורים להיות לכם שני זוגות של קובצי פרטי כניסה בספרייה
./certs. לדוגמה:ls ./certsfullchain.pem privkey.key keystore.pem keystore.key
fullchain.pemהוא קובץ אישור ה-TLS המורשה ו-privkey.keyהוא קובץ המפתח המורשה.
סיכום
עכשיו יש לכם בסיס שממנו תוכלו להגדיר, לפרוס ולנהל את Apigee hybrid באשכול Kubernetes. בשלב הבא, תיצרו קובץ שישמש את Kubernetes כדי לפרוס את רכיבי זמן הריצה ההיברידיים באשכול.
1 2 (NEXT) Step 3: Configure the cluster 4