מטרות
ב-Cloud Shell Editor, סביבת פיתוח משולבת (IDE) להדגמה באינטרנט, אפשר ללמוד איך לבצע את משימות הפיתוח הבאות:
יוצרים אפליקציית Kubernetes לדוגמה.
מריצים את האפליקציה בסביבת הפיתוח, מעדכנים אותה ומציגים את היומנים שלה.
פורסים את האפליקציה באשכול GKE.
אפשר לפעול בתהליך דומה בסביבת פיתוח משולבת (IDE) משלכם אם תתקינו את Cloud Code.
לחצו על תראו לי איך כדי לקרוא הסבר מפורט על המשימה ישירות במסוף Google Cloud :
עלויות
במסמך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:
כדי ליצור הערכת עלויות בהתאם לשימוש החזוי, אפשר להשתמש במחשבון התמחור.
כשמסיימים את המשימות שמתוארות במסמך הזה אפשר למחוק את המשאבים שיצרתם כדי להימנע מחיובים נוספים. מידע נוסף זמין בקטע הסרת המשאבים.
לפני שמתחילים
יוצרים אשכול Kubernetes. במאמר יצירת אשכול ופריסת עומס עבודה מוסבר איך עושים את זה.
בוחרים פרויקט ואשכול Google Cloud
כשפורסים את האפליקציה ב-GKE בהמשך המדריך הזה, צריך לציין פרויקט ואשכול GKE. Google Cloud
עוברים לדף Clusters ב-GKE.
בוחרים פרויקט שמכיל אשכול GKE.
רושמים את השם של הפרויקט והאשכול.
יהיה צורך במידע הזה בשלב מאוחר יותר.
יצירת אפליקציה ב-Cloud Shell Editor
במסוף Google Cloud , לוחצים על Cloud Shell בסרגל המשימות כדי לפתוח את Cloud Shell.
לוחצים על
פתיחת העורך .מחכים ש-Cloud Shell Editor יאותחל.
ב-Cloud Shell Editor, לוחצים על View (תצוגה) > Command Palette (לוח הפקודות).
מחפשים את Cloud Code: New Application ולוחצים עליו.
בוחרים באפשרות Kubernetes Application (אפליקציית Kubernetes) ואז באפשרות Go: Hello World (Go: שלום עולם).
כל מסגרת שפה מספקת חוויות שונות במקצת, ובמדריך הזה מתוארות התכונות שזמינות בשפת Go.
בתיבת הדו-שיח 'שמירה', לוחצים על יצירת אפליקציה חדשה.
העורך של Cloud Shell נטען מחדש ומציג את קובצי המקור של האפליקציה בתצוגה Explorer.
האפליקציה כוללת:
אפליקציית אינטרנט בסיסית
go-hello-world, , שמחזירה תגובה מבוססת-תבנית 'היא פועלת!' לכל הבקשות שהיא מקבלת.main.goמפרט פריסה של Kubernetes,
.hello.deployment.yamlמפרט של שירות Kubernetes שמגדיר מאזן עומסים לאפליקציה,
.hello.service.yamlקובץ Skaffold שמטפל בתהליך העבודה של בנייה ופריסה של האפליקציה,
.skaffold.yaml
מריצים את האפליקציה בסביבת הפיתוח
כשאפשר, מריצים אפליקציות בסביבת הפיתוח לפני הפריסה ב-GKE. כך תוכלו לזהות בעיות פוטנציאליות בלי להשתמש במכסת Google Cloud השימוש.
כדי להריץ את האפליקציה בסביבת Cloud Shell Editor:
ב-Cloud Shell Editor, לוחצים על Terminal (טרמינל) > New Terminal (טרמינל חדש).
מפעילים אשכול על ידי הרצת הפקודה הבאה:
minikube startminikube היא הטמעה קלה של Kubernetes שיוצרת מכונת VM בסביבה המקומית שלכם ומפריסה אשכול פשוט שמכיל רק צומת אחד.
יכול להיות שיעברו כמה דקות עד שקלאסטר minikube יוגדר.
אם מתבקשים לאשר ל-Cloud Shell לבצע קריאות ל-Cloud API, לוחצים על Authorize (אישור).
אחרי שמגדירים את אשכול minikube, מוצגת הודעה דומה להודעה הבאה:
Done! kubectl is now configured to use "minikube" cluster...
אחרי שמגדירים את minikube, מבצעים build והרצה של האפליקציה:
בסרגל הסטטוס של Cloud Shell Editor, לוחצים על
Cloud Code .בוחרים באפשרות Run on Kubernetes (הפעלה ב-Kubernetes).
אם מוצגת בקשה, מאשרים שרוצים להשתמש בהקשר הנוכחי של minikube.
האפליקציה שלכם תיבנה על ידי Cloud Shell Editor ותיפרס באשכול minikube.
אפשר לראות את סטטוס הפריסה בתצוגה
Development sessions .כשהפריסה תושלם, יופיע סימן וי ירוק לצד כתובות URL של העברת פורטים. הסמל המסתובב יופיע לצד רישומי יישומים בסטרימינג.
כדי לראות את האפליקציה, גוללים למטה בחלונית Development sessions (סשנים של פיתוח) ומחפשים את Port Forward URLs (כתובות URL להפניית יציאה) > service (שירות).
מעבירים את מצביע העכבר מעל
go-hello-world-external ולוחצים על פתיחת כתובת ה-URL.
עריכת האפליקציה
כשמשנים קובץ מקור באפליקציה, Cloud Shell Editor יוצר ומפריס את האפליקציה באופן אוטומטי באשכול שאליו אתם מחוברים כרגע. במקרה הזה, אתם מחוברים לאשכול minikube.
כדי לערוך את האפליקציה ולפרוס אותה מחדש באשכול minikube המקומי:
משנים את הקובץ
כדי להדפיס את הטקסט It's redeployed!. הקובץ נשמר באופן אוטומטי.main.goצופים בתצוגה של
הפעלות הפיתוח בזמן שהאפליקציה נבנית מחדש ונפרסת.כדי לראות את האפליקציה שנפרסה מחדש, פועלים כמו קודם:
בחלונית Development sessions (סשנים של פיתוח), מאתרים את Port Forward URLs (כתובות URL להעברת פורטים) > service (שירות).
מעבירים את מצביע העכבר מעל
go-hello-world-external ולוחצים על פתיחת כתובת ה-URL.
צפייה ביומני האפליקציה
בסרגל התפריטים של Cloud Shell Editor, בוחרים באפשרות View (תצוגה) > Command Palette (לוח הפקודות).
מחפשים את Cloud Code: View Logs ולוחצים עליו.
הכלי לצפייה ביומנים ייפתח.
בקטע
פריסה , בוחרים באפשרותgo-hello-world.הסינון הזה מאפשר להציג בכלי לצפייה ביומנים רק את היומנים של אפליקציית
go-hello-world.עוברים לכרטיסייה עם האפליקציה שבה מוצגת ההודעה 'הפריסה בוצעה מחדש!'. טוענים מחדש את הדף בדפדפן ואז חוזרים לכרטיסייה של Cloud Shell.
כדי לראות את היומנים החדשים שנוצרו בכלי Logs Viewer, לוחצים על
Refresh .
פריסת האפליקציה באשכול GKE
מוסיפים את אשכול GKE לרשימת האשכולות שאפשר לפרוס אליהם:
בתצוגה
Kubernetes , לוחצים על Add a Cluster to the KubeConfig (הוספת אשכול ל-KubeConfig).בתיבת הדו-שיח בחירת פלטפורמה, לוחצים על Google Kubernetes Engine.
אם מופיעה בקשה להפעלת ה-API של Google Cloud , לוחצים על Yes.
מחכים ש-Cloud Shell Editor ימצא את האשכולות בפרויקטGoogle Cloud .
בתיבת הדו-שיח Create or choose a GKE cluster (יצירה או בחירה של אשכול GKE), בוחרים את שם האשכול שיצרתם, hello-world-cluster.
בסרגל הסטטוס של Cloud Shell Editor, לוחצים על
Cloud Code ובוחרים באפשרות Run on Kubernetes.כשמופיעה בקשה לבחירת הקשר לפריסה, בוחרים באפשרות Use current context (שימוש בהקשר הנוכחי), שמוגדר לאשכול GKE.
בתיבת הדו-שיח בחירת מאגר תמונות, בוחרים באפשרות gcr.io/PROJECT_NAME.
העורך של Cloud Shell יוצר גרסת build של האפליקציה בקונטיינר ומאחסן את הקונטיינר במאגר שבחרתם.
צופים בתצוגה של
הפעלות הפיתוח בזמן שהאפליקציה נבנית מחדש ונפרסת.כדי לראות הודעות מפורטות ביומן בזמן הפריסה של האפליקציה ב-GKE, לוחצים על הצומת Deploy to Cluster בתצוגה Development sessions.
כדי לראות את האפליקציה שפועלת:
כדי לסגור את התצוגה, לוחצים על הכותרת סשנים של פיתוח.
פותחים את התצוגה
Kubernetes .הרחבת אשכול GKE.
עוברים אל Namespaces > default > Services > go-hello-world-external > External IPs.
מציבים את מצביע העכבר מעל כתובת ה-IP ולוחצים על פתיחת כתובת URL.
יצרתם ופרסתם בהצלחה אפליקציית GKE מ-IDE.
המאמרים הבאים
דוגמאות קוד שממחישות את השימוש במוצריGoogle Cloud
התקנת Cloud Code בסביבת הפיתוח המשולבת (IDE)
איך מפנים מקום כדי להימנע מחיובים אם אתם מתכננים לעבור הדרכות נוספות, כדאי לחכות עד שתסיימו את ההדרכות האלה לפני שתנקו את המערכת. אפשר להשתמש באשכול Kubernetes לדוגמה ברוב המדריכים של GKE.