MID-Server Ressourcenreservierung
Mit dieser Funktion können Ressourcen reserviert werden, bevor eine Aufgabe einem Thread zugewiesen wird. Wenn die für die Aufgabe erforderlichen Ressourcen nicht verfügbar sind, befindet sich die Aufgabe in der Arbeitswarteschlange MID-Server, während dem Thread andere Aufgaben zugewiesen werden.
![]() |
Für Discoverysind die MID-Server -Aufgaben die Probes oder Muster, die ausgeführt werden. Während Probes auf die Ausführung in MID-Serverwarten, stellen sie Ressourcenanforderungen (CPU, Arbeitsspeicher usw.) bereit. Wenn diese Anforderungen nicht erfüllt werden können, wartet das Probe in der Arbeitswarteschlange, bis die Ressourcen verfügbar sind.
Die Verwendung der Ressourcenreservierung MID-Server ermöglicht eine bessere Verwendung von Threads, da den Threads keine Aufgabe zugewiesen ist, die sie nicht abschließen können.
- Ressourcenreservierungen gelten nur für MID-Server
- Ressourcen können von System- oder MID-Server -Eigenschaften abhängen
- Ressourcen können von Probe-Parametern abhängen, sodass Sie die Anzahl der aktiven Probes und Muster für eine bestimmte IP begrenzen können
- Meldet die Ressourcennutzung
- Erweiterbar (der Kunde definiert seine eigenen Ressourcen)
- Skriptfähig
- Verhindert, dass PowerShell-Proben die Ausführung anderer Probes beeinträchtigen
- Kann verwendet werden, um die Auswirkungen von Discovery auf ein Zielsystem zu begrenzen
- Kann verwendet werden, um die Anzahl der „großen“ Probes zu begrenzen, die von einem MID-Server gleichzeitig ausgeführt werden
- Kann verwendet werden, um Discovery zu drosseln (um die Auswirkungen auf die Instanz zu minimieren)
Verwenden Sie die Ressourcenreservierung MID-Server .
Eine Ressource ist nur ein Name und eine Anzahl. Definieren Sie den Namen der Ressource, welche Probes sie verwenden und wie viele Ressourcen diese Probes verwenden sollen.
Vorbereitungen
- Stellen Sie sicher, dass die Eigenschaft MID-Server„mid.probe.wait.resources“ auf „true“ festgelegt ist, um die Ressourcenreservierung MID-Server zu aktivieren. Das Ändern dieser Eigenschaft erfordert einen Neustart von MID-Server.
- Wählen Sie einen Ressourcennamen. Alles in {} im Namen wird durch den Probe-Parameter mit diesem Namen ersetzt. Dieser Name wird in der Regel für Ressourcen pro Host verwendet. Beispielsweise bedeutet „ssh{source}“, dass auf jedem erkannten Host eine separate Ressource mit dem Namen „ssh“ verfügbar ist. („source“ ist der Name des Probe-Parameters, der die geprüfte IP-Adresse enthält.)
- Entscheiden Sie, wie die Nummer der von Probes oder Mustern verwendeten Ressource angegeben werden soll.
- Jede Probe verwendet eine konstante Anzahl der Ressource: Erstellen Sie eine Ressource mit einem einfachen Wert.
- Die Anzahl der verwendeten Ressourcen hängt von einer Systemeigenschaft ab: Erstellen Sie eine „erweiternde“ Ressource.
- Die Anzahl hängt von mehreren Faktoren ab: Erstellen Sie eine „geskriptete“ Ressource.
- Erweiterung: Alles in { } wird durch die Systemeigenschaft oder MID-Server -Eigenschaft mit diesem Namen ersetzt. Logische Operatoren sind zulässig, z. B. „{mid.windows.management_protocol}“.toLowerCase() == „winrm“ ? 1:0
- Geskriptet: Das Skript wird ausgewertet. Der Rückgabewert wird erweitert.
Prozedur
Funktionsweise der Ressourcenreservierung MID-Server.
Zusätzlich zur Arbeitswarteschlange enthält der MID Server eine Warteschlange. Wenn eine Aufgabe zur Ausführung ausgewählt wird, wird die Warteschlange immer zuerst geprüft. Wenn keine Aufgabe in der Warteschlange ausgeführt werden kann, wird die Arbeitswarteschlange versucht. Probes und Muster in der Warteschlange reservieren alle erforderlichen Ressourcen, bis sie ausgeführt werden können.
Der ersten Probe oder dem ersten Muster in der Warteschlange werden verfügbare Ressourcen angeboten. Verwendet eine der Ressourcen mit der niedrigsten Ordnungszahl, die verfügbar sind. Nachdem die erforderliche Anzahl von Ressourcen mit der niedrigsten Ordnungszahl erreicht wurde, geht die Probe oder das Muster an die Ressourcen mit der nächstniedrigsten Ordnungszahl usw. Über die Reihenfolge kann der Benutzer konfigurieren, welche Ressourcen mehr oder weniger wichtig sind. Ressourcen mit niedriger Reihenfolge werden zuerst gesammelt, da das Halten dieser Ressourcen weniger Auswirkungen auf die Ausführung anderer Probes und Muster hat.
Tabellen
- Definiert die von einer Probe oder einem Muster verwendeten Ressourcen.
- Erweitert um „mid_limited_resource_value“, „mid_limited_resource_expanded“ und „mid_limited_resource_script“, die jeweils ein einzelnes zusätzliches Feld enthalten.
- mid_limited_resource_value fügt der Basistabelle ein einzelnes Feld mit dem Namen „value“ hinzu.
- mid_limited_resource_expanding fügt ein Feld mit dem Namen „expanding“ hinzu.
- mid_limited_resource_script fügt ein Feld mit dem Namen „script“ hinzu.
- Legt die für ein MID-Serververfügbaren Ressourcen fest.
- Werte aus dieser Tabelle werden in „ecc_agent_property“ kopiert.
- Eine Geschäftsregel in dieser Tabelle erstellt die entsprechenden MID-Server -Eigenschaften.
- Sie enthält einen Verweis auf eine Ressource und die verfügbare Anzahl. Wenn die verfügbare Zahl innerhalb { } liegt, dann ist dies der Name einer Systemeigenschaft, MID-Server einer -Konfiguration oder MID-Server einer -Eigenschaft (alle drei Stellen sind markiert). {mid.powershell_api.session_pool.max_size} ist also der Wert der Konfiguration MID-Server, die die Größe des PowerShell-Sitzungspools festlegt.
| Bezeichnung | Spalte | Typ | Größe | Informationen |
|---|---|---|---|---|
| Ressourcenname | name | Zeichenfolge | 100 | Nicht erweiterter Name der Ressource |
| Aktiv | aktiv | Boolean | Ermöglicht eine vorübergehende Deaktivierung | |
| Thema umkehren | invert_topic | Boolean | ||
| Probenliste umkehren | invert_probe_list | Boolean | ||
| Musterliste umkehren | invert_pattern_list | Boolean |
| Bezeichnung | Spalte | Typ | Größe | Informationen |
|---|---|---|---|---|
| Wert | Wert | Ganzzahl | ||
| Erweiterung | erweitern | Zeichenfolge | 1000 | Eine leicht erweiterte Version der Verfügbarkeitsnummer, da logische und ternäre Vorgänge akzeptiert werden. Beispiel: "{mid.windows.management_protocol}" == "WinRM" ? 1 : 0. Wenn das Verwaltungsprotokoll WinRM ist, ergibt dies 1, andernfalls 0. |
| Skript | script | Zeichenfolge | 4000 | Das Skript wird ausgewertet. Wenn das Ergebnis eine Zeichenfolge ist, wird sie erweitert |
| Bezeichnung | Spalte | Typ | Größe | Informationen |
|---|---|---|---|---|
| Aktiv | aktiv | Boolean | Ermöglicht eine vorübergehende Deaktivierung | |
| Verfügbar | Verfügbar | Zeichenfolge | 255 | Nummer dieser Ressource, die verfügbar ist unter MID-Server |
| MID-Server | ecc_agent | Referenz | Verweis auf MID-Server oder leer für alle | |
| Auftrag | Bestellen | Ganzzahl | Reihenfolge, in der Ressourcen zugewiesen werden | |
| Ressource | Ressource | Referenz | Verweis auf die Ressource |
