เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบšเบšเบ‡เปˆเบฒเบเป†เบ‚เบญเบ‡ DFS Replication เปƒเบ™ Zabbix

เบเบฒเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต

เบ”เป‰เบงเบเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ—เบตเปˆเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เปƒเบซเบเปˆเปเบฅเบฐเปเบˆเบเบขเบฒเบเบ—เบตเปˆเปƒเบŠเป‰ DFS เป€เบ›เบฑเบ™เบˆเบธเบ”เบ”เบฝเบงเบ‚เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐ DFSR เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบชเบฒเบ‚เบฒ, เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เบ™เบตเป‰.
เบšเบฑเบ‡เป€เบญเบตเบ™, เป€เบเบทเบญเบšเบ—เบฑเบ™เบ—เบตเบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเปƒเบŠเป‰ DFSR, เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเบ›เบฐเบ•เบดเบšเบฑเบ” Zabbix เป‚เบ”เบเบกเบตเป€เบ›เบปเป‰เบฒเปเบฒเบเป€เบžเบทเปˆเบญเบ›เปˆเบฝเบ™เปเบ—เบ™เบชเบงเบ™เบชเบฑเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ•เปˆเบฒเบ‡เป† เปเบฅเบฐเบ™เปเบฒเป€เบญเบปเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เป„เบ›เบชเบนเปˆเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™, เบ„เบปเบšเบ–เป‰เบงเบ™ เปเบฅเบฐเบชเบปเบกเป€เบซเบ”เบชเบปเบกเบœเบปเบ™. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เปƒเบŠเป‰ Zabbix เป€เบžเบทเปˆเบญเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡ DFS.

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เปƒเบ”เปเบ”เปˆเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™ เบˆเบณ เบฅเบญเบ‡ DFS เบ•เป‰เบญเบ‡เบเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเป€เบžเบทเปˆเบญเบ•เบดเบ”เบ•เบฒเบกเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ‚เบญเบ‡เบกเบฑเบ™. เบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™ backlog. เบกเบฑเบ™เบกเบตเป„เบŸเบฅเปŒเบ—เบตเปˆเบเบฑเบ‡เบšเปเปˆเป„เบ”เป‰ synchronized เบเบฑเบšเบชเบฐเบกเบฒเบŠเบดเบเบญเบทเปˆเบ™เป†เบ‚เบญเบ‡เบเบธเปˆเบก replication. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบšเบดเปˆเบ‡เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบกเบฑเบ™เป‚เบ”เบเปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ” dfsrdiag, เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ”เป‰เบงเบเบšเบปเบ”เบšเบฒเบ” DFSR. เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เปเบšเบšเบ›เบปเบเบเบฐเบ•เบด, เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡ backlog เบ„เบงเบ™เป€เบ‚เบปเป‰เบฒเบซเบฒเบชเบนเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบˆเปเบฒเบ™เบงเบ™เป„เบŸเบฅเปŒเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเปƒเบ™ backlog เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบšเบฑเบ™เบซเบฒเบเบฑเบšเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบเปˆเบฝเบงเบเบฑเบšเบžเบฒเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒ.

เป€เบžเบทเปˆเบญเบ•เบดเบ”เบ•เบฒเบกเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡ backlog เบœเปˆเบฒเบ™ Zabbix Agent, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™:

  • เบชเบฐเบ„เบฃเบดเบšเบ—เบตเปˆเบˆเบฐเบงเบดเป€เบ„เบฒเบฐเบœเบปเบ™เบœเบฐเบฅเบดเบ” dfsrdiag เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบญเบ‡เบกเบนเบ™เบ„เปˆเบฒเบ‚เบฐเบซเบ™เบฒเบ” backlog เบชเบธเบ”เบ—เป‰เบฒเบเปƒเบซเป‰เบเบฑเบš Zabbix,
  • script เบ—เบตเปˆเบˆเบฐเบเปเบฒเบ™เบปเบ”เบˆเปเบฒเบ™เบงเบ™เบเบธเปˆเบก replication เบกเบตเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เป‚เบŸเบ™เป€เบ”เบตเปƒเบ”เบ—เบตเปˆเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ replicate เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบญเบทเปˆเบ™เป†เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบžเบงเบเป€เบ‚เบปเบฒ (เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบชเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ Zabbix เบ”เป‰เบงเบเบกเบทเบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เปเบกเปˆเบ™เบšเป?),
  • เบเบฒเบ™เป€เบžเบตเปˆเบกเบชเบฐเบ„เบฃเบดเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบ›เบฑเบ™ UserParameter เบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเปเบ—เบ™ Zabbix เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป‚เบ—เบซเบฒเบ•เปเปˆเป„เบ›เบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒ,
  • เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เบปเบงเปเบ—เบ™ Zabbix เป€เบ›เบฑเบ™เบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเบกเบตเบชเบดเบ”เบญเปˆเบฒเบ™ backlog,
  • เปเบกเปˆเปเบšเบšเบชเปเบฒเบฅเบฑเบš Zabbix, เป€เบŠเบดเปˆเบ‡เบเบฒเบ™เบเบงเบ”เบชเบญเบšเบเบธเปˆเบก, เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเบเบฒเบ™เบญเบญเบเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบเปˆเบฝเบงเบเบฑเบšเบžเบงเบเบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒ.

เบ•เบปเบงเบงเบดเป€เบ„เบฒเบฐเบชเบฐเบ„เบฃเบดเบš

เป€เบžเบทเปˆเบญเบ‚เบฝเบ™เบ•เบปเบงเบงเบดเป€เบ„เบฒเบฐ, เบ‚เป‰เบญเบเป€เบฅเบทเบญเบ VBS เป€เบ›เบฑเบ™เบžเบฒเบชเบฒเบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบ—เบธเบเบฅเบธเป‰เบ™เบ‚เบญเบ‡ Windows Server. เป€เบซเบ”เบœเบปเบ™เบ‚เบญเบ‡เบชเบฐเบ„เบดเบšเปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบ: เบกเบฑเบ™เป„เบ”เป‰เบฎเบฑเบšเบŠเบทเปˆเบ‚เบญเบ‡เบเบธเปˆเบก replication, เป‚เบŸเบ™เป€เบ”เบต replicated, เปเบฅเบฐเบŠเบทเปˆเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบเบฒเบ™เบชเบปเปˆเบ‡เปเบฅเบฐเบฎเบฑเบšเบœเปˆเบฒเบ™เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡. เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ–เบทเบเบชเบปเปˆเบ‡เบเบฑเบš dfsrdiag, เปเบฅเบฐเบ‚เบถเป‰เบ™เบเบฑเบšเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ‚เบญเบ‡เบกเบฑเบ™, เบกเบฑเบ™เบœเบฐเบฅเบดเบ”:
เบˆเปเบฒเบ™เบงเบ™เป„เบŸเบฅเปŒ - เบ–เป‰เบฒเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบกเบตเป„เบŸเบฅเปŒเปƒเบ™ backlog,
0 โ€” เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบ‚เปเป‰โ€‹เบ„เบงเบฒเบกโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบ‚เบญเบ‡โ€‹เป„เบŸเบฅโ€‹เปŒโ€‹เปƒเบ™ backlog (โ€œNo Backlogโ€),
-1 - เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ‚เปเป‰โ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹ dfsrdiag เป€เบกเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป ("[ERROR]").

get-Backlog.vbs

strReplicationGroup=WScript.Arguments.Item(0)
strReplicatedFolder=WScript.Arguments.Item(1)
strSending=WScript.Arguments.Item(2)
strReceiving=WScript.Arguments.Item(3)

Set WshShell = CreateObject ("Wscript.shell")
Set objExec = WSHshell.Exec("dfsrdiag.exe Backlog /RGName:""" & strReplicationGroup & """ /RFName:""" & strReplicatedFolder & """ /SendingMember:" & strSending & " /ReceivingMember:" & strReceiving)
strResult = ""
Do While Not objExec.StdOut.AtEndOfStream
	strResult = strResult & objExec.StdOut.ReadLine() & "\"
Loop

If InStr(strResult, "No Backlog") > 0 then
	intBackLog = 0
ElseIf  InStr(strResult, "[ERROR]") > 0 Then
    intBackLog = -1
Else
	arrLines = Split(strResult, "\")
	arrResult = Split(arrLines(1), ":")
	intBackLog = arrResult(1)
End If

WScript.echo intBackLog

เบชเบฐเบ„เบฃเบดเบš Discovery

เป€เบžเบทเปˆเบญเปƒเบซเป‰ Zabbix เบเปเบฒเบ™เบปเบ”เบเบธเปˆเบก replication เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบฅเบฐเบŠเบญเบเบซเบฒเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป (เบŠเบทเปˆเป‚เบŸเบ™เป€เบ”เบต, เบŠเบทเปˆเบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปƒเบเป‰เบ„เบฝเบ‡), เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡, เบ—เปเบฒเบญเบดเบ”, เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰, เปเบฅเบฐเบ—เบตเบชเบญเบ‡, เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเบกเบฑเบ™. เปƒเบ™เบฎเบนเบšเปเบšเบšเบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเปƒเบˆเป„เบ”เป‰เบเบฑเบš Zabbix. เบฎเบนเบšเปเบšเบšเบ—เบตเปˆเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ„เบปเป‰เบ™เบžเบปเบšเป€เบ‚เบปเป‰เบฒเปƒเบˆเป€เบšเบดเปˆเบ‡เบ„เบทเบ”เบฑเปˆเบ‡เบ™เบตเป‰:

        "data":[
                {
                        "{#GROUP}":"Share1",
                        "{#FOLDER}":"Folder1",
                        "{#SENDING}":"Server1",
                        "{#RECEIVING}":"Server2"}

...

                        "{#GROUP}":"ShareN",
                        "{#FOLDER}":"FolderN",
                        "{#SENDING}":"Server1",
                        "{#RECEIVING}":"ServerN"}]}

เบงเบดเบ—เบตเบ—เบตเปˆเบ‡เปˆเบฒเบเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบปเบ™เปƒเบˆเปเบกเปˆเบ™เบœเปˆเบฒเบ™ WMI, เบ”เบถเบ‡เบกเบฑเบ™เบญเบญเบเบˆเบฒเบเบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™เบ‚เบญเบ‡ DfsrReplicationGroupConfig. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, script เป„เบ”เป‰เป€เบเบตเบ”เบกเบฒเบ—เบตเปˆเบชเป‰เบฒเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบซเป‰ WMI เปเบฅเบฐเบญเบญเบเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบเบธเปˆเบก, เป‚เบŸเบ™เป€เบ”เบตเปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปƒเบ™เบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰.

DFSRDiscovery.vbs


dim strComputer, strLine, n, k, i

Set wshNetwork = WScript.CreateObject( "WScript.Network" )
strComputer = wshNetwork.ComputerName

Set oWMIService = GetObject("winmgmts:\" & strComputer & "rootMicrosoftDFS")
Set colRGroups = oWMIService.ExecQuery("SELECT * FROM DfsrReplicationGroupConfig")
wscript.echo "{"
wscript.echo "        ""data"":["
n=0
k=0
i=0
For Each oGroup in colRGroups
  n=n+1
  Set colRGFolders = oWMIService.ExecQuery("SELECT * FROM DfsrReplicatedFolderConfig WHERE ReplicationGroupGUID='" & oGroup.ReplicationGroupGUID & "'")
  For Each oFolder in colRGFolders
    k=k+1
    Set colRGConnections = oWMIService.ExecQuery("SELECT * FROM DfsrConnectionConfig WHERE ReplicationGroupGUID='" & oGroup.ReplicationGroupGUID & "'")
    For Each oConnection in colRGConnections
      i=i+1
      binInbound = oConnection.Inbound
      strPartner = oConnection.PartnerName
      strRGName = oGroup.ReplicationGroupName
      strRFName = oFolder.ReplicatedFolderName
      If oConnection.Enabled = True and binInbound = False Then
        strSendingComputer = strComputer
        strReceivingComputer = strPartner
        strLine1="                {"    
        strLine2="                        ""{#GROUP}"":""" & strRGName & """," 
        strLine3="                        ""{#FOLDER}"":""" & strRFName & """," 
        strLine4="                        ""{#SENDING}"":""" & strSendingComputer & ""","                  
        if (n < colRGroups.Count) or (k < colRGFolders.count) or (i < colRGConnections.Count) then
          strLine5="                        ""{#RECEIVING}"":""" & strReceivingComputer & """},"
        else
          strLine5="                        ""{#RECEIVING}"":""" & strReceivingComputer & """}]}"       
        end if		
        wscript.echo strLine1
        wscript.echo strLine2
        wscript.echo strLine3
        wscript.echo strLine4
        wscript.echo strLine5	   
      End If
    Next
  Next
Next

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ•เบปเบเบฅเบปเบ‡เป€เบซเบฑเบ™เบ”เบต, script เบญเบฒเบ”เบˆเบฐเบšเปเปˆเบชเปˆเบญเบ‡เปเบชเบ‡เบเบฑเบšเบ„เบงเบฒเบกเบชเบฐเบซเบ‡เปˆเบฒเบ‡เบฒเบกเบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เปเบฅเบฐเบšเบฒเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบญเบฒเบ”เบˆเบฐเบ‡เปˆเบฒเบเบ”เบฒเบ, เปเบ•เปˆเบกเบฑเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเบ•เบปเป‰เบ™เบ•เป - เบเบฒเบ™เบชเบฐเบซเบ™เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ‚เบญเบ‡เบเบธเปˆเบก replication เปƒเบ™เบฎเบนเบšเปเบšเบšเบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเปƒเบˆเป„เบ”เป‰เป‚เบ”เบ Zabbix.

เบเบฒเบ™เป€เบžเบตเปˆเบกเบชเบฐเบ„เบฃเบดเบšเปƒเบชเปˆเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเปเบ—เบ™ Zabbix

เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบชเบธเบ”. เป€เบžเบตเปˆเบกเปเบ–เบงเบ•เปเปˆเป„เบ›เบ™เบตเป‰เปƒเบชเปˆเปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเปเบ—เบ™:

UserParameter=check_dfsr[*],cscript /nologo "C:Program FilesZabbix Agentget-Backlog.vbs" $1 $2 $3 $4
UserParameter=discovery_dfsr[*],cscript /nologo "C:Program FilesZabbix AgentDFSRDiscovery.vbs"

เปเบ™เปˆเบ™เบญเบ™, เบžเบงเบเป€เบฎเบปเบฒเบ›เบฑเบšเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป„เบ›เบซเบฒเบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบชเบฐเบ„เบดเบš. เบ‚เป‰เบญเบเป€เบญเบปเบฒเบžเบงเบเบกเบฑเบ™เป„เบงเป‰เปƒเบ™เป‚เบŸเบ™เป€เบ”เบตเบ”เบฝเบงเบเบฑเบ™เบ—เบตเปˆเบ•เบปเบงเปเบ—เบ™เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡.

เบซเบผเบฑเบ‡เบˆเบฒเบเป€เบฎเบฑเบ”เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡, เป€เบ›เบตเบ”เบšเปเบฅเบดเบเบฒเบ™เบ•เบปเบงเปเบ—เบ™ Zabbix เบ„เบทเบ™เปƒเปเปˆ.

เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบœเบนเป‰เปƒเบŠเป‰เบžเบฒเบเปƒเบ•เป‰เบเบฒเบ™เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เบ•เบปเบงเปเบ—เบ™ Zabbix เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™

เปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เปˆเบฒเบงเบชเบฒเบ™เป‚เบ”เบเบœเปˆเบฒเบ™ dfsrdiag, เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบžเบฒเบเปƒเบ•เป‰เบšเบฑเบ™เบŠเบตเบ—เบตเปˆเบกเบตเบชเบดเบ”เบšเปเบฅเบดเบซเบฒเบ™เบ—เบฑเบ‡เบเบฒเบ™เบชเบปเปˆเบ‡เปเบฅเบฐเบฎเบฑเบšเบชเบฐเบกเบฒเบŠเบดเบเบ‚เบญเบ‡เบเบธเปˆเบก replication. เบšเปเบฅเบดเบเบฒเบ™เบ•เบปเบงเปเบ—เบ™ Zabbix, เป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบžเบฒเบเปƒเบ•เป‰เบšเบฑเบ™เบŠเบตเบฅเบฐเบšเบปเบš, เบˆเบฐเบšเปเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป„เบ”เป‰. เบ‚เป‰เบญเบเบชเป‰เบฒเบ‡เบšเบฑเบ™เบŠเบตเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเปƒเบ™เป‚เบ”เป€เบกเบ™, เปƒเบซเป‰เบชเบดเบ”เบšเปเบฅเบดเบซเบฒเบ™เปƒเบ™เป€เบŠเบตเบšเป€เบงเบตเบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™, เปเบฅเบฐเบเปเบฒเบซเบ™เบปเบ”เบ„เปˆเบฒเบšเปเบฅเบดเบเบฒเบ™เปƒเบซเป‰เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบžเบฒเบเปƒเบ•เป‰เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป„เบ›เบ—เบฒเบ‡เบญเบทเปˆเบ™: เป€เบžเบฒเบฐเบงเปˆเบฒ dfsrdiag, เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบœเปˆเบฒเบ™ WMI เบ”เบฝเบงเบเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰ เบฅเบฒเบเบฅเบฐเบญเบฝเบ”, เป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เป€เบžเบทเปˆเบญเปƒเบซเป‰เบšเบฑเบ™เบŠเบตเป‚เบ”เป€เบกเบ™เบกเบตเบชเบดเบ”เบ—เบดเปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบกเบฑเบ™เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบญเบญเบเบชเบดเบ”เบ—เบดเบšเปเบฅเบดเบซเบฒเบ™, เปเบ•เปˆเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบซเบผเบฒเบเบเบธเปˆเบก replication, เบเบฒเบ™เบญเบญเบเบชเบดเบ”เบ—เบดเบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเบเบธเปˆเบกเบˆเบฐเบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบ. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เบ›เบฐเบฅเบดเบกเบฒเบ™เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป‚เบ”เป€เบกเบ™เปƒเบ™เบ•เบปเบงเบ„เบงเบšเบ„เบธเบกเป‚เบ”เป€เบกเบ™, เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ”เบฝเบงเบ—เบตเปˆเบเบญเบกเบฎเบฑเบšเป„เบ”เป‰, เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบเบฒเบ™เปƒเบซเป‰เบชเบดเบ”เบ‚เบญเบ‡เบœเบนเป‰เป€เบšเบดเปˆเบ‡เปเบเบ‡เป‚เบ”เป€เบกเบ™เบเบฑเบšเบšเบฑเบ™เบŠเบตเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบšเปเปˆเปเบกเปˆเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบ”เบต.

เปเบกเปˆเปเบšเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก

เบญเบตเบ‡เปƒเบชเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ‚เป‰เบญเบเป„เบ”เป‰เบฎเบฑเบš, เบ‚เป‰เบญเบเบชเป‰เบฒเบ‡เปเบกเปˆเปเบšเบšเบงเปˆเบฒ:

  • เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบžเบปเบšเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ‚เบญเบ‡เบเบธเปˆเบก replication เบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เบ•เปเปˆเบŠเบปเปˆเบงเป‚เบกเบ‡,
  • เบเบงเบ”โ€‹เบชเบญเบšโ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ” backlog เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เปเบ•เปˆโ€‹เบฅเบฐโ€‹เบเบธเปˆเบกโ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบ„เบฑเป‰เบ‡โ€‹เปƒเบ™โ€‹เบ—เบธเบเป† 5 เบ™เบฒโ€‹เบ—เบตโ€‹,
  • เบ›เบฐเบเบญเบšเบกเบตเบ•เบปเบงเบเบฐเบ•เบธเป‰เบ™เบ—เบตเปˆเบญเบญเบเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เป€เบกเบทเปˆเบญเบ‚เบฐเปœเบฒเบ” backlog เบชเปเบฒเบฅเบฑเบšเบเบธเปˆเบกเปƒเบ”เบ™เบถเปˆเบ‡เบซเบผเบฒเบเบเบงเปˆเบฒ 100 เป€เบ›เบฑเบ™เป€เบงเบฅเบฒ 30 เบ™เบฒเบ—เบต. Trigger เป„เบ”เป‰เบ–เบทเบเบญเบฐเบ—เบดเบšเบฒเบเบงเปˆเบฒเป€เบ›เบฑเบ™เบ•เบปเบงเปเบšเบšเบ—เบตเปˆเบˆเบฐเบ–เบทเบเป€เบžเบตเปˆเบกเปƒเบชเปˆเบเบธเปˆเบกเบ—เบตเปˆเบเบงเบ”เบžเบปเบšเป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”,
  • เบชเป‰เบฒเบ‡เบเบฒเบŸเบ‚เบฐเบซเบ™เบฒเบ” backlog เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบเบธเปˆเบก replication.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ”เบฒเบงเป‚เบซเบฅเบ”เปเบกเปˆเปเบšเบšเบชเปเบฒเบฅเบฑเบš Zabbix 2.2 เบ—เบตเปˆเบ™เบตเป‰.

เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš

เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเปเบกเปˆเปเบšเบšเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ Zabbix เปเบฅเบฐเบชเป‰เบฒเบ‡เบšเบฑเบ™เบŠเบตเบ—เบตเปˆเบกเบตเบชเบดเบ”เบ—เบดเบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™, เบžเบงเบเป€เบฎเบปเบฒเบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบฑเบ”เบฅเบญเบเบชเบฐเบ„เบดเบšเปƒเบชเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเบชเปเบฒเบฅเบฑเบš DFSR, เป€เบžเบตเปˆเบกเบชเบญเบ‡เปเบ–เบงเปƒเบซเป‰เบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ•เบปเบงเปเบ—เบ™เบเปˆเบฝเบงเบเบฑเบšเบžเบงเบเบกเบฑเบ™เปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เบปเบงเปเบ—เบ™ Zabbix เบ„เบทเบ™เปƒเปเปˆ. , เบ•เบฑเป‰เบ‡เปƒเบซเป‰เบกเบฑเบ™เปเบฅเปˆเบ™เป€เบ›เบฑเบ™เบšเบฑเบ™เบŠเบตเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™. เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ„เบนเปˆเบกเบทเบญเบทเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบš DFSR.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™