Nicht verwaltetes Management und kritische Überwachung

    Sie gehen nicht mit ihrer eigenen Urkunde in ein ausländisches Kloster. Zu meinen nächsten Aufgaben gehört die Erstellung und anschließende Unterstützung von Workflows auf der Alfresco-Plattform sowie die Wartung anderer Systeme. Eine Institution mit vorgeschriebenen Regeln, Gepflogenheiten und Verfahren. Es gibt nicht viele vertraute IT-Dinge in der Infrastruktur, aber alles funktioniert zuverlässig und passt zu jedem. Als ein Mensch mit Intellekt und den Anfängen der Erziehung werde ich nicht versuchen, die Traditionen anderer Menschen zu verletzen und irgendetwas global zu verändern. Angesichts von mehr als 500 Jobs stelle ich fest, dass einige nicht immer in der Nähe sind und dass ich einige Dinge auf meine eigene Art und Weise tun werde, da der erstellte Service für das Unternehmen von entscheidender Bedeutung ist. Dazu gehören Überwachung und Orchestrierung.

    Die meisten Arbeitsplätze befinden sich im Gebäude auf 6 Etagen. Es gibt Remote-Jobs. Der Park wird von verschiedenen Mitarbeitern verwaltet, einige Orte gehören zu anderen Organisationen und haben möglicherweise überhaupt keinen IT-Mitarbeiter. Weltweites Netzwerk und Sicherheit im Verantwortungsbereich speziell ausgebildeter Personen. DHCP, DNS, AD, falls vorhanden, ist nicht überall. ITIL / ITSM sind nur importierte Buchstaben. Betriebssysteme WindowsXP, WindowsVista, Windows7. Arbeitsplätze können durch die obligatorische Änderung der IP-Adresse in verschiedene Teile des Gebäudes oder darüber hinaus migriert werden. Benutzer, die an Computern arbeiten, haben normalerweise Administratorrechte. Daher können sie alles ändern, einschließlich% COMPUTERNAME%. Es ist ratsam, die Änderung der letzteren seit zu verhindern Wird für gemeinsam genutzte Drucker verwendet.

    Grundlinie und Ziele


    Die Ziele des Projekts bei der Überwachung sind die Überprüfung der Verfügbarkeit von Webanwendungen, das Entfernen von Parametern mithilfe der grafischen Darstellung von Java und Postgresql sowie die Benachrichtigung über RSS, SMS und Sprachanrufe in kritischen Fällen.

    Das Hauptziel der Orchestrierung ist es, die Kommunikation mit über 500 Benutzern auszuschließen. Sie haben die Möglichkeit, Parameter schnell zu ändern, Softwarepakete, Zertifikate und "Soft Policies - wie GPO" zu installieren.

    Unter Berücksichtigung der strategischen Prioritäten des Staates, dem Fokus auf die vollständige Substitution von Importen, verfügen die Workstations von morgen möglicherweise über MSVSfera oder ROSA bei den Workflow-Benutzern. Konfigurationsmanagement- und Überwachungstools sind besser für plattformübergreifende, webbasierte Open-Source-Verwaltungsschnittstellen geeignet und verursachen keine Implementierungs- und Betriebskosten.

    Dynamisches DNS


    IP-Adressen werden nach folgender Regel verwaltet: 10. Gebäude. Wenn Sie den Standort des Arbeitsplatzes ändern, ändert sich auch die IP-Adresse. Ändert sich manuell, weil DHCP ist nicht, daher ist Option 82 nicht anwendbar. Duplikate können in Bestandsnummern von Systemeinheiten auftreten. Das einzige, was relativ konstant ist, ist die MAC-Adresse. Wir werden uns daran binden. Definieren Sie die Vorlage für den Namen des Arbeitsplatzes als PC- {maksezdeliteli}. Wenn auf dem Computer mehrere Netzwerkverbindungen bestehen, wird davon ausgegangen, dass Ethernet unmittelbar nach der Installation des Betriebssystems die erste ist. Wir werden seine Adresse als Konstante für% COMPUTERNAME% verwenden.

    Um mit Zertifikaten arbeiten zu können, müssen Sie über den FQDN (Fully Qualified Domain Name) verfügen. Aus den Bedingungen folgt, dass kein DNS vorhanden ist. Eine bequeme Lösung in dieser Situation ist dynamisches DNS. Es ist praktisch,% COMPUTERNAME% mit einer IP-Adresse abzugleichen und dementsprechend den aktuellen Standort des Arbeitsplatzes zu bestimmen, wenn eine persönliche Kommunikation mit dem Benutzer erforderlich ist.

    Die erste Lösung für die dynamische Aktualisierung von DNS-Zonen durch einen Client war das Dienstprogramm Nsupdate aus dem Bind-Paket für Windows. In diesem Fall verfügten die Clients jedoch über einen gemeinsamen Schlüssel und konnten daher nicht nur ihre Einträge in der Zone ändern. Die Lösung war sicherer, wenn der Client eine HTTP-Anforderung sendet und der Server Änderungen gemäß seinen Regeln vornimmt. Die Möglichkeit, Zonen in dieser Option zu speichern, ist offensichtlich - dies ist die SQL-Datenbank. Standardmäßig ist der PowerDNS-Server so konfiguriert, dass Abfragen aus der Datenbank verarbeitet werden. Es wird in vielen großen Projekten verwendet und scheint sehr stabil zu sein. Wir werden es benutzen.

    Wie installiere ich auf Ubuntu?
    Installieren Sie PowerDNS:
    $ sudo apt-get install -y pdns-server pdns-backend-mysql

    Testen Sie PowerDNS:
    Überprüfen Sie, ob PowerDNS ausgeführt wird:
    $ sudo netstat -tap | grep pdns
    Sollte zurückgeben :
    roto @ salt: ~ # netstat -tap | grep pdns

    tcp        0      0 *:domain                *:*                     LISTEN      891/pdns_server-ins
    

    Überprüfen Sie, ob PowerDNS antwortet:
    $ sudo dig 127 .0.0.1
    Sollte zurückgeben :
    roto @ salt: ~ # dig 127 .0.0.1
    
    ; <<>> DiG 9.9.5-3ubuntu0.1-Ubuntu <<>> @127.0.0.1
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21529
    ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
    ;; WARNING: recursion requested but not available
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 2800
    ;; QUESTION SECTION:
    ;.              IN  NS
    ;; Query time: 1 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Fri Feb 13 11:29:05 KRAT 2015
    ;; MSG SIZE  rcvd: 239
    



    Für ein komfortables Zonenmanagement wurden viele verschiedene Schnittstellen zu PowerDNS geschrieben. Wir haben das powerdns-webinterface freigegeben
    Wie sieht es aus?


    Wie installiere ich auf Ubuntu?
    Installieren Sie LAMP und das erforderliche Modul:
    $ sudo apt-get install gettext

    Download-Panel-Skripte:
    $ cd / tmp
    $ wget powerdns-webinterface.googlecode.com/files/powerdns-webinterface-1.5.3.tar.gz
    $ tar xvfz webinterface-1.5 .3.tar.gz
    $ sudo mv webinterface-1.5.3 / var / www / powerdns Erlaubt das


    Schreiben in den Arbeitsordner:
    $ sudo chown -R www-Daten: www-Daten / var / www / powerdns / tmp / templates_c Führt den

    Import durch Grundlagen:
    $ sudo mysql -u benutzername -p pdns db </ pfad-zu / install.sql

    Wir korrigieren configs / db.php auf die korrekten Details für die Verbindung zur Datenbank pdns db.

    Wir gehen zum Browser unter dem Link http: /// powerdns mit dem Benutzernamen / Passwort admin: admin und ändern Sie das Passwort.


    Konfigurationsmanagement-Tools zur Automatisierung von Windows-PCs



    Zunächst wurden Inventarsysteme für die zentrale Softwareverteilung in Betracht gezogen. Bestehende bewährte Lösungen ocsinventory-ng und Mandriva Pulse bieten die Möglichkeit, Pakete in ihrer Funktionalität zu installieren. Beides beinhaltet die Fähigkeit, sich in ein ITIL / ITSM-Element wie Service Desk (insbesondere GLPI ) bequem, aber in der aktuellen Situation nicht direkt zu integrieren . Das Ändern der Parameter der Windows-Registrierung und das Bereitstellen von Zertifikaten wird nur als Herstellung von Installationspaketen dargestellt. Ein Benutzer mit Administratorrechten kann diese Pakete vom Computer löschen. Auf dieser Grundlage begann ich, Konfigurationsmanagementsysteme in Betracht zu ziehen.

    Marionette gilt als die häufigste. Es hat viele Module und Benutzeroberflächen. Änderungen an den Konfigurationsdateien (Manifesten) für Clients, die diese beim nächsten Zugriff auf den Hostserver oder über eine Anforderung des Servers zur sofortigen Ausführung mithilfe der Push-Funktion erhalten.
    Es gibt Module für die Arbeit mit Windows-Systemen. Die Unterstützung für WindowsXP-Systeme wurde eingestellt, nachdem puppet-3.1.1.msi und das aktuelle puppet-3.7.3.msi nicht mehr gestartet werden konnten an den Aufruf von Systemfunktionen gebunden. In älteren Versionen von `no fakty` wie ` system32` und Manifesten sollten verschiedene Szenarien beschreiben auf dem Betriebssystem abhängig. Dies alles erschwert die Verwendung des Systems und es wurde beschlossen, auf andere Tools zu verzichten.
    SaltStack ähnelt Puppet darin, dass es die Push-Methode verwendet, um mit Clients (Minion) zu kommunizieren. Minion öffnet keine Ports, sondern stellt selbst eine Verbindung zum Server her und wartet auf Befehle von diesem, wodurch die Sicherheit des Dienstes erhöht wird. Wenn Puppet Manifeste zur Beschreibung von Konfigurationen hat, führt SaltStack das Konzept des Zustands ein. Am Master vorgenommene Änderungen werden an allen Minions durchgeführt. Es ist anzumerken, dass die Ausführung von Zuständen vom Assistenten initiiert wird und nicht von den Clients selbst, wie es in Puppet implementiert ist. Um den aktuellen Status für den Fall eines längeren Herunterfahrens von Minion
    beizubehalten , wurde der Konfigurationsdatei ein Parameter hinzugefügt: startup_states: 'highstate' (C: \ salt \ conf \ minion) Status
    sind Konfigurationsdateien im YAML-Format mit der Erweiterung sls.
    Wie sieht es aus?
    sls Baum

    Der Lesestatus beginnt mit der Datei top.sls , sofern nicht anders angegeben. Es enthält eine Liste von .sls- Dateien für bestimmte Gruppen.
    roto@salt:/etc/salt/files# cat top.sls
    base:
    # '*':
    # Для всех ПК с Windows
     'all_pc':
      - match: nodegroup
      - gr_inventory
      - gr_7z
      - gr_chrome
      - gr_libreoffice
      - gr_klitecodec
      - gr_essentials
    # Гарант
     'gr_garant':
      - match: nodegroup
      - gr_garant
      # Консультант+
     'gr_consultant':
      - match: nodegroup
      - gr_consultant
    


    Gruppen werden in der Master-Konfigurationsdatei (/ etc / salt / master) definiert und können sehr flexibel angegeben werden. Lesen Sie mehr in der Dokumentation
    In den Beispielen aus der Dokumentation werden Gruppen durch Variablen definiert. Bei dynamischen Arten von Kennwörtern für Datenbanken, Token und Hashes handelt es sich um statische Kennwörter. Darüber hinaus können Variablen in der Beschreibung von Status und in der Salt-Befehlszeile verwendet werden.
    roto @ salt: / etc / salt / files # salt –G 'cpuarch: AMD64' test.ping

    Als Beispiel, das den Microsoft Antivirus- Status auflistet :
    roto@salt:/etc/salt/files# cat gr_essentials.sls
    {% if grains['cpuarch'] == 'AMD64' %}
       w64_essentials:
        pkg:
         - installed
         {% elif grains['osrelease'] == '7' %}
            w32_essentials:
             pkg:
              - installed
           {% elif grains['osrelease'] == 'XP' %}
             w32xp_essentials:
              pkg:
               - installed
    {% endif %}
    

    * Es gibt keine anderen x64-Systeme im Park außer Windows 7.

    Softwarepakete werden aus dem Repository installiert, das in der Master-Konfigurationsdatei (/ etc / salt / master) angegeben ist. Beschreibung des Pakets in der Datei init.sls, Auflistung:
    roto@salt:/etc/salt/files/win/repo/w32xp_essentials# cat init.sls
    w32xp_essentials:
      4.4.304.0:
        installer: 'salt://win/repo/w32xp_essentials/mseinstall.exe'
        full_name: Microsoft Security Essentials
        locale: ru_RU
        reboot: False
        install_flags: '/q /s /runwgacheck '
        uninstaller: '%ProgramFiles(x86)%\Microsoft Security Client\Setup.exe'
        uninstall_flags: ' /U /S'
    


    Salt Master hat einen eingebauten Dateiserver und kann beliebige Dateien an Schergen weitergeben. TCP-Ports:
    • 4505 # für die Verwaltung
    • 4506 # für Dateiübertragungen


    Es gibt SaltPad- und Halite-Weboberflächen für SaltStack. Der erste konnte nicht gestartet werden, und mit Hilfe des zweiten können Sie das Systemnachrichtenprotokoll und den Status von Minions anzeigen und Befehle an diese senden.
    Wie sieht es aus?



    Bei den Tests stellte er sich als äußerst unzuverlässige, unvollständige Lösung heraus, die den Benutzeroberflächen anderer Systeme, insbesondere Puppet-Dashboard, deutlich unterlegen war.
    Wie sieht es aus?



    Um Probleme zu vermeiden, installierte SHELLINABOX.
    Wie sieht es aus?
    SHELLINABOX

    Wie installiere ich auf Ubuntu?
    Installation von Shell in einer Box für den SSH - Zugriff über jeden beliebigen Browser html5:
    $ sudo apt-das bekommen die die OpenSSL shellinabox installieren
    Recht auf Standard - Konfigurationen:
    $ sudo vi / etc / default / shellinabox
    # TCP порт shellinboxd'а на котором отвечать
    SHELLINABOX_PORT=443 
    # IP адрес или имя SSH сервера
    SHELLINABOX_ARGS="--o-beep -s /:SSH:localhost --localhost-only" 
    

    Neustart des Dienstes:
    $ sudo service shellinabox restart
    Überprüfung des Ports:
    $ sudo netstat -nap | grep shellinabox
    In HTML 5 kompatiblem Browser öffnen https: //. Wir benutzen es.


    Das endgültige Installationsskript lautet wie folgt:
    install.cmd
    @Echo Off
    rem /*************************************
    rem  *      Install for SaltStack        *
    rem  *-----------------------------------*
    rem  * (c) 2015 by Aleksey Ovchinnikov   *
    rem  * License: GPL                      *
    rem  * Feel free to customize on your    *
    rem  * needs as long this copyright      *
    rem  * remains intact                    *
    rem  *************************************/
    SetLocal EnableExtensions
    rem /// Проверяем, что скрипт запущен от Администратора
    AT > NUL
    If %ERRORLEVEL% EQU 1 (
    	echo Please use "Run as Administrator"!
    	pause
    	exit /b 
    )
    rem /// Получаем mac первого адаптера
    %SYSTEMROOT%\System32\getmac.exe /NH /FO csv > %TEMP%\all_mac.tmp
    type %TEMP%\all_mac.tmp | findstr /r /c:"-" > %TEMP%\all_mac.txt
    del %TEMP%\all_mac.tmp
    	for /f "usebackq  delims=" %%i in (`find /n /v "" %TEMP%\all_mac.txt ^| find "[1]"`) do (
    	  set mac=%%i
    )
    	For /f "delims=, tokens=1" %%i in ("%mac%") do ( set mac=%%i  )
    set mac=%mac:~4,17%
    	For /f "delims=^- tokens=*" %%i in ("%mac%") do ( set mac=%%i  )
    set mac=%mac:-=%
    set mac=%mac:~0,12%
    rem /// Меняем имя компьютера
    If not "%ComputerName%"=="PC-%mac%" (
    rem	wmic.exe /interactive:off ComputerSystem Where "name = '%computername%'" call rename Name='PC-%mac%'
    rem	wmic os where Primary='TRUE' reboot
    	REG ADD HKLM\SYSTEM\ControlSet001\Control\ComputerName\ComputerName /v ComputerName /t REG_SZ /d "PC-%mac%" /f
    	REG ADD HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName /v ComputerName /t REG_SZ /d "PC-%mac%" /f
    	REG ADD HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v "NV Hostname" /t REG_SZ /d "PC-%mac%" /f
    	REG ADD HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters /v "NV Hostname" /t REG_SZ /d "PC-%mac%" /f
    	shutdown -t 0 -r -f	
    exit /b
    )
    echo ...get NAME  ^> %ComputerName%
    rem /// Получаем IP компьютера
    	FOR /F "usebackq tokens=2 delims=[]" %%i IN (`ping %Computername% -n 1 -4`) DO if not "%%i"=="" Set ip=%%i
    echo ...get IP    ^> %ip%
    rem /// Получаем версию системы
    set key=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion
    	For /F "delims=" %%a in ('reg query "%key%" /v "ProductName" ^| find /i "ProductName"') do ( set OSName=%%a )
    set OSName=%OSName:ProductName=%
    set OSName=%OSName:REG_SZ=%
    	For /F "tokens=* delims= "  %%a in ("%OSName%")  do ( set OSName=%%a )
    echo ...get OS    ^> %OSName%
    rem /// Получаем разрядность системы
    Set xOS=x64
    If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x86
    echo ...get TYPE  ^> %xOS%
    rem /// Передаем для записи в DNS
    set data=%ip%:%COMPUTERNAME%:%COMPUTERNAME%_%OSName%_%xOS%
    set data=%data: =_%
    echo ...add DNS   ^> 
    	c:\saltstack\curl.exe -s http://salt.домен.ру/dns/update.php?data=%data%"
    rem /// Устанавливаем SaltStack учитывая разрядность Windows
     If %xOS%==x86 (c:\saltstack\Salt-Minion-3.1.5-win32-Setup.exe /S /master=salt.домен.ру /minion-name=%COMPUTERNAME%) Else (c:\saltstack\Salt-Minion-3.1.5-AMD64-Setup.exe /S /master=salt.домен.ру /minion-name=%COMPUTERNAME%)
    rem /// Добавляем записи для автообновления стэйтов призапуске системы
    echo.startup_states:  'highstate' >>"C:\salt\conf\minion"
    echo ...auto state    ^> Done!
    attrib +H +S c:\salt
    echo ...hide folder    ^> Done!
    cd c:\
    rmdir /s /q c:\saltstack
    



    Zabbix Monitoring System


    Es gibt viele Überwachungssysteme. Ich kenne Zabbix schon lange, ich habe es gewählt.

    Wie sieht es aus?



    Wie installiere ich auf Ubuntu?
    Installieren Sie die erforderlichen Pakete:
    $ sudo die apt-the bekommen die Installation zabbix-server-die mysql zabbix-the Frontend- Php ca-certificates-java libslf4j-java jarwrapper libandroid-the json-org-java liblogback-java?

    In der Konfigurationsdatei Server / etc / zabbix / zabbix_server. conf Konfigurieren Sie die Datenbankverbindung:
    $ sudo mcedit /etc/zabbix/zabbix_server.conf
    ### Option: DBHost
    #       Database host name.
    #       If set to localhost, socket is used for MySQL.
    #       If set to empty string, socket is used for PostgreSQL.
    #
    # Mandatory: no
    # Default:
    # DBHost=localhost
    ### Option: DBName
    #       Database name.
    #       For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.
    #       Sample SQLite3 DBName:
    #                               DBName=/var/lib/zabbix/zabbix.sqlite3
    #
    # Mandatory: yes
    # Default:
    # DBName=
    DBName=zabbix
    ### Option: DBUser
    #       Database user. Ignored for SQLite.
    #
    # Mandatory: no
    # Default:
    # DBUser=
    DBUser=zabbix
    ### Option: DBPassword
    #       Database password. Ignored for SQLite.
    #       Comment this line if no password is used.
    #
    # Mandatory: no
    # Default:
    # DBPassword=
    DBPassword=zabbix
    

    Готовим базу данных:
    mysql –uuser-name –p
    mysql> create database zabbix character set utf8 collate utf8_unicode_ci;
    mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
    mysql> exit;


    Загружаем структуру и значения в базу данных:
    $ sudo cd /usr/share/zabbix-server-mysql
    $ sudo gunzip *.gz
    $ sudo mysql -uuser-name zabbix -p < schema.sql
    $ sudo mysql -uuser-name zabbix -p < images.sql
    $ sudo mysql -uuser-name zabbix -p < data.sql


    Перезапускаем zabbix:
    $ sudo service zabbix-server start

    И проверяем, что все без ошибок:
    $ tail -n 100 /var/log/zabbix-server/zabbix_server.log

    Скопируем необходимый файл:
    $ sudo cp /usr/share/doc/zabbix-frontend-php/examples/apache.conf /etc/apache2/conf-available/zabbix.conf

    Настроим параметры php для web интерфейса:
    $ sudo mcedit /etc/apache2/conf-available/zabbix.conf
    php_value max_execution_time 300
    php_value memory_limit 128M
    php_value post_max_size 16M
    php_value upload_max_filesize 2M
    php_value max_input_time 300
    php_value date.timezone Asia/Krasnoyarsk
    


    Добавим файл конфигурации web интерфейса zabbix к apache:
    $ sudo a2enconf zabbix.conf

    И перезапустим web сервер:
    $ sudo service apache2 reload

    Откройте URL вашwebсервер/zabbix и выполните все шаги:




    На последнем шаге будет предложено войти:


    Логин/пароль по умолчанию: Admin/zabbix. Измените пароль после входа.


    Мониторинг JMX


    Ab Version 2.0 bietet zabbix native Unterstützung für die Überwachung von JMX. Die Interaktion erfolgt über die JMX-Anwendungsverwaltungs-API über einen Daemon namens Zabbix Java Gateway. Es ist in Java geschrieben.
    Wie installiere ich auf Ubuntu?
    Installieren Sie die erforderlichen Pakete:
    $ sudo die apt-die die --no-die Installations empfiehlt zabbix-java-Gateway get install

    in der Datei /etc/zabbix/zabbix_java_gateway.conf Serverkonfiguration einrichten und Verbindungsoptionen-Gateway die Java:
    $ sudo mcedit / etc / zabbix /zabbix_java_gateway.conf

    # адрес нашего Java-gateway
    JavaGateway=127.0.0.1
    # порт для Java Gateway
    JavaGatewayPort=10052
    # количество Java Gateway процессов, которые будут обрабатывать информацию StartJavaPollers=5
    


    Konfigurieren Sie in der Serverkonfigurationsdatei /etc/zabbix/zabbix_server.conf die Verbindung mit dem Java-Gateway:
    $ sudo mcedit /etc/zabbix/zabbix_server.conf
    ### Option: JavaGateway
    #<----->IP address (or hostname) of Zabbix Java gateway.
    #<----->Only required if Java pollers are started.
    #
    # Mandatory: no
    # Default:
    # JavaGateway=
    JavaGateway=127.0.0.1
    ### Option: JavaGatewayPort
    #<----->Port that Zabbix Java gateway listens on.
    #
    # Mandatory: no
    # Range: 1024-32767
    # Default:
    # JavaGatewayPort=10052
    JavaGatewayPort=10052
    ### Option: StartJavaPollers
    #<----->Number of pre-forked instances of Java pollers.
    #
    # Mandatory: no
    # Range: 0-1000
    # Default:
    # StartJavaPollers=0
    StartJavaPollers=5
    


    Berechtigung zum Ausführen:
    $ sudo mcedit / etc / default / zabbix-server
    START=yes
    


    Wir starten den Dienst:
    $ sudo service zabbix-java-gateway restart

    Die nächste Konfiguration wird auf dem Computer durchgeführt, auf dem die Überwachung durchgeführt wird. Fügen Sie dem Anwendungsserver-Startskript oder dem Servlet-Container Folgendes hinzu:
    -Djava.rmi.server.hostname=192.168.3.14 \
    -Dcom.sun.management.jmxremote \
    -Dcom.sun.management.jmxremote.port=12345 \
    -Dcom.sun.management.jmxremote.authenticate=false \
    -Dcom.sun.management.jmxremote.ssl=false \
    

    Schließen Sie den Zugriff auf diesen Port für alle Benutzer mit Ausnahme der IP-Adressen des zabbix-Servers und des Administrators, der die Firewall verwendet.

    Starten Sie auf dem Admin-Computer JConsole von jdk aus und stellen Sie eine Verbindung zu dem Computer her, auf dem die Überwachung durchgeführt werden soll.
    Wie sieht es aus?



    Wenn die Verbindung erfolgreich hergestellt wurde, müssen Sie die zabbix-Weboberfläche aufrufen und die Parameter für die Überwachung konfigurieren. Gehen Sie zu Einstellungen> Hosts, klicken Sie auf Host erstellen und geben Sie die erforderlichen Werte ein.
    Wie sieht es aus?



    Nach einer Weile werden Daten angezeigt und Sie können ein Diagramm erstellen.
    Wie sieht es aus?




    PostgreSQL-Überwachung


    Laut dem PostgreSQL- Wiki wurden viele Überwachungslösungen geschrieben. Ich habe mich für libzbxpgsql (Lib-Zabbix-PostgreSQL) entschieden. Dies ist ein ursprünglich kompiliertes Modul, das in C für den zabbix-Agenten und eine XML-Vorlage für den Server geschrieben wurde. Der Vorteil gegenüber Skripten ist offensichtlich ein Prozess und keine externen Abhängigkeiten.
    Wie installiere ich auf Ubuntu?
    Es wird vorgeschlagen, das Modul selbst zu kompilieren, das Binärpaket ist nur in rpm. Nimm es.

    Installieren Sie die erforderlichen Pakete auf der Maschine mit der Datenbank , die überwachen wird:
    $ sudo die apt-das bekommen die Installation von fremden zabbix-Agent

    herunterladen Sie das Modul:
    $ sudo die wget downloads.sourceforge.net/project/libzbxpgsl/rpms/libzbxpgsql-0.1.1-1.el7. centos.x86_64.rpm

    Konvertieren Sie das Paket in deb :
    $ sudo alien libzbxpgsql-0.1.1-1.el7.centos.x86_64.rpm

    Installieren Sie das Paket:
    $ sudo dpkg -i libzbxpgsql_0.1.1-2_amd64.deb

    In der Agentenkonfigurationsdatei / etc / zabbix / zabbix_agentd.conf Serververbindungen und -optionen konfigurieren:
    $ sudo mcedit /etc/zabbix/zabbix_agentd.conf
    Server=адрессервера
    ServerActive=адрессервера:порт
    Hostname=doc.домен.ру
    


    Und der Agent neu starten:
    $ sudo Service, agenten Zabbix den Neustart

    Speichern template_postgresql_server.xml
    öffnen Web - Interface zabbix und gehen Sie zu Einstellungen> Vorlagen, klicken wir Konfiguration importieren. Importieren Sie unsere XML-Datei.

    Konfigurieren Sie die Einstellungen für diesen Host. Fügen Sie die erforderlichen Vorlagen und den PostgreSQL-Vorlagenserver hinzu. Geben Sie auf der Registerkarte "Makros" die Parameter für die Verbindung mit der Datenbank ein, die überwacht werden soll.
    Wie sieht es aus?



    Nach einer Weile werden Daten angezeigt und Sie können ein Diagramm erstellen.
    Wie sieht es aus?




    Dieser Artikel wurde als Dokumentation für meinen derzeitigen Arbeitgeber verfasst. Kommentare, Kommentare und Ungenauigkeiten sind willkommen.

    Jetzt auch beliebt: