שינוי ההמלצות לגבי סיכונים
ההמלצות לשינוי סיכונים עוזרות לכם להפחית את הסיכון לטעויות בהגדרות של תשתית הענן. הן עושות זאת על ידי סימון חכם של שינויים נפוצים ומסוכנים במשאבים הכי חשובים שלכם, ומתן המלצות למניעת בעיות ולצמצום ההשפעה שלהן.
מבוא
בעיות בהגדרות הן סיבה נפוצה לאירועים שקורים בענן. הן יכולות לקרות בגלל טעויות אנוש או שינויים לא צפויים בעומס העבודה, והן עלולות לגרום למגוון בעיות, כולל בעיות בביצועים, בעיות באמינות ואפילו הפסקות זמניות בשירות. הרבה הגדרות שגויות לא בולטות בהתחלה, ולכן קשה לאתר ולתקן אותן.
המלצות לשינוי סיכונים היא סדרה חדשה של המלצות ותובנות של Active Assist בשירות Recommender. ההמלצות לשינוי סיכון מסמנות באופן אוטומטי שינויים מסוכנים במשאבי ענן שזוהו כחשובים על סמך השימוש בהם ואותות אחרים. כך אפשר למנוע בעיות (למשל, הפסקות שירות), לזהות אותן ולצמצם את ההשפעה שלהן, אם הן נגרמות כתוצאה מהגדרות שגויות של משאבי הענן החשובים האלה. לדוגמה, אם תנסו למחוק פרויקט שנמצא בשימוש נרחב, או לשנות מדיניות IAM שעשויה להיות תלות חיונית על סמך פעילות השימוש האחרונה שלה, המלצות לסיכוני שינוי יכולות לעזור לכם למנוע בעיות לא רצויות על ידי אזהרה מראש לגבי הסיכונים שקשורים לשינוי מסוים.
שינוי היקף ההמלצות לסיכון
ההמלצות לסיכון השינוי נתמכות כרגע רק עבור המשאבים והפעולות שמפורטים בטבלה שלמטה.
| משאב | פעולה | פלטפורמות | קריטריונים שמשמשים לקביעת החשיבות של משאב |
|---|---|---|---|
| Project | מחיקה |
|
|
| חשבון שירות | מחיקה |
|
|
| מדיניות IAM | שינוי |
|
|
לפני שמתחילים
לפני שמתחילים להשתמש בתכונה הזו, צריך להגדיר את השירות:
- מפעילים את Recommender API בפרויקט יחיד לחיוב. לאחר מכן תוכלו להשתמש באותו פרויקט לחיוב כדי לאחזר המלצות ותובנות לגבי פרויקטים אחרים, הארגון כולו או החשבון לחיוב, באמצעות הפונקציונליות של פרויקט לחיוב ב-gcloud/API.
- מעניקים הרשאות למשתמש או לחשבון השירות שבהם תשתמשו כדי לגשת לתכונה הזו.
הרשאות
כדי לראות את ההמלצות בנושא סיכון לשינוי, אתם צריכים את ההרשאות הספציפיות למשאב הספציפי.
פרויקט
recommender.resourcemanagerProjectChangeRiskRecommendations.getrecommender.resourcemanagerProjectChangeRiskRecommendations.listrecommender.resourcemanagerProjectChangeRiskInsights.getrecommender.resourcemanagerProjectChangeRiskInsights.list
חשבון השירות
recommender.iamServiceAccountChangeRiskRecommendations.getrecommender.iamServiceAccountChangeRiskRecommendations.listrecommender.iamServiceAccountChangeRiskInsights.getrecommender.iamServiceAccountChangeRiskInsights.list
מדיניות IAM
recommender.iamPolicyChangeRiskRecommendations.getrecommender.iamPolicyChangeRiskRecommendations.listrecommender.iamPolicyChangeRiskInsights.getrecommender.iamPolicyChangeRiskInsights.list
אפשר גם להעניק את התפקיד roles/recommender.viewer כדי לכסות את ההרשאות האלה.
הסבר על התשובה של כלי המלצות/תובנות לגבי סיכון לשינוי
בטבלה הבאה מפורטים השדות שמוצגים באובייקט ההמלצה ובאובייקט התובנה:
המלצה
| שם השדה | סוג | תיאור |
|---|---|---|
associatedInsights
|
string
|
תובנה שמשויכת להמלצה הזו.
projects/[project_number]/locations/global/
insightTypes/google.resourcemanager.project.
ChangeRiskInsight/insights/[fingerprint]
|
asset
|
object
|
מכיל את שם הנכס ואת סוג הנכס של המשאב המשויך. |
etag
|
string
|
טביעת האצבע של RecommenderConfig. מספק נעילה אופטימית בעת עדכון. |
updateTime
|
string
|
חותמת הזמן של הפעם האחרונה שבה ההמלצה עודכנה. חותמת זמן בפורמט Zulu של RFC 3339 UTC, ברמת דיוק של ננו-שניות.
דוגמה: 2022-01-10T22:47:38.421626Z.
|
תובנה
| שם השדה | סוג | תיאור |
|---|---|---|
associatedRecommendations
|
string
|
המלצה שמשויכת להמלצה הזו.
projects/[project_number]/locations/global/
recommenders/google.resourcemanager.project.
ChangeRiskRecommender/recommendations/
[recommendation_id]
|
constraint
|
object
|
מכיל את ההמלצה לגבי מגבלת הסיכון לשינוי, שלפיה לא מומלץ למשתמש לבצע את השינוי.
This project should not be deleted.
|
importance
|
object
|
מכיל את רשימת הסיבות שבגללן קבענו שהמשאב הזה חשוב. לדוגמה, שימוש גבוה. |
risk
|
object
|
מכיל פרטים על הערכת הסיכונים. לדוגמה,ערכי פעילות של שימוש במשאבים משמשים לקביעת החשיבות. |
updateTime
|
string
|
חותמת הזמן של הפעם האחרונה שבה ההמלצה עודכנה.
חותמת זמן בפורמט Zulu של RFC 3339 UTC, ברמת דיוק של ננו-שניות. דוגמה: 2022-01-10T22:47:38.421626Z.
|
איך צופים בהמלצות לסיכון השינוי
בנוסף למודל השימוש שצוין למעלה, אפשר להשתמש בגישה הרגילה לשירות Recommender כדי לראות את ההמלצות והתובנות לגבי סיכון השינוי בפרויקט, בחשבון שירות או במדיניות IAM:
- מסוףGoogle Cloud
- API
- gcloud
מסוףGoogle Cloud
אפשר לראות המלצות ותובנות לגבי סיכון השינוי בדפי המוצרים עצמם. ההמלצות יופעלו אוטומטית כל עוד יש לכם את ההרשאות שצוינו למעלה.
הכלי Active Assist מזהיר אתכם מפני הסכנות של מחיקת משאב חשוב, ומציין מה צריך לעשות כשהאזהרה הזו מופיעה במצבים הבאים:
gcloud ו-API
בקטעים הבאים מוצגות הפקודות לבקשת המלצות ותובנות לגבי סיכוני שינוי דרך gcloud וה-API עבור פרויקט, חשבון שירות או מדיניות IAM.
פרויקט
כל הלקוחות יכולים לגשת לתובנות ולהמלצות דרך מסוף Google Cloud , gcloud או Recommender API.
gcloud
כדי לראות המלצות ותובנות באמצעות gcloud, פועלים לפי השלבים הבאים.
מידע נוסף זמין במאמרים שימוש ב-API – תובנות ושימוש ב-API – המלצות.
המלצות:
כדי לראות את ההמלצות לפרויקט שבו הפעלתם את Recommender API, מריצים את הפקודה הבאה:
gcloud recommender recommendations list
--recommender=google.resourcemanager.project.ChangeRiskRecommender
--project=PROJECT_ID --location=global --format=yaml
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט.
תובנות:
אפשר להשתמש בסדרה דומה של פקודות כדי להציג תובנות:
gcloud recommender insights list
--insight-type=google.resourcemanager.project.ChangeRiskInsight
--project=PROJECT_ID --location=global --format=yaml
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט.
API
כדי לראות המלצות ותובנות, אפשר להשתמש ב-curl כדי לשלוח בקשה ל-Recommender APIs.
המלצות
כדי לראות את ההמלצות לפרויקט שבו הפעלתם את Recommender API, מריצים את הפקודה הבאה:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/
recommenders/google.resourcemanager.project.ChangeRiskRecommender/recommendations"
מחליפים את מה שכתוב בשדות הבאים:
-
BILLING_PROJECT_ID: מזהה פרויקט החיוב.
תובנות:
אפשר להשתמש בסדרה דומה של פקודות כדי להציג תובנות:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.resourcemanager.project.ChangeRiskInsight/insights"
מחליפים את הערכים הבאים:
* BILLING_PROJECT_ID : מזהה פרויקט החיוב.
חשבון שירות
כל הלקוחות יכולים לגשת לתובנות ולהמלצות לגבי חשבון שירות דרך מסוף Google Cloud , gcloud או Recommender API.
gcloud
כדי לראות המלצות ותובנות באמצעות gcloud, פועלים לפי השלבים הבאים.
מידע נוסף זמין במאמרים שימוש ב-API – תובנות ושימוש ב-API – המלצות.
המלצות:
כדי להציג רשימה של המלצות לחשבון שירות שבו הפעלתם את Recommender API, מריצים את הפקודה הבאה:
gcloud recommender recommendations list
--recommender=google.iam.serviceAccount.ChangeRiskRecommender
--project=PROJECT_ID --location=global --format=yaml
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט.
תובנות:
אפשר להשתמש בסדרה דומה של פקודות כדי להציג תובנות:
gcloud recommender insights list
--insight-type=google.iam.serviceAccount.ChangeRiskInsight
--project=PROJECT_ID --location=global --format=yaml
מחליפים את הערכים הבאים:
* PROJECT_ID : מזהה הפרויקט.
API
כדי לראות המלצות ותובנות, אפשר להשתמש ב-curl כדי לשלוח בקשה ל-Recommender APIs.
המלצות:
כדי להציג רשימה של המלצות לחשבון שירות שבו הפעלתם את Recommender API, מריצים את הפקודה הבאה:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/
recommenders/google.iam.serviceAccount.ChangeRiskRecommender/recommendations"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
BILLING_PROJECT_ID: מזהה פרויקט החיוב.
תובנות:
אפשר להשתמש בסדרה דומה של פקודות כדי להציג תובנות:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.iam.serviceAccount.ChangeRiskInsight/insights"
מחליפים את הערכים הבאים:
* PROJECT_ID : מזהה הפרויקט.
* BILLING_PROJECT_ID : מזהה פרויקט החיוב.
מדיניות IAM
כל הלקוחות יכולים לגשת לתובנות ולהמלצות לגבי מדיניות IAM דרך מסוף Google Cloud , gcloud או Recommender API.
gcloud
כדי להציג המלצות ותובנות באמצעות gcloud, פועלים לפי השלבים הבאים.
מידע נוסף זמין במאמרים שימוש ב-API – תובנות ושימוש ב-API – המלצות.
המלצות:
כדי להציג רשימה של המלצות למדיניות IAM שבה הפעלתם את Recommender API, מריצים את הפקודה הבאה:
gcloud recommender recommendations list --recommender=google.iam.policy.ChangeRiskRecommender --project=PROJECT_ID --location=global --format=yaml
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט.
תובנות:
אפשר להשתמש בסדרה דומה של פקודות כדי להציג תובנות:
gcloud recommender insights list --insight-type=google.iam.policy.ChangeRiskInsight --project=PROJECT_ID --location=global --format=yaml
מחליפים את הערכים הבאים:
* PROJECT_ID : מזהה הפרויקט.
API
כדי לראות המלצות ותובנות, אפשר להשתמש ב-curl כדי לשלוח בקשה ל-Recommender APIs.
המלצות:
כדי להציג רשימה של המלצות למדיניות IAM שבה הפעלתם את Recommender API, מריצים את הפקודה הבאה:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/\recommenders/google.iam.policy.ChangeRiskRecommender/recommendations"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט.
תובנות:
אפשר להשתמש בסדרה דומה של פקודות כדי להציג תובנות:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.iam.policy.ChangeRiskInsight/insights"
מחליפים את הערכים הבאים:
* PROJECT_ID : מזהה הפרויקט.
* BILLING_PROJECT_ID : מזהה פרויקט החיוב.
מחיקות מסוכנות באמצעות ה-CLI של gcloud
כשמוחקים משאבים באמצעות ה-CLI של gcloud, אפשר להשתמש בדגל האופציונלי המוסתר --recommend=yes בגרסת אלפא כדי להפסיק שינויים מסוכנים. בהמשך מוצגות דוגמאות לשינויים מסוכנים נתמכים עם המלצות. אם לא מוצגת הערכת סיכונים, השינוי לא נחשב לשינוי מסוכן.
מחיקת פרויקט
הפקודה הבאה מוחקת פרויקט:
gcloud alpha projects delete PROJECT_ID --recommend=yes
יוצגו לכם השינויים המסוכנים הבאים שנתמכים עם המלצות:
Shutting down this project will immediately:
- Stop all traffic and billing.
- Start deleting resources.
- Schedule the final deletion of the project after 30 days.
- Block your access to the project.
- Notify the owner of the project.
Learn more about the shutdown process at
https://cloud.google.com/resource-manager/docs/creating-managing-projects#shutting_down_projects
WARNING: If you shut down this project you risk losing data or interrupting your services. In the last 30 days we observed this project had:
- It had significant usage, including 9942 API calls.
- It contains at least 1 highly utilized service account.
- It included at least 211 resources.
We recommend verifying this is the correct project to shut down.
View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.resourcemanager.project.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000
Do you want to continue (Y/n)? n
מחיקה של חשבון שירות
הפקודה הבאה מוחקת חשבון שירות:
gcloud alpha iam service-accounts delete example@PROJECT_ID .iam.gserviceaccount.com --recommend=yes
יוצגו לכם השינויים המסוכנים הבאים שנתמכים עם המלצות:
You are about to delete service account [example@PROJECT_ID .iam.gserviceaccount.com]
Deleting this service account (SA) will delete all associated key IDs, and will prevent the account from authenticating to any Google Cloud service API.
You cannot restore or roll back this change easily. We highly recommend disabling the account first, testing for any unexpected impact, and only then deleting.
WARNING: If you delete this SA you risk interrupting your service, as we observed it was substantially used in the last 90 days.
We recommend verifying this is the correct account to delete.
View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.iam.serviceAccount.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000
Do you want to continue (Y/n)? n
אם הודעת השגיאה הבאה מופיעה:
ERROR: (gcloud.alpha.iam.service-accounts.delete) NOT_FOUND: Method not found.
- '@type': type.googleapis.com/google.rpc.DebugInfo
detail: 'Method ListInsights not found for service recommender.googleapis.com. Method not visible to labels: {PUBLIC}'
מוודאים שהגדרת הפרויקט מוגדרת לפרויקט שנכלל ברשימת ההיתרים לשימוש ב-Alpha Recommender API באמצעות הפקודה הבאה:
gcloud config set project PROJECT_ID
מחיקה של קישור מדיניות IAM בפרויקט
הפקודה הבאה מוחקת מדיניות IAM שמקושרת לפרויקט:
gcloud alpha projects remove-iam-policy-binding PROJECT_ID --member=YOUR_EMAIL@DOMAIN.COM --role=roles/owner --recommend=yes
יוצגו לכם השינויים המסוכנים הבאים שנתמכים עם המלצות:
You are about to delete the role [roles/owner].
WARNING: If you remove the role [roles/owner], there is a high risk that you might cause interruptions because it was used in the last 90 days.
We recommend you verify the details and replace them with less privileged roles, if necessary.
View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.iam.policy.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000
Do you want to continue (Y/n)? n
משוב ותמיכה
במקרה של בעיות טכניות, שאלות או משוב, אפשר לשלוח אימייל לכתובת active-assist-feedback@google.com.