פתרון בעיות במנהלי התקנים של רשתות במכונות של Compute Engine

ריכזנו כאן כמה טיפים שיעזרו לכם לפתור בעיות שקשורות למנהלי התקנים של רשתות עבור Google Virtual NIC‏ (gVNIC) וInfrastructure Data Plane Function‏ (IDPF).

שגיאות נפוצות במנהל ההתקן gVNIC

הבעיה הבאה מתרחשת כשהתמונה שמשמשת ליצירת מופע ה-VM לא מתויגת לשימוש ב-gVNIC.

ERROR: (gcloud.compute.instances.create) Could not fetch resource:
 - Invalid value for field 'resource.networkInterfaces[0].nicType': 'GVNIC'.
NetworkInterface NicType can only be set to GVNIC on instances with
GVNIC GuestOsFeature.

כדי לפתור את הבעיה, צריך לוודא שאתם משתמשים בתמונה שתויגה לשימוש ב-gVNIC. מידע נוסף זמין במאמר יצירת תמונה בהתאמה אישית.

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

  • הגורם: gVNIC לא מופעל בתמונה.

  • אבחון: בודקים שהתמונה כוללת את האפשרות gVNIC. כדי לאמת, מריצים את הפקודה הבאה:

    gcloud compute images describe IMAGE_NAME

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

    הפלט של הפקודה צריך להציג GVNIC בקטע guestOsFeatures.

    אפשר גם לבדוק אם מכונת ה-VM נוצרה עם הערך nic-type שמוגדר ל-gVNIC. כדי לעשות זאת, מריצים את הפקודה הבאה:

    gcloud compute instances describe VM_NAME

    מחליפים את VM_NAME בשם של מופע המכונה הווירטואלית.

  • רזולוציה: מוודאים שאתם משתמשים בתמונה נתמכת או שהגדרתם את מנהל ההתקן gVNIC בצורה תקינה בתמונה המותאמת אישית.

מכונת ה-VM הופעלה אבל אי אפשר להגיע אליה דרך הרשת

  • הסיבה: gVNIC לא הותקן ונטען בהצלחה.

  • אבחון: כדי לבדוק אם מנהל ההתקן הותקן ונטען, מבצעים את השלבים הבאים:

    Linux

    1. בודקים שמנהל ההתקן מותקן.

      modinfo gve

      הפלט אמור להיראות כך:

      filename:       /lib/modules/4.15.0-1036-gcp/updates/dkms/gve.ko
      version:        1.1.0
      license:        Dual MIT/GPL
      description:    gVNIC Driver
      author:         Google, XXX.
      srcversion:     5FEFB9DD945EB2DEC94EE09
      alias:          pci:v00001AE0d00000042sv*sd*bc*sc*i*
      depends:
      retpoline:      Y
      name:           gve
      vermagic:       4.15.0-1036-gcp SMP mod_unload
      
    2. בודקים שמנהל ההתקן נטען.

      lsmod | grep gve

      הפלט אמור להיראות כך:

      gve                    49152  0

    Windows

    1. מתחברים למכונה באמצעות SAC.
    2. מתחברים באמצעות שם המשתמש והסיסמה.
    3. מריצים את הפקודה הבאה בשורת הפקודה:

      dism /online /get-drivers | findstr gvnic
    4. בודקים את התוצאה.

      • אם מותקן מנהל ההתקן, הטקסט Original File Name : gvnic.inf אמור להופיע בפלט.
      • אם הדרייבר לא מותקן, לא מוחזרת הודעה.
  • פתרון: אם gVNIC לא זמין, צריך לוודא שמשתמשים בתמונה נתמכת או שהגדרתם את gVNIC בצורה נכונה בתמונה המותאמת אישית.

תפוקת רשת נמוכה במכונות וירטואליות של Windows Server 2022 ו-Windows 11

יכול להיות שתיתקלו בנפח נמוך של תעבורת נתונים ברשת כשמשתמשים ב-Google Virtual NIC‏ (gVNIC) עם מכונות וירטואליות של Windows Server 2022 ו-Windows 11 שמשתמשות במנהל ההתקן gVNIC GooGet בגרסה 1.0.0@44 או בגרסאות קודמות.

כדי לפתור את הבעיה, צריך לעדכן את חבילת GooGet של דרייבר gVNIC לגרסה 1.0.0@45 ואילך. לשם כך:

  1. כדי לבדוק איזו גרסת דרייבר מותקנת במופע ה-VM, מריצים את הפקודה הבאה מתוך שורת פקודה של אדמין או סשן של Powershell:

    googet installed
    

    הפלט אמור להיראות כך:

    Installed packages:
      ...
      google-compute-engine-driver-gvnic.x86_64 VERSION_NUMBER
      ...
    
  2. אם גרסת הדרייבר של google-compute-engine-driver-gvnic.x86_64 היא 1.0.0@44 או גרסה קודמת, צריך לעדכן את הדרייבר ממאגר החבילות של GooGet על ידי הרצת הפקודה הבאה משורת פקודה של אדמין או מסשן של Powershell:

    googet install google-compute-engine-driver-gvnic
    

שגיאות נפוצות בדרייבר של IDPF

הבעיה הבאה מתרחשת כשהתמונה שמשמשת ליצירת מופע Bare Metal לא מתויגת לשימוש ב-IDPF.

ERROR: (gcloud.compute.instances.create) Could not fetch resource:
 - Invalid value for field 'resource.machineType': ...
NetworkInterface NicType can only be set to IDPF on instances with
IDPF GuestOsFeature.

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

מופע Bare metal לא הופעל

  • הסיבה: לא הפעלתם IDPF בתמונה.

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

    gcloud compute images describe IMAGE_NAME

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

    הפלט של הפקודה צריך להציג IDPF בקטע guestOsFeatures.

    ...
    guestOsFeatures:
    ...
        - type: IDPF
        - type: SEV_CAPABLE
        - type: VIRTIO_SCSI_MULTIQUEUE
        - type: SEV_LIVE_MIGRATABLE
    ...
    

    אפשר גם לבדוק אם מכונת ה-Bare Metal נוצרה עם הערך nic-type שמוגדר ל-IDPF באמצעות הפקודה הבאה:

    gcloud compute instances describe INSTANCE_NAME
    

    מחליפים את INSTANCE_NAME בשם של מכונת Compute.

    מחפשים את הקטע networkInterfaces בפלט:

    ...
    name: instance-20260319-221828
    networkInterfaces:
      - accessConfigs:
        - kind: compute#accessConfig
          networkTier: PREMIUM
          type: ONE_TO_ONE_NAT
      name: nic0
      network: https://www.googleapis.com/compute/v1/projects/my-project/global/networks/default
      networkIP: 203.0.113.8
      nicType: IDPF
      stackType: IPV4_ONLY
      subnetwork: https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/default
    
  • רזולוציה: צריך לוודא שמשתמשים בתמונה נתמכת או שהגדרתם את מנהל ההתקן של IDPF בתמונה המותאמת אישית.

מכונת Bare metal הופעלה אבל אי אפשר להגיע אליה דרך הרשת

  • הגורם: לא הייתה אפשרות להתקין ולטעון את IDPF.

  • אבחון: כדי לבדוק אם מנהל ההתקן הותקן ונטען, אפשר לעיין במאמר בנושא אימות ההפעלה של IDPF.

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

ערך MTU שמוגדר ב-VPC לא נמצא בשימוש במופע Compute

אחרי שמבצעים את ההוראות לשינוי ערך ה-MTU, הגדרת ה-MTU במופע לא משתמשת באותו ערך MTU. לדוגמה, אפשר להריץ את הפקודה /sbin/ifconfig | grep mtu במכונה כדי לבדוק את הגדרת ה-MTU. הפעלתם מחדש את המופע, אבל הגדרת המופע לא עודכנה.

הסיבה: הגרסה של מנהל ההתקן של הרשת לא עדכנית מספיק כדי לתמוך בתכונת ה-MTU.

פתרון:

  1. אם המופע שלכם משתמש בתמונה ציבורית, כדאי לעיין בכרטיסייה תכונות רשת של גרסת מערכת ההפעלה בדף פרטי מערכת ההפעלה. מוודאים שמוצג שהתמיכה ב-Jumbo Frames מלאה.
  2. אם התמונה הציבורית לא תומכת באופן מלא ב-Jumbo Frames, או אם אתם משתמשים בתמונה מותאמת אישית של מערכת ההפעלה, הגרסה המותקנת של מנהל ההתקן של הרשת ישנה מדי ולא תומכת בערכי MTU גבוהים יותר.

  3. אחרי שמעדכנים את מנהל ההתקן של הרשת, מפעילים מחדש את המכונה ובודקים שוב את הגדרת ה-MTU.