قالب Zabbix لرصد تكرار DFS

لفترة طويلة كنت سأقوم بتكوين مراقبة خدمة DFS Replication على Zabbix لدينا ، لكنني لم أجد أي قوالب جاهزة على الشبكة. جئت عبر العديد من المشاريع تخلى هنا و هنا ، ولكن المؤلف الأول يتم إكمال ذلك، وفي الثانية على الرابط لتحميل القالب لا يعمل. بالإضافة إلى ذلك ، اقتصر كلاهما على مراقبة الأعمال المتراكمة فقط ، على الرغم من وجود مقاييس أكثر في الواقع. لذلك ، قررت أن أصنع دراجتي بمقود دائري وقالب توربينات مع اكتشاف ونصوص. لقد بدأت منذ وقت طويل ، لكن يدي لم تصل إلى النهاية. كما يقول المثل ، هناك جانب مضيء: في مكان بعيد في عزلة ذاتية ، أكملته أخيرًا. تم إنجاز الكثير من العمل ، لكنني لست جشعًا ، لذلك أشارك. :)

قبل ان تبدأ

  • كذلك في النص ، تحت المضيف ، أعني الخادم مع دور DFSR ، والذي تم تكوين المراقبة من أجله.

  • في بعض الأحيان، على الإيجاز، وسوف تستخدم الاختصارات RG و RF بدلا من مجموعة النسخ المتماثل و مجلد تكرارها .

شاملة

أولا وقبل كل شيء، كان من الضروري تحديد ما لمراقبة و كيفية مراقبة.

كان من السهل علي أن أجيب على السؤال الثاني. بالطبع ، سيتم مراقبة هذا بواسطة وكيل باستخدام LLD والبرامج النصية المخصصة. باختيار لغة البرمجة النصية ، استقرت دون تردد على PowerShell. العديد من الفرص ، تقوم Microsoft بالترويج بنشاط ، نحن نحبني كثيرًا :). كان هناك أيضًا فكرة للقيام بذلك في VBScript لخفة التوافق مع الإصدارات القديمة من Windows ، ولكن عند التفكير ، تخليت عن هذه الفكرة.

هناك نوعان من نصوص PS في الحل: Get-DFSRObjectDiscovery.ps1 و Get-DFSRObjectParam.ps1

نظرًا لأنه من السهل فهمه من الاسم ، فإن الأول هو اكتشاف الكائنات المراقبة ( عنصر أو عنصر بيانات في مصطلحات Zabbix) ، والثاني هو الحصول على قيم خصائص هذه الكائنات. يتم جمع البيانات بشكل أساسي من خلال استعلامات WMI. لن أقوم بتحليل البرامج النصية هنا ، لأن التعليقات موجودة في الكود نفسه.

أجب عن السؤال "ماذا ترصد؟" كان الأمر أكثر صعوبة. من خلال طريقة الكتابة بناءً على خبرتي في نشر DFSR ودراسة الوثائق ، قمت بتحديد العديد من الكيانات الرئيسية المتعلقة بـ DFSR ، لكل من هذه الكيانات ، قمت بتجميع قائمة من المعلمات التي سأهتم بمراقبة قيمها.

لذلك الكيانات:

  • مجموعات النسخ المتماثل

  • مجلدات منسوخة

  • روابط؛

  • مجلدات DFSR

  • شركاء.

  • الحالة العامة.

.

DFSR, . , Active Directory MyRG3, , . .

Microsoft.

Zabbix 2.2 5.0 Windows 2008R2 SP1 2019, Zabbix 3.4, Zabbix 5.0 Windows 2012 R2.

(value mapping), Zabbix.

(DFS Replication Groups)

:

  • (outbound connections);

  • (inbound connections);

  • (number of folders);

  • (blank schedule).

DFS Replication Groups LLD.

, , , . , , . . , , 1, 0.

, . , .

(DFS Replicated Folders)

:

  • (backlog size);

  • (state)

  • (enabled)

  • " " ('read-only' mode)

  • " " ('remove deleted' enabled)

  • (redundancy)

  • , (stage quota)

  • (stage used)

  • (stage free (percentage))

  • , (conflict quota)

  • (conflict used)

  • (conflict free (percentage))

  • ;

DFS Replicated Folders Backlog LLD. . -, DFSR - , , , DFSR-. , , = , , . -, , , , , .

3 :

{$BACKLOGMAXWARNING} - warning- ( 10);

{$BACKLOGMAXAVERAGE} - average- ( 100);

{$BACKLOGPERIOD} - ( 15 ).

, 10 15 , warning-. 100, average-.

, DFSR, , Managment Pack SCOM ("" Microsoft) . , . :

( ) DFS Replicated Folders LLD. , state redundancy.

State - , :

  • Uninitialized (0)

  • Initialized (1)

  • Initial Sync (2)

  • Auto Recovery (3)

  • Normal (4)

  • In Error (5)

Redundancy - , Normal. , , .

stage free (percentage) conflict free (percentage), . , , , zabbix-.

5% , . 5% {$STAGEDIRPFREEMIN} {$CONFLICTDIRPFREEMIN}.

DFS Replicated Folders PerfCounters LLD. , .., , , . , . , , .

, , Conflict Files Generated, , RF. . :

{$CONFLICTSGENERATEDCHANGEWARNING} - , warning- ( 10);

{$CONFLICTSGENERATEDCHANGEAVERAGE} - average- ( 100);

{$CONFLICTSGENERATEDPERIOD} - , , ( 5 ).

, 5 10- , warning-, 100 - average-.

? . ,   DFSN \\abc.com\Share. ( ): \\server1\Share \\server2\Share. + . AD- ( Office1 Office2). Office1, \\abc.com\Share, server1, Office2 - server2 (, , , ). \\abc.com\Share\_.xlsx ( - ) . , , , , , , Ctrl+S 5 , . , , , , .

, , - , - , DFS-. , .

RF 4 :

  • (conflict space usage)

  • (stage space usage)

  • , (received bytes)

  • (received files and conflicts)

(DFS Replication Connections)

:

  • (state);

  • (enabled);

  • (blank schedule);

  • .

: DFS Replication Connections LLD - , DFS Replication Connections PerfCounters LLD - .

State - , :

  • Connecting (0)

  • Online (1)

  • Offline (2)

  • In Error (3)

Enabled - .

Blank schedule - RG. , , RG.

RF, , bytes received per second, :

DFSR (DFS Replication Service Volumes)

:

  • (state);

  • .

: DFS Replication Service Volumes LLD DFS Replication Service Volumes PerfCounters LLD. - state, :

  • Initialized (0)

  • Shutting Down (1)

  • In Error (2)

  • Auto Recovery (3)

.

(DFS Replication Partners)

:

  • PING (ping check);

  • WMI (WMI check).

DFS Replication Partners LLD. , : , "" ICMP WMI. WMI , - zabbix-. WMI- - , DFSR- backlog size redundancy ( ). , zabbix- . , WMI- , - . :

(General)

:

  • DFSR (DFS Replication role installed);

  • , (Number of replication groups);

  • DFSR (DFSR Event Log);

  • (DFS Replication service state);

  • (DFS Replication service uptime);

  • (DFSR Service Version);

  • DFSR (DFSR Provider Version);

  • DFSR (DFSR Monitoring Provider Version);

.

, Items .

. 3 , :

  • DFSR Event Log: number of warnings

  • DFSR Event Log: number of errors

  • DFSR Event Log: number of critical errors

, - PS-. (, , ) , . , . , . :

{$DFSRLOGCRITICALMAX} - "" DFSR, high- ( 0);

{$DFSRLOGERRORSMAX} - "" DFSR, average- ( 0);

{$DFSRLOGWARNINGSMAX} - "" DFSR, warning- ( 0);

{$DFSRLOGPERIOD} - ( 1 )

:

  • Service Starting (0)

  • Service Running (1)

  • Service Degraded (2)

  • Service Shutting Down (3)

  • Stopped (100)

  • Not Found (101)

, .

, RG Zabbix- RG , .

:

- RF: Zabbix "perf_counter[\XXX\YYY]" is not supported: Cannot obtain performance information from collector. Windows (perfmon, typeperf, Get-Counter) . Zabbix Agent. RF-, (, ) .

GitHub Zabbix Share. !

.

Monitoring DFSR

DFSR WMI Classes

DFSR Performance Objects, Their Counters, Corresponding WMI Classes, and Using WMIC or Vbscript to View Them

Get-DFSRBacklog (Technet gallery)

DFS Replication Backlog Discovery

DFS Replication Management Pack for Windows Server 2008 R2

Optional configuration for the DFS Replication Management Pack

PowerShell — Zabbix — Json ConvertTo-Json2

Displaying Unicode in Powershell

powershell : changing the culture of current session

Searching the Active Directory with PowerShell

PowerShell scripting performance considerations




All Articles