אם הוספתם למכונה דיסק חדש וריק מסוג Google Cloud Hyperdisk או Persistent Disk, אתם צריכים לפרמט ולטעון את הדיסק לפני שתוכלו להשתמש בו. אם הוספתם דיסק שכבר מכיל נתונים, תצטרכו לטעון אותו לפני שתוכלו להשתמש בו.
לפני שמתחילים
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא התהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים האלה:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Google Cloud כדי לגשת לשירותים ולממשקי ה-API של Google Cloud , לא צריך להגדיר אימות.
gcloud
-
התקינו את ה-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 .
התחברות למכונה הווירטואלית
נכנסים לדף VM instances.
לוחצים על הלחצן SSH ליד המכונה שאליה מחובר הדיסק החדש. הדפדפן פותח חיבור טרמינל למכונה הווירטואלית.
פירמוט דיסק שהוא לא דיסק אתחול ב-VM של Linux
במסוף, משתמשים בקישור הסימבולי שנוצר לדיסק המצורף כדי לקבוע איזה מכשיר לפרמט.
ls -l /dev/disk/by-id/google-*לדיסקים לא מפורמטים אין קישורים סימבוליים נוספים עם
-partNבשם.google-extra-scsi-disk -> ../../sdb google-instance-2 -> ../../sda google-instance-2-part1 -> ../../sda1 google-instance-2-part14 -> ../../sda14 google-instance-2-part15 -> ../../sda15 google-local-nvme-ssd-0 -> ../../nvme0n1 google-local-nvme-ssd-1 -> ../../nvme0n2בדוגמה הזו, הדיסק החדש נוצר עם השם
extra-scsi-disk. שם המכשיר של הדיסק החדש הואsdb.מוודאים שהכלי
mkfs.<type>מותקן, כאשר<type>היא מערכת הקבצים שבה רוצים להשתמש, כמוxfsאוext4.לדוגמה, כדי לפרמט את הדיסק באמצעות מערכת הקבצים
xfs, צריך להתקין אתmkfs.xfsבמערכת ההפעלה.כדי להציג רשימה של כלי השירות של
mkfsשמותקנים, מריצים את הפקודה הבאה:ls -l /usr/sbin/mkfs.*
הפלט אמור להיראות כך:
/usr/sbin/mkfs.bfs /usr/sbin/mkfs.cramfs /usr/sbin/mkfs.ext2 -> mke2fs /usr/sbin/mkfs.ext3 -> mke2fs /usr/sbin/mkfs.ext4 -> mke2fs /usr/sbin/mkfs.minix
בדוגמה הזו,
mkfs.xfsלא מופיע ברשימה, ולכן אי אפשר לפרמט את הדיסק באמצעותxfsבלי להתקין אתmkfs.xfs.אופציונלי: אם מערכת הקבצים שבה רוצים להשתמש לא זמינה, מתקינים אותה באמצעות הפקודה הבאה. לדוגמה, אפשר להתקין את
mkfs.xfsבאמצעות הפקודות הבאות לדוגמה.- כדי להתקין ב-Ubuntu וב-Debian:
sudo apt update && sudo apt install xfsprogs
- כדי להתקין ב-CentOS, ב-Fedora וב-Red Hat Enterprise Linux:
sudo yum install xfsprogs
- כדי להתקין ב-Ubuntu וב-Debian:
מפרמטים את הדיסק באמצעות הפקודה המתאימה של
mkfs.<type>. הפקודה הזו מוחקת את כל הנתונים מהדיסק שצוין, לכן חשוב לוודא שציינתם את מכשיר הדיסק הנכון.אפשר להשתמש בכל פורמט קובץ שצריך, אבל מומלץ להשתמש במערכת קבצים אחת מסוג
ext4ללא טבלת מחיצות. אפשר להגדיל את נפח הדיסק בהמשך בלי לשנות את המחיצות בדיסק.כדי למקסם את ביצועי הדיסק, השתמשו באפשרויות הפירמוט המומלצות.
הפקודות הבאות מפרמטות את כל הדיסק בלי טבלת מחיצות.
ב-
ext4, אין צורך לשמור מקום לנפח הבסיס בדיסק המשני הזה, לכן צריך לציין-m 0כדי להשתמש בכל מקום הכונן הזמין. משתמשים בפקודה הבאה:$ sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/DEVICE_NAMEבשדה
xfs, מציינים-s size=4096כדי להגדיר את גודל הסקטור ל-4,096 בייטים לשיפור הביצועים. משתמשים בפקודה הבאה:$ sudo mkfs.xfs -s size=4096 /dev/DEVICE_NAMEמחליפים את
DEVICE_NAMEבשם המכשיר של הדיסק שאתם מפרמטים. לדוגמה, אם נשתמש בפלט מהשלב הראשון, נזיןsdbבתור שם המכשיר.
טעינת הדיסק
יוצרים ספרייה שמשמשת כנקודת הטעינה של הדיסק החדש במכונה הווירטואלית. אפשר להשתמש בכל ספרייה. בדוגמה הבאה נוצרת ספרייה ב-
/mnt/disks/.$ sudo mkdir -p /mnt/disks/MOUNT_DIRמחליפים את
MOUNT_DIRבספרייה שבה רוצים לטעון את הדיסק.משתמשים בכלי הטעינה כדי לטעון את הדיסק למכונה, ומפעילים את האפשרות
discard:$ sudo mount -o discard,defaults /dev/DEVICE_NAME /mnt/disks/MOUNT_DIRמחליפים את מה שכתוב בשדות הבאים:
-
DEVICE_NAME: שם המכשיר של הדיסק שרוצים לטעון. -
MOUNT_DIR: הספרייה שבה רוצים לטעון את הדיסק.
-
מגדירים הרשאות קריאה וכתיבה בדיסק. בדוגמה הזו, נותנים לכל המשתמשים גישת כתיבה לדיסק.
$ sudo chmod a+w /mnt/disks/MOUNT_DIRמחליפים את
MOUNT_DIRבספרייה שבה טענתם את הדיסק.
הגדרת טעינה אוטומטית בהפעלה מחדש של ה-VM
מוסיפים את הדיסק לקובץ /etc/fstab, כדי שהדיסק יתחבר מחדש באופן אוטומטי כשהמכונה הווירטואלית תופעל מחדש. במערכות הפעלה של Linux, שם המכשיר יכול להשתנות בכל הפעלה מחדש, אבל ה-UUID של המכשיר תמיד מצביע על אותו אמצעי אחסון, גם כשמעבירים דיסקים בין מערכות. לכן, מומלץ להשתמש ב-UUID של המכשיר במקום בשם המכשיר כדי להגדיר טעינה אוטומטית בהפעלה מחדש של המכונה הווירטואלית.
יוצרים גיבוי של קובץ
/etc/fstabהנוכחי.$ sudo cp /etc/fstab /etc/fstab.backupמשתמשים בפקודה
blkidכדי להציג את ה-UUID של הדיסק.$ sudo blkid /dev/DEVICE_NAME/dev/DEVICE_NAME: UUID="a9e1c14b-f06a-47eb-adb7-622226fee060" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="593b3b75-108f-bd41-823d-b7e87d2a04d1"
מחליפים את מה שכתוב בשדות הבאים:
-
DEVICE_NAME: שם המכשיר של הדיסק שרוצים לטעון באופן אוטומטי. אם יצרתם טבלת מחיצות בדיסק, ציינו את המחיצה שאתם רוצים לטעון על ידי הוספת הסיומת לשם המכשיר. לדוגמה, אםsdbהוא שם המכשיר של הדיסק,sdb1יכול להיות השם של המחיצה.
-
פותחים את הקובץ
/etc/fstabבכלי לעריכת טקסט ויוצרים רשומה שכוללת את ה-UUID. לדוגמה:UUID=UUID_VALUE /mnt/disks/MOUNT_DIR FILE_SYSTEM_TYPE discard,MOUNT_OPTION 0 2
מחליפים את מה שכתוב בשדות הבאים:
-
UUID_VALUE: ה-UUID של הדיסק, שמופיע בפלט של השלב הקודם -
MOUNT_DIR: הספרייה שבה טענתם את הדיסק -
FILE_SYSTEM_TYPE: סוג מערכת הקבצים. לדוגמה,ext2,ext3,ext4אוxfs. -
MOUNT_OPTION: מציין מה מערכת ההפעלה עושה אם היא לא יכולה לטעון את הדיסק לאחסון מתמיד של התחום בזמן ההפעלה. ערכים תקינים מפורטים בקטע The fourth field במסמכי התיעוד של Linuxfstab. כדי לאפשר למערכת לבצע אתחול גם אם הדיסק לא זמין, משתמשים באפשרות הטעינהnofail.
-
משתמשים בפקודה
catכדי לוודא שהרשומות של/etc/fstabנכונות:$ cat /etc/fstab UUID=6B33-A686 /boot/efi vfat defaults 0 0 UUID=UUID_VALUE /mnt/disks/MOUNT_DIR FILE_SYSTEM_TYPE discard,MOUNT_OPTION 0 2
המאמרים הבאים
- מגדירים שמות קבועים למכשירים של הדיסקים שהוספתם.
- איך משנים את הגודל של הדיסקים הקבועים
- איך מגבים את הדיסקים באופן קבוע באמצעות קובצי snapshot כדי למנוע אובדן נתונים לא מכוון.