Wie man Elastic Agents in luftdicht abgeschotteten Umgebungen bereitstellt
Das Bereitstellen von Elastic-Agents in luftgegappten oder hochgradig eingeschränkten Netzwerken stellt eine erhebliche Herausforderung dar, da es nicht möglich ist, Komponenten direkt aus dem Internet herunterzuladen. Dieser manuelle Prozess umfasst repetitive Downloads von Binärdateien, Endpunkt-Artefakten und Sicherheitssignaturen für jede Veröffentlichung, was zu Ineffizienzen und potenziellen Fehlern führt. Um dies zu lösen, wurde ein Tool namens artifacts-bundler entwickelt, um die Sammlung dieser erforderlichen Dateien zu automatisieren.Der Bundler bietet zwei primäre Bereitstellungsstrategien an: Erstellen eines einzelnen Tarballs für die Verteilung über einen Web-Server oder Erstellen eines selbst enthaltenen Docker-Images. Beide Methoden konsolidieren Elastic-Agent-Binärdateien, Sicherheits-Endpunkt-Artefakte, APM-Server, Fleet-Server und Manifest-Dateien in ein verwaltbares Paket. Dieses Paket kann dann in die Zielumgebung entweder über das Netzwerk oder über physische Medien wie USB-Laufwerke übertragen werden.Sobald übertragen, kann der Tarball extrahiert und von einem Web-Server wie NGINX bereitgestellt werden, wobei eine ordnungsgemäße Konfiguration für Dateizugriff und ETag-Unterstützung für Endpunkt-Updates entscheidend ist. Alternativ kann das Docker-Image geladen und direkt in containerisierten Umgebungen ausgeführt werden. Für Kubernetes können bereitgestellte Manifeste für die Bereitstellung verwendet werden.Der Hauptvorteil besteht darin, den Elastic-Stack so zu konfigurieren, dass er auf diesen lokalen Artefakts-Server zeigt. In Kibana wird die URL für den Agent-Binary-Download in den Fleet-Einstellungen aktualisiert. Für die Endpoint-Sicherheit von Elastic Defend wird die globale Quelle für Artefaktdownloads für jede Plattform ähnlich angepasst. Dies stellt sicher, dass alle Agent-Bereitstellungen, -Aktualisierungen und -Sicherheitssignatur-Abfragen von diesem internen, zugänglichen Spiegel aus bedient werden. Das Tool und dessen Quellcode sind auf GitHub verfügbar, was eine robuste Lösung für Offline-Elastic-Bereitstellungen bietet.