לוגו ג'וניפר

תוכנת ממשק API לסטרימינג של Juniper NETWORKSJuniper-NETWORKS-Streaming-API-Software-product

מידע על המוצר

מפרטים

  • שם המוצר: Paragon Active Assurance
  • גרסה: 4.1
  • תאריך פרסום: 2023-03-15

מָבוֹא:
מדריך זה מספק הוראות כיצד לחלץ נתונים מ-Pargon Active Assurance באמצעות ממשק ה-API לסטרימינג של המוצר. לקוח הסטרימינג וה-API כלולים בהתקנת Paragon Active Assurance, אך נדרשת הגדרה מסוימת לפני השימוש ב-API. תהליך ההגדרה מכוסה בסעיף "הגדרת ממשק API לסטרימינג".

הגדרת ממשק API לסטרימינג:
השלבים הבאים מתארים את התהליך להגדרת ממשק API לסטרימינג:

מֵעַלview
Kafka היא פלטפורמת הזרמת אירועים המיועדת ללכידה ואחסון בזמן אמת של נתונים ממקורות שונים. זה מאפשר ניהול של זרמי אירועים בצורה מבוזרת, ניתנת להרחבה, סובלנית לתקלות ומאובטחת. מדריך זה מתמקד בהגדרת קפקא לשימוש בתכונת ה-API של Streaming ב- Paragon Active Assurance Control Center.

טרמינולוגיה
ה-API של Streaming מאפשר ללקוחות חיצוניים לאחזר מידע מדדים מקפקא. מדדים שנאספו על ידי סוכני הבדיקה במהלך משימת בדיקה או ניטור נשלחים לשירות הזרם. לאחר העיבוד, שירות הזרם מפרסם את המדדים הללו על קפקא יחד עם מטא נתונים נוספים.

נושאי קפקא
ה-API של Streaming משתמש בנושאי קפקא כדי לארגן ולאחסן מדדים ומטא נתונים. ניתן ליצור ולנהל נושאי קפקא לפי דרישות ספציפיות.

הפעלת ה-API של Streaming
כדי להפעיל את ה-API של Streaming, בצע את השלבים הבאים:

  1. הפעל את הפקודות הבאות בשרת מרכז הבקרה באמצעות sudo:
KAFKA_METRICS_ENABLED = שירותי sudo ncc אמיתיים מאפשרים מדדי timescaledb שירותי sudo ncc התחלת מדדי timescaledb שירותי sudo ncc

אימות שממשק ה-API של הסטרימינג פועל במרכז הבקרה:
כדי לוודא שאתה מקבל מדדים בנושאי קפקא הנכונים:

  1. התקן את כלי השירות kafkacat עם הפקודות הבאות:
    sudo apt-get update
    sudo apt-get להתקין kafkacat
  1. החלף את "החשבון שלי" בשם הקצר של החשבון שלך ב-
    מרכז בקרה URL:
    ייצא METRICS_TOPIC=paa.public.accounts.myaccount.metrics
    ייצא METADATA_TOPIC=paa.public.accounts.myaccount.metadata
  1. הפעל את הפקודה הבאה ל view מדדים:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e
    פֶּתֶק: הפקודה לעיל תציג את המדדים.
  2. אֶל view metadata, הפעל את הפקודה הבאה:
    kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e

פֶּתֶק: הפקודה לעיל תציג מטא נתונים, אך היא לא תתעדכן בתדירות גבוהה.

לקוח דוגמהamples
ללקוח לשעברampמסמכים ומידע נוסף, עיין בעמוד 14 במדריך למשתמש.

שאלות נפוצות (שאלות נפוצות)

  • ש: מהו Paragon Active Assurance?
    ת: Paragon Active Assurance הוא מוצר המספק יכולות ניטור ובדיקה.
  • ש: מהו ה-API לסטרימינג?
    ת: ה- Streaming API הוא תכונה ב- Paragon Active Assurance המאפשרת ללקוחות חיצוניים לאחזר מידע מדדים מקפקא.
  • ש: כיצד אוכל להפעיל את ה-API של Streaming?
    ת: כדי להפעיל את ה-API של סטרימינג, בצע את השלבים המפורטים בסעיף "הפעלת ה-API של סטרימינג" במדריך למשתמש.
  • ש: כיצד אוכל לוודא שממשק ה-API של Streaming פועל?
    ת: עיין בסעיף "אימות שממשק ה-API של הסטרימינג עובד במרכז הבקרה" לקבלת הוראות כיצד לאמת את הפונקציונליות של ה-API לסטרימינג.

מָבוֹא

מדריך זה מתאר כיצד לחלץ נתונים מ-Pargon Active Assurance באמצעות ממשק ה-API לסטרימינג של המוצר.
ה-API כמו גם לקוח הסטרימינג כלולים בהתקנת Paragon Active Assurance. עם זאת, יש צורך במעט תצורה לפני שתוכל להשתמש ב-API. זה מכוסה בפרק "הגדרת ממשק API לסטרימינג" בעמוד 1.

מֵעַלview
פרק זה מתאר כיצד להגדיר את ה-API של Streaming כך שיאפשר הרשמה להודעות מדדים דרך Kafka.
pr
להלן נעבור על:

  • כיצד להפעיל את ה-API של Streaming
  • כיצד להגדיר את קפקא להאזין ללקוחות חיצוניים
  • כיצד להגדיר את קפקא להשתמש ב-ACL ולהגדיר הצפנת SSL עבור הלקוחות האמורים

מה זה קפקא?
Kafka היא פלטפורמת הזרמת אירועים המאפשרת לכידה בזמן אמת של נתונים שנשלחו ממקורות אירועים שונים (חיישנים, מסדי נתונים, מכשירים ניידים) בצורה של זרמי אירועים, כמו גם אחסון עמיד של זרמי אירועים אלו לצורך אחזור ומניפולציה מאוחרת יותר.
עם קפקא אפשר לנהל את הזרמת האירוע מקצה לקצה בצורה מבוזרת, ניתנת להרחבה, אלסטית, סובלנית לתקלות ובטוחה.

פֶּתֶק: ניתן להגדיר את קפקא בדרכים רבות ושונות והוא תוכנן עבור מדרגיות ומערכות מיותרות. מסמך זה מתמקד רק כיצד להגדיר אותו כך שיעשה שימוש בתכונת ה-API של Streaming שנמצאת ב- Paragon Active Assurance Control Center. להגדרות מתקדמות יותר אנו עיין בתיעוד הרשמי של קפקא: kafka.apache.org/26/documentation.html.

טרמינולוגיה

  • קפקא: פלטפורמת הזרמת אירועים.
  • נושא קפקא: אוסף אירועים.
  • מנוי/צרכן קפקא: רכיב האחראי על אחזור אירועים המאוחסנים בנושא קפקא.
  • קפקא ברוקר: שרת שכבת אחסון של אשכול קפקא.
  • SSL/TLS: SSL הוא פרוטוקול מאובטח שפותח לשליחת מידע בצורה מאובטחת דרך האינטרנט. TLS הוא היורש של SSL, שהוצג ב-1999.
  • SASL: מסגרת המספקת מנגנונים לאימות משתמשים, בדיקת שלמות נתונים והצפנה.
  • מנוי סטרימינג API: רכיב האחראי על אחזור אירועים המאוחסנים בנושאים המוגדרים ב- Paragon Active Assurance ומיועדים לגישה חיצונית.
  • רשות אישורים: ישות מהימנה המנפיקה ומבטלת אישורי מפתח ציבורי.
  • אישור בסיס של רשות אישורים: אישור מפתח ציבורי המזהה רשות אישורים.

כיצד פועל ממשק ה-API של Streaming
כפי שהוזכר קודם לכן, ה-API של Streaming מאפשר ללקוחות חיצוניים לאחזר מידע על מדדים מקפקא.

כל המדדים שנאספו על ידי סוכני הבדיקה במהלך משימת בדיקה או ניטור נשלחים לשירות הזרם. לאחר שלב עיבוד, שירות הזרם מפרסם את המדדים הללו על קפקא יחד עם מטא נתונים נוספים.

Juniper-NETWORKS-Streaming-API-Software- (1)

נושאי קפקא
לקפקא יש את הרעיון של נושאים אליהם מתפרסמים כל הנתונים. ב-Pargon Active Assurance יש הרבה נושאי קפקא כאלה; עם זאת, רק תת-קבוצה של אלה מיועדות לגישה חיצונית.
לכל חשבון Paragon Active Assurance במרכז הבקרה יש שני נושאים ייעודיים. להלן, ACCOUNT הוא השם הקצר של החשבון:

  • paa.public.accounts.{ACCOUNT}.מדדים
    • כל הודעות המדדים עבור החשבון הנתון מתפרסמות בנושא זה
    • כמויות גדולות של נתונים
    • תדירות עדכון גבוהה
  • paa.public.accounts.{ACCOUNT}.metadata
    • מכיל מטא נתונים הקשורים לנתוני המדדים, למשלampהבדיקה, המוניטור או סוכן הבדיקה המשויכים למדדים
    • כמויות קטנות של נתונים
    • תדירות עדכון נמוכה

הפעלת ה-API של Streaming

פֶּתֶק: יש להפעיל הוראות אלה בשרת מרכז הבקרה באמצעות sudo.

מכיוון שממשק ה-API של Streaming מוסיף תקורה מסוימת למרכז הבקרה, הוא אינו מופעל כברירת מחדל. כדי להפעיל את ה-API, עלינו לאפשר תחילה פרסום של מדדים לקפקא בתצורה הראשית file:

KAFKA_METRICS_ENABLED = נכון

אַזהָרָה: הפעלת תכונה זו עשויה להשפיע על ביצועי מרכז הבקרה. ודא שהגדרת את המופע שלך בהתאם.

לאחר מכן, כדי לאפשר העברה של מדדים אלה לנושאים הנכונים של קפקא:

streaming-api: נכון

כדי להפעיל ולהפעיל את שירותי Streaming API, הפעל:

  • שירותי sudo ncc מאפשרים מדדי timescaledb
  • שירותי sudo ncc מתחילים מדדי timescaledb

לבסוף, הפעל מחדש את השירותים:

  • הפעלה מחדש של שירותי sudo ncc

אימות שה-API של הסטרימינג עובד במרכז הבקרה

פֶּתֶק: יש להפעיל הוראות אלה בשרת מרכז הבקרה.

כעת תוכל לוודא שאתה מקבל מדדים בנושאי קפקא הנכונים. כדי לעשות זאת, התקן את כלי השירות kafkacat:

  • sudo apt-get update
  • sudo apt-get להתקין kafkacat

אם יש לך מבחן או צג הפועל במרכז הבקרה, אתה אמור להיות מסוגל להשתמש ב-kafkacat כדי לקבל מדדים ומטא נתונים בנושאים אלה.
החלף את myaccount בשם הקצר של החשבון שלך (זה מה שאתה רואה במרכז הבקרה שלך URL):

  • ייצא METRICS_TOPIC=paa.public.accounts.myaccount.metrics
  • ייצא METADATA_TOPIC=paa.public.accounts.myaccount.metadata

כעת אתה אמור לראות מדדים על ידי הפעלת הפקודה הזו:

  • kafkacat -b ${KAFKA_FQDN}:9092 -t ${METRICS_TOPIC} -C -e

אֶל view metadata, הפעל את הפקודה הבאה (שים לב שזה לא יתעדכן בתדירות גבוהה):

  • kafkacat -b ${KAFKA_FQDN}:9092 -t ${METADATA_TOPIC} -C -e

פֶּתֶק:
kafkacat" לקוח Examples ”בעמוד 14

זה מוודא שיש לנו ממשק API לזרימה עובד מתוך מרכז הבקרה. עם זאת, סביר להניח שאתה מעוניין לגשת לנתונים מלקוח חיצוני במקום זאת. הסעיף הבא מתאר כיצד לפתוח את קפקא לגישה חיצונית.

פתיחת קפקא למארחים חיצוניים

פֶּתֶק: יש להפעיל הוראות אלה בשרת מרכז הבקרה.

כברירת מחדל קפקא שפועל במרכז הבקרה מוגדר להאזין רק ב-localhost לשימוש פנימי. אפשר לפתוח את קפקא עבור לקוחות חיצוניים על ידי שינוי הגדרות קפקא.

התחברות לקפקא: אזהרות

זְהִירוּת: אנא קרא זאת בעיון, מכיוון שקל להיתקל בבעיות חיבור עם קפקא אם לא הבנת את המושגים הללו.

בהגדרת מרכז הבקרה המתוארת במסמך זה, יש רק מתווך קפקא בודד.
עם זאת, שים לב שמתווך קפקא נועד לפעול כחלק מאשכול קפקא שעשוי להכיל מתווכים רבים של קפקא.
בעת חיבור למתווך של קפקא, נוצר חיבור ראשוני על ידי לקוח קפקא. על פני הקשר הזה מתווך קפקא בתורו יחזיר רשימה של "מאזינים מפורסמים", שהיא רשימה של מתווך קפקא אחד או יותר.
עם קבלת רשימה זו, לקוח קפקא יתנתק, ואז יתחבר מחדש לאחד מהמאזינים המפורסמים הללו. המאזינים המפורסמים חייבים להכיל שמות מארחים או כתובות IP הנגישות ללקוח קפקא, אחרת הלקוח לא יצליח להתחבר.
אם נעשה שימוש בהצפנת SSL, הכוללת תעודת SSL הקשורה לשם מארח מסוים, חשוב עוד יותר שלקוח קפקא יקבל את הכתובת הנכונה להתחבר אליה, שכן אחרת החיבור עלול להידחות.
קרא עוד על מאזיני קפקא כאן: www.confluent.io/blog/kafka-listeners-explained

הצפנת SSL/TLS
כדי לוודא שרק לקוחות מהימנים מורשים לגשת לקפקא ול- Streaming API, עלינו להגדיר את הדברים הבאים:

  • אימות: על הלקוחות לספק שם משתמש וסיסמה באמצעות חיבור מאובטח SSL/TLS בין הלקוח לקפקא.
  • הַרשָׁאָה: לקוחות מאומתים יכולים לבצע משימות המוסדרות על ידי ACLs.

הנה סיוםview:

Juniper-NETWORKS-Streaming-API-Software- (2)

*) אימות שם משתמש/סיסמה בוצע בערוץ מוצפן SSL

כדי להבין היטב כיצד פועלת הצפנת SSL/TLS עבור קפקא, עיין בתיעוד הרשמי: docs.confluent.io/platform/current/kafka/encryption.html

אישור SSL/TLS נגמרview

פֶּתֶק: בתת-סעיף זה נשתמש בטרמינולוגיה הבאה:

תְעוּדָה: אישור SSL חתום על ידי רשות אישורים (CA). לכל מתווך של קפקא יש אחד.
מאגר מפתחות: מאגר המפתחות file שמאחסן את התעודה. מאגר המפתחות file מכיל את המפתח הפרטי של התעודה; לכן, יש לשמור אותו בבטחה.
Truststore: א file המכיל את אישורי ה-CA המהימנים.

כדי להגדיר את האימות בין לקוח חיצוני לקפקא הפועל במרכז הבקרה, לשני הצדדים חייב להיות מאגר מפתחות המוגדר עם תעודה קשורה חתומה על ידי רשות אישורים (CA) יחד עם אישור השורש של CA.
בנוסף לכך, ללקוח חייב להיות גם חנות נאמנות עם אישור השורש של CA.
אישור השורש CA משותף לברוקר קפקא וללקוח קפקא.

יצירת האישורים הנדרשים
זה מכוסה ב"נספח" בעמוד 17.

קפקא ברוקר SSL/TLS תצורת במרכז הבקרה

פֶּתֶק: יש להפעיל הוראות אלה בשרת מרכז הבקרה.

פֶּתֶק: לפני שתמשיך, עליך ליצור את מאגר המפתחות המכיל את אישור ה-SSL על ידי ביצוע ההוראות ב"נספח" בעמוד 17. הנתיבים המוזכרים להלן מגיעים מהוראות אלה.
מאגר המפתחות של SSL הוא א file מאוחסן בדיסק עם ה file סיומת .jks.

לאחר שתהיה לך את האישורים הנדרשים שנוצרו עבור המתווך של קפקא וגם עבור לקוח קפקא, תוכל להמשיך על ידי הגדרת המתווך של קפקא הפועל במרכז הבקרה. אתה צריך לדעת את הדברים הבאים:

  • : שם המארח הציבורי של מרכז הבקרה; זה חייב להיות בר פתרון ונגיש על ידי לקוחות קפקא.
  • : סיסמת מאגר המפתחות שסופקה בעת יצירת אישור ה-SSL.
  • ו : אלו הן הסיסמאות שברצונך להגדיר עבור משתמש המנהל והלקוח בהתאמה. שים לב שאתה יכול להוסיף משתמשים נוספים, כפי שצוין בדוגמהample.

ערוך או הוסף (עם גישת sudo) את המאפיינים למטה ב- /etc/kafka/server.properties, תוך הכנסת המשתנים לעיל כפי שמוצג:

אַזהָרָה: אל תסיר את PLAINTEXT://localhost:9092; זה ישבור את הפונקציונליות של מרכז הבקרה מכיוון ששירותים פנימיים לא יוכלו לתקשר.

  • # הכתובות שהברוקר של קפקא מאזין להן.
  • listeners=PLAINTEXT://localhost:9092,SASL_SSL://0.0.0.0:9093
  • # אלו הם המארחים המפורסמים בחזרה לכל לקוח שמתחבר.
  • advertised.listeners=PLAINTEXT://localhost:9092,SASL_SSL:// :9093 …
  • ####### תצורה מותאמת אישית
  • # תצורת SSL
  • ssl.endpoint.identification.algorithm=
    ssl.keystore.location=/var/ssl/private/kafka.server.keystore.jks
  • ssl.keystore.password=
  • ssl.key.password=
  • ssl.client.auth=none
  • ssl.protocol=TLSv1.2
  • # תצורת SASL
  • sasl.enabled.mechanisms=רגיל
  • שם משתמש="אדמין" \
  • סיסמה =" ” \
  • user_admin="" ” \
  • user_client=" ";
  • # הערה ניתן להוסיף משתמשים נוספים עם user_ =
  • # הרשאה, הפעל ACLs
  • authorizer.class.name=kafka.security.authorizer.AclAuthorizer super.users=משתמש:אדמין

הגדרת רשימות בקרת גישה (ACLs)

הפעלת ACLs ב-localhost

אזהרה: ראשית עלינו להגדיר ACLs עבור localhost, כך שמרכז הבקרה עצמו עדיין יוכל לגשת לקפקא. אם זה לא נעשה, הדברים ישברו.

  • –autorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal משתמש:ANONYMOUS –allow-host 127.0.0.1 –cluster
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –autorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal משתמש:ANONYMOUS –allow-host 127.0.0.1 –נושא '*'
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –autorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal User:ANONYMOUS –allow-host 127.0.0.1 –group '*'

לאחר מכן עלינו להפעיל ACLs עבור גישה חיצונית לקריאה בלבד, כך שמשתמשים חיצוניים יורשו לקרוא את נושאי paa.public.*.

### ערכי ACLs עבור משתמשים אנונימיים /usr/lib/kafka/bin/kafka-acls.sh \

פֶּתֶק: לשליטה עדינה יותר, עיין בתיעוד הרשמי של קפקא.

  • –autorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal משתמש:* –operation read –operation describe \ –group 'NCC'
  • /usr/lib/kafka/bin/kafka-acls.sh \
  • –autorizer kafka.security.authorizer.AclAuthorizer \
  • –authorizer-properties zookeeper.connect=localhost:2181 \
  • –add –allow-principal משתמש:* –operation read –operation describe \ –topic paa.public. -קידומת מסוג resource-pattern-type

לאחר שתסיים עם זה, עליך להפעיל מחדש את השירותים:

### ערכי ACLs עבור משתמשים חיצוניים /usr/lib/kafka/bin/kafka-acls.sh \
  • הפעלה מחדש של שירותי sudo ncc

כדי לוודא שלקוח יכול ליצור חיבור מאובטח, הפעל את הפקודה הבאה במכשיר חיצוני
מחשב לקוח (לא בשרת מרכז הבקרה). להלן, PUBLIC_HOSTNAME הוא שם המארח של מרכז הבקרה:

  • openssl s_client -debug -connect ${PUBLIC_HOSTNAME}:9093 -tls1_2 | grep "נתמכת נתח מחדש מאובטח"

בפלט הפקודה אתה אמור לראות את אישור השרת כמו גם את הדברים הבאים:

  • נתמך על ניהול משא ומתן מחדש מאובטח

כדי להבטיח שהשירותים הפנימיים קיבלו גישה לשרת קפקא, אנא בדוק את היומן הבאfiles:

  • /var/log/kafka/server.log
  • /var/log/kafka/kafka-authorizer.log

אימות קישוריות לקוח חיצוני

kafkacat

פֶּתֶק: יש להפעיל הוראות אלה במחשב לקוח (לא בשרת מרכז הבקרה).
פֶּתֶק: כדי להציג מידע מדדים, ודא שלפחות צג אחד פועל במרכז הבקרה.

כדי לאמת ולאמת קישוריות כלקוח חיצוני, אפשר להשתמש בכלי השירות kafkacat שהותקן בסעיף "אימות שה-API של הסטרימינג עובד במרכז הבקרה" בעמוד 4.
בצע את השלבים הבאים:

פֶּתֶק: להלן, CLIENT_USER הוא המשתמש שצוין בעבר ב- file /etc/kafka/server.properties במרכז הבקרה: כלומר, user_client והסיסמה שהוגדרה שם.
אישור השורש של CA המשמש לחתימה על אישור SSL בצד השרת חייב להיות קיים בלקוח.

צור א file client.properties עם התוכן הבא:

  • security.protocol=SASL_SSL
  • ssl.ca.location={PATH_TO_CA_CERT}
  • sasl.mechanisms=PLAIN
  • sasl.username={CLIENT_USER}
  • sasl.password={CLIENT_PASSWORD}

אֵיפֹה

  • {PATH_TO_CA_CERT} הוא המיקום של אישור השורש של CA המשמש את המתווך של קפקא
  • {CLIENT_USER} ו-{CLIENT_PASSWORD} הם אישורי המשתמש של הלקוח.

הפעל את הפקודה הבאה כדי לראות את ההודעה שנצרכה על ידי kafkacat:

  • ייצא KAFKA_FQDN=
  • ייצא METRICS_TOPIC=paa.public.accounts. .מטרים
  • kafkacat -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e

כאשר {METRICS_TOPIC} הוא השם של נושא קפקא עם הקידומת "paa.public".

פֶּתֶק: גרסאות ישנות יותר של kafkacat אינן מספקות את האפשרות -F לקריאת הגדרות הלקוח מ-a file. אם אתה משתמש בגרסה כזו, עליך לספק את אותן הגדרות משורת הפקודה כפי שמוצג להלן.

kafkacat -b ${KAFKA_FQDN}:9093 \

  • X security.protocol=SASL_SSL \
  • X ssl.ca.location={PATH_TO_CA_CERT} \
  • X sasl.mechanisms=PLAIN \
  • X sasl.username={CLIENT_USER} \
  • X sasl.password={CLIENT_PASSWORD} \
  • t ${METRICS_TOPIC} -C -e

כדי לנפות באגים בקישוריות, אתה יכול להשתמש באפשרות -d:

איתור באגים בתקשורת לצרכנים
kafkacat -d consumer -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e
# איתור באגים בתקשורת ברוקר
kafkacat -d broker -b ${KAFKA_FQDN}:9093 -F client.properties -t ${METRICS_TOPIC} -C -e

הקפד לעיין בתיעוד של ספריית הלקוחות של קפקא שנמצאת בשימוש, שכן המאפיינים עשויים להיות שונים מאלה שבלקוח.מאפיינים.

פורמט הודעה
ההודעות המשמשות לנושאי המדדים והמטא נתונים מסודרות בפורמט פרוטוקול מאגרי (protobuf) (ראה developers.google.com/protocol-buffers). הסכימות של הודעות אלה תואמות לפורמט הבא:

סכמת פרוטובוף מדדים

  • תחביר = "proto3";
  • ייבוא ​​"google/protobuf/timestamp.proto";
  • חבילה paa.streamingapi;
  • option go_package = ".;paa_streamingapi";
  • הודעה מדדים {
  • google.protobuf.Timestamp הזמנים ביותרamp = 1;
  • מַפָּה ערכים = 2;
  • int32 stream_id = 3;
  • }
  • /**
  • * ערך מטרי יכול להיות מספר שלם או צף.
  • */
  • הודעה MetricValue {
  • אחד מסוג {
  • int64 int_val = 1;
  • float float_val = 2;
  • }
  • }

Metadata Protobuf Schema

  • תחביר = "proto3";
  • חבילה paa.streamingapi;
  • option go_package = ".;paa_streamingapi";
  • הודעה Metadata {
  • int32 stream_id = 1;
  • מחרוזת stream_name = 2;
  • מַפָּה tags = 13;
  • }

לקוח דוגמהamples

פֶּתֶק: פקודות אלו מיועדות לפעול על לקוח חיצוני, למשלampהנייד שלך או דומה, ולא במרכז הבקרה.
פֶּתֶק: כדי להציג מידע מדדים, ודא שלפחות צג אחד פועל במרכז הבקרה.

מרכז הבקרה כולל את הארכיון paa-streaming-api-client-examples.tar.gz (client-examples), המכיל אקסampהסקריפט של Python המראה כיצד להשתמש ב- Streaming API.

התקנה והגדרת לקוח לדוגמהamples
אתה מוצא לקוח לשעברamples בתיקייה Paragon Active Assurance Control Center:

  • ייצוא CC_VERSION=4.1.0
  • cd ./paa-control-center_${CC_VERSION}
  • ls paa-streaming-api-client-exampלס*

כדי להתקין את הלקוח-exampקבצים במחשב הלקוח החיצוני שלך, המשך כדלקמן:

  • # צור ספרייה לחילוץ התוכן של הלקוח לשעברamples tarball
  • mkdir paa-streaming-api-client-examples
  • # חלץ את התוכן של הלקוח לשעברamples tarball
  • tar xzf paa-streaming-api-client-examples.tar.gz -C paa-streaming-api-client-examples
  • # עבור אל הספרייה החדשה שנוצרה
  • cd paa-streaming-api-client-examples

לקוח לשעברamples מחייב את Docker כדי לפעול. ניתן למצוא הורדות והוראות התקנה עבור Docker בכתובת https://docs.docker.com/engine/install.

שימוש בלקוח Examples
הלקוח-האקסampהכלים של les יכולים לפעול במצב בסיסי או מתקדם כדי לבנות אקסampדברים במורכבות משתנה. בשני המקרים, אפשר גם להפעיל את האקסamples עם תצורה file המכיל מאפיינים נוספים להתאמה אישית נוספת של צד הלקוח.

מצב בסיסי
במצב בסיסי, המדדים והמטא נתונים שלהם מוזרמים בנפרד. לשם כך, הלקוח מקשיב לכל נושא קפקא זמין לגישה חיצונית ופשוט מדפיס את ההודעות שהתקבלו לקונסולה.
כדי להתחיל בביצוע של האקס הבסיסיamples, run:

  • build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME

כאשר ACCOUNT_SHORTNAME הוא השם הקצר של החשבון שממנו אתה רוצה לקבל את המדדים.
להפסיק את ביצוע האקסample, הקש Ctrl + C. (ייתכן שיחול עיכוב קל לפני הפסקת הביצוע מכיוון שהלקוח ממתין לאירוע פסק זמן).

מצב מתקדם

פֶּתֶק: מדדים מוצגים רק עבור צגי HTTP הפועלים במרכז הבקרה.

ביצוע במצב מתקדם מציג את המתאם בין מדדים והודעות מטא נתונים. זה
אפשרי הודות לנוכחות בכל הודעת מדדים של שדה זיהוי זרם המתייחס להודעת המטא-נתונים המתאימה.
כדי להוציא להורג את האקס המתקדםamples, run:

  • build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME

כאשר ACCOUNT_SHORTNAME הוא השם הקצר של החשבון שממנו אתה רוצה לקבל את המדדים.
להפסיק את ביצוע האקסample, הקש Ctrl + C. (ייתכן שיחול עיכוב קל לפני הפסקת הביצוע מכיוון שהלקוח ממתין לאירוע פסק זמן).

הגדרות נוספות
אפשר להפעיל את האקסamples עם תצורה נוספת של הלקוח באמצעות -config-file אפשרות ואחריה א file שם המכיל מאפיינים בצורה key=value.

  • build.sh run-advanced \
  • –kafka-brokers localhost:9092 \
  • –חשבון ACCOUNT_SHORTNAME \
  • -config-file client_config.properties

פֶּתֶק: הכל fileיש להפנות את הפקודה לעיל בספרייה הנוכחית ולהפנות אותם באמצעות נתיבים יחסיים בלבד. זה חל גם על -config-file ארגומנט ולכל הערכים בתצורה file שמתארים file מיקומים.

אימות אימות לקוח חיצוני
כדי לאמת אימות לקוח מחוץ למרכז הבקרה באמצעות לקוח-examples, בצע את השלבים הבאים:

מהתיקייה Paragon Active Assurance Control Center, עבור ל-paa-streaming-api-client-exampתיקיית les:

cd paa-streaming-api-client-examples

  • העתק את אישור הבסיס של CA ca-cert לספרייה הנוכחית.
  • צור client.properties file עם התוכן הבא:

security.protocol=SASL_SSL ssl.ca.location=ca-cert
sasl.mechanism=PLAIN
sasl.username={CLIENT_USER}
sasl.password={CLIENT_PASSWORD}

כאשר {CLIENT_USER} ו-{CLIENT_PASSWORD} הם אישורי המשתמש של הלקוח.

הפעל אקס בסיסיamples:

  • ייצא KAFKA_FQDN=
  • build.sh run-basic –kafka-brokers ${KAFKA_FQDN}:9093 \
  • –חשבון ACCOUNT_SHORTNAME
  • -config-file לקוח.נכסים

כאשר ACCOUNT_SHORTNAME הוא השם הקצר של החשבון שממנו אתה רוצה לקבל את המדדים.

הפעל אקס מתקדםamples:

  • ייצא KAFKA_FQDN=
  • build.sh run-advanced –kafka-brokers ${KAFKA_FQDN}:9093 \
  • –חשבון ACCOUNT_SHORTNAME
  • -config-file לקוח.נכסים

נִספָּח

בנספח זה אנו מתארים כיצד ליצור:

  • מאגר מפתחות file לאחסון תעודת SSL של מתווך קפקא
  • חנות נאמנות file לאחסון תעודת השורש של רשות האישורים (CA) המשמשת לחתימה על תעודת המתווך של קפקא.

יצירת תעודת מתווך קפקא
יצירת אישור באמצעות רשות אישורים אמיתית (מומלץ)
מומלץ לקבל אישור SSL אמיתי מ-CA מהימן.
לאחר שהחלטתם על CA, העתק את אישור השורש CA שלהם ca-cert file לנתיב שלך כפי שמוצג להלן:

  • ייצא CA_PATH=~/my-ca
  • mkdir ${CA_PATH}
  • cp ca-cert ${CA_PATH}

צור רשות אישורים משלך

פֶּתֶק: בדרך כלל אתה צריך לחתום על האישור שלך על ידי רשות אישורים אמיתית; ראה את סעיף המשנה הקודם. מה להלן הוא רק אקסample.

כאן אנו יוצרים תעודת שורש משלנו של רשות האישורים (CA). file תקף ל-999 ימים (לא מומלץ בייצור):

  • # צור ספרייה לאחסון ה-CA
  • ייצא CA_PATH=~/my-ca
  • mkdir ${CA_PATH}
  • # הפק את אישור ה-CA
  • openssl req -new -x509 -keyout ${CA_PATH}/ca-key -out ${CA_PATH}/ca-cert -days 999

יצירת ה-Client Truststore
עכשיו אתה יכול ליצור חנות נאמנות file שמכיל את ה-ca-cert שנוצר לעיל. זֶה file יזדקק ללקוח Kafka שייגש ל- Streaming API:

  • keytool -keystore kafka.client.truststore.jks \
    • כינוי CARoot \
    • אישור יבוא -file ${CA_PATH}/ca-cert

כעת, כשאישור ה-CA נמצא ב-truststore, הלקוח יבטח בכל אישור שנחתם איתו.
כדאי להעתיק את ה file kafka.client.truststore.jks למיקום ידוע במחשב הלקוח שלך והצביע עליו בהגדרות.

יצירת חנות המפתחות עבור ברוקר קפקא
כדי ליצור את תעודת ה-SSL של המתווך של Kafka ולאחר מכן את מאגר המפתחות kafka.server.keystore.jks, המשך כדלקמן:

הפקת תעודת SSL
להלן, 999 הוא מספר ימי התוקף של מאגר המפתחות, ו-FQDN הוא שם הדומיין המלא של הלקוח (שם המארח הציבורי של הצומת).

פֶּתֶק: חשוב שה-FQDN יתאים לשם המארח המדויק שבו ישתמש לקוח Kafka כדי להתחבר למרכז הבקרה.

  • sudo mkdir -p /var/ssl/private
  • sudo chown -R $USER: /var/ssl/private
  • cd /var/ssl/private
  • ייצוא FQDN= keytool -keystore kafka.server.keystore.jks \
  • – שרת כינוי \
  • – תוקף 999 \
  • – genkey -keyalg RSA -ext SAN=dns:${FQDN}

צור בקשת חתימה על אישור ואחסן אותה ב- file בשם cert-server-request:

  • keytool -keystore kafka.server.keystore.jks \
    • – שרת כינוי \
    • – certreq \
    • – file שרת-cert-request

כעת עליך לשלוח את ה file שרת-cert-request לרשות האישורים (CA) שלך אם אתה משתמש באחד אמיתי. לאחר מכן הם יחזירו את התעודה החתומה. נתייחס לזה כאל שרת-cert-חתום למטה.

חתימה על אישור SSL באמצעות אישור CA שנוצר בעצמו

פֶּתֶק: שוב, שימוש ב-CA משלך אינו מומלץ במערכת ייצור.

חתום על האישור באמצעות ה-CA באמצעות ה file cert-server-request, אשר מייצר את האישור החתום cert-server-signed. ראה למטה; ca-password היא הסיסמה שהוגדרה בעת יצירת אישור CA.

  • cd /var/ssl/private openssl x509 -req \
    • – CA ${CA_PATH}/ca-cert \
    • – CAkey ${CA_PATH}/ca-key \
    • – ב-cert-server-request \
    • - יצא שרת-cert-חתום \
    • – ימים 999 -CAcreateserial \
    • – passin pass:{ca-password}

ייבוא ​​האישור החתום לחנות המפתחות

ייבא את אישור השורש של ca-cert למאגר המפתחות:

  • keytool -keystore kafka.server.keystore.jks \
    • – כינוי ca-cert \
    • – ייבוא ​​\
    • – file ${CA_PATH}/ca-cert

ייבא את האישור החתום המכונה שרת-שרת חתום:

  • keytool -keystore kafka.server.keystore.jks \
    • – שרת כינוי \
    • – ייבוא ​​\
    • – file חתום על שרת-cert

ה file יש להעתיק את kafka.server.keystore.jks למיקום ידוע בשרת מרכז הבקרה, ולאחר מכן להתייחס אליו ב- /etc/kafka/server.properties.

שימוש ב-API של Streaming

בסעיף זה

  • כללי | 20
  • קפקא שמות נושאים | 21
  • Exampמידע על שימוש ב-API לסטרימינג | 21

כְּלָלִי
ממשק ה-API לסטרימינג מביא נתוני בדיקה וניטור גם יחד. לא ניתן לייחד אחת מהקטגוריות הללו.
ממשק ה-API לסטרימינג אינו מביא נתונים מבדיקות מבוססות סקריפט (אלה המיוצגות על ידי מלבן במקום חתיכת פאזל ב-Control Center GUI), כגון בדיקות הפעלה של שירותי Ethernet ובדיקות שקיפות.

שמות נושאים של קפקא
שמות הנושאים של קפקא עבור ממשק ה-API לסטרימינג הם כדלקמן, כאשר %s הוא השם הקצר של חשבון מרכז הבקרה (מצוין בעת ​​יצירת החשבון):

  • קונסט (
  • exporterName = "kafka"
  • metadataTopicTpl = "paa.public.accounts.%s.metadata" metricsTopicTpl = "paa.public.accounts.%s.metrics")

Exampמידע על שימוש ב-API לסטרימינג
האקסיתampהרשומות הבאות נמצאות ב-tarball paa-streaming-api-client-examples.tar.gz הכלול ב-tarball של מרכז הבקרה.
ראשית, יש אקס בסיסיampזה מדגים כיצד המדדים והמטא נתונים שלהם מוזרמים בנפרד ופשוט מדפיסים את ההודעות שהתקבלו למסוף. אתה יכול להפעיל אותו באופן הבא:

  • sudo ./build.sh run-basic –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME

יש גם אקס מתקדם יותרample שבו מדדים והודעות מטא נתונים מתואמים. השתמש בפקודה זו כדי להפעיל אותה:

  • sudo ./build.sh run-advanced –kafka-brokers localhost:9092 –account ACCOUNT_SHORTNAME

עליך להשתמש ב-sudo כדי להפעיל פקודות Docker כמו אלה שלמעלה. לחלופין, אתה יכול לעקוב אחר השלבים של לינוקס לאחר ההתקנה כדי להיות מסוגל להפעיל פקודות Docker ללא sudo. לפרטים, עבור אל docs.docker.com/engine/install/linux-postinstall.

Juniper Networks, הלוגו Juniper Networks, Juniper ו-Junos הם סימנים מסחריים רשומים של Juniper Networks, Inc. בארצות הברית ובמדינות אחרות. כל שאר הסימנים המסחריים, סימני השירות, הסימנים הרשומים או סימני השירות הרשומים הם רכושם של בעליהם בהתאמה. ג'וניפר נטוורקס אינה נושאת באחריות לכל אי דיוקים במסמך זה. ג'וניפר נטוורקס שומרת לעצמה את הזכות לשנות, לשנות, להעביר או לשנות בכל דרך אחרת פרסום זה ללא הודעה מוקדמת. זכויות יוצרים © 2023 Juniper Networks, Inc. כל הזכויות שמורות.

מסמכים / משאבים

תוכנת ממשק API לסטרימינג של Juniper NETWORKS [pdfמדריך למשתמש
תוכנת API להזרמת, תוכנת API, תוכנה

הפניות

השאר תגובה

כתובת האימייל שלך לא תפורסם. שדות חובה מסומנים *