שימוש בממשק הרשת של IDPF

מופעים של Bare metal שזמינים עם סדרות מכונות כמו C3 ו-X4 משתמשים ב-Infrastructure Data Plane Function (IDPF), שהוא מכשיר סטנדרטי של פונקציית מישור נתונים ברשת PCIe של כמה ספקים. ‫IDPF הוא מכשיר פיזי. מנהל ההתקן IDPF כלול בליבה (kernel) של קובצי אימג' של מערכת ההפעלה Linux.

לפני שמתחילים

  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים האלה:

    צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:

    gcloud

    1. התקינו את ה-CLI של Google Cloud. אחר כך, מאתחלים את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

      gcloud init

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  • הגדרת אזור ותחום כברירת מחדל
  • REST

    כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.

      התקינו את ה-CLI של Google Cloud.

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

    מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .

תכונות נתמכות ב-IDPF

בדומה ל-gVNIC, התכונות הבאות נתמכות ב-IDPF:

המגבלות של ממשק הרשת IDPF

כשמשתמשים בממשק הרשת IDPF, חשוב לשים לב למגבלות הבאות:

  • יש תמיכה רק ב-NIC אחד למכונה. אי אפשר ליצור מכונת חישוב עם כמה כרטיסי רשת.
  • ‫IDPF תומך רק בהקצאת התור שמוגדרת כברירת מחדל, עם 16 תורי קבלה ושליחה (RX/TX) לכל NIC.
  • אם אתם משתמשים ב-DPDK במכונה פיזית, DPDK מחליף את IDPF כמנהל ההתקן של ה-NIC הפיזי. אפליקציית DPDK צריכה להעביר מנות לליבת המערכת, למשל דרך ממשק TAP.

סקירה כללית על שימוש ב-IDPF עם מופעי Bare Metal

כדי ליצור מופע Bare Metal שמשתמש ב-IDPF, מבצעים את השלבים הבאים:

  1. בוחרים קובץ אימג' ציבורי של מערכת ההפעלה שתומך ב-IDPF, או יוצרים קובץ אימג' מותאם אישית של מערכת ההפעלה שמתויג לשימוש ב-IDPF.
  2. יוצרים מכונת Bare Metal באמצעות קובץ אימג' של מערכת הפעלה ציבורית או בהתאמה אישית. במהלך יצירת המופע, מגדירים את ממשק הרשת לשימוש ב-IDPF.
  3. מוודאים שהתכונה IDPF מופעלת.

תמיכה במערכת הפעלה

ב-Compute Engine, ‏ IDPF זמין עם מספר מוגבל של קובצי אימג' של מערכות הפעלה ציבוריות נתמכות.

מידע על מערכות ההפעלה שנתמכות על ידי IDPF זמין בכרטיסייה ממשקים של מערכת הפעלה.

שימוש במערכות הפעלה לא נתמכות

אם אתם משתמשים בקובצי אימג' של מערכת הפעלה שלא תומכים ב-IDPF, כדאי לפנות למפיץ של מערכת ההפעלה כדי לברר איך לכלול את מנהל ההתקן של IDPF.

אחרי שמקבלים קובץ אימג' של מערכת הפעלה שכולל IDPF, מייבאים דיסק וירטואלי שניתן להפעלה שמכיל את מערכת ההפעלה המותאמת אישית. אחר כך אפשר להשתמש בקובץ האימג' של מערכת ההפעלה בהתאמה אישית כדי ליצור מכונות Bare Metal שמשתמשות ב-IDPF במערכת ההפעלה הזו. מידע נוסף על יצירת קובץ אימג' בהתאמה אישית של מערכת ההפעלה לשימוש עם מכונות Bare Metal מופיע בקטע יצירת קובץ אימג' בהתאמה אישית של מערכת ההפעלה שתומך ב-IDPF שבדף הזה.

יצירת קובץ אימג' של מערכת ההפעלה בהתאמה אישית שתומך ב-IDPF

אם אתם צריכים אימג' או גרסה אחרים של מערכת הפעלה למכונת ה-Bare Metal שלכם מאלה שמסופקים על ידי Google Cloud, אתם יכולים ליצור את אימג' מערכת ההפעלה באמצעות Google Cloud CLI או REST. מידע מפורט ושיטות מומלצות ליצירת קובצי אימג' של מערכת ההפעלה בהתאמה אישית זמינים במאמר יצירת קובצי אימג' של מערכת ההפעלה בהתאמה אישית.

gcloud

כשיוצרים את התמונה המותאמת אישית, בין אם מ Google Cloud תמונה שסופקה או מקובץ אימג' של מערכת ההפעלה שיובא, צריך לתייג את קובץ אימג' של מערכת ההפעלה באמצעות IDPF. משתמשים בפקודה gcloud compute images create כמו בדוגמה הבאה:

gcloud compute images create IMAGE_NAME \
    --source-image=SOURCE_IMAGE \
    --source-image-project=SOURCE_IMAGE_PROJECT \
    --guest-os-features=IDPF

מחליפים את מה שכתוב בשדות הבאים:

  • IMAGE_NAME: שם לתמונה המותאמת אישית.
  • ‫SOURCE_IMAGE: קובץ אימג' של מערכת ההפעלה ספציפי שתומך ב-IDPF, לדוגמה: sles-15-sp4-sap-v20240208-x86-64.

    אם רוצים להשתמש בקובץ אימג' של מערכת ההפעלה האחרון במשפחת קובצי אימג', מחליפים את הדגל --source-image בדגל --source-image-family ומגדירים את הערך שלו למשפחת קובצי אימג' שתומכת ב-IDPF, לדוגמה: --source-image-family=sles-15-sp4-sap.

  • ‫SOURCE_IMAGE_PROJECT: שם הפרויקט שמכיל את קובץ האימג' של מערכת ההפעלה או את משפחת קובצי האימג' של המקור.

    דוגמה

    כדי ליצור קובץ אימג' של מערכת הפעלה SUSE Linux Enterprise Server ‏ (SLES) באמצעות קובץ אימג' של מערכת ההפעלה העדכני ביותר מתוך משפחת התמונות של Compute Engine‏ sles-15-sp5-sap, מריצים את הפקודה הבאה:

    gcloud compute images create my-sles15sp5-metal-os \
      --source-image-family=sles-15-sp5-sap \
      --source-image-project=suse-sap-cloud \
      --guest-os-features=IDPF
    

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

REST

  1. בוחרים קובץ אימג' של מערכת ההפעלה או משפחת תמונות שתומכת ב-IDPF. מידע נוסף זמין במאמר פרטים על מערכת ההפעלה.

  2. באמצעות קובץ אימג' של מערכת ההפעלה או משפחת התמונות שנבחרו בשלב הקודם, יוצרים קובץ אימג' של מערכת הפעלה ומתייגים אותו באמצעות IDPF. כדי ליצור את קובץ האימג' של מערכת ההפעלה, משתמשים ב-method‏ images.insert.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images
    {
     "name":"IMAGE_NAME",
     "sourceImage":"SOURCE_IMAGE_URI",
     "guestOsFeatures":[
      {
         "type":"IDPF"
       }
     ]
    }
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫IMAGE_NAME: שם לתמונה בהתאמה אישית שאתם יוצרים.
    • ‫SOURCE_IMAGE_URI: ה-URI של קובץ האימג' הספציפי של מערכת ההפעלה או של משפחת קובצי האימג' שבהם רוצים להשתמש.

      לדוגמה:

      • קובץ אימג' ספציפי של מערכת ההפעלה: "sourceImage": "projects/suse-sap-cloud/global/images/sles-15-sp5-sap-v20240427-x86-64"
      • משפחת התמונות: "sourceImage": "projects/suse-sap-cloud/global/images/family/sles-15-sp5-sap".

      כשמציינים משפחת תמונות,‏ Compute Engine יוצר מכונת VM מקובץ אימג' של מערכת ההפעלה העדכני ביותר שלא יצא משימוש במשפחה הזו. למידע נוסף על המקרים שבהם כדאי להשתמש במשפחות של תמונות, אפשר לעיין במאמר בנושא שיטות מומלצות לשימוש במשפחות של תמונות.

יצירת מכונת Bare Metal עם תמיכה ב-IDPF

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

יצירת מכונת Bare Metal באמצעות קובץ אימג' של מערכת ההפעלה ציבורי

כדי ליצור מכונת Bare Metal באמצעות קובץ אימג' של מערכת ההפעלה ציבורי שתומך ב-IDPF, צריך לפעול לפי ההוראות במאמר בנושא יצירת מכונת Bare Metal.

יצירת מכונת Bare Metal באמצעות קובץ אימג' של מערכת הפעלה בהתאמה אישית

אם אתם לא משתמשים בקובץ אימג' ציבורי של מערכת ההפעלה שתומך ב-IDPF, קודם צריך ליצור קובץ אימג' בהתאמה אישית של מערכת ההפעלה שתומך ב-IDPF. לאחר מכן משתמשים בקובץ אימג' של מערכת ההפעלה המותאמת אישית כדי ליצור מכונת Bare Metal באמצעות Google Cloud CLI או REST.

gcloud

  1. יוצרים את מכונת ה-Bare Metal באמצעות הפקודה gcloud compute instances create. עבור קובץ אימג' של דיסק האתחול, מציינים את קובץ אימג' של מערכת ההפעלה המותאם אישית שיצרתם קודם. לממשק הרשת, מגדירים את הערך של הדגל nic-type ל-IDPF.

    gcloud compute instances create INSTANCE_NAME \
        --zone=ZONE \
        --image=IMAGE_NAME \
        --image-project=YOUR_IMAGE_PROJECT \
        --network-interface=nic-type=IDPF
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫INSTANCE_NAME: שם למכונה החדשה.
    • ‫ZONE: האזור שבו יוצרים את המכונה.
    • ‫IMAGE_NAME: קובץ אימג' של מערכת ההפעלה המותאם אישית שנוצר קודם.
    • ‫YOUR_IMAGE_PROJECT: השם של הפרויקט שמכיל את קובץ אימג' של מערכת ההפעלה המותאמת אישית.
  2. אופציונלי: מוודאים שמכונת Compute Engine יצרה את המופע ושהערך של nicType מוגדר ל-IDPF.

    gcloud compute instances describe INSTANCE_NAME \
       --zone=ZONE
    

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫INSTANCE_NAME: השם של המכונה.
    • ‫ZONE: האזור שבו יצרתם את המכונה.

    דוגמה

    כדי ליצור מכונת Bare Metal באזור eu-west4-b באמצעות קובץ אימג' של מערכת ההפעלה מותאמת אישית של SLES 15 SP5 ל-SAP בשם my-sles15sp5-metal-os שנמצאת בפרויקט my-project-12345, מריצים את הפקודה הבאה:

    gcloud compute instances create test-x4-metal-custom-os \
        --zone=eu-west4-b \
        --machine-type=x4-1440-24t-metal \
        --image=my-sles15sp5-metal-os \
        --image-project=my-project-12345 \
        --network-interface=nic-type=IDPF
    

    מה כדאי לקחת בחשבון

    הדגל --network-interface כולל דגלים ברמת משנה, כמו הדגלים הבאים:

    • ‫--address: הקצאת כתובת IP למופע
    • ‫--network: הרשת שהממשק יהיה חלק ממנה
    • ‫--network-tier: רמת הרשת של הממשק
    • ‫--subnet: רשת המשנה שהממשק צריך להיות חלק ממנה. אם מציינים גם את --network, רשת המשנה חייבת להיות חלק מהרשת שצוינה.
    • ‫--private-network-ip: מציינים את כתובת ה-IP מסוג RFC 1918 שרוצים להקצות למכונה.

    רשימה מלאה זמינה במאמר בנושא הדגל --network-interface.

REST

יוצרים את המכונה הפיזית באמצעות ה-method‏ instances.insert.

  • בשדה של קובץ האימג' של דיסק האתחול, מציינים את קובץ האימג' של מערכת ההפעלה בהתאמה אישית שיצרתם קודם.
  • בממשק הרשת, מגדירים את הערך של השדה nicType ל-IDPF.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
  "name":"INSTANCE_NAME",
  "networkInterfaces":[
    {
      "nicType":"IDPF",
      "network":"NETWORK",
      "subnetwork":"SUBNET_NAME"
    }
  ],
  "disks":[
    {
      "initializeParams":{
        "sourceImage":"projects/YOUR_IMAGE_PROJECT/global/images/IMAGE_NAME"
      },
      "boot":true
    }
  ]
}

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט שבו יוצרים את המכונה.
  • ‫ZONE: האזור שבו רוצים ליצור את המכונה.
  • ‫INSTANCE_NAME: שם למכונה החדשה.
  • ‫NETWORK: כתובת ה-URL של משאב הרשת של המופע הזה. אם לא מציינים רשת או רשת משנה, המערכת משתמשת ברשת ברירת המחדל global/networks/default.
  • ‫SUBNET_NAME: שם רשת המשנה. הרשת מוסקת מרשת המשנה שצוינה. זהו שדה אופציונלי.
  • ‫YOUR_IMAGE_PROJECT: השם של הפרויקט שמכיל את קובץ אימג' של מערכת ההפעלה.
  • ‫IMAGE_NAME: השם של קובץ האימג' של מערכת ההפעלה בהתאמה אישית שנוצר בשלב הקודם.

אימות שהתכונה IDPF מופעלת

אתם יכולים להשתמש בכלי lshw כדי לחלץ מידע מפורט על הגדרת החומרה של מופע Bare Metal.

כדי להתקין את הכלי lshw במופע Linux, פותחים חיבור SSH למערכת ההפעלה של האורח ומריצים את הפקודה הבאה:

sudo apt-get install lshw -y

כדי לבדוק אם המכונה משתמשת בממשק הרשת של IDPF, מריצים את הפקודה הבאה:

sudo lshw -class network

כך נראה פלט לדוגמה:

*-network
       description: Ethernet interface
       product: Intel Corporation
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:05:00.0
       logical name: enp5s0f0
       version: 11
       serial: 42:01:0a:96:00:02
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi msix pciexpress bus_master cap_list ethernet physical
       configuration: autonegotiation=off broadcast=yes driver=idpf driverversion=6.5.0-1023-gcp duplex=full ip=10.150.0.2 latency=0 link=yes multicast=yes
       resources: iomemory:21ff0-21fef iomemory:21ff0-21fef irq:16 memory:21ffe0000000-21ffefffffff memory:21fff2000000-21fff203ffff

המאמרים הבאים