במסמך הזה מפורטות הנחיות לפתרון בעיות שקשורות לחיבור שלכם ל-Google.
Network Connectivity Gateway
בקטע הזה מופיעים טיפים לפתרון בעיות שקשורות ל-Network Connectivity Gateway.
לקבלת עזרה נוספת, אפשר לפנות אל Cloud Customer Care. אפשר גם לעיין במאמר קבלת תמיכה לקבלת מידע נוסף על מקורות מידע לתמיכה, כולל המקורות הבאים:- דרישות לפתיחת בקשת תמיכה.
- כלים שיעזרו לכם לפתור בעיות, כמו הגדרת הסביבה, היומנים והמדדים.
- רכיבים נתמכים.
מוודאים ש-Pods של בקר ושער פועלים
מציגים את רשימת ה-Pods של Network Connectivity Gateway:
kubectl --kubeconfig CLUSTER_KUBECONFIG get pods \ --namespace kube-system | grep ncgמחליפים את
CLUSTER_KUBECONFIGבנתיב של קובץ ה-kubeconfig של האשכול.בפלט, מוודאים שמוצגים Pod של בקר ו-Pod של שער. השם של ה-Pod של בקר התנועה מתחיל ב-
ncg-controller, והשם של ה-Pod של שער הכניסה מתחיל ב-ncgd. לדוגמה:ncg-controller-5f5d489b68-r87pp 1/1 Running ncgd-gvl76 1/1 Runningרושמים את השם של ה-Pod של השער. תצטרכו אותו לפקודות שונות לפתרון בעיות.
בדיקת היומנים של ה-Pod של השער
בודקים אם יש שגיאות ביומנים של ה-Pod של השער:
kubectl --kubeconfig CLUSTER_KUBECONFIG logs GATEWAY_POD \ --namespace kube-systemמחליפים את
GATEWAY_PODבשם של ה-Pod של השער.
הפעלת ncgcli בתוך ה-Pod של השער
ל-Pod של השער יש כלי שורת פקודה בשם ncgcli, שבעזרתו אפשר לקבל מידע על השער ועל התנועה במנהרות.
משתמשים בפקודה הבאה כדי להריץ את
ncgcliבתוך ה-Pod של שער הכניסה:kubectl --kubeconfig CLUSTER_KUBECONFIG exec -it GATEWAY_POD \ --namespace kube-system -- ncgCLI_COMMANDמחליפים את
ncgCLI_COMMANDבפקודהncgcli.לדוגמה:
kubectl --kubeconfig my-kubeconfig exec ncgd-6hkk2 --namespace kube-system \ -- ncgcli --help
בקטעים הבאים מופיעות עוד דוגמאות לפקודות ncgcli.
מנהרת IPsec לא הופעלה
בודקים את הסטטוס של
NetworkConnectivityGatewayהמשאב המותאם אישית:kubectl --kubeconfig CLUSTER_KUBECONFIG get NetworkConnectivityGateway \ --namespace kube-system --output yamlבודקים בפלט אם מופיעה המחרוזת
Status: Healthy. לדוגמה:apiVersion: networking.gke.io/v1alpha1 kind: NetworkConnectivityGateway metadata: namespace: kube-system name: default spec: status: CurrNode: worker1-node CreatedTime: 2021-09-07T03:18:15Z LastReportTime: 2021-09-21T23:57:54Z Status: Healthyבודקים את הסטטוס של
OverlayVPNTunnelהמשאבים המותאמים אישית:kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayVPNTunnel \ --namespace kube-system --output yamlבודקים את הסטטוס של המנהרות בתוך ה-Pod של שער הכניסה:
ncgcli overlay peers show
מידע נוסף זמין במאמר בנושא פתרון בעיות ב-Cloud VPN.
יצירת סשן BGP נכשלה
מוודאים שהשתמשתם בכתובות IP מקומיות, כמו 169.254.1.2 ו-169.254.2.2, עבור סשנים של BGP בין Cloud Router לבין gateway Pod באשכול.
בדיקת הסטטוס של סשנים של BGP:
kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayBGPPeer \ --namespace kube-system --output yamlכדי לבדוק את הסטטוס של סשני ה-BGP מתוך ה-Pod של שער הרשת:
ncgcli overlay routes show
מידע נוסף על פתרון בעיות בסשנים של BGP זמין במאמרים הבאים:
- מצבי סשן של BGP
- פתרון בעיות בקישור בין רשתות שכנות (peering) של BGP
- פתרון בעיות שקשורות למסלולי BGP ולבחירת מסלולים
בעיות בהעברת תנועה גם אם המנהור פעיל
אם העברת התעבורה נכשלת, מריצים את הפקודה ncgcli
בתוך ה-Pod של השער
כדי לבדוק את הסטטוס של המנהרות, הניתוב ותכנות מישור הנתונים.
מוודאים שמנהרת IPsec ל-peer נוצרה:
ncgcli overlay peers showמוודאים שהמסלולים של שכבת העל הוחלפו באמצעות BGP ושהם נפתרו במנהרת IPsec המתאימה:
ncgcli overlay routes showהצגת מסלולים שתוכנתו במישור הנתונים, והפלט צריך לכלול מסלולי שכבת-על:
ncgcli fast-path routes show
התאמת יחידת השידור המקסימלית
יחידת השידור המקסימלית (MTU) היא הגודל, בבייטים, של החבילה הגדולה ביותר שנתמכת על ידי פרוטוקול של שכבת רשת, כולל הכותרות והנתונים. אם יש בעיות בתנועה שנובעות ממגבלות MTU ברשת הבסיסית, אפשר להגדיר את ה-MTU במשאב המותאם אישית OverlayVPNTunnel. ה-MTU שמוגדר כברירת מחדל למנהרות הוא 1,380
בייט.
כדי לשנות את ה-MTU של המנהרות:
בודקים את הסטטוס של המנהרות:
kubectl --kubeconfig CLUSTER_KUBECONFIG get OverlayVPNTunnel \ --namespace kube-system --output yamlהמקטע
statusצריך להיראות כמו בדוגמה הבאה:status: IfName: ipsec2 LastTransition: "2022-06-16T07:13:28Z" SLA: DiscoveredMTU: 1300 Jitter(ms): 1 Latency(ms): 26 Loss(%): "0.00"אם הערך של
status.SLA.DiscoveredMTUקטן מברירת המחדל1380, צריך לפעול לפי השלבים הבאים כדי לשנות את הערך שלSpec.mtuבמשאבים המותאמים אישיתOverlayVPNTunelכך שיתאים.פותחים את
OverlayVPNTunnelהמשאבים המותאמים אישית לעריכה באמצעות הפקודהkubectl edit:kubectl --kubeconfig CLUSTER_KUBECONFIG edit OVERLAY_VPN_TUNNEL_NAME --namespace kube-system --output yamlכדי למנוע אובדן מנות, צריך להגדיר את אותו MTU לשני המשאבים המותאמים אישית
OverlayVPNTunnelשבהם נעשה שימוש ב-Network Connectivity Gateway.מגדירים את הערך
mtuכך שיתאים לערךDiscoveredMTUמהשלב הראשון:apiVersion: networking.gke.io/v1alpha1 kind: OverlayVPNTunnel metadata: name: vpc2 namespace: kube-system Spec: mtu: 1300 ikeKey: name: ike-key namespace: kube-system localTunnelIP: 169.254.0.2 peer: publicIP: 34.100.10.10 self: publicIP: 70.32.151.5כדי להחיל את השינויים, שומרים את העריכה וסוגרים את הכלי לעריכה.
מידע נוסף על MTU ועל ההשפעה שלו על ביצועי התעבורה זמין במאמר שיקולים לגבי MTU.
צפייה בזרימת התנועה ובנתונים סטטיסטיים ברמת האפליקציה
כדי לראות את זרימת התנועה והנתונים הסטטיסטיים, מריצים את הפקודה ncgcli
בתוך ה-Pod של שער הכניסה.
כדי לקבל תצוגה מיידית של זרימות ויישומים של תנועה:
ncgcli forwarding flows topנתונים סטטיסטיים מצטברים ברמת התהליך:
ncgcli forwarding flows aggregates showלנתונים סטטיסטיים מצטברים ברמת הממשק:
ncgcli interfaces statistics show
המאמרים הבאים
לקבלת עזרה נוספת, אפשר לפנות אל Cloud Customer Care. אפשר גם לעיין במאמר קבלת תמיכה לקבלת מידע נוסף על מקורות מידע לתמיכה, כולל המקורות הבאים:- דרישות לפתיחת בקשת תמיכה.
- כלים שיעזרו לכם לפתור בעיות, כמו הגדרת הסביבה, היומנים והמדדים.
- רכיבים נתמכים.