במאמר הזה מוסבר איך להתקין ולהגדיר את ספק IBM Symphony ל-Compute Engine. במאמר הזה מוסבר איך להגדיר את Pub/Sub כדי לעקוב אחרי אירועים של מכונות וירטואליות (VM), איך ליצור ולהתקין את פלאגין הספק ואיך להגדיר את מופע הספק בסביבת המארח של Symphony.
מידע נוסף על Symphony Connectors for Cloud de Confiance by S3NSזמין במאמר Integrate IBM Spectrum Symphony with Cloud de Confiance.
לפני שמתחילים
כדי להתקין את ספק Symphony ל-Compute Engine, צריכים להיות לכם המשאבים הבאים:
- קלאסטר פעיל של IBM Spectrum Symphony עם שירות Host Factory מופעל. יש לכם את שם המארח של המארח הראשי של IBM Spectrum Symphony.
- חשבון שירות ייעודי עם התפקידים הנדרשים. מידע נוסף על יצירת חשבון השירות הזה זמין במאמר יצירת חשבון שירות.
כלל חומת אש שהגדרתם כדי לאפשר תקשורת בין המארח הראשי של Symphony לבין Compute Engine. לדוגמה:
gcloud compute firewall-rules create allow-symphony-primary-to-compute \ --project=PROJECT_ID \ --direction=INGRESS \ --priority=1000 \ --network=NETWORK_NAME \ --allow=all \ --source-tags=NETWORK_TAGS_MASTER \ --target-tags=NETWORK_TAGS gcloud compute firewall-rules create allow-symphony-compute-to-primary \ --project=PROJECT_ID \ --direction=INGRESS \ --priority=1000 \ --network=NETWORK_NAME \ --allow=all \ --source-tags=NETWORK_TAGS \ --target-tags=NETWORK_TAGS_MASTERמחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה של הפרויקט ב- Cloud de Confiance by S3NS. -
NETWORK_NAME: השם של רשת ה-VPC שבה משאבי Symphony נפרסים. -
NETWORK_TAGS_MASTER: תג הרשת שהוחל על המכונה הווירטואלית של המארח הראשי של Symphony. -
NETWORK_TAGS: תג הרשת שמוחל על מכונות וירטואליות של צומת מחשוב של Symphony.
מידע נוסף זמין במאמר יצירת כללים של חומת אש ב-VPC.
-
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות ליצירה ולניהול של מכונות וירטואליות שמשתמשות בחשבון שירות, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
-
אדמין במכונות של Compute (גרסה 1) (
roles/compute.instanceAdmin.v1) -
משתמש בחשבון שירות (
roles/iam.serviceAccountUser)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
הכנת סביבת Compute Engine
כדי לאפשר למארח של Symphony ליצור ולנהל מכונות וירטואליות, צריך להגדיר כמה Cloud de Confiance משאבים:
תבנית של הגדרות מכונה: תוכנית שמגדירה את ההגדרה של מכונות ה-VM של Symphony Compute שנוצרות על ידי מארח המפעל.
קבוצת מופעי מכונה מנוהלים (MIG): קבוצה של מכונות וירטואליות זהות שנוצרות באמצעות תבנית של הגדרות מכונה. מפעל המארחים מרחיב או מצמצם את הקבוצה הזו על ידי הוספה או הסרה של מכונות וירטואליות בהתאם לביקוש לעומס העבודה.
נושא ומינוי Pub/Sub: שירות העברת הודעות שמודיע לספק Symphony על אירועים במחזור החיים של מכונות וירטואליות, כמו הפסקות זמניות או מחיקות. השירות הזה מאפשר לספק לשמור על מצב מדויק של האשכול.
יצירת תבנית של הגדרות מכונה
יוצרים תבנית של הגדרות מכונה למארחי המחשוב של Symphony באמצעות הפקודה gcloud compute instance-templates create. בתבנית הזו מוגדרים המאפיינים של מכונות ה-VM שהיא יוצרת. צריך להתקין את Symphony במכונות הווירטואליות האלה. אתם יכולים להשתמש בתמונה שבה Symphony מותקן מראש, או להשתמש בסקריפט לטעינה בזמן ההפעלה כדי להתקין את Symphony אחרי שתיצרו את המכונות הווירטואליות. מידע על התקנת Symphony במכונה וירטואלית של מארח מחשוב זמין במאמר Installing on a Linux compute host במסמכי התיעוד של IBM.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--network-interface=nic-type=GVNIC,stack-type=IPV4_ONLY,subnet=SUBNET_NAME,no-address \
--instance-template-region=REGION \
--service-account=SERVICE_ACCOUNT_EMAIL \
--scopes=https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/logging.write,https://www.googleapis.com/auth/monitoring.write,https://www.googleapis.com/auth/service.management.readonly,https://www.googleapis.com/auth/servicecontrol,https://www.googleapis.com/auth/trace.append \
--tags=NETWORK_TAGS \
--create-disk=auto-delete=yes,boot=yes,device-name=INSTANCE_TEMPLATE_NAME,image-family=rocky-linux-9,image-project=rocky-linux-cloud,mode=rw,size=20,type=pd-balanced \
--shielded-secure-boot \
--shielded-vtpm \
--shielded-integrity-monitoring
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_TEMPLATE_NAME: שם לתבנית החדשה של הגדרות המכונה. -
MACHINE_TYPE: סוג המכונה של מופעי Compute. מידע נוסף זמין במאמר יצירת מכונה וירטואלית עם סוג מכונה מותאם אישית. -
SUBNET_NAME: השם של רשת המשנה של המופעים. מידע נוסף זמין במאמר איך צופים בהגדרת הרשת של מופע. -
SERVICE_ACCOUNT_EMAIL: כתובת האימייל של חשבון השירות שהגדרתם בקטע לפני שמתחילים. מוודאים שלחשבון השירות הזה יש את התפקידים שמפורטים בקטע תפקידים נדרשים. -
REGION: Cloud de Confiance by S3NS האזור שבו רוצים ליצור את המשאבים. -
NETWORK_TAGS: תג רשת להחלה על המופעים, שאפשר להשתמש בו לכללי חומת אש – לדוגמה,symphony-compute.
יצירת קבוצות של מופעי מכונה מנוהלים
יוצרים קבוצת מופעי מכונה מנוהלים (MIG) באמצעות תבנית של הגדרות מכונה מהשלב הקודם. הספק של מאגר הזהויות של המארח משנה את גודל הקבוצה הזו על ידי הוספה או הסרה של מופעים בהתאם לביקוש לעומס העבודה.
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
--project=PROJECT_ID \
--base-instance-name=INSTANCE_GROUP_NAME \
--template=projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
--size=0 \
--zone=ZONE
--default-action-on-vm-failure=repair \
--no-force-update-on-repair \
--standby-policy-mode=manual \
--list-managed-instances-results=pageless
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_GROUP_NAME: השם שבחרתם לקבוצת מופעי מכונה מנוהלים. -
PROJECT_ID: המזהה של הפרויקט ב- Cloud de Confiance by S3NS. מידע נוסף זמין במאמר איך למצוא את השם, המספר והמזהה של הפרויקט. -
INSTANCE_TEMPLATE_NAME: שם תבנית המופע שיצרתם בשלב הקודם. -
REGION: האזור שבו נמצאים המשאבים, למשלus-east. -
ZONE: האזור בתוך האזור שנבחר, למשלa.
מידע נוסף על יצירת קבוצות MIG זמין במאמר יצירת קבוצת MIG באזור יחיד.
הגדרת Pub/Sub
כדי לאפשר לספק של Symphony לקבל התראות על אירועים במחזור החיים של מכונות וירטואליות, צריך להגדיר נושא ומינוי ב-Pub/Sub:
במארח הראשי של Symphony, מגדירים את משתני הסביבה הבאים:
export GCP_PROJECT=PROJECT_ID export PUBSUB_TOPIC=PUBSUB_TOPICמחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance by S3NS . -
PUBSUB_TOPIC: שם לCloud de Confiance נושא, למשלhf-gce-vm-events.
-
יוצרים נושא Pub/Sub:
gcloud pubsub topics create $PUBSUB_TOPICמשתמשים בפקודה gcloud logging sinks create כדי ליצור יעד של יומן רישום לייצוא יומני ביקורת ל-Pub/Sub:
gcloud logging sinks create ${PUBSUB_TOPIC}-sink \ pubsub.googleapis.com/projects/${GCP_PROJECT}/topics/${PUBSUB_TOPIC} \ --log-filter=" logName=\"projects/${GCP_PROJECT}/logs/cloudaudit.googleapis.com%2Factivity\" resource.type=(\"gce_instance_group_manager\" OR \"gce_instance\") protoPayload.methodName=( \"v1.compute.instanceGroupManagers.createInstances\" OR \"v1.compute.instanceGroupManagers.deleteInstances\" OR \"v1.compute.instances.insert\" OR \"v1.compute.instances.delete\" ) " \ --description="Exports MIG VM create/delete audit logs to Pub/Sub"הפלט של הפקודה הזו כולל חשבון שירות שבו תשתמשו בשלב הבא.
מקצים לחשבון השירות מהשלב הקודם את התפקיד פרסום הודעות ב-Pub/Sub (
roles/pubsub.publisher):gcloud pubsub topics add-iam-policy-binding $PUBSUB_TOPIC \ --member="serviceAccount:LOGGING_SINK_SERVICE_ACCOUNT" \ --role="roles/pubsub.publisher"מחליפים את
LOGGING_SINK_SERVICE_ACCOUNTבשם של חשבון השירות מהפלט של יצירת יעד לרישום ביומן.יוצרים מינוי לקבלת היומנים:
gcloud pubsub subscriptions create ${PUBSUB_TOPIC}-sub \ --topic=${PUBSUB_TOPIC}מוודאים שלחשבון השירות יש את ההרשאות הנכונות להירשם למינוי:
gcloud pubsub subscriptions add-iam-policy-binding ${PUBSUB_TOPIC}-sub \ --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \ --role="roles/pubsub.subscriber"מחליפים את
SERVICE_ACCOUNT_EMAILבכתובת האימייל של חשבון השירות שמנהל את קבוצת המופעים. זה אותו חשבון שירות שהגדרתם בקטע לפני שמתחילים.
ההגדרה של Pub/Sub הושלמה. מידע נוסף על הגדרת Pub/Sub זמין במאמר פרסום וקבלת הודעות ב-Pub/Sub באמצעות Google Cloud CLI.
טעינה של משתני הסביבה של המארח
כדי להגדיר או לנהל את שירותי המפעל של המארחים, צריך לטעון את משתני הסביבה של Symphony בסשן של מעטפת הפקודות. במכונת ה-VM של המארח הראשי של Symphony, מריצים את הפקודה הבאה:
source INSTALL_FOLDER/profile.platform
מחליפים את הערך ב-INSTALL_FOLDER בנתיב לתיקיית ההתקנה. נתיב תיקיית ההתקנה של Symphony שמוגדר כברירת מחדל הוא /opt/ibm/spectrumcomputing. אם התקנתם את Symphony במיקום אחר,
תצטרכו להשתמש בנתיב הנכון לסביבה שלכם.
הפקודה הזו מפעילה את הסקריפט profile.platform, שמייצא משתני סביבה חיוניים כמו $EGO_TOP ו-$HF_TOP, ומוסיף את כלי שורת הפקודה של Symphony אל PATH של המעטפת. כדי לוודא שהסביבה מוגדרת בצורה נכונה, צריך להריץ את הפקודה הזו בכל סשן חדש של מסוף.
התקנת הפלאגין של הספק
כדי לשלב את ספק Compute Engine עם שירות ה-host factory של Symphony, מתקינים את פלאגין הספק שנבנה מראש מחבילת ה-RPM או בוחרים את הספק מקוד המקור.
התקנת פלאגין מוכן מראש של ספק
כדי להתקין את פלאגין הספק באמצעות חבילות RPM, מבצעים את השלבים הבאים במארח הראשי של Symphony:
מוסיפים את מאגר
yumעבור Cloud de Confiance by S3NS Symphony Connectors:sudo tee /etc/yum.repos.d/google-cloud-symphony-connector.repo << EOM [google-cloud-symphony-connector] name=Google Cloud Symphony Connector baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-symphony-connector-x86-64 enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg EOMמתקינים את חבילת הספק ל-Compute Engine:
sudo yum install -y hf-gcpgce-provider.x86_64
חבילת ה-RPM מתקינה את קובצי ההפעלה והסקריפטים של הספק בספריות הנכונות של שירות המארח של Symphony. אחרי ההתקנה, מבנה הספריות ייראה כך:
├── bin
│ └── hf-gce
└── scripts
├── getAvailableTemplates.sh
├── getRequestStatus.sh
├── getReturnRequests.sh
├── requestMachines.sh
└── requestReturnMachines.sh
בניית הספק מקוד המקור
כדי ליצור ולהתקין את קובץ ההפעלה של ה-CLI בספרייה bin של ספריית הפלאגין של הספק, פועלים לפי השלבים הבאים:
משכפלים את מאגר
symphony-gcp-connectorמ-GitHub:git clone https://github.com/GoogleCloudPlatform/symphony-gcp-connector.gitמנווטים לספרייה
hf-providerבפרויקט:cd PROJECT_ROOT/hf-providerמחליפים את
PROJECT_ROOTבנתיב לספרייה ברמה העליונה שמכילה את הספרייה hf-provider, לדוגמה/home/user/symphony-gcp-connector.אם לא מותקנת אצלכם גרסת
uv, צריך להתקין אותה:pip install uvיוצרים סביבה וירטואלית של Python באמצעות
uv:uv venvמפעילים את הסביבה הווירטואלית:
source .venv/bin/activateמתקינים את יחסי התלות הנדרשים בפרויקט:
uv pip install .מתקינים את PyInstaller, שמאגד את אפליקציית Python לקובץ הפעלה עצמאי:
uv pip install pyinstallerיוצרים את
hf-gceCLI לאשכולות של Compute Engine:uv run pyinstaller hf-gce.spec --cleanכדי לוודא שההתקנה בוצעה, מריצים את הפקודה
--helpעבור קובץ הפעלה. יכול להיות שתופיע שגיאה אם לא תגדירו את משתני הסביבה הנדרשים.dist/hf-gce --helpמעתיקים את הקובץ הניתן להרצה לספריית הפלאגין של הספק
bin:mkdir -p ${HF_TOP}/${HF_VERSION}/providerplugins/gcpgce/bin cp dist/hf-gce ${HF_TOP}/${HF_VERSION}/providerplugins/gcpgce/bin/מעתיקים את הסקריפטים לספרייה
scriptsשל פלאגין הספק:cp -R ./resources/gce_cli/1.2/providerplugins/gcpgce/scripts ${HF_TOP}/${HF_VERSION}/providerplugins/gcpgce/מערכת ההפעלה צריכה לתמוך בגרסת Python שמשמשת לבניית קובצי ההפעלה. הקבצים הניתנים להפעלה נבדקו באמצעות Python 3.9.6.
אחרי ההתקנה, מבנה הספריות של פלאגין הספק דומה לדוגמה הזו:
├── bin
│ └── hf-gce
└── scripts
├── getAvailableTemplates.sh
├── getRequestStatus.sh
├── getReturnRequests.sh
├── requestMachines.sh
└── requestReturnMachines.sh
הפעלת פלאגין הספק
כדי להפעיל את תוסף ספק Compute Engine, צריך לרשום אותו בהגדרות של host factory:
פותחים את הקובץ
$HF_TOP/conf/providerplugins/hostProviderPlugins.json.משתנה הסביבה
$HF_TOPמוגדר בסביבה שלכם כשמשתמשים בפקודת המקור. הערך הוא הנתיב לספריית ההתקנה ברמה העליונה של שירות IBM Spectrum Symphony host factory.מוסיפים קטע של פלאגין ספק
gcpgce:{ "name": "gcpgce", "enabled": 1, "scriptPath": "${HF_TOP}/${HF_VERSION}/providerplugins/gcpgce/scripts/" }אם אתם משתמשים בגרסה 1.2 של פלאגין הספק עם ערך ברירת המחדל של
$HF_TOP, הערך שמתקבל שלscriptPathהוא:INSTALL_FOLDER/hostfactory/1.2/providerplugins/gcpgce/scripts/.
הגדרת מופע של ספק
כדי להגדיר את ספק Compute Engine לסביבה שלכם, יוצרים מופע של ספק.
מגדירים את הספרייה עבור מופע הספק:
אם בניתם את הספק מקוד המקור, אתם צריכים ליצור את הספרייה ואת קובצי ההגדרות באופן ידני:
mkdir -p $HF_TOP/conf/providers/gcpgceinst/אם התקנתם באמצעות RPM, הספרייה הזו כבר קיימת ומכילה קובצי תצורה לדוגמה. מעתיקים את הקבצים לדוגמה כדי ליצור את התצורה:
cp $HF_TOP/conf/providers/gcpgceinst/gcpgceinstprov_config.json.dist $HF_TOP/conf/providers/gcpgceinst/gcpgceinstprov_config.json cp $HF_TOP/conf/providers/gcpgceinst/gcpgceinstprov_templates.json.dist $HF_TOP/conf/providers/gcpgceinst/gcpgceinstprov_templates.json
בספרייה
$HF_TOP/conf/providers/gcpgceinst/, יוצרים או עורכים קובץgcpgceinstprov_config.json. הקובץ הזה מכיל את ההגדרה הראשית של הספק. הספק תומך במשתני ההגדרה הבאים. צריך לציין במשתנים האלה ערך שאין להם ערך ברירת מחדל בהגדרה הזו.שם המשתנה תיאור ערך ברירת המחדל HF_DBDIRהמיקום שבו הספק הזה מאחסן את מסד הנתונים של המצב. מוגדר בסביבת HostFactory כ- $HF_DBDIR.HF_TEMPLATES_FILENAMEהשם של קובץ התבניות. gcpgceinstprov_templates.jsonGCP_CREDENTIALS_FILEהמיקום של קובץ פרטי הכניסה של חשבון השירות. Cloud de Confiance by S3NS אם לא מציינים את הערך הזה, האפליקציה משתמשת בפרטי ברירת המחדל. GCP_PROJECT_IDהמזהה של Cloud de Confiance by S3NS הפרויקט. ללא GCP_INSTANCE_PREFIXמחרוזת שתוצג לפני כל המארחים שנוצרו על ידי הספק הזה. sym-LOGFILEהמיקום של קובץ היומן שאליו הספק שולח את היומנים. קובץ עם שם שנוצר, שנמצא בספרייה שמוגדרת על ידי משתנה הסביבה HostFactory HF_PROVIDER_LOGDIR.LOG_LEVELרמת הרישום ביומן של Python WARNINGPUBSUB_TIMEOUTאם האירוע האחרון ב-Pub/Sub ישן יותר מהמשך הזה (בשניות), ה-listener של Pub/Sub מתנתק. הזמן הקצוב לתפוגה הזה חל רק כשה-event listener של Pub/Sub מופעל באופן אוטומטי. אחרת, תהליך ההאזנה יפעל ללא הגבלת זמן, והאדמין יצטרך לשלוט במחזור החיים שלו. 600PUBSUB_TOPICהשם של נושא ה-Pub/Sub. המשתנה הזה מיועד רק לתאימות לאחור. hf-gce-vm-eventsPUBSUB_SUBSCRIPTIONהשם של מינוי Pub/Sub למעקב אחר אירועים במכונות וירטואליות. hf-gce-vm-events-subPUBSUB_LOCKFILEהשם של הקובץ שמציין אם ה-event listener של Pub/Sub פעיל. /tmp/sym_hf_gcp_pubsub.lockPUBSUB_AUTOLAUNCHאם הערך מוגדר ל- true, הספק מנסה להפעיל אוטומטית את ה-listener של אירועי Pub/Sub. אם הערך הואfalse, צריך להפעיל את מאזין האירועים של Pub/Sub באמצעות השיטה הרצויה, עם הפקודהhf-gce monitorEvents.trueבדוגמה הבאה מוצגת הגדרה בסיסית:
{ "GCP_PROJECT_ID": "PROJECT_ID", "LOG_LEVEL":"INFO", "PUBSUB_SUBSCRIPTION": "PUBSUB_SUBSCRIPTION", "PUBSUB_TIMEOUT": 100 }מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance by S3NS . -
PUBSUB_SUBSCRIPTION: השם של מינוי Pub/Sub שיצרתם כדי לעקוב אחרי אירועים במכונה וירטואלית. מידע נוסף מופיע במאמר הגדרת Pub/Sub.
-
באותה ספרייה, יוצרים או עורכים קובץ
gcpgceinstprov_templates.json. בקובץ הזה מוגדרות התבניות של מכונות ה-VM שהספק יכול ליצור. המאפיינים בתבנית צריכים להתאים להגדרה של קבוצת המופעים התומכת.- אם התקנתם באמצעות RPM, אתם יכולים להשתמש בקובץ
gcpgceinstprov_templates.jsonשיצרתם בשלבים הקודמים כנקודת התחלה. אם בניתם מהמקור, אתם יכולים להשתמש בתבנית הבאה לדוגמה:
{ "templates": [ { "templateId": "template-gcp-01", "maxNumber": 10, "attributes": { "type": [ "String", "X86_64" ], "ncpus": [ "Numeric", "1" ], "nram": [ "Numeric", "1024" ] }, "gcp_zone": "GCP_ZONE", "gcp_instance_group": "INSTANCE_GROUP_NAME" } ] }מחליפים את מה שכתוב בשדות הבאים:
-
GCP_ZONE: האזור שבו נמצאת קבוצת המכונות, למשל Cloud de Confiance by S3NS .us-central1-a -
INSTANCE_GROUP_NAME: השם של קבוצת המופעים שמנוהלת על ידי הספק, למשלsymphony-compute-ig.
-
- אם התקנתם באמצעות RPM, אתם יכולים להשתמש בקובץ
אחרי שיוצרים את הקבצים האלה, מוודאים שהספרייה של מופע הספק דומה לדוגמה הזו:
├── gcpgceinstprov_config.json └── gcpgceinstprov_templates.json
הפעלת מופע הספק
כדי להפעיל את מופע הספק, צריך להפעיל אותו בקובץ התצורה של מפעל המארחים:
פותחים את הקובץ
$HF_TOP/conf/providers/hostProviders.json.מוסיפים קטע של מופע ספק
gcpgceinst:{ "name": "gcpgceinst", "enabled": 1, "plugin": "gcpgce", "confPath": "${HF_CONFDIR}/providers/gcpgceinst/", "workPath": "${HF_WORKDIR}/providers/gcpgceinst/", "logPath": "${HF_LOGDIR}/" }כשמגדירים את סשן המעטפת באמצעות
source command, הסקריפט הזה מגדיר את המשתנים האלה כך שיצביעו על ספריות המשנה הנכונות בהתקנת Symphony. לאחר מכן, שירות הפקטורי (factory) של המארח משתמש במשתנים האלה כדי ליצור את הנתיבים המלאים בזמן הריצה.
הפעלת המופע של מגיש הבקשה
כדי לאפשר לרכיב ספציפי של Symphony להשתמש בספק Compute Engine כדי להקצות משאבים, צריך להפעיל אותו עבור השולח של הבקשה.
פותחים את הקובץ
$HF_TOP/conf/requestors/hostRequestors.json.במופע המתאים של השולח, מוסיפים
gcpgceinstלפרמטרproviders:"providers": ["gcpgceinst"],ערך הספק צריך להיות זהה לשם הספק שבו אתם משתמשים בקטע הפעלת מופע הספק.
הפעלת שירות המארח
כדי להחיל את שינויי ההגדרות, מפעילים את שירות המארח של המפעל. במכונה הווירטואלית של המארח הראשי של Symphony, נכנסים בתור אדמין האשכול ומפעילים את השירות:
sed -i -e "s|MANUAL|AUTOMATIC|g" $EGO_ESRVDIR/esc/conf/services/hostfactory.xml
egosh user logon -u "SYMPHONY_USERNAME -x "SYMPHONY_PASSWORD
egosh service start HostFactory
מחליפים את מה שכתוב בשדות הבאים:
-
SYMPHONY_USERNAME: שם המשתמש ב-Symphony לאימות. -
SYMPHONY_PASSWORD: הסיסמה של המשתמש ב-Symphony.
בדיקת מחברים
יוצרים בקשת משאבים כדי לבדוק את הספק של Compute Engine.
כדי לעשות זאת, משתמשים באחת מהשיטות הבאות:
ממשק משתמש גרפי של Symphony: הוראות ליצירת בקשה למשאב מופיעות במאמר Manually scheduling cloud host requests and returns (תזמון ידני של בקשות להקצאת מארח בענן והחזרת מארח) במסמכי IBM.
API בארכיטקטורת REST: כדי ליצור בקשת משאב באמצעות API בארכיטקטורת REST, פועלים לפי השלבים הבאים:
מאתרים את המארח והיציאה של ה-API בארכיטקטורת REST של יצירת המארחים:
egosh client view REST_HOST_FACTORY_URLהפלט אמור להיראות כך:
CLIENT NAME: REST_HOST_FACTORY_URL DESCRIPTION: http://sym2.us-central1-c.c.symphonygcp.internal:9080/platform/rest/hostfactory/ TTL : 0 LOCATION : 40531@10.0.0.33 USER : Admin CHANNEL INFORMATION: CHANNEL STATE 9 CONNECTEDכדי ליצור בקשה למשאב באמצעות API בארכיטקטורת REST, משתמשים בפקודה הבאה:
HOST=PRIMARY_HOST PORT=PORT TEMPLATE_NAME=INSTANCE_TEMPLATE_NAME PROVIDER_NAME=gcpgceinst curl -X POST -u "SYMPHONY_USER:SYMPHONY_PASSWORD" -H "Content-Type: application/json" -d "{ \"demand_hosts\": [ { \"prov_name\": \"$PROVIDER_NAME\", \"template_name\": \"$TEMPLATE_NAME\", \"ninstances\": 1 } ] }" \ http://$HOST:$PORT/platform/rest/hostfactory/requestor/admin/requestמחליפים את מה שכתוב בשדות הבאים:
-
PRIMARY_HOST: שם המארח של המארח הראשי שלכם מהפלט של הפקודה הקודמת. -
PORT: מספר היציאה של המארח הראשי שלכם מתוך הפלט של הפקודה הקודמת, למשל9080. -
SYMPHONY_TEMPLATE_ID:templateIdשמוגדר בקובץgcpgceinstprov_templates.json, למשלtemplate-gcp-01. -
SYMPHONY_USER: המשתמש ב-Symphony לאימות. -
SYMPHONY_PASSWORD: הסיסמה של משתמש Symphony.
אם הפעולה מצליחה, הפלט יהיה דומה לדוגמה הזו:
{"scheduled_request_id":["SD-641ef442-1f9e-40ae-ae16-90e152ed60d2"]}-