כשיוצרים מכונה וירטואלית (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 כדי לגשת לשירותים Cloud de Confiance by S3NS ולממשקי ה-API, לא צריך להגדיר אימות.
gcloud
-
מתקינים את ה-CLI של Google Cloud ואז נכנסים ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud init
-
- הגדרת אזור ותחום כברירת מחדל
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות, צריך לוודא ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות, צריך לוודא ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות, צריך לוודא ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות, צריך לוודא ש נכנסתם ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
-
התקינו את ה-CLI של Google Cloud.
-
הגדירו שה-CLI של gcloud ישתמש בזהות המאוחדת שלכם.
-
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות, צריך לוודא ש נכנסתם ל-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 ציבורי אחר
אי אפשר לשנות שם מארח מותאם אישית אחרי שיוצרים את המכונה הווירטואלית. אם אתם צריכים לשנות את שם המארח המותאם אישית של מכונה וירטואלית, אתם צריכים ליצור מופע חדש של מכונה וירטואלית עם שם המארח המותאם אישית המעודכן. לדוגמה, אפשר ליצור מכונה וירטואלית חדשה מ-snapshot של דיסק האתחול של המכונה הווירטואלית המקורית, ואז למחוק את המכונה הווירטואלית המקורית.
מערכות הפעלה נתמכות
שמות מארחים מותאמים אישית מוגדרים בסביבת האורח באמצעות סקריפטים של ווֹק (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.
- בשדה שם המארח, מציינים את שם המארח המותאם אישית.
מבצעים התאמות אישיות נוספות ב-VM לפי הצורך.
כדי ליצור את המכונה הווירטואלית ולהפעיל אותה, לוחצים על Create.
השלב הבא: הגדרת רשומות ה-DNS. מידע נוסף זמין במאמר בנושא ניהול רשומות.
gcloud
באמצעות Google Cloud CLI, פועלים לפי ההוראות ליצירת מכונה מתמונה או מתמונת מצב, מוסיפים את הדגל --hostname ומשתמשים בפקודה gcloud compute instances create באופן הבא:
gcloud compute instances create VM_NAME \
--hostname=HOST_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
VM_NAME: השם של המכונה הווירטואלית -
HOST_NAME: שם המארח של הדומיין שמוגדר במלואו שרוצים להקצות
לדוגמה, כדי ליצור מכונה וירטואלית myinstance עם שם המארח המותאם אישית test.example.com, מריצים את הפקודה הבאה:
gcloud compute instances create myinstance \
--hostname=test.example.com
השלב הבא: הגדרת רשומות ה-DNS. מידע נוסף זמין במאמר בנושא ניהול רשומות.
Terraform
אפשר להשתמש במשאב של Terraform כדי ליצור מכונה עם שם מארח מותאם אישית באמצעות הארגומנט hostname.
- נכנסים לדף VM instances במסוף Cloud de Confiance .
- לוחצים על Create instance.
- מציינים את הפרמטרים הרצויים.
- בחלק העליון או התחתון של הדף, לוחצים על קוד מקביל ואז על הכרטיסייה 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.
לוחצים על שם המכונה כדי לפתוח את הדף פרטי המכונה הווירטואלית.
בודקים את הקטע שם המארח. השדה שם מארח גלוי רק אם הוגדר שם מארח מותאם אישית.

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
אם לא מוגדר שם מארח מותאם אישית, הפלט של הפקודה הזו יהיה ריק.