כשיוצרים מכונה וירטואלית (VM), המערכת Cloud de Confiance by S3NS יוצרת שם DNS פנימי משם המכונה הווירטואלית. אלא אם מציינים שם מארח בהתאמה אישית, Cloud de Confiance משתמש בשם ה-DNS הפנימי שנוצר אוטומטית כשם המארח שהוא מספק למכונה הווירטואלית.
אתם יכולים ליצור מכונה וירטואלית עם שם מארח מותאם אישית על ידי ציון שם DNS מוגדר במלואו. שמות מארחים מותאמים אישית שימושיים לשמירה על מוסכמות או לתמיכה בדרישות של אפליקציות שמצפות לשם מארח מסוים.
גם כשמציינים שם מארח מותאם אישית, Cloud de Confiance יוצר את שם ה-DNS הפנימי של Compute Engine. אפשר להתחבר למכונה הווירטואלית באמצעות רשומת ה-DNS הפנימית הזו שנוצרה באופן אוטומטי. רשומת ה-DNS הפנימית מפוענחת לשם ה-DNS הפנימי ולא לשם המארח המותאם אישית. גם כשמשתמשים בשמות מארחים בהתאמה אישית, צריך ליצור רשומת DNS תואמת באזור המתאים, למשל באמצעות Cloud DNS.
לפני שמתחילים
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS
gcloud
-
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud init
-
- הגדרת אזור ותחום כברירת מחדל
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
Terraform
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Terraform שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
המשך
כדי להשתמש בדוגמאות של Go שבדף הזה בסביבת פיתוח מקומית, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Java
כדי להשתמש בדוגמאות של Java שבדף הזה בסביבת פיתוח מקומית, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי להשתמש בדוגמאות של Node.js שבדף הזה בסביבת פיתוח מקומית, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Python שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות ליצירת מכונה וירטואלית עם שם מארח בהתאמה אישית, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד אדמין מכונות של Compute (v1) (roles/compute.instanceAdmin.v1) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
זהו תפקיד שמוגדר מראש וכולל את ההרשאות שנדרשות ליצירת מכונה וירטואלית עם שם מארח בהתאמה אישית. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:
ההרשאות הנדרשות
כדי ליצור מכונה וירטואלית עם שם מארח בהתאמה אישית, צריך את ההרשאות הבאות:
-
compute.instances.createבפרויקט -
כדי להשתמש באימג' בהתאמה אישית ליצירת המכונה הווירטואלית (VM):
compute.images.useReadOnlyבקובץ אימג' -
כדי להשתמש ב-snapshot ליצירת המכונה הווירטואלית:
compute.snapshots.useReadOnlyבקובץ snapshot -
כדי להשתמש בתבנית של הגדרות מכונה ליצירת המכונה הווירטואלית:
compute.instanceTemplates.useReadOnlyבתבנית של הגדרות המכונה -
כדי לציין רשת משנה למכונה הווירטואלית:
compute.subnetworks.useבפרויקט או ברשת המשנה שנבחרה -
כדי לציין כתובת IP סטטית למכונה הווירטואלית:
compute.addresses.useבפרויקט -
כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת VPC:
compute.subnetworks.useExternalIpבפרויקט או ברשת המשנה שנבחרה -
כדי להקצות רשת מדור קודם למכונה הווירטואלית:
compute.networks.useבפרויקט -
כדי להקצות כתובת IP חיצונית למכונה הווירטואלית כשמשתמשים ברשת מדור קודם:
compute.networks.useExternalIpבפרויקט -
כדי להגדיר מטא-נתונים של המכונה הווירטואלית:
compute.instances.setMetadataבפרויקט -
כדי להגדיר תגים למכונה הווירטואלית:
compute.instances.setTagsבמכונה הווירטואלית -
כדי להגדיר תוויות למכונה הווירטואלית:
compute.instances.setLabelsבמכונה הווירטואלית -
כדי להגדיר חשבון שירות לשימוש של המכונה הווירטואלית:
compute.instances.setServiceAccountבמכונה הווירטואלית -
כדי ליצור דיסק חדש למכונה הווירטואלית:
compute.disks.createבפרויקט -
כדי לצרף דיסק קיים במצב קריאה-בלבד או במצב קריאה וכתיבה:
compute.disks.useבדיסק -
כדי לצרף דיסק קיים במצב קריאה-בלבד:
compute.disks.useReadOnlyבדיסק
יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.
מגבלות
צריך להגדיר ידנית את רשומת ה-DNS של שם המארח המותאם אישית. שמות מארחים בהתאמה אישית לא נפתרים על ידי הרשומות שנוצרות באופן אוטומטי על ידי מערכת ה-DNS הפנימית של Compute Engine. אפשר להשתמש באחת מהאפשרויות הבאות כדי לארח את רשומת ה-DNS של שם המארח המותאם אישית:
כל שרת שמות ציבורי אחר של DNS
אי אפשר לשנות שם מארח מותאם אישית אחרי שיוצרים את המכונה הווירטואלית.
מערכות הפעלה נתמכות
שמות מארחים מותאמים אישית מוגדרים בסביבת האורח באמצעות סקריפטים של hook שמשולבים בתוכנת הרשת של האורח. יכול להיות שבמערכות הפעלה של Linux שאין להן סקריפט לשילוב עם תוכנת הרשת לאורחים, שם המארח לא יהיה נכון.
לרשימה המלאה של גרסאות מערכות ההפעלה שתומכות בשמות מארחים בהתאמה אישית, אפשר לעיין בתמיכה בסביבת האורח בפרטים על מערכת ההפעלה.
מוסכמה למתן שמות
שמות מארחים מותאמים אישית צריכים לעמוד בדרישות של RFC 1035 לשמות מארחים תקינים. כדי לעמוד בדרישות האלה, שמות מארחים מותאמים אישית צריכים לעמוד במפרט הפורמט הבא:
- שם המארח מכיל לפחות שתי תוויות שמתוארות באופן הבא:
- כל תווית מכילה ביטויים רגולריים שכוללים רק את התווים האלה:
[a-z]([-a-z0-9]*[a-z0-9])?. - התוויות מחוברות באמצעות נקודה.
- כל תווית יכולה לכלול 1 עד 63 תווים.
- כל תווית מכילה ביטויים רגולריים שכוללים רק את התווים האלה:
- שם המארח לא חורג מ-253 תווים.
לא תקין: מכיל תווית אחת
my-host1234
תקין: מכיל שלוש תוויות שמשורשרות עם נקודות
my-host1234.example.com
יצירת מכונה וירטואלית עם שם מארח מותאם אישית
המסוף
נכנסים לדף Create an instance במסוף Cloud de Confiance .
מציינים שם למכונה הווירטואלית. מידע נוסף זמין במאמר מוסכמות למתן שמות למשאבים.
מרחיבים את הקטע אפשרויות מתקדמות ומבצעים את הפעולות הבאות:
- מרחיבים את הקטע Networking.
- בשדה שם המארח, מציינים את שם המארח המותאם אישית.
מבצעים התאמות אישיות נוספות למכונה הווירטואלית לפי הצורך.
כדי ליצור את המכונה הווירטואלית ולהפעיל אותה, לוחצים על Create.
השלב הבא: הגדרת רשומות ה-DNS. מידע נוסף זמין במאמר בנושא ניהול רשומות.
gcloud
באמצעות Google Cloud CLI, פועלים לפי ההוראות ליצירת מכונה מתמונה או מתמונת מצב, מוסיפים את הדגל --hostname ומשתמשים בפקודה gcloud compute instances create באופן הבא:
gcloud compute instances create VM_NAME \
--hostname=HOST_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
VM_NAME: השם של המכונה הווירטואלית -
HOST_NAME: שם המארח של הדומיין שמוגדר במלואו שרוצים להקצות
לדוגמה, כדי ליצור מכונת VM myinstance עם שם המארח המותאם אישית test.example.com, מריצים את הפקודה הבאה:
gcloud compute instances create myinstance \
--hostname=test.example.com
השלב הבא: הגדרת רשומות ה-DNS. מידע נוסף זמין במאמר בנושא ניהול רשומות.
Terraform
אפשר להשתמש במשאב של Terraform כדי ליצור מכונה עם שם מארח מותאם אישית באמצעות הארגומנט hostname.
- נכנסים לדף VM instances במסוף Cloud de Confiance .
- לוחצים על Create instance.
- מציינים את הפרמטרים הרצויים.
- בראש הדף או בתחתית הדף, לוחצים על Equivalent code ואז על הכרטיסייה Terraform כדי לראות את קוד Terraform.
השלב הבא: הגדרת רשומות ה-DNS. מידע נוסף זמין במאמר בנושא ניהול רשומות.
המשך
Java
Node.js
Python
REST
פועלים לפי ההוראות לשימוש ב-API כדי ליצור מופע מתמונה או מתמונת מצב, ומציינים את השדה hostname בגוף הבקשה.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"name": "VM_NAME",
"hostname": "HOST_NAME",
...
}
מחליפים את מה שכתוב בשדות הבאים:
אימות שם המארח בהתאמה אישית
במכונות וירטואליות של Linux, אפשר להריץ את הפקודה hostname -f במכונה הווירטואלית כדי לאמת את שם המארח.
אפשר גם לאמת את שם המארח המותאם אישית באמצעות מסוף Cloud de Confiance או Google Cloud CLI.
המסוף
כדי לראות את שם המארח המותאם אישית של המכונה הווירטואלית, עוברים לדף VM instances.
לוחצים על שם המופע כדי לפתוח את הדף פרטי מכונת ה-VM.
בודקים את הקטע שם המארח. השדה שם המארח גלוי רק אם מוגדר שם מארח מותאם אישית.

gcloud
כדי להציג את שם המארח המותאם אישית של מכונת ה-VM באמצעות gcloud compute, משתמשים בפקודת המשנה instances describe עם הדגל --format כדי לסנן את הפלט. מחליפים את VM_NAME בשם של המכונה הווירטואלית.
gcloud compute instances describe VM_NAME \
--format='get(hostname)'
לדוגמה, כדי לראות את שם המארח בהתאמה אישית של מכונה וירטואלית בשם myinstance, מריצים את הפקודה הבאה.
gcloud compute instances describe myinstance \
--format='get(hostname)'הפלט עשוי להיראות כך:
test.example.com
אם לא מוגדר שם מארח מותאם אישית, הפלט של הפקודה הזו יהיה ריק.