תוספים מספקים אפשרות להרחיב את יכולות הניטור של זאביקס. תוספים כתובים בשפת התכנות Go והם נתמך על ידי Zabbix agent 2 בלבד.
תוספים מספקים חלופה לניתן לטעינה מודולים (כתוב ב-C), ועוד שיטות להרחבת פונקציונליות Zabbix, כגון משתמש פרמטרים (מדדי סוכן), חיצוני checks (ללא סוכן ניטור), ו-system.run[]
Zabbix סוכן item.
התכונות הבאות ספציפיות ל-Zabbix agent 2 והתוספים שלו:
מאז Zabbix 6.0.0, פלאגינים אינם חייבים להיות משולבים ישירות ב-agent 2 וניתן להוסיף אותם כתוספים הניתנים לטעינה, ובכך מקל על תהליך יצירת תוספים נוספים לאיסוף מדדי ניטור חדשים.
דף זה מפרט את התוספים המקוריים והניתנים לטעינה של Zabbix, ומתאר את עקרונות תצורת הפלאגין מנקודת המבט של המשתמש. להנחיות לכתיבת תוספים משלך, ראה הנחיות לפיתוח פלאגין. למידע נוסף על תהליך התקשורת בין Zabbix agent 2 לבין תוסף הניתן לטעינה, וכן על תהליך איסוף המדדים, ראה דיאגרמת חיבור.
סעיף זה מספק עקרונות תצורת פלאגין נפוצים והטובים ביותר שיטות עבודה.
כל התוספים מוגדרים באמצעות פרמטר Plugins.*, אשר יכול או להיות חלק מסוכן Zabbix 2 תצורה file או תוסף משלו קובץ תצורה. אם תוסף משתמש בקובץ תצורה נפרד, הנתיב לקובץ זה צריך להיות המצוין בפרמטר Include של קובץ התצורה של Zabbix agent 2.
לכל פרמטר תוסף צריך להיות המבנה הבא:
פלאגינים.<PluginName>.<Parameter>=<Value>
שמות פרמטרים צריכים לעמוד בדרישות הבאות:
הפעלות עם שם מייצגות רמה נוספת של פרמטרי תוסף ו ניתן להשתמש כדי להגדיר קבוצות נפרדות של פרמטרי אימות עבור כל אחד מהמקרים שנמצאים במעקב. כל פרמטר הפעלה עם שם צריך להיות במבנה הבא:
פלאגינים.<PluginName>.Sessions.<SessionName>.<Parameter>=<Value>
שם הפעלה יכול לשמש כפרמטר מפתח פריט connString במקום ציון URI, שם משתמש וסיסמה בנפרד. במפתחות פריט, ה הפרמטר הראשון יכול להיות connString או Uri. אם המפתח הראשון פרמטר תואם לשם הפעלה שצוין בקובץ התצורה, הבדיקה תתבצע באמצעות פרמטרי הפעלה בעלי שם. אם הראשון פרמטר מפתח אינו תואם לאף שם הפעלה, הוא יטופל כאל אורי.
ציין זאת:
רשימת פרמטרי הפגישה הזמינים בשם תלויה בתוסף, ראה תוסף בודד תצורה קבצים לפרטים.
דוגמה: ניתן לנטר שני מקרים "MySQL1" ו-"MySQL2" מוגדר בצורה הבאה:
Plugins.Mysql.Sessions.MySQL1.Uri=tcp://127.0.0.1:3306
Plugins.Mysql.Sessions.MySQL1.User=<UsernameForMySQL1>
Plugins.Mysql.Sessions.MySQL1.Password=<PasswordForMySQL1>
Plugins.Mysql.Sessions.MySQL2.Uri=tcp://127.0.0.1:3307
Plugins.Mysql.Sessions.MySQL2.User=<UsernameForMySQL2>
Plugins.Mysql.Sessions.MySQL2.Password=<PasswordForMySQL2>
כעת, ניתן להשתמש בשמות אלה כמחרוזות במפתחות במקום ב-URI:
Since version 6.4.3, Zabbix agent 2 plugins search for connection-related parameter values in the following order:
Monitoring of two instances “MySQL1” and “MySQL2”.
Configuration parameters:
Plugins.Mysql.Sessions.MySQL1.Uri=tcp://127.0.0.1:3306
Plugins.Mysql.Sessions.MySQL1.User=mysql1_user
Plugins.Mysql.Sessions.MySQL1.Password=unique_password
Plugins.Mysql.Sessions.MySQL2.Uri=tcp://192.0.2.0:3306
Plugins.Mysql.Sessions.MySQL2.User=mysql2_user
Plugins.Mysql.Sessions.MySQL2.Password=different_password
Item keys: mysql.ping[MySQL1]
, mysql.ping[MySQL2]
Providing some of the parameters in the item key (supported since Zabbix 6.0.17).
Configuration parameters:
Plugins.Postgres.Sessions.Session1.Uri=tcp://192.0.2.234:5432
Plugins.Postgres.Sessions.Session1.User=old_username
Plugins.Postgres.Sessions.Session1.Password=session_password
Item key: pgsql.ping[session1,new_username,,postgres]
As a result of this configuration, the agent will connect to PostgreSQL using the following parameters:
Collecting a metric using default configuration parameters.
Configuration parameters:
Plugins.Postgres.Default.Uri=tcp://192.0.2.234:5432
Plugins.Postgres.Default.User=zabbix
Plugins.Postgres.Default.Password=password
Item key: pgsql.ping[,,,postgres]
As a result of this configuration, the agent will connect to PostgreSQL using the parameters:
אם לא מסופק פרמטר הנדרש לאימות בפריט מקש או בפרמטרי ההפעלה הנקובים, התוסף ישתמש בקוד קשיח ערך ברירת מחדל.
תוספים מסוימים תומכים באיסוף מדדים ממספר מקרים בּוֹ זְמַנִית. ניתן לנטר גם מופעים מקומיים וגם מרוחקים. TCP וחיבורי שקע Unix נתמכים.
מומלץ להגדיר תוספים כדי לשמור על חיבורים למופעים במצב פתוח. היתרונות הם צמצום העומס ברשת, זמן אחזור, ושימוש במעבד וזיכרון עקב מספר נמוך יותר של חיבורים. ה ספריית הלקוחות מטפלת בזה.
פרק זמן שבו יש להישאר חיבורים שאינם בשימוש ניתן לקבוע את הפתיחה על ידי תוספים.<PluginName>.KeepAlive פָּרָמֶטֶר.
דוגמה: Plugins.Memcached.KeepAlive
כל המדדים הנתמכים על ידי Zabbix agent 2 נאספים על ידי תוספים.
כל המדדים הנתמכים על ידי Zabbix agent 2 נאספים על ידי תוספים.
תוספים ניתנים לטעינה, כאשר מופעלים עם:
- -V --גרסה - גרסת תוסף הדפסה ומידע על רישיון;
- -h --help - הדפס מידע עזרה.
לחץ על שם הפלאגין כדי לעבור למאגר התוספים עם מידע נוסף.
שם הפלאגין | תיאור | מפתחות פריטים נתמכים | הערות |
---|---|---|---|
MongoDB | ניטור של שרתי ואשכולות MongoDB (מסמך מסד נתונים מבוסס, מבוזר). | mongodb.collection.stats, mongodb.collections.discovery, mongodb.collections.usage, mongodb.connpool.stats, mongodb.db.stats, mongodb.db.discovery, mongodb.jumbo _chunks.count, mongodb.oplog.stats, mongodb.ping, mongodb.rs.config, mongodb.rs.status, mongodb.server.status, mongodb.sh.discovery |
תוסף זה ניתן לטעינה מאז Zabbix 6.0.6 (מובנה בעבר). כדי להגדיר חיבורים מוצפנים למסד הנתונים, השתמש ב-named sessions וציין את פרמטרי ה-TLS עבור הפגישה בעלת השם בקובץ התצורה של הסוכן. נתמך בגרסאות הפלאגין 1.2.1, 6.0.13 ומעלה1. כרגע, לא ניתן להעביר פרמטרים של TLS כפרמטרים של מפתח פריט. ראה גם קובץ תצורה של הפלאגין MongoDB. |
PostgreSQL | ניטור של PostgreSQL ומזלגותיו. | pgsql.autovacuum.count, pgsql.archive, pgsql.bgwriter, pgsql.cache.hit, pgsql.connections, pgsql.custom.query, pgsql.dbstat, pgsql.dbstat.sum, pgsql.db.age, pgsql .db.bloating_tables, pgsql.db.discovery, pgsql.db.size, pgsql.locks, pgsql.oldest.xid, pgsql.ping, pgsql.queries, pgsql.replication.count, pgsql .replication.process, pgsql.replication.process.discovery, pgsql.replication.recovery_role, pgsql.replication.status, pgsql.replication_lag.b, pgsql.replication_lag.sec, pgsql.uptime, pgsql.wal.stat |
תוסף זה ניתן לטעינה מאז Zabbix 6.0.10 (מובנה בעבר). כדי להגדיר חיבורים מוצפנים למסד הנתונים, השתמש ב-named sessions וציין את פרמטרי TLS עבור ההפעלה בעלת השם בקובץ התצורה של הסוכן. נכון לעכשיו, לא ניתן להעביר פרמטרים של TLS כפרמטרים של מפתח פריט. |
ראה גם: בניית תוספים הניתנים לטעינה.