סקירה כללית על Cloud Workstations

‫Cloud Workstations מספקת סביבות פיתוח מנוהלות ב- Google Cloudעם אבטחה מובנית וסביבות פיתוח מוגדרות מראש שניתנות להתאמה אישית. במקום לדרוש מהמפתחים להתקין תוכנה ולהריץ סקריפטים להגדרה, אתם יכולים ליצור הגדרת תחנת עבודה שמציינת את הסביבה שלכם בצורה שניתן לשחזר. כל עדכון בהגדרות תחנת עבודה יחול באופן אוטומטי על תחנות העבודה בפעם הבאה שהן יופעלו. מפתחים יכולים לגשת לתחנות העבודה דרך סביבת פיתוח משולבת (IDE) מבוססת-דפדפן, מכמה עורכי קוד מקומיים (כמו VSCode או סביבות פיתוח משולבות של JetBrains כמו IntelliJ IDEA Ultimate ו-PyCharm Professional), או דרך SSH.

‫Cloud Workstations משתמש במשאבים הבאים Google Cloud כדי לנהל את סביבות הפיתוח שלכם:

  • אשכולות תחנות עבודה מגדירים קבוצה של תחנות עבודה באזור מסוים וברשת ה-VPC שאליה הן מצורפות. אשכולות של תחנות עבודה לא קשורים לאשכולות של Google Kubernetes Engine‏ (GKE).

  • הגדרות של תחנות עבודה משמשות כתבניות לתחנות עבודה. ההגדרה של תחנת העבודה מגדירה פרטים כמו סוג המכונה הווירטואלית (VM) של תחנת העבודה, אחסון מתמיד, קובץ אימג' של קונטיינר שמגדיר את הסביבה, סביבת פיתוח משולבת (IDE) או עורך קוד לשימוש ועוד. אדמינים וצוותי פלטפורמה יכולים גם להשתמש בכללים של ניהול זהויות והרשאות גישה (IAM) כדי להעניק גישה לצוותים או למפתחים ספציפיים.

  • תחנות עבודה הן סביבות פיתוח מוגדרות מראש שמספקות סביבת פיתוח משולבת (IDE) בענן, כלים לשפה, ספריות ועוד. אפשר להפעיל או להפסיק את תחנות העבודה לפי דרישה, והן פועלות על מכונות וירטואליות ב-Compute Engine בפרויקט שלכם, עם דיסק קבוע שמצורף לאחסון נתונים בין סשנים.

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

מושגים

איור 1. מושגים ב-Cloud Workstations

מחזור החיים של תחנת עבודה

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

אחסון מתמיד

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

שמות מארחים של DNS בתחנת עבודה

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

עדכוני הגדרות

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

Gemini Code Assist

Gemini Code Assist הוא שותף מבוסס-AI ב- Google Cloud. אם בוחרים באפשרות Base Editor (Code OSS for Cloud Workstations) של Cloud Workstations כשיוצרים את הגדרת תחנת העבודה, Gemini יכול לעזור לכם עם הפעולות הבאות בעורך הבסיסי:

  • לספק הנחיות שיעזרו לכם לפתור בעיות בקוד.

  • יצירת קוד לפרויקט.

  • קבלת הצעות בתוך השורה בזמן כתיבת קוד.

כדי לעזור לכם לעמוד בדרישות הרישיון, Gemini מספק ציטוטים עם הפניה למקורות כשההצעות מצטטות ישירות קטע ארוך ממקור מסוים. מידע נוסף על השימוש ב-Gemini עם Cloud Workstations זמין במאמר כתיבת קוד בעזרת Gemini Code Assist.

איך Gemini for Google Cloud ‎ משתמש בנתונים שלכם, ובאילו מקרים.

אבטחת שרשרת האספקה של תוכנות

‫Cloud Workstations הוא אחד מהרכיבים שבהם אפשר להשתמש כדי להגן על שרשרת האספקה של התוכנות. Google Cloud אתם יכולים להשתמש ב-Cloud Workstations יחד עם מוצרים ותכונות אחרים של Google Cloud Google Cloud כדי לשפר את רמת האבטחה של תהליכי העבודה והכלים של המפתחים, של תלות בתוכנה, של מערכות CI/CD שמשמשות לבנייה ולפריסה של התוכנה ושל סביבות זמן ריצה כמו Google Kubernetes Engine ו-Cloud Run. מידע נוסף זמין במאמר בנושא אבטחת שרשרת האספקה של תוכנות.