‫asmcli Reference

בדף הזה מתוארים הארגומנטים הזמינים ל-asmcli.

אפשרויות

מזהים את האשכול יש לכם את האפשרויות הבאות לזיהוי האשכול:

GKE בלבד

-p|--project_id CLUSTER_PROJECT_ID
מזהה הפרויקט שבו נוצר האשכול.
-n|--cluster_name CLUSTER_NAME
השם של האשכול.
-l|--cluster_location CLUSTER_LOCATION
התחום (עבור אשכולות בתחום יחיד) או האזור (עבור אשכולות אזוריים) שבו האשכול נוצר.

כל הפלטפורמות

--kubeconfig KUBECONFIG_FILE הנתיב המלא אל קובץ kubeconfig. משתנה הסביבה $PWD לא פועל כאן.

--ctx|--context KUBE_CONTEXT ההקשר של kubeconfig שבו רוצים להשתמש. אם לא מציינים הקשר, asmcli משתמש בהקשר שמוגדר כברירת מחדל.

-c|--ca {mesh_ca|gcp_cas|citadel}

רשות האישורים (CA) שמשמשת לניהול אישורים של TLS דו-כיווני. מציינים mesh_ca כדי להשתמש ברשות האישורים של Cloud Service Mesh,‏ gcp_cas כדי להשתמש ב-Certificate Authority Service או citadel כדי להשתמש ב-Istio CA. ‫Managed Cloud Service Mesh לא תומך ב-Istio CA. מידע נוסף זמין במאמרים הבאים:

--co|--custom_overlay OVERLAY_FILE

משתמשים בפקודה --custom_overly עם השם של קובץ YAML (שנקרא קובץ שכבת-על) שמכיל את המשאב המותאם אישית IstioOperator כדי להגדיר את מישור הבקרה בתוך האשכול. אתם מציינים קובץ שכבת-על כדי להפעיל תכונה שלא מופעלת כברירת מחדל. ‫Managed Cloud Service Mesh לא תומך ב-IstioOperator API, ולכן אי אפשר להשתמש ב---custom_overlay כדי להגדיר את מישור הבקרה המנוהל. ‫asmcli צריך להיות מסוגל לאתר את קובץ שכבת העל, ולכן הוא צריך להיות באותה ספרייה כמו asmcli, או שאפשר לציין נתיב יחסי. כדי להוסיף כמה קבצים, מציינים את --co|--custom_overlay ואת שם הקובץ, למשל: --co overlay_file1.yaml --co overlay_file2.yaml --co overlay_file3.yaml

--hub-registration-extra-flags HUB_REGISTRATION_EXTRA_FLAGS

אם משתמשים באשכולות Amazon EKS מצורפים, משתמשים בפקודה --hub-registration-extra-flags כדי לרשום את האשכול ל-Fleet אם הוא עדיין לא רשום.

-k|--key_file FILE_PATH

קובץ המפתח של חשבון שירות. אם אתם לא משתמשים בחשבון שירות, אל תכללו את האפשרות הזו.

--network_id NETWORK_ID

משתמשים ב---network_id כדי להגדיר את התווית topology.istio.io/network שמוחלת על מרחב השמות istio-system. ב-GKE, --network_id ברירת המחדל היא שם הרשת של האשכול. בסביבות אחרות, נעשה שימוש ב-default.

-o|--option OVERLAY_FILE

השם של קובץ השכבה (בלי הסיומת .yaml) שמוורדפרס מוריד ממאגר anthos-service-mesh כדי להפעיל תכונה אופציונלית.asmcli כדי להשתמש ב---option, צריך חיבור לאינטרנט. האפשרויות --option ו---custom_overlay דומות, אבל יש ביניהן הבדלים קלים:

  • משתמשים ב---custom_overlay כשצריך לשנות את ההגדרות בקובץ השכבה.

  • משתמשים ב---option כדי להפעיל תכונה שלא דורשת שינויים בקובץ השכבה, לדוגמה, כדי להגדיר מדיניות ביקורת לשירותים.

כדי להוסיף כמה קבצים, מציינים את -o|--option ואת שם הקובץ, למשל: -o option_file1 -o option_file2 -o option_file3

-D|--output_dir DIR_PATH

אם לא מציינים ספרייה, asmcli יוצר ספרייה זמנית שבה הוא מוריד את הקבצים וההגדרות שנדרשים להתקנת Cloud Service Mesh. אפשר לציין את הדגל --output-dir כדי לציין נתיב יחסי לספרייה שבה רוצים להשתמש במקום זאת. בסיום התהליך, הספרייה שצוינה מכילה את ספריות המשנה asm ו-istio-1.19.10-asm.6. הספרייה asm מכילה את ההגדרות להתקנה. הספרייה istio-1.19.10-asm.6 מכילה את התוכן שחולץ מקובץ ההתקנה, שמכיל את istioctl, דוגמאות ומניפסטים. אם מציינים את --output-dir והספרייה כבר מכילה את הקבצים הנדרשים, asmcli משתמש בקבצים האלה במקום להוריד אותם שוב.

--platform PLATFORM {gcp|multicloud}

הפלטפורמה או הספק של אשכול Kubernetes. ברירת המחדל היא gcp (באשכולות GKE). לשימוש בכל הפלטפורמות האחרות, multicloud.

-r|--revision_name REVISION NAME

תווית של עדכון היא צמד מפתח/ערך שמוגדר במישור הבקרה. מפתח תווית הגרסה הוא תמיד istio.io/rev. כברירת מחדל, asmcli מגדיר את הערך של תווית הגרסה על סמך הגרסה של Cloud Service Mesh, לדוגמה: asm-11910-9. כוללים את האפשרות הזו אם רוצים להחליף את ערך ברירת המחדל ולציין ערך משלכם. הארגומנט REVISION NAME חייב להיות תווית DNS-1035. כלומר, השם צריך:

  • לכלול 63 תווים לכל היותר
  • להכיל רק תווים אלפאנומריים באותיות קטנות או את התו '-'
  • להתחיל בתו אלפביתי
  • להסתיים בתו אלפאנומרי

הביטוי הרגולרי שמשמש לאימות הוא: '[a-z]([-a-z0-9]*[a-z0-9])?'

-s|--service_account ACCOUNT
השם של חשבון שירות שמשמש להתקנה של Cloud Service Mesh. אם לא מציינים חשבון, המערכת משתמשת בחשבון המשתמש הפעיל בהגדרות הנוכחיות של gcloud. אם אתם צריכים לשנות את חשבון המשתמש הפעיל, מריצים את הפקודה gcloud auth login.

אפשרויות לאישור מותאם אישית של Istio CA

אם ציינתם --ca citadel ואתם משתמשים ב-CA מותאם אישית, צריך לכלול את האפשרויות הבאות:

  • --ca_cert FILE_PATH: אישור הביניים
  • --ca_key FILE_PATH: המפתח של אישור הביניים
  • --root_cert FILE_PATH: אישור הבסיס
  • --cert_chain FILE_PATH: שרשרת האישורים

מידע נוסף זמין במאמר בנושא הוספת אישורי CA קיימים.

מתגי הפעלה

הדגלים שמתחילים ב---enable מאפשרים ל-asmcli להפעיל את ממשקי ה-API הנדרשים של Google, להגדיר הרשאות נדרשות לניהול זהויות והרשאות גישה (IAM) ולעדכן את האשכול. אם אתם מעדיפים, אתם יכולים לעדכן את הפרויקט ואת האשכול בעצמכם לפני שמריצים את asmcli. כל ההגדרות להפעלה לא תואמות ל-asmcli validate. אם מציינים דגל הפעלה כשמריצים את asmcli validate, הפקודה מסתיימת עם שגיאה.

-e|--enable_all
התרת כל הפעולות הבאות שמתוארות בהמשך.
asmcli
--enable_cluster_roles
ההרשאה מאפשרת ל-asmcli לנסות לקשר את המשתמש או את חשבון השירות שמריץ את asmcli לתפקיד cluster-admin באשכול. Google Cloud ‫asmcli קובע את חשבון המשתמש מהפקודה gcloud config get core/account. אם אתם מריצים את asmcli באופן מקומי עם חשבון משתמש, הקפידו להריץ את הפקודה gcloud auth login לפני הרצת asmcli. אם אתם צריכים לשנות את חשבון המשתמש, מריצים את הפקודה gcloud config set core/account GCP_EMAIL_ADDRESS, כאשר GCP_EMAIL_ADDRESS הוא החשבון שבו אתם משתמשים כדי להיכנס ל- Google Cloud.
--enable_cluster_labels
אני מאשר/ת ל-asmcli להגדיר תוויות נדרשות לאשכול.
--enable_gcp_components

מתן אישור ל-asmcli להפעיל את הרכיבים ושירותי ה- Google Cloud managed הנדרשים הבאים:

--enable_gcp_apis

מאשרים ל-asmcli להפעיל את כל ממשקי Google API הנדרשים.

--enable_gcp_iam_roles

מאשרים ל-asmcli להגדיר את הרשאות ה-IAM הנדרשות.

--enable_meshconfig_init

הסקריפט יכול לאתחל את נקודת הקצה meshconfig בשמכם. משתמע מ---enable_gcp_components ומ---managed.

--enable_namespace_creation

האם לאפשר ל-asmcli ליצור את מרחב השמות של istio-system הבסיס?

--enable_registration

מתן הרשאה ל-asmcli לרשום את האשכול בפרויקט שבו האשכול נמצא. אם לא כוללים את הדגל הזה, צריך לפעול לפי השלבים במאמר בנושא רישום אשכול כדי לרשום את האשכול באופן ידני. שימו לב שבניגוד לדגלי ההפעלה האחרים, הדגל --enable_registration נכלל ב---enable_all רק כשמציינים אפשרות (כמו --option hub-meshca) שמחייבת רישום של האשכול. אחרת, צריך לציין את הדגל הזה בנפרד.

דיווחים אחרים

--dry_run
הדפסת פקודות, אבל לא הפעלתן.
--fleet_id
רישום אשכול ל-Fleet באמצעות מזהה פרויקט המארח של ה-Fleet. הדגל הזה נדרש עבור אשכולות שאינםGoogle Cloud . אם לא מציינים את הפרויקט עבור אשכולותGoogle Cloud , ברירת המחדל היא מזהה הפרויקט של האשכול. אפשר להריץ את asmcli install יחד עם --fleet_id לפני ההתקנה, או כחלק מההתקנה על ידי העברת הדגלים --enable-registration ו---fleet-id. אי אפשר לשנות את ההגדרה הזו אחרי שמגדירים אותה.
--managed
הקצאת רמת בקרה מנוהלת מרחוק במקום התקנה בתוך האשכול.
--offline
מבצעים התקנה אופליין באמצעות החבילה שהורדה מראש בספריית הפלט. אם לא מציינים את הספרייה או שהיא לא מכילה את הקבצים הנדרשים, הסקריפט ייצא עם שגיאה.
--only_enable
מבצע את השלבים שצוינו כדי להגדיר את המשתמש או האשכול הנוכחי, אבל לא מתקין שום דבר.
--only_validate
מריצים אימות אבל לא מעדכנים את הפרויקט או האשכול ולא מתקינים את Cloud Service Mesh. הדגל הזה לא תואם לדגלי ההפעלה. ‫asmcli מסתיים עם שגיאה אם מציינים את --only_validate עם דגל הפעלה כלשהו.
--print_config
במקום להתקין את Cloud Service Mesh, מדפיסים את כל קובץ ה-YAML שעבר קומפילציה לפלט רגיל (stdout). כל שאר הפלט נכתב לשגיאה רגילה (stderr), גם אם בדרך כלל הוא היה נכתב ל-stdout. asmcli מדלג על כל תהליכי האימות וההגדרה כשמציינים את הדגל הזה.
--disable_canonical_service
כברירת מחדל, asmcli פורס את Canonical Service controller באשכול. אם לא רוצים ש-asmcli יפרוס את בקר התנועה, מציינים --disable_canonical_service. מידע נוסף זמין במאמר הפעלה והשבתה של בקר השירות Canonical.
-h|--help
Show a help message describing the options and flags and exit.
--use_managed_cni
משתמשים ב-CNI מנוהל. אם לא מעבירים את הדגל הזה, asmcli יחיל את מניפסט ה-CNI הסטטי.
--use_vpcsc
הדגל הזה כבר לא נדרש כדי להשתמש ב-VPC Service Controls בפרויקט.
-v|--verbose
במהלך ההרצה של asmcli, הפקודה הבאה שתורץ מודפסת. עם הדגל --verbose, הפקודה asmcli מודפסת גם אחרי ההרצה.
--version
מדפיסים את הגרסה של asmcli ויוצאים. אם אין לכם את הגרסה העדכנית ביותר, אתם יכולים להוריד את הגרסה העדכנית ביותר של asmcli_1.19.

המאמרים הבאים