ArcGIS SOC Prozesse
Ablauf
-
Installation & Konfiguration von Metricbeat auf dem ArcGIS Enterprise Host zum regelmäßigen Senden der Metriken
-
Konfiguration der ArcGIS-Ingest-Pipeline auf den Filebeat-Indices & Templates
| Sollte Metricbeat noch nicht im System aktiv sein, müssen zunächst der Installationsvorgang, die Konfiguration und der Start durchgeführt werden, damit in Elasticsearch der Index und das Index-Template erzeugt werden. |
Installation & Konfiguration von Metricbeat
-
Download von Metricbeat über Download Metricbeat bei Elastic
-
Metricbeat-Output konfigurieren (in
metricbeat.yml)Output-Konfiguration in Metricbeatoutput.elasticsearch: # Array of hosts to connect to. hosts: ["elasticsearch-host.example.com:443"] # Protocol - either `http` (default) or `https`. protocol: "https" # Authentication credentials - either API key or username/password. #api_key: "id:api_key" username: "<elastic_user>" password: "<password>" -
System-Metric-Module konfigurieren (in
modules.d/system.yml)Modul-Konfiguration "system" in Metricbeat- module: system period: 10s metricsets: - cpu #- load - memory - network - process - process_summary - socket_summary #- entropy #- core #- diskio #- socket #- service #- users process.include_top_n: by_cpu: 50 # include top 50 processes by CPU by_memory: 50 # include top 50 processes by memoryGegenüber der Standardkonfiguration wird hier die Anzahl zu sendenden Metricbeat-Prozessinformationen vergrößert. Der Wert wird von 5 auf 50 geändert, damit immer alle ArcSOC Prozessinformationen gesendet werden.
Konfiguration der ArcGIS-Ingest-Pipeline auf den Filebeat-Indices & Templates
Während der Konfiguration und des Starts wird durch Metricbeat ein Index und ein Index-Template angelegt. $service.monitor stellt eine Ingest-Pipeline bereit, um den Namen eines ArcGIS Dienstes zu extrahieren. Diese Pipeline muss wie folgt konfiguriert werden.
Konfiguration der Ingest-Pipeline für den aktuellen Index
Um die Pipeline für den automatisch erstellten Index zu konfigurieren, muss folgender Befehl in den Kibana "Dev Tools" abgesetzt werden.
PUT /metricbeat-*/_settings
{
"index.final_pipeline" : "ct-monitor-metricbeat-arcsoc"
}
Konfiguration für das Index-Template
Um die Pipeline für alle zukünftig entstehenden Indizes zu ermöglichen, muss die Pipeline innerhalb des Index-Templates konfiguriert werden. Dies erfolgt über das Menü Stack Management > Index Management > Index Templates. Dort muss das Index-Template metricbeat-<version> im Abschnitt Index settings über den Parameter finale_pipeline editiert werden.
{
"index": {
"lifecycle": {
"name": "metricbeat",
"rollover_alias": "metricbeat-7.17.1"
},
"codec": "best_compression",
"mapping": {
"total_fields": {
"limit": "10000"
}
},
"refresh_interval": "5s",
"number_of_shards": "1",
"final_pipeline": "ct-monitor-metricbeat-arcsoc",
"max_docvalue_fields_search": "200",
"query": {
"default_field": [
// .... fields
]
}
}
}
| Sobald eine neue Version von Metricbeat in Betrieb genommen wird, muss der Schritt zum Setzen der Pipeline auf Index und Index-Template wegen des neuen Versions-Patterns wiederholt werden. |
Nachträgliches Anwenden der Ingest-Pipeline
Liegen bereits Daten in Indizes vor oder die Anwendung der Ingest-Pipeline wurde unterbrochen, kann die Extraktion des ArcGIS Dienstnamens auch nachträglich erfolgen. Über die Dev Tools > Console folgenden Befehl ausführen:
POST /metricbeat*/_update_by_query?pipeline=ct-monitor-metricbeat-arcsoc&wait_for_completion=false
{
"query": {
"bool": {
"must": [
{
"match": {
"process.name": "ArcSOC.exe"
}
}
],
"should": [],
"must_not": [
{
"exists": {"field": "arcgis.service"}
}
]
}
}
}
Dadurch werden alle ArcGIS-SOC-bezogenen Dokumente, die noch nicht über Dienstinformationen verfügen, durch die Ingest Pipeline aktualisiert.