גבולות ניהול בין פרויקטים (או גבולות) מאפשרים לכם לגלות, לנהל ולפקח על סוכני AI, שרתי Model Context Protocol (MCP) וכלים בכמה פרויקטים ב- Google Cloud . כברירת מחדל, Agent Registry פועל בתוך פרויקט ניהול אחד, אבל אם מגדירים גבול ניהול ב-Resource Manager, פרויקט ניהול מרכזי יכול לצבור סוכנים, שרתי MCP וכלים בפרויקטים חברים מבוזרים. כדי לתכנן טופולוגיות של כמה פרויקטים שניתנות להתאמה לעומס, חשוב להבין איך גבולות הניהול מגדירים את התפקידים בפרויקט, את צבירת המשאבים ואת בקרת הגישה.
כדי להגדיר גבול ניהול, קראו את המאמר הגדרת גבול ניהול למספר פרויקטים.
מודל גבולות
אתם מגדירים גבול ניהול בתיקייה או בארגון במנהל המשאבים:
- גבול ברמת התיקייה או הארגון: כברירת מחדל, אם יוצרים גבול בתיקייה או בארגון בלי להגדיר מסנן תגים, הגבול כולל את כל הפרויקטים הצאצאים באותה תיקייה או באותו ארגון בתור פרויקטים חברים.
- גבולות שמסוננים לפי תגים (אופציונלי): אם רוצים לחלק פרויקטים צאצאים בתיקייה או בארגון לכמה גבולות, אפשר לסנן את החברות בגבולות באמצעות תגים של מנהל המשאבים. לדוגמה, אפשר להפריד בין סביבות
prodו-dev. מצרפים תגים לGoogle Cloud פרויקטים שרוצים לכלול בכל גבול. אם לפרויקט צאצא בתיקייה או בארגון יש תג שתואם למסנן הגבולות, הפרויקט הזה הופך לפרויקט חבר בגבול הניהול.
כשמשתמשים בתגים כדי לחלק את גבולות הניהול, הם מספקים את היתרונות הבאים:
- רישום דינמי ואוטומטי: סביבות ענן משנות פרויקטים לעיתים קרובות. כשמתייגים פרויקט בערך תג רשום, כמו
env=prod, הפרויקט נכלל באופן אוטומטי כפרויקט חבר בגבול של Agent Registry, בלי שצריך לעדכן ידנית את הגדרות הגבול. - הפרדה מהיררכיות של תיקיות: מבני התיקיות של מנהל המשאבים בדרך כלל מאורגנים למטרות חיוב או למטרות עסקיות. התגים מפרידים בין הגדרות הגבולות לבין ההיררכיות הפיזיות של התיקיות, ומאפשרים לכם להגדיר היקפי ניהול של תיקיות חוצות בתיקיית הורה או בארגון.
- ירושה וסקלביליות: תגים שמוחלים על ארגון או תיקייה מועברים באופן אוטומטי בהיררכיית המשאבים לתיקיות ולפרויקטים הצאצאים. מודל ההעברה בירושה הזה מאפשר לכם לרשום ענפים שלמים של עץ המשאבים באמצעות הקצאת תג אחת.
- ניהול מרכזי: התגים כפופים להרשאות מרכזיות של ניהול זהויות והרשאות גישה (IAM). אם תשתמשו בתגים כדי להגדיר גבולות ניהול, תוכלו למנוע ממשתמשים בודדים להוסיף או להסיר פרויקטים מהגבול באופן שרירותי.
ארכיטקטורה ומשאבים עיקריים
גבול ניהול בין פרויקטים מסתמך על המשאבים הבאים של מנהל המשאבים:
הגדרת גבולות (משאב
BoundaryConfig): משאב הגדרה בארגון או בתיקייה ב-Resource Manager, שקובע את כללי החלוקה לגבולות באותה תיקייה או באותו ארגון. אם לא מגדירים מפתח תג במשאבBoundaryConfig, הארגון או התיקייה תומכים בגבול אחד שכולל את כל הפרויקטים הצאצאים. כדי לחלק פרויקטים צאצאים לכמה גבולות שמסוננים לפי תגים, המשאבBoundaryConfigמציין את מפתח התג של המשאב היחיד, כמו123456789012/env, שמשמש להערכת החברות בפרויקט באותה תיקייה או באותו ארגון.Boundary (משאב
Boundary): גבולות של פרויקטים ששייכים לארגון או לתיקייה. בלי מסנן תגים, הגבול כולל את כל הפרויקטים הצאצאים בארגון או בתיקייה ההורה. כשמגדירים מפתח תג במשאב ההורהBoundaryConfig, המשאבBoundaryמציין מסנן של ערך תג, כמוenv=prod, ופרויקטים צאצאים שיורשים את ערך התג הזה או מצרפים אותו שייכים לגבול באופן אוטומטי. בגלל שבמשאבBoundaryConfigשל ההורה יש מפתח תג אחד, ולפרויקט יכול להיות רק ערך תג אפקטיבי אחד לכל מפתח תג, פרויקט יכול להשתייך לכל היותר לגבול אחד לכל תיקיית הורה או ארגון הורה.הגדרת יכולת (משאב
CapabilityConfig): משאב שמוגדר בארגון, בתיקייה או בפרויקט. ברמת הארגון או התיקייה, היא מקשרת גבול אחד או יותר לפרויקט ניהול ייעודי ומציינת את יכולות הניהול שמופעלות בגבולות האלה. ברמת הפרויקט, הוא מאפשר יכולות ניהול לפרויקט עצמאי אחד ללא גבולות. ב-Agent Registry, מגדירים את היכולתAGENT_MANAGEMENT(ב-Google Cloud CLI: agent-management), שמאפשרת גילוי רכיבים מרכזי, סיכום חיפושים ופיקוח על פרויקטים שונים ב-Agent Registry, ומפעילה באופן אוטומטי אתagentregistry.googleapis.comבפרויקט הניהול.
למידע נוסף על המשאבים האלה של מנהל המשאבים, קראו את הסקירה הכללית על גבולות ויכולות הניהול.
בתרשים הבא מוצג איך המשאבים של מנהל המשאבים מחברים בין פרויקטים של חברים לפרויקט ניהול מרכזי:
ניהול של כמה פרויקטים
גבול ניהול מפריד בין הפיקוח הניהולי לבין ביצוע החישובים בשני תפקידים נפרדים של פרויקטים: פרויקט ניהול מרכזי ופרויקטים חברים.
המבנה המנותק הזה אוכף בידוד של מספר דיירים. הצוותים מפתחים ופורסים נציגים בפרויקטים של החברים שלהם בלי צורך בגישה ישירה לפרויקטים של חברים אחרים, והאדמינים והמתזמרים שומרים על הרשאות גישה מאוחדות בגבולות הניהול של פרויקט הניהול.
פרויקט ניהול
פרויקט ניהול הוא פרויקט ב- Google Cloud שמשמש כפרויקט הפיקוח המרכזי של גבול ניהול. הוא מרכז את הגדרות ה-API, בקרת הגישה, החיוב, צריכת המכסות והמטא-נתונים המצטברים של הרכיבים מעבר לגבולות, בלי צורך לארח סביבות זמן ריצה בסיסיות של מחשוב.
ב-Agent Registry, פרויקט הניהול מבצע את הפונקציות הבאות:
- קישור גבולות ויכולות: משויך לגבול אחד או יותר ב-Resource Manager באמצעות משאב
CapabilityConfigכשהיכולתAGENT_MANAGEMENTמופעלת. איך מגדירים גבולות ניהול - חיפוש וגילוי מרכזיים: משמש כפרויקט היעד לבקשות חיפוש ורשימות בפרויקטים שונים, ומאפשר לתזמנים, למפתחים ולאפליקציות לקוח לקיים אינטראקציה עם סוכנים, שרתי MCP וכלים שמתגלים באופן אוטומטי בכל הפרויקטים החברים בגבול.
- רישום משאבים ברמת גבולות הניהול: מארח משאבים שנרשמו באופן ידני ב-
Service, כמו סוכנים בהתאמה אישית, שרתי MCP חיצוניים ונקודות קצה, ומשאבים ב-Bindingכשרוצים שהמשאבים האלה יהיו גלויים בכל גבולות הניהול. - ניהול מרכזי של ממשקי API, חיובים ומכסות: ריכוז של הפעלת Agent Registry API, הקצאת מכסות וחיובים לפעולות גילוי ופיקוח ברמת הגבול.
כשמגדירים משאב CapabilityConfig בתיקייה או בארגון ב-Resource Manager, אפשר להקצות את פרויקט הניהול באחת מהדרכים הבאות:
- פרויקט ניהול בניהול עצמי: אתם מגדירים פרויקטGoogle Cloud קיים שאתם מנהלים, על ידי העברת הדגל
--management-projectכשאתם יוצרים את המשאבCapabilityConfig. הפרויקט חייב להיות ישירות באותה תיקיית הורה או באותו ארגון כמו המשאבCapabilityConfig, והוא לא יכול לשמש כפרויקט ניהול של משאבCapabilityConfigאחר. אם תמחקו את המשאבCapabilityConfig, מנהל המשאבים ישמור את הפרויקט בניהול עצמי ויחזיר אותו למצב של פרויקט רגיל. - פרויקט ניהול שמנוהל על ידי Google: משמיטים את הדגל
--management-projectכשיוצרים את המשאבCapabilityConfig, ומנהל המשאבים יוצר ומנהל באופן אוטומטי פרויקט חדש בתיקיית ההורה או בארגון ההורה. לפרויקט שנוצר יש קידומת של מזהה פרויקטgoogle-mpfאוgoogle-mpo. אם תמחקו את המשאבCapabilityConfig, מנהל המשאבים ימחק את הפרויקט הזה שמנוהל על ידי Google.
בשני המקרים, יצירת המשאב CapabilityConfig באמצעות agent-management מפעילה באופן אוטומטי את agentregistry.googleapis.com בפרויקט הניהול.
פרויקטים של חברים
פרויקטים חברים הם הפרויקטים ב- Google Cloud ששייכים לגבול ניהול. הם יכולים להיות כל הפרויקטים הצאצאים בתיקיית ההורה או בארגון ההורה של הגבול, או הפרויקטים הצאצאים שתואמים למסנן אופציונלי של תגי גבול, כמו env=prod. סוכנים, שרתי MCP וכלים שמתגלים באופן אוטומטי פועלים בפרויקטים של חברים.
בפרויקטים החברים נשמרים משאבי המחשוב המקומיים שלהם, כמו מנועי חשיבה רציונלית של Agent Runtime, שירותי Cloud Run או אשכולות GKE. משאבים שמתגלים באופן אוטומטי נקלטים באופן מקומי בכל פרויקט חבר, ונצברים בפרויקט הניהול כשמציגים את המשאבים ברשימה או מחפשים אותם במאגר. לעומת זאת, משאבים שרשמתם ידנית בפרויקט חבר גלויים רק כשאתם שולחים בקשה לפרויקט החבר הספציפי הזה.
השיוך של פרויקטים חברים לפרויקט ניהול בגבול כפוף למגבלות המערכת. חריגה מהמגבלה הזו עלולה לגרום לשגיאות אוסף. מידע נוסף זמין במאמר מכסות ומגבלות מערכת.
רישום ואוסף נתונים
ב-Agent Registry, כשמזהים משאבים בפרויקטים שונים, יש הבחנה בין משאבים שזוהו אוטומטית ונפרסו בפרויקטים חברים לבין משאבים שנרשמו ידנית ומוגדרים לפרויקט שבו הם נוצרו.
משאבים שזוהו ונרשמו באופן אוטומטי
ההיקף של משאב בגבולות הניהול תלוי באופן שבו הוא רשום:
סוכנים ושרתי MCP שמתגלים באופן אוטומטי: משאבים נתמכים שנפרסים בפרויקטים חברים, כמו מנועי חשיבה רציונלית של Agent Runtime, שירותי Cloud Run ופריסות GKE, נקלטים באופן אוטומטי בפרויקט החבר שבו הם נפרסים ונצברים בפרויקט הניהול.
משאבים וקישורים שנרשמו ידנית: משאבי
Serviceשנרשמו ידנית, כמו סוכנים בהתאמה אישית, שרתי MCP חיצוניים, נקודות קצה ומשאביBinding, מוגדרים ברמת הפרויקט שבו הם נוצרו:- אם אתם רוצים שהם יהיו גלויים בכל גבולות הניהול, צרו אותם בפרויקט הניהול.
- אם אתם רוצים שהם יהיו גלויים רק בפרויקט אחד, צרו אותם בפרויקט הזה.
מיומנויות, בעלי תוכן דיגיטלי ואפליקציות AI עצמאיים: משאבים עצמאיים בהתאמה אישית של
Skill,SkillRevision,Publisherו-AiApplicationמוגדרים ברמת הפרויקט שבו הם נוצרו, ולא נצברים בפרויקטים החברים בגבול הניהול. רושמים מיומנויות עצמאיות בהתאמה אישית ואפליקציות מבוססות-AI בפרויקט שבו הסוכנים או המפתחים צריכים לגלות אותן. סקילים עצמאיים שמנוהלים על ידי Google ניתנים לגילוי בכל פרויקט באופן אוטומטי.
אוסף שאילתות מרכזי
ההיקף של המיקומים ב-Agent Registry תלוי בשאלה אם אתם שולחים שאילתה לפרויקט פיקוח עצמאי, או לפרויקט חבר או לפרויקט ניהול בגבולות הניהול:
- פרויקטים עצמאיים של ניהול ופרויקטים חברים: שאילתות במיקום שנתמך ב-Agent Registry, כמו
us-central1,europe-west1,us,euאוglobal, מחזירות רק משאבים במיקום הזה לאותו פרויקט, בלי סיכום של כמה פרויקטים. פרויקט ניהול: כשמפעילים משאב
CapabilityConfigעםagent-managementבפרויקט ניהול, יש תמיכה באוסף נתונים מצטברים בפרויקטים שונים בכל המיקומים שנתמכים ב-Agent Registry. כששולחים שאילתה לגבי מיקום בפרויקט הניהול, המשאבים נאספים באותו מיקום בפרויקט הניהול ובכל הפרויקטים החברים בגבולות הניהול. האוסף הזה לא כולל משאבים ממיקומים שונים:- אזורים יחידים: שאילתות באזור יחיד, כמו
us-central1אוeurope-west1, צוברות סוכנים ושרתי MCP שזוהו באופן אוטומטי ונפרסו באותו אזור יחיד בפרויקט הניהול ובפרויקטים החברים בו, לצד משאביServiceו-Bindingשנוצרו באותו אזור בפרויקט הניהול. - מספר אזורים: שאילתות במספר אזורים, כמו
usאוeu, צוברות סוכנים ושרתי MCP שזוהו באופן אוטומטי ונפרסו במספר האזורים הזה בפרויקט הניהול ובפרויקטים החברים בו. שאילתות במספר אזורים לא צוברות משאבים שנפרסו באזורים בודדים. - גלובלי: שאילתות במיקום
globalצוברות סוכנים ושרתי MCP שזוהו באופן אוטומטי ונפרסו ב-globalבפרויקט הניהול ובפרויקטים החברים בו, לצד משאביServiceו-Bindingשנוצרו ב-globalבפרויקט הניהול. שאילתות ב-globalלא צוברות משאבים שנפרסו במספר אזורים או באזורים בודדים.
- אזורים יחידים: שאילתות באזור יחיד, כמו
כשמציגים, מחפשים או מאחזרים רכיבים של סוכנים במיקום מסוים בפרויקט הניהול, Agent Registry מבצע את הפעולות הבאות:
- מזהה את כל הפרויקטים החברים שמשויכים לפרויקט הניהול באמצעות המשאב הפעיל
CapabilityConfig. - השאילתה מחפשת סוכנים ושרתי MCP שזוהו אוטומטית במיקום הזה בפרויקט הניהול ובכל פרויקט חבר, לצד משאבי
Serviceשנוצרו במיקום הזה בפרויקט הניהול ונרשמו ידנית. - הוא צובר משאבים תואמים לקבוצת תוצאות מאוחדת.
- השירות מחזיר לכם את התוצאות המצטברות.
אם כמה גבולות מצורפים לאותו משאב CapabilityConfig, Agent Registry צובר פרויקטים של חברים מכל הגבולות המצורפים לאותו מרשם של פרויקט ניהול. כדי לצמצם את הרשימה או את תוצאות החיפוש בפרויקט הניהול לפרויקט חבר יחיד, מעבירים את --filter="project_id=MEMBER_PROJECT_ID". אם שתי סביבות דורשות הרשאות גישה נפרדות, צריך ליצור פרויקט נפרד לניהול משאבים ב-CapabilityConfig לכל גבול.
בחיפוש בפרויקט יחיד ובחיפוש בכמה פרויקטים משתמשים באותן שיטות API. היקף החיפוש תלוי בשאלה אם הפרויקט המטורגט הוא פרויקט חבר או פרויקט ניהול.
שמות של משאבים בתחום ניהול אחר
כשמצרפים רכיב לפרויקט חבר, Agent Registry מקצה לו מזהה, כמו AGENT_ID או SERVER_ID. כשמציגים, מחפשים או מקבלים רכיב מעבר לגבולות הניהול, Agent Registry שומר על המזהה של הרכיב הזה ומעצב את שם המשאב המשויך על סמך הפרויקט שבו משתמשים:
- פרויקט ניהול: כשמציגים, מחפשים או מקבלים רכיבים באמצעות פרויקט הניהול, כל שם משאב משתמש בפרויקט הניהול.
- פרויקט חבר: כשמציגים, מחפשים או מקבלים רכיבים באמצעות הפרויקט החבר שבו המשאב פרוס, כל שם משאב משתמש בפרויקט החבר הזה.
בטבלה הבאה מוצגים כתובת ה-URL של הבקשה ושם המשאב המשויך למשאבים שזוהו באופן אוטומטי ונפרסו בפרויקט חבר:
| סוג המשאב | בקש כתובת אתר | שם המשאב המשויך |
|---|---|---|
| Agent | projects/MANAGEMENT_PROJECT_ID/locations/LOCATION/agents/AGENT_ID |
projects/MANAGEMENT_PROJECT_ID/locations/LOCATION/agents/AGENT_ID |
projects/MEMBER_PROJECT_ID/locations/LOCATION/agents/AGENT_ID |
projects/MEMBER_PROJECT_ID/locations/LOCATION/agents/AGENT_ID |
|
| שרת MCP | projects/MANAGEMENT_PROJECT_ID/locations/LOCATION/mcpServers/SERVER_ID |
projects/MANAGEMENT_PROJECT_ID/locations/LOCATION/mcpServers/SERVER_ID |
projects/MEMBER_PROJECT_ID/locations/LOCATION/mcpServers/SERVER_ID |
projects/MEMBER_PROJECT_ID/locations/LOCATION/mcpServers/SERVER_ID |
שם המשאב המשויך משקף את הפרויקט בבקשה שלכם. עם זאת, מזהה הרישום וההפניה לזמן הריצה של הרכיב לא משתנים, ותמיד שומרים על פרויקט החבר שבו פועל עומס העבודה הבסיסי.
תצוגה חזותית של טופולוגיה וזרימת תנועה
מנהלי פלטפורמות ואדריכלי AI יכולים להשתמש בתרשים הטופולוגי כדי לראות את הקשרים בין כמה סוכנים ואת התנועה בין פרויקטים.
התרשים הטופולוגי ממחיש את המאפיינים הארכיטקטוניים הבאים:
- מתאם הפניות בזמן ריצה: מתאם בין מזהה הסוכן הלוגי לבין ההפניה בזמן ריצה הפיזית שלו. ההתאמה הזו מאפשרת למפעילים לעקוב אחרי סוכן ב-Agent Registry ישירות למנוע החשיבה הרציונלית הבסיסי של Agent Runtime, לשירות Cloud Run או לפריסת GKE.
- קישורים בין פרויקטים: מציג קישורים בין סוכני ניהול בפרויקט אחד לבין שרתי MCP או כלים במורד הזרם בפרויקט אחר.
- אימות היקף: עוזר לאדמינים לוודא שהתקשורת של הנציג תואמת להיקפים של VPC Service Controls, ומנותבת דרך נקודות קצה ייעודיות של Agent Gateway.
בקרת גישה
בגבולות הניהול, אתם מקצים תפקידי IAM לחיפוש בפרויקט הניהול, כדי שהמשתמשים והתזמורנים יוכלו לחפש בכל הגבולות בלי שתצטרכו לתת להם גישה ישירה באמצעות IAM לפרויקטים ספציפיים שחברים בגבולות. מכיוון שמשאבי Service ו-Binding שנרשמו באופן ידני ונוצרו בפרויקט חבר לא נכללים בפרויקט הניהול, אדמינים של אבטחה יכולים גם להגביל את היצירה המקומית של Service ו-Binding בפרויקטים חברים באמצעות אילוץ של מדיניות הארגון או מדיניות דחייה של IAM. כשנציגים בפרויקטים חברים מפעילים כלים או מתקשרים עם נציגים בפרויקטים אחרים מעבר לגבול, אפשר לנתב את התנועה דרך Agent Gateway מרכזי.
במשאבים שנמצאים בגבולות הניהול, ההגבלות של VPC Service Controls חלות רק על אינטראקציות של Agent Registry בפרויקט הניהול. ב-Agent Registry אפשר לגלות סוכנים ושרתי MCP בכל הפרויקטים שחברים בגבולות הניהול, גם אם הפרויקטים האלה לא נמצאים באותם גבולות גזרה לשירות כמו פרויקט הניהול.
למידע נוסף על התפקידים שנדרשים להגדרת גבולות, גישה למרשם והגבלות כתיבה בפרויקטים של חברים, קראו את המאמר תפקידים לניהול גבולות בין פרויקטים.
המאמרים הבאים
- הגדרת גבולות ניהול ב-Resource Manager.
- מידע על מודל הנתונים בפרויקטים שונים
- חיפוש בין מערכות שונות.
- בודקים את התפקידים וההרשאות ב-Agent Registry.