בדף הזה מוסבר איך להתחבר באמצעות SSH לצומת של אשכול Google Distributed Cloud.
הדף הזה מיועד לאדמינים ולמפעילים בתחום ה-IT שמנהלים את מחזור החיים של תשתית טכנולוגית בסיסית. מידע נוסף על תפקידים נפוצים ומשימות לדוגמה שאנחנו מתייחסים אליהם בתוכן זמין במאמר תפקידים נפוצים של משתמשי GKE ומשימות. Google Cloud
מגבלות
אי אפשר לשנות או להחליף את מפתחות ה-SSH של אשכולות משתמשים ואדמינים אחרי יצירת האשכול. אם מדיניות האבטחה שלכם מחייבת רוטציה תקופתית של מפתחות SSH, צריך ליצור מחדש את האשכול כדי ליצור מפתח SSH חדש.
לפני שמתחילים
כדי לבצע את השלבים האלה, תצטרכו את המיקום של קובצי kubeconfig של אשכול המשתמשים והאדמינים. כברירת מחדל, הקבצים האלה מאוחסנים בספרייה שבה יצרתם את אשכולות האדמין והמשתמשים.
מידע נוסף על kubeconfig זמין במאמר הגדרת גישה לאשכול עבור kubectl במסמכי GKE.
קבלת כתובות ה-IP של צמתי האשכול
מקבלים את כתובות ה-IP של הצמתים באשכול המשתמשים:
kubectl --kubeconfig [USER_CLUSTER_KUBECONFIG] get nodes --output wide
[USER_CLUSTER_KUBECONFIG] הוא הנתיב לקובץ kubeconfig של אשכול המשתמשים.
מקבלים את כתובות ה-IP של הצמתים באשכול האדמין:
kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] get nodes --output wide
כאשר [ADMIN_CLUSTER_KUBECONFIG] הוא הנתיב לקובץ kubeconfig של אשכול האדמין.
בכל אחת מהפקודות, שימו לב לשדה INTERNAL-IP. אלה כתובות ה-IP של הצמתים. השדה NAME כולל את שם האשכול של המשתמש עם מזהה ייחודי שנוסף לו. לדוגמה, הצומת שנקרא my-user-cluster-12345678-abcdef הוא חלק מאשכול המשתמשים שנקרא my-user-cluster.
שימוש ב-SSH כדי להתחבר לצומת של אשכול משתמשים
כדי לקבל את מפתח ה-SSH של אשכול משתמשים:
kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] get secrets -n [USER_CLUSTER_NAME] ssh-keys \
-o jsonpath='{.data.ssh\.key}' | base64 -d > \
~/.ssh/[USER_CLUSTER_NAME].key && chmod 600 ~/.ssh/[USER_CLUSTER_NAME].keywhere:
[ADMIN_CLUSTER_KUBECONFIG] הוא הנתיב לקובץ kubeconfig של אשכול האדמין.
[USER_CLUSTER_NAME] הוא השם של אשכול המשתמשים. השם הזה צוין כשיצרתם אשכול משתמשים.
הפקודה שלמעלה מבצעת את השלבים הבאים:
מתוך אשכול האדמין, מקבלים את השדה
ssh.keyשל סוד בשםssh-keysבמרחב השמות [USER_CLUSTER_NAME].מפענחים את המפתח בקידוד Base64.
מאחסנים את המפתח המפוענח בקובץ
~/.ssh/[USER_CLUSTER_NAME].key.מגדירים הרשאות גישה מתאימות לקובץ המפתח.
משתמשים במפתח כדי להתחבר באמצעות SSH לצומת של אשכול משתמשים:
ssh -i ~/.ssh/[USER_CLUSTER_NAME].key anthos@[USER_NODE_IP]
כאשר [USER_NODE_IP] היא כתובת ה-IP הפנימית של צומת באשכול המשתמשים, שאספתם קודם.
שימוש ב-SSH כדי להתחבר לצומת של אשכול אדמין
מקבלים את מפתח ה-SSH של אשכול האדמין:
kubectl --kubeconfig [ADMIN_CLUSTER_KUBECONFIG] get secrets -n kube-system sshkeys \
-o jsonpath='{.data.vsphere_tmp}' | base64 -d > \
~/.ssh/admin-cluster.key && chmod 600 ~/.ssh/admin-cluster.key
[ADMIN_CLUSTER_KUBECONFIG] הוא הנתיב לקובץ ה-kubeconfig של אשכול האדמין.
הפקודה שלמעלה מבצעת את השלבים הבאים:
מתוך אשכול האדמין, מקבלים את השדה
vsphere_tmpשל Secret בשםsshkeysבמרחב השמותkube-system.מפענחים את השדה
vsphere_tmpבקידוד Base64, שהוא המפתח.מאחסנים את המפתח המפוענח בקובץ
~/.ssh/admin-cluster.key.מגדירים הרשאות גישה מתאימות לקובץ המפתח.
משתמשים במפתח כדי להתחבר באמצעות SSH לצומת של אשכול אדמין:
ssh -i ~/.ssh/admin-cluster.key anthos@[ADMIN_NODE_IP]
כאשר [ADMIN_NODE_IP] היא כתובת ה-IP הפנימית של צומת באשכול הניהול, שאספתם קודם.