This is a translation of the original English documentation page. Help us make it better.

2 פקודות מרוחקות

סקירה כללית

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

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

בשימושים הברורים ביותר של התכונה אתה יכול לנסות:

  • הפעל מחדש באופן אוטומטי יישום כלשהו (שרת אינטרנט, תוכנת ביניים, CRM) אם הוא לא מגיב
  • השתמש בפקודה 'אתחול מחדש' של IPMI כדי לאתחל שרת מרוחק כלשהו אם כן לא לענות לבקשות
  • פינוי אוטומטי של שטח דיסק (הסרת קבצים ישנים יותר, ניקוי /tmp) אם נגמר שטח הדיסק
  • העבר VM מקופסה פיזית אחת לאחרת בהתאם למעבד לִטעוֹן
  • הוסף צמתים חדשים לסביבת ענן כאשר מעבד לא מספיק (דיסק, זיכרון, לא משנה מה) משאבים

הגדרת פעולה עבור פקודות מרוחקות דומה לזו עבור שליחה הודעה, ההבדל היחיד הוא ש-Zabix יבצע פקודה במקום לשלוח הודעה.

ניתן לבצע פקודות מרחוק על ידי שרת Zabbix, פרוקסי או סוכן. מְרוּחָק ניתן לבצע פקודות על סוכן Zabbix ישירות על ידי שרת Zabbix או דרך פרוקסי Zabbix. גם בסוכן Zabbix וגם בשלט פרוקסי של Zabbix פקודות מושבתות כברירת מחדל. ניתן להפעיל אותם על ידי:

  • הוספת פרמטר AllowKey=system.run[*] בתצורת הסוכן;
  • הגדרת הפרמטר EnableRemoteCommands ל-'1' ב-proxy תְצוּרָה.

פקודות מרחוק המבוצעות על ידי שרת Zabbix מופעלות כמתואר ב ביצוע פקודה כולל יציאה בדיקת קוד.

פקודות מרחוק מבוצעות גם אם מארח היעד נמצא בתחזוקה.

מגבלת פקודות מרחוק

מגבלת פקודות מרחוק לאחר פתרון כל פקודות המאקרו תלויה בסוג של מסד נתונים וקבוצת תווים (תווים שאינם ASCII דורשים יותר מאחד בייט לאחסון):

מסד נתונים הגבלה בתווים הגבלה בבתים
MySQL 65535 65535
מסד נתונים של אורקל 2048 4000
PostgreSQL 65535 לא מוגבל
SQLite (פרוקסי של Zabbix בלבד) 65535 לא מוגבל

המדריך הבא מספק הוראות שלב אחר שלב כיצד להגדיר למעלה פקודות מרחוק.

תצורה

הפקודות המרוחקות שמבוצעות על סוכן Zabbix (סקריפטים מותאמים אישית) יש להפעיל תחילה בסוכן תצורה.

ודא שהפרמטר AllowKey=system.run[<command>,*] נוסף עבור כל פקודה מותרת בתצורת סוכן כדי לאפשר פקודה ספציפית במצב nowait. הפעל מחדש את ה-agent daemon אם תשנה פרמטר זה.

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

לאחר מכן, בעת הגדרת פעולה חדשה ב-תצורה → פעולות:

  • הגדירו את התנאים המתאימים. בדוגמה זו, הגדר את ה- הפעולה מופעלת בכל בעיה באסון עם אחד מ- Apache יישומים:

  • בתוך ה פעולות לשונית, לחץ על הוסף בפעולות/פעולות שחזור/עדכון חסימת פעולות
  • מהשדה הנפתח הפעלה בחר אחד מההגדרות המוגדרות מראש תסריטים

  • בחר את רשימת היעד עבור התסריט

סקריפטים מוגדרים מראש

כל הסקריפטים (webhook, script, SSH, Telnet, IPMI) הזמינים עבור פעולות הפעולה מוגדרות ב-global סקריפטים.

לדוגמה:

 sudo /etc/init.d/apache הפעל מחדש

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

::: שימו לב חשוב שימו לב לשימוש ב-sudo - משתמש Zabbix לא יש הרשאות להפעיל מחדש את שירותי המערכת כברירת מחדל. ראה להלן עבור רמזים כיצד להגדיר את sudo. :::

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

פקודות מרחוק על סוכן Zabbix מבוצעות ללא פסק זמן על ידי המפתח system.run[, nowwait] ואינם מסומנים לתוצאות ביצוע. עַל שרת Zabbix ו-Proxy Zabbix, עם פקודות מרחוק מבוצעות פסק זמן כפי שנקבע בפרמטר TrapperTimeout של zabbix_server.conf or zabbix_proxy.conf קובץ והם בדוק עבור תוצאות ביצוע.

הרשאות גישה

ודא שלמשתמש 'zabbix' יש הרשאות הפעלה עבור מוגדרות פקודות. ייתכן שיהיה מעוניין להשתמש ב-sudo כדי לתת גישה אליו פקודות מיוחסות. כדי להגדיר גישה, בצע כ-root:

 # visudo

שורות לדוגמה שניתן להשתמש בהן בקובץ sudoers:

 # מאפשר למשתמש 'zabbix' להפעיל את כל הפקודות ללא סיסמה.
        zabbix ALL=NOPASSWD: ALL
       
        # מאפשר למשתמש 'zabbix' להפעיל מחדש את אפאצ'י ללא סיסמה.
        zabbix ALL=NOPASSWD: /etc/init.d/apache הפעל מחדש

במערכות מסוימות קובץ sudoers ימנע לא-מקומי משתמשים מביצוע פקודות. כדי לשנות זאת, הערה אפשרות דרישה ב-/etc/sudoers.

פקודות מרחוק עם ממשקים מרובים

אם למערכת היעד יש ממשקים מרובים מהסוג הנבחר (סוכן Zabbix או IPMI), פקודות מרחוק יבוצעו כברירת מחדל מִמְשָׁק.

ניתן לבצע פקודות מרחוק באמצעות SSH ו-Telnet באמצעות ממשק אחר מאשר הסוכן של Zabbix. הממשק הזמין ל השימוש נבחר בסדר הבא:

  • ממשק ברירת המחדל של סוכן Zabbix
  • ממשק ברירת המחדל של SNMP
  • ממשק ברירת המחדל של JMX
  • ממשק ברירת המחדל של IPMI

פקודות מרחוק IPMI

עבור פקודות מרחוק IPMI יש להשתמש בתחביר הבא:

 <command> [<value>]

איפה

  • <פקודה> - אחת מפקודות IPMI ללא רווחים
  • <value> - 'מופעל', 'כבוי' או כל מספר שלם ללא סימן. <ערך> הוא פרמטר אופציונלי.

דוגמאות

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

דוגמה 1

הפעל מחדש את Windows בתנאי מסוים.

על מנת להפעיל מחדש את Windows באופן אוטומטי לאחר בעיה שזוהתה על ידי Zabbix, הגדר את התסריט הבא:

פרמטר סקריפט ערך
היקף 'פעולת פעולה'
הקלד 'סקריפט'
פקודה c:\windows\system32\shutdown.exe -r -f
דוגמה 2

הפעל מחדש את המארח באמצעות בקרת IPMI.

פרמטר סקריפט ערך
היקף 'פעולת פעולה'
הקלד 'IPMI'
פקודה איפוס
דוגמה 3

כבה את המארח באמצעות בקרת IPMI.

פרמטר סקריפט ערך
היקף 'פעולת פעולה'
הקלד 'IPMI'
פקודה כיבוי