בדף הזה מוסבר איך שירות מנוהל ל-Apache Kafka מקצה ברוקרים לאשכול Kafka.
סקירה כללית
אשכול Kafka מורכב מברוקרים אחד או יותר. אפליקציות של יצרנים שולחות הודעות למתווכים, ואפליקציות של צרכנים מתחברות למתווכים כדי לקרוא הודעות. כמה צרכנים יכולים לקרוא הודעות במקביל, בדרך כלל באמצעות קבוצת צרכנים. לכל מחיצה בנושא מוקצה ברוקר מוביל. הלידר אחראי לשכפול נתוני המחיצה שהוא מקבל לברוקרים אחרים.
השירות המנוהל ל-Apache Kafka יוצר עבורכם ברוקרים באופן אוטומטי. למרות שאי אפשר להגדיר ישירות את מספר הברוקרים, אפשר להגדיל את גודל האשכול כדי להוסיף ברוקרים.
הקצאת הרשאות למתווך
כשיוצרים אשכול של שירות מנוהל ל-Apache Kafka, השירות מספק לפחות ברוקר אחד בכל אחד משלושת האזורים. מספר הברוקרים מחושב כך:
number of brokers = max(3, ceiling(vCPUs / 15))
לדוגמה, קלאסטר עם 75 מעבדי vCPU מתחיל עם 5 ברוקרים.
הברוקרים מפוזרים באופן שווה ככל האפשר בין האזורים, ולכל הברוקרים יש אותו מספר של מעבדים וירטואליים, שיכול להיות ערך חלקי. לכל ברוקר יש לפחות מעבד וירטואלי אחד.
השירות מקצה אוטומטית קיבולת דיסק לברוקרים. אפשר גם להגדיר את קיבולת הדיסק לכל ברוקר כשיוצרים את האשכול, ולהגדיל אותה בהמשך. מידע נוסף זמין במאמר בנושא הגדרת גודל הדיסק של הברוקר.
שינוי הגודל של האשכול
ככל שמגדילים את גודל האשכול, מעבדים וירטואליים נוספים מחולקים בין הברוקרים הקיימים, עד למגבלה של 15 מעבדים וירטואליים לכל ברוקר. אם גודל האשכול גדול מ-15 vCPU לכל ברוקר, השירות מקצה ברוקר חדש. הברוקרים מפוזרים באופן שווה בין שלושת האזורים, עם הבדל מקסימלי של אחד.
אם מקטינים את גודל האשכול, מעבדי ה-vCPU מפוזרים בין הברוקרים הקיימים, עד למינימום של מעבד vCPU אחד לכל ברוקר. מתווכים אף פעם לא נמחקים במהלך משך החיים של אשכול. אחרי הקצאה של ברוקר חדש, אפשר להקטין את הגודל שלו עד ל-vCPU אחד, אבל הוא אף פעם לא נמחק.
איזון מחדש של מחיצות ברוקר
לרוב, הסיבה להגדלת קלאסטר היא להפחית את העומס על ברוקרים קיימים, על ידי הקצאה מחדש של מחיצות לברוקר החדש. התהליך הזה נקרא איזון מחדש. אפשר לבצע איזון מחדש באופן אוטומטי או ידני.
איזון מחדש אוטומטי. איזון מחדש אוטומטי הוא הגדרה ברמת האשכול. כשמוסיפים ברוקר חדש, אם מופעל איזון מחדש אוטומטי, השירות מאזן מחדש באופן אוטומטי את המחיצות מהברוקרים הקיימים. אלגוריתם האיזון מחדש מבוסס על מספר המחיצות, ומטרתו לשמור על מספר מחיצות זהה בערך לכל ברוקר. הוא לא מתחשב בתנועה בפועל שמוצגת בכל מחיצה. מידע נוסף מופיע במאמר בנושא הגדרה של איזון מחדש.
איזון מחדש ידני. אפשר לשנות את הקצאת המחיצות כדי לאזן מחדש את המחיצות באופן ידני. יכול להיות שתצטרכו לעשות את זה כי האיזון האוטומטי מושבת, או כי מחיצה מקבלת תנועה משמעותית יותר ממחיצות אחרות (מצב שנקרא מחיצה פעילה). מידע נוסף מופיע במאמר בנושא שינוי ההקצאה של מחיצה