ArcGIS SOC Prozesse

Ablauf

  1. Installation & Konfiguration von Metricbeat auf dem ArcGIS Enterprise Host zum regelmäßigen Senden der Metriken (siehe unten)

  2. Import von Kibana Dashboards und Queries aus Datei kibana/ct-arcgis-soc/export.ndjson

  3. Einrichtung der Ingest-Pipeline ingest/ct-monitor-metricbeat-arcsoc.txt (siehe unten)

Sollte Metricbeat noch nicht im System aktiv sein, muss zunächst der Installationsvorgang, die Konfiguration und der Start durchgeführt werden, damit in Elastic Index und Index Template erzeugt werden.

Installation & Konfiguration von Metricbeat

  1. Download von Metricbeat über Download Metricbeat bei Elastic

  2. Metricbeat-Output konfigurieren (in metricbeat.yml)

    Output-Konfiguration in Metricbeat
    output.elasticsearch:
      # Array of hosts to connect to.
      hosts: ["elasticsearch.test.conterra.de: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>"
  3. 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 memory

    Gegenüber der Standardkonfiguration wurden hier folgende Anpassungen gemacht:

    1. Vergrößerung der Anzahl von Metricbeat-Prozessinformationen, die gesendet werden sollen. Der Wert wird von 5 auf 50 geändert, damit immer alle ArcSOC Prozessinformationen gesendet werden.

Einrichtung der Elastic Ingest-Pipeline

Die Ingest-Pipeline extrahiert ArcGIS Service-Namen aus der Log-Nachricht für MetricBeat-Prozess-Events.

Pipeline publizieren

Die Inhalte von

  • ingest/ct-monitor-metricbeat-arcsoc.txt

über die Kibana Dev Tools > Console senden.

Konfiguration für den aktuellen Index

Um die Pipeline in Elasticsearch für alle Indizes zu konfigurieren, muss die Pipeline auf die betroffenen Indizes gesetzt 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.

Beispiel eines aktualisierten Index Templates
{
  "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-Pattern wiederholt werden.