שינוי סוג הדיסק

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

  • לשנות את הסוג של דיסק, לדוגמה, לשנות נפח אחסון מסוג Hyperdisk Throughput לנפח אחסון מסוג Hyperdisk Balanced.
  • לשנות את סוג ההצפנה של הדיסק, למשל, לשנות את ההצפנה של הדיסק משימוש במפתחות שנוצרו על ידי Google לשימוש במפתחות הצפנה בניהול הלקוח (CMEK).
  • העברה של דיסק לתוך מאגר Hyperdisk או הוצאה שלו ממנו.
  • העברת דיסק לאזור או לאזור זמינות אחר.
  • העברת דיסק לפרויקט אחר.

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

  1. יוצרים קובץ snapshot של הדיסק הקיים.
  2. יוצרים דיסק חדש מהסוג הנכון או בתוך מאגר אחסון (שנקרא מיקום), באמצעות תמונת המצב כמקור הנתונים של הדיסק.
  3. אחרי שמוודאים שהדיסק החדש תקין, אפשר למחוק את הדיסק המקורי.

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

  • כדי למקם את נפחי ה-Hyperdisk החדשים ב-Hyperdisk Storage Pool או ב-Hyperdisk Exapool, צריך לעיין במגבלות על יצירת דיסקים ב-Hyperdisk pool.

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

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

    המסוף

    כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Google Cloud

    gcloud

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

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

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

      התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.

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

תפקידים והרשאות נדרשים

כדי לקבל את ההרשאות שדרושות לשינוי סוג הדיסק, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:

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

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

ההרשאות הנדרשות

כדי לשנות את סוג הדיסק, נדרשות ההרשאות הבאות:

  • כדי ליצור snapshot של הדיסק:
    • compute.snapshots.create בפרויקט
    • compute.disks.createSnapshot בדיסק
  • כדי ליצור דיסק חדש: compute.disks.create בפרויקט
  • כדי ליצור דיסק חדש מ-snapshot רגיל או מקובץ snapshot של ארכיון:
    • compute.disks.create בפרויקט שבו רוצים ליצור את הדיסק
    • compute.snapshots.useReadOnly בתמונת המצב
  • כדי ליצור דיסק במאגר:
    • compute.storagePools.use בפרויקט
    • compute.disks.create בפרויקט
  • כדי לצרף דיסק למכונה וירטואלית:
    • compute.instances.attachDisk במכונה הווירטואלית
    • compute.disks.use בנפח שרוצים לצרף למכונה הווירטואלית
  • כדי למחוק דיסק: compute.disks.delete בפרויקט

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

שינוי הסוג, המיקום, הפרויקט או המיקום של דיסק

כדי לבצע אחת מהמשימות הבאות בדיסק, צריך ליצור קובץ snapshot של הדיסק ואז ליצור דיסק חדש מקובץ ה-snapshot:

  • העברת נפח אחסון של אחסון מתמיד (persistent disk) ל-Hyperdisk
  • יצירה מחדש של דיסק בתוך מאגר או מחוץ למאגר
  • העברת דיסק לפרויקט אחר
  • העברת דיסק לאזור או לאזור זמינות אחר

כדי להעביר דיסק לפרויקט אחר, צריך להשתמש ב-Google Cloud CLI או ב-REST. אי אפשר להשתמש במסוף Google Cloud .

המסוף

  1. הכנה ליצירת קובץ snapshot של דיסק:

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

    מידע נוסף זמין בטבלה שבמאמר בנושא יצירה ידנית של תמונות מצב עקביות של אפליקציות.

  2. יוצרים קובץ snapshot של הדיסק הקיים.

  3. אופציונלי: כדי ליצור Hyperdisks חדשים במאגר, צריך ליצור מאגר אחסון, אם אין כזה.
  4. נכנסים לדף Disks.

    לפתיחת הדף Disks
  5. לוחצים על + Create Disk.
  6. בקטע Disk Type (סוג הדיסק), בוחרים באפשרות Hyperdisk Extreme,‏ Hyperdisk Throughput או Hyperdisk Balanced.

    אופציונלי: כדי להשתמש במאגר, צריך לבחור באפשרות Hyperdisk Balanced או Hyperdisk Throughput.

  7. בשדה Disk source type, בוחרים באפשרות Snapshot, ואז בוחרים את השם של ה-snapshot לשחזור.
  8. מציינים את הגודל של הדיסק החדש ב-GiB. המספר הזה צריך להיות גדול או שווה לדיסק המקור המקורי של התמונה.
  9. אופציונלי: אם משנים את סוג הדיסק, משנים את הגדרות ברירת המחדל:

    • ‫Hyperdisk Balanced: משנים את הערך של Provisioned IOPS ואת הערך של Provisioned throughput.
    • ‫Hyperdisk Extreme: משנים את הערך של Provisioned IOPS (תפוקת קלט/פלט שהוקצתה).
    • Hyperdisk Throughput: משנים את הערך של קצב העברת נתונים שהוקצה.
  10. אופציונלי: כדי ליצור את הדיסק החדש במאגר:

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

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

  11. לוחצים על Create (יצירה) כדי ליצור את הדיסק החדש.
  12. אחרי שיוצרים את הדיסק, אפשר לצרף אותו לכל מופע פעיל או מופסק של Compute.

gcloud

  1. הכנה ליצירת קובץ snapshot של דיסק:

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

    מידע נוסף זמין בטבלה שבמאמר בנושא יצירה ידנית של תמונות מצב עקביות של אפליקציות.

  2. יוצרים קובץ snapshot של הדיסק הקיים.

  3. כדי ליצור נפח Hyperdisk מה-snapshot, משתמשים בפקודה disks create.

    gcloud compute disks create DISK_NAME \
     --project=DISK_PROJECT \
     --zone=ZONE \
     --storage-pool=STORAGE_POOL_NAME \
     --size=SIZE \
     --source-snapshot=projects/SNAPSHOT_PROJECT/global/snapshots/SNAPSHOT_NAME \
     --type=DISK_TYPE \
     --provisioned-iops=PROVISIONED_IOPS \
     --provisioned-throughput=PROVISIONED_THROUGHPUT
    

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

    • DISK_PROJECT: הפרויקט שבו רוצים ליצור את הדיסק.
    • DISK_NAME: שם ייחודי לדיסק. אתם יכולים לספק רשימה של שמות דיסקים שמופרדים ברווחים כדי ליצור כמה דיסקים עם אותם מאפיינים.
    • ZONE: האזור שבו רוצים ליצור את הדיסק. אם רוצים ליצור את הדיסק במאגר, צריך לציין את התחום שבו המאגר נמצא. מציינים את הערך הזה בפורמט אזור-אזור, לדוגמה us-central1-a.
    • STORAGE_POOL_NAME: אופציונלי: שם המאגר שבו רוצים ליצור את הדיסק. אם לא כוללים את הפרמטר הזה, נוצר Hyperdisk עצמאי.
    • SIZE: אופציונלי: הקיבולת שהוקצתה לדיסק החדש. הגודל צריך להיות גדול או שווה לגודל של ה-Persistent Disk של המקור. הערך חייב להיות מספר שלם שאחריו יחידת גודל של GB ל-gibibyte או TB ל-tebibyte. אם לא מציינים גודל, הערך שמשמש כברירת מחדל הוא 100 GB.
    • SNAPSHOT_PROJECT: השם של הפרויקט שמכיל את קובץ ה-snapshot של המקור שיצרתם מהדיסק המקורי.
    • SNAPSHOT_NAME: השם של קובץ ה-snapshot שיצרתם מהדיסק המקורי.
    • DISK_TYPE: סוג הדיסק שרוצים ליצור. אם יוצרים דיסק במאגר, הערך הזה צריך להתאים לסוג המאגר, כלומר hyperdisk-balanced או hyperdisk-throughput.
    • PROVISIONED_IOPS: אופציונלי: מספר פעולות הקלט/פלט בשנייה (IOPS) להקצאה לדיסק. אפשר להשתמש בפרמטר הזה רק כשיוצרים דיסק Hyperdisk Balanced או Hyperdisk Extreme.
    • PROVISIONED_THROUGHPUT: אופציונלי: בדיסקים מסוג Hyperdisk Balanced ו-Hyperdisk Throughput, קצב העברת הנתונים במגה-בייט (MB) לשנייה שיוקצה לדיסק. הערך חייב להיות מספר שלם חיובי.
  4. אחרי שיוצרים את הדיסק, אפשר לצרף אותו לכל מופע פעיל או מופסק של Compute.

REST

  1. הכנה ליצירת קובץ snapshot של דיסק:

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

    מידע נוסף זמין בטבלה שבמאמר בנושא יצירה ידנית של תמונות מצב עקביות של אפליקציות.

  2. יוצרים קובץ snapshot של הדיסק הקיים.

    .
  3. יוצרים בקשת POST אל ה-method‏ disks.insert. כוללים את המאפיינים name,‏ sizeGb,‏ type ו-sourceSnapshot.

    POST https://compute./compute/v1/projects/DISK_PROJECT/zones/ZONE/disks
    {
       "name": "DISK_NAME",
       "sizeGb": "DISK_SIZE",
       "type": "https://compute./compute/v1/projects/DISK_PROJECT/zones/ZONE/diskTypes/DISK_TYPE",
       "sourceSnapshot": "projects/SNAPSHOT_PROJECT/global/snapshots/SNAPSHOT_NAME",
       "provisionedIops": "IOPS_LIMIT",
       "provisionedThroughput": "THROUGHPUT_LIMIT",
       "accessMode": "DISK_ACCESS_MODE"
    }
    

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

    • DISK_PROJECT: הפרויקט שבו רוצים ליצור את הדיסק
    • ZONE: האזור שבו נמצאים מופע ה-Compute והדיסק החדש
    • DISK_NAME: השם של הדיסק החדש
    • DISK_SIZE (לא חובה): הגודל של הדיסק החדש. הערך חייב להיות מספר שלם שאחריו יחידת גודל של GB (גיגה-בייט) או TB (טרה-בייט).
    • DISK_TYPE: סוג הדיסק. כדי ליצור נפח אחסון מסוג Hyperdisk, משתמשים באחד מהערכים הבאים: hyperdisk-balanced,‏ hyperdisk-extreme,‏ hyperdisk-ml או hyperdisk-throughput.
    • SNAPSHOT_PROJECT: השם של הפרויקט שמכיל את ה-snapshot שיצרתם מהדיסק המקורי.
    • SNAPSHOT_NAME: השם של ה-snapshot שיצרתם מהדיסק המקורי.
    • IOPS_LIMIT: אופציונלי: עבור Hyperdisk Balanced ו-Hyperdisk Extreme, זהו מספר פעולות הקלט/פלט לשנייה שהדיסק יכול לטפל בהן.
    • THROUGHPUT_LIMIT: אופציונלי: עבור נפחי אחסון מסוג Hyperdisk Balanced,‏ Hyperdisk ML או Hyperdisk Throughput, זהו מספר שלם שמייצג את קצב העברת הנתונים, שנמדד ב-MiB לשנייה, שהדיסק יכול לטפל בו.
    • DISK_ACCESS_MODE: איך מופעי מחשוב יכולים לגשת לנתונים בדיסק. הערכים הנתמכים הם:

      • READ_WRITE_SINGLE, לגישת קריאה וכתיבה ממופע אחד. זה ערך ברירת המחדל.
      • READ_WRITE_MANY, לגישת קריאה וכתיבה מכמה מופעים.
      • READ_ONLY_MANY, לגישת קריאה בלבד מכמה מקרים.

      אפשר להגדיר את מצב הגישה לסוגי הדיסקים הבאים:

  4. אופציונלי: משתמשים ב-‎compute.disks.get method כדי לראות תיאור של הדיסק.

  5. אחרי שיוצרים את הדיסק, אפשר לצרף אותו לכל מופע פעיל או מופסק של Compute.

שינוי דיסק אזורי לדיסק Hyperdisk Balanced High Availability אזורי

אופן השינוי של דיסק Hyperdisk אזורי לדיסק Hyperdisk Balanced High Availability תלוי בסוג הדיסק האזורי:

  • אם הדיסק האזורי הוא דיסק אתחול או דיסק Hyperdisk ML או Hyperdisk Throughput, יוצרים נפח אחסון Hyperdisk Balanced High Availability מתוך ה-snapshot של הדיסק האזורי, כמו שמתואר בקטע הזה.

  • אם הדיסק האזורי הוא דיסק Hyperdisk Balanced או Hyperdisk Extreme והוא לא דיסק אתחול, צריך ליצור נפח אחסון Hyperdisk Balanced High Availability על ידי שיבוט דיסק המקור.

המסוף

  1. הכנה ליצירת קובץ snapshot של דיסק:

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

    מידע נוסף זמין בטבלה שבמאמר בנושא יצירה ידנית של תמונות מצב עקביות של אפליקציות.

  2. יוצרים קובץ snapshot של הדיסק הקיים.

  3. נכנסים לדף Disks.

    לפתיחת הדף Disks
  4. לוחצים על + Create Disk.
  5. מציינים שם לדיסק.
  6. בשדה מיקום, בוחרים באפשרות אזורי.
  7. בשדות Region ו-Zone מציינים את התחום הראשי של הדיסק.

    הדיסק צריך להיות באותו אזור שבו נמצאת מכונת החישוב שאליה אתם מתכננים לחבר אותו.

  8. מציינים את האזור המשני בשדה אזור העתקה.
  9. בשדה Disk source type, בוחרים באפשרות Snapshot, ואז בוחרים את השם של ה-snapshot לשחזור.
  10. בקטע Disk Type (סוג הדיסק), בוחרים באפשרות Hyperdisk Balanced High Availability (זמינות גבוהה של Hyperdisk Balanced).

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

  11. מציינים את הגודל של הדיסק החדש ב-GiB. המספר הזה צריך להיות גדול או שווה לדיסק המקור המקורי של התמונה.
  12. אופציונלי: משנים את ערכי ברירת המחדל של Provisioned IOPS ושל Provisioned throughput בדיסק החדש:

  13. לוחצים על Create (יצירה) כדי ליצור את הדיסק החדש.
  14. אחרי שיוצרים את הדיסק, אפשר לצרף אותו לכל מופע פעיל או מופסק של Compute.

gcloud

  1. הכנה ליצירת קובץ snapshot של דיסק:

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

    מידע נוסף זמין בטבלה שבמאמר בנושא יצירה ידנית של תמונות מצב עקביות של אפליקציות.

  2. יוצרים קובץ snapshot של הדיסק הקיים.

  3. כדי ליצור דיסק Hyperdisk Balanced High Availability מקובץ ה-snapshot, משתמשים בפקודה disks create.

    gcloud compute disks create DISK_NAME \
     --size=SIZE \
     --type=hyperdisk-balanced-high-availability \
     --source-snapshot=SNAPSHOT_NAME \
     --provisioned-iops=PROVISIONED_IOPS \
     --provisioned-throughput=PROVISIONED_THROUGHPUT \
     --region=REGION \
     --replica-zones=ZONE1,ZONE2
    

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

    • DISK_NAME: שם ייחודי לדיסק.
    • SIZE: אופציונלי: הקיבולת שהוקצתה לדיסק החדש. הגודל צריך להיות גדול או שווה לגודל של דיסק המקור. הערך חייב להיות מספר שלם שאחריו יחידת גודל של GB ל-gibibyte או TB ל-tebibyte.
    • SNAPSHOT_NAME: השם של ה-snapshot שיצרתם מהדיסק המקורי.
    • PROVISIONED_IOPS: אופציונלי: מספר ה-IOPS שרוצים להקצות לדיסק.
    • PROVISIONED_THROUGHPUT: אופציונלי: קצב העברת הנתונים במגה-בייט (MB) לשנייה שיוקצה לדיסק.
    • REGION: האזור שבו הדיסק האזורי נמצא, למשל: europe-west1
    • ZONE1,ZONE2: האזורים באזור שבו נמצאות שתי הרפליקות של הדיסק, לדוגמה: europe-west1-b,europe-west1-c

Terraform

כדי ליצור נפח אחסון מסוג Hyperdisk Balanced High Availability, אפשר להשתמש במשאב google_compute_region_disk, כמו בדוגמה הבאה, אבל צריך לשנות את סוג הדיסק מ-pd-ssd ל-hyperdisk-balanced-high-availability.

resource "google_compute_region_disk" "regiondisk" {
  name                      = "region-disk-name"
  snapshot                  = google_compute_snapshot.snapdisk.id
  type                      = "pd-ssd"
  region                    = "us-central1"
  physical_block_size_bytes = 4096
  size                      = 11

  replica_zones = ["us-central1-a", "us-central1-f"]
}

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

REST

כדי ליצור אמצעי אחסון מסוג Hyperdisk Balanced High Availability, צריך ליצור בקשת POST אל ה-method‏ compute.regionDisks.insert.

POST https://compute./compute/v1/projects/PROJECT_ID/regions/REGION/disks
{
  "name": "DISK_NAME",
  "sourceSnapshot": "SNAPSHOT_NAME",
  "region": "projects/PROJECT_ID/regions/REGION",
  "replicaZones": [
    "projects/PROJECT_ID/zones/ZONE1",
    "projects/PROJECT_ID/zones/ZONE2"
  ],
  "sizeGb": "DISK_SIZE",
  "type": "projects/PROJECT_ID/regions/REGION/diskTypes/hyperdisk-balanced-high-availability"
}

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

  • PROJECT_ID: מזהה הפרויקט
  • REGION: האזור שבו הדיסק האזורי נמצא, למשל: europe-west1
  • DISK_NAME: השם של הדיסק החדש
  • SNAPSHOT_NAME: השם של ה-snapshot שיצרתם מהדיסק המקורי.
  • ZONE1,ZONE2: האזורים שבהם צריכות להיות רפליקות של הדיסק החדש, לדוגמה: europe-west1-b,europe-west1-c
  • DISK_SIZE: הגודל של הדיסק החדש ב-GiB

הפיכת הדיסק החדש לנגיש למכונת ה-VM

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

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

מידע על אופן הרכבת הדיסק זמין במאמרים הבאים:

הסרת הדיסק המקורי

אחרי אימות הדיסק החדש, אפשר:

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