Sdílet prostřednictvím


Řešení potíží s monitorováním počítačů se systémy UNIX a Linux

System Center – Operations Manager poskytuje monitorování počítačů se systémy UNIX a Linux podobně jako monitorování počítačů s Windows. Můžete monitorovat stav, výkon, získávat sestavy, spouštět úlohy a implementovat vlastní instrumentaci monitorování.

Můžete monitorovat následující aspekty počítačů se systémy UNIX a Linux:

  • Služby a aplikace

  • Systém souborů, místo na disku, odkládací prostor, systémová paměť

  • síťová rozhraní,

  • Základní procesy a atributy

  • Klíčové konfigurace

Před monitorováním počítačů se systémy UNIX a Linux je nutné provést následující kroky:

  1. Import sad Management Pack stažením nejnovějších verzí z webu Stažení softwaru společnosti Microsoft.
  2. Vytvořte vyhrazený fond zdrojů pro monitorování počítačů se systémy UNIX a Linux.
  3. Nakonfigurujte certifikáty pro každý server pro správu ve fondu.
  4. Vytvořte a nakonfigurujte účty Spustit jako.
  5. Pomocí Průvodce zjišťováním nainstalujte agenta v systémech UNIX a Linux.
  1. Import sad Management Pack stažením nejnovějších verzí z webu Stažení softwaru společnosti Microsoft.
  2. Vytvořte vyhrazený fond zdrojů pro monitorování počítačů se systémy UNIX a Linux.
  3. Nakonfigurujte certifikáty pro každý server pro správu ve fondu.
  4. Vytvořte a nakonfigurujte účty Spustit jako.
  5. Pomocí Průvodce zjišťováním nainstalujte agenta v systémech UNIX a Linux.
  1. Import sad Management Pack stažením nejnovějších verzí z webu Stažení softwaru společnosti Microsoft.
  2. Vytvořte vyhrazený fond zdrojů pro monitorování počítačů se systémy UNIX a Linux.
  3. Nakonfigurujte certifikáty pro každý server pro správu ve fondu.
  4. Vytvořte a nakonfigurujte účty Spustit jako.
  5. Pomocí Průvodce zjišťováním nainstalujte agenta v systémech UNIX a Linux.

Po dokončení výše uvedených kroků a úspěšného zjišťování a nasazení agenta do jednoho nebo více počítačů se systémy UNIX a Linux byste měli ověřit, že jsou monitorované správně. Po nasazení agenta se účty Spustit jako používají k provádění zjišťování spuštěných pomocí příslušných pravidel zjišťování a následnému spuštění monitorování. Po několika minutách v pracovním prostoru Správa přejděte na Správa zařízení/počítače se systémem UNIX/Linux a ověřte, že počítače nejsou uvedené jako Neznámé. Měly by se zjistit a zobrazit konkrétní verzi operačního systému a distribuce.

Operations Manager ve výchozím nastavení monitoruje následující objekty operačního systému:

  • Operační systém
  • Logický disk
  • Síťové adaptéry

Pomocí šablon monitorovacích balíčků systémů UNIX a Linux můžete poskytnout další možnosti monitorování a interakce se spravovanými počítači se systémy UNIX a Linux. Další informace naleznete v tématu Soubor protokolu systému UNIX nebo Linux a PROCES SYSTÉMU UNIX nebo Linux v průvodci vytvářením.

Řešení potíží s monitorováním systémů UNIX a Linux

Následující část obsahuje informace o problémech, ke kterým může dojít při monitorování počítačů se systémy UNIX a Linux v Operations Manageru.

Chybová zpráva o podepsání certifikátu

Při instalaci agentů systému UNIX/Linux se může zobrazit následující chyba.

Event Type: Error  
Event Source: Cross Platform Modules  
Event Category: None  
Event ID: 256  
Date: 4/1/2009  
Time: 4:02:27 PM  
User: N/A  
Computer: COMPUTER1  
Description: Unexpected ScxCertLibException: Can't decode from base64  
; input data is:  

K této chybě dochází v případě, že se volá modul podepisování certifikátů, ale samotný certifikát je prázdný. Příčinou této chyby může být selhání připojení SSH ke vzdálenému systému.

Pokud se zobrazí tato chyba, postupujte takto:

  1. Ujistěte se, že je spuštěn proces démon SSH na vzdáleném hostiteli.

  2. Ujistěte se, že můžete otevřít relaci SSH se vzdáleným hostitelem pomocí přihlašovacích údajů zadaných v Průvodci zjišťováním.

  3. Ujistěte se, že přihlašovací údaje zadané v Průvodci zjišťováním mají požadovaná oprávnění ke zjišťování. Další informace naleznete v tématu Přihlašovací údaje, které musíte mít pro přístup k počítačům se systémy UNIX a Linux.

Název certifikátu a název hostitele se neshodují

Běžný název (CN), který se používá v certifikátu, se musí shodovat s plně kvalifikovaným názvem domény (FQDN), který operations Manager překládá. Pokud se cn neshoduje, při spuštění Průvodce zjišťováním se zobrazí následující chyba:

The SSL certificate contains a common name (CN) that doesn't match the hostname  

Základní podrobnosti o certifikátu můžete zobrazit v počítači se systémem UNIX nebo Linux zadáním následujícího příkazu:

openssl x509 -noout -in /etc/opt/microsoft/scx/ssl/scx.pem -subject -issuer -dates  

Když to uděláte, zobrazí se výstup podobný následujícímu:

subject= /DC=name/DC=newdomain/CN=newhostname/CN=newhostname.newdomain.name  
issuer= /DC=name/DC=newdomain/CN=newhostname/CN=newhostname.newdomain.name  
notBefore=Mar 25 05:21:18 2008 GMT  
notAfter=Mar 20 05:21:18 2029 GMT  

Ověřte názvy hostitelů a data a ujistěte se, že odpovídají názvu, který server pro správu Operations Manageru překládá.

Pokud se názvy hostitelů neshodují, pomocí jedné z následujících akcí problém vyřešte:

  • Pokud je název hostitele systému UNIX nebo Linux správný, ale server pro správu Operations Manageru ho přeloží nesprávně, upravte položku DNS tak, aby odpovídala správnému plně kvalifikovanému názvu domény, nebo přidejte položku do souboru hostitelů na serveru Operations Manageru.

  • Pokud je název hostitele systému UNIX nebo Linux nesprávný, udělejte jednu z těchto věcí:

    • Změňte název hostitele na hostiteli se systémem UNIX nebo Linux na správný název a vytvořte nový certifikát.

    • Vytvořte nový certifikát s požadovaným názvem hostitele.

Změňte název certifikátu:

Pokud byl certifikát vytvořen s nesprávným názvem, můžete změnit název hostitele a znovu vytvořit certifikát a privátní klíč. Uděláte to tak, že na počítači se systémem UNIX nebo Linux spustíte následující příkaz:

/opt/microsoft/scx/bin/tools/scxsslconfig -f -v  

Možnost -f vynutí přepsání souborů v souboru /etc/opt/microsoft/scx/ssl.

Název hostitele a název domény v certifikátu můžete také změnit pomocí přepínačů -h a -d , jako v následujícím příkladu:

/opt/microsoft/scx/bin/tools/scxsslconfig -f -h <hostname> -d <domain.name>  

Restartujte agenta spuštěním následujícího příkazu:

/opt/microsoft/scx/bin/tools/scxadmin -restart  

Přidejte položku do souboru hostitelů:

Pokud plně kvalifikovaný název domény není v reverzním DNS, můžete přidat položku do souboru hostitelů umístěného na serveru pro správu a zadat překlad názvů. Soubor hosts se nachází ve složce Windows\System32\Drivers\etc. Položka v souboru hostitelů je kombinací IP adresy a plně kvalifikovaného názvu domény.

Pokud chcete například přidat položku pro hostitele s názvem newhostname.newdomain.name s IP adresou 192.168.1.1, přidejte na konec souboru hostitelů následující:

192.168.1.1      newhostname.newdomain.name  

Problém se sadou Management Pack

ExecuteCommand nepodporuje operátory kanálů ani aliasy

Pokud používáte alias nebo operátor kanálu s parametrem ExecuteCommand , příkaz selže. Parametr ExecuteCommand nepodporuje syntaxi specifické pro operátor kanálu, aliasy a prostředí.

V sadách Management Pack nástroje System Center Operations Manager, které jsou navržené pro správu počítačů se systémem UNIX a Linux, parametr ExecuteCommand nespustí proces prostředí, což způsobí selhání vlastní akce.

Pro každý z následujících typů vlastních akcí určíte, jak jsou argumenty příkazu vyvolány pomocí parametru ExecuteCommand nebo parametru ExecuteShellCommand :

  • Microsoft.Unix.WSMan.Invoke.ProbeAction

  • Microsoft.Unix.WSMan.Invoke.WriteAction

  • Microsoft.Unix.WSMan.Invoke.Privileged.ProbeAction

  • Microsoft.Unix.WSMan.Invoke.Privileged.WriteAction

Parametr ExecuteCommand předá do konzoly argumenty příkazového řádku bez spuštění procesu prostředí.

Parametr ExecuteShellCommand předá argumenty příkazu procesu prostředí pomocí výchozího prostředí uživatele. Toto prostředí podporuje syntaxi specifické pro kanál, aliasy a prostředí.

Poznámka:

Parametr ExecuteShellCommand používá výchozí prostředí uživatele, který spouští příkaz. Pokud požadujete konkrétní prostředí, použijte parametr ExecuteCommand a předponu argumentů příkazu s požadovaným prostředím.

Následující příklady ukazují, jak používat parametry ExecuteCommand a ExecuteShellCommand :

  • Předání argumentů příkazového řádku konzole bez spuštění procesu prostředí:

    <p:ExecuteCommand_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/SCX_OperatingSystem"> <p:Command> service syslog status </p:Command> <p:timeout>10</p:timeout> </p:ExecuteCommand_INPUT>

  • Předání argumentů příkazového řádku do procesu prostředí, který odkazuje na explicitní prostředí:

    <p:ExecuteCommand_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/SCX_OperatingSystem"> <p:Command> /bin/sh ps -ef syslog | grep -v grep </p:Command> <p:timeout>10</p:timeout> </p:ExecuteCommand_INPUT>

  • Předání argumentů příkazu do procesu prostředí, který používá výchozí prostředí uživatele:

    <p:ExecuteShellCommand_INPUT xmlns:p="https://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/SCX_OperatingSystem"> <p:Command> uptime |&nbsp; awk '{print $10}' |awk -F"," '{print $1}' </p:Command> <p:timeout>10</p:timeout> </p:ExecuteShellCommand_INPUT>

Protokolování a ladění

Tato část popisuje, jak povolit nástroje pro protokolování a ladění pro řešení potíží s monitorováním počítačů se systémy UNIX a Linux.

Poznámka:

S Operations Managerem 2019 UR3 je možné změnit nastavení na úrovni protokolu bez restartování agenta. Další informace.

Poznámka:

Nastavení na úrovni protokolu můžete změnit bez restartování agenta. Další informace.

Povolení protokolování modulu nástroje Operations Manager

Agenti nástroje Operations Manager pro UNIX a Linux udržují několik souborů protokolu, které můžou být užitečné při řešení potíží s klienty. Tyto soubory protokolů se nacházejí ve spravovaném počítači se systémem UNIX nebo Linux. Úroveň protokolování pro soubory protokolu agenta je možné podle potřeby nakonfigurovat. Při diagnostice problému může být užitečné podrobnější protokolování. V případě normálního provozu by úrovně protokolu neměly být nastaveny na hodnotu, která je více podrobná než výchozí konfigurace (zprostředkující), aby se zabránilo nadměrnému růstu souboru protokolu.

Poznámka:

Volání provedená mimo vzdálenou správu systému Windows (WinRM) se provádějí pomocí protokolu SSH/SFTP. Tyto komponenty využívají samostatný mechanismus protokolování než Operations Manager.

Poznámka:

Úroveň protokolování souboru protokolu omiserver.log nelze změnit z výchozí verze agentů nástroje Operations Manager pro unix a Linux.

  1. Vytvořte prázdný soubor s názvem EnableOpsmgrModuleLogging v adresáři temp pro uživatelský účet volající tyto moduly zadáním na příkazový řádek nebo na příkazovém řádku PowerShellu:

    COPY /Y NUL %windir%\TEMP\EnableOpsMgrModuleLogging
    
    New-Item "$env:windir\TEMP\EnableOpsMgrModuleLogging"
    

    Poznámka:

    Obecně platí, že se jedná o účet SYSTEM, který volá, a C:\Windows\Temp je výchozí dočasná složka SYSTEM.

  2. Po vytvoření prázdného souboru operations Manager okamžitě začne protokolovat aktivitu SSH a certifikátu do dočasného adresáře. Skripty, které volají protokol modulů SSH do <Scriptname.vbs>.log. Jiné moduly mají vlastní protokoly.

V některých případech může být nutné restartovat HealthService, aby se projevilo protokolování EnableOpsmgrModuleLogging.

Povolení protokolování v agentu systému UNIX

Tyto protokoly hlásí akce agenta systému UNIX. Pokud dojde k potížím s daty vrácenými do Operations Manageru, podívejte se do tohoto protokolu. Množství informací zaprotokolovaných pomocí příkazu scxadmin můžete nastavit. Tento příkaz má tuto syntaxi:

scxadmin -log-set [all|cimom|provider] {verbose|intermediate|errors}

Následující tabulka uvádí možné hodnoty parametrů:

Level Popis
Chyby Protokolovat pouze upozornění nebo chybové zprávy.
Středně pokročilý Protokolování informací, upozornění a chybových zpráv
Podrobnosti Protokolování informací, upozornění a chybových zpráv s protokolováním ladění Všimněte si, že tato úroveň protokolování pravděpodobně způsobí rychlý růst velikosti souborů protokolu. Doporučuje se, aby se tato možnost používala pouze po krátkou dobu k diagnostice konkrétního problému.

Řešení potíží se zjišťováním pomocí DebugView

DebugView je alternativní metoda k EnableOpsmgrModuleLogging pro řešení potíží se zjišťováním.

  1. Stáhnout DebugView z: https://go.microsoft.comfwlink/?Linkid=129486.

  2. Spusťte DebugView na serveru pro správu, který provádí zjišťování.

  3. Spusťte zjišťování agentů systému UNIX. V oknech DebugView byste měli začít zobrazovat výstup.

  4. DebugView zobrazí podrobný přehled procesu průvodce zjišťováním. Často se jedná o nejrychlejší metodu řešení potíží se zjišťováním.

Povolení protokolování nástroje Operations Manager pro vzdálenou správu systému Windows

Tato podrobná metoda trasování slouží k zobrazení dotazů vzdálené správy systému Windows (WinRM) používaných Operations Managerem ke shromažďování dat z agenta. Pokud máte podezření, že došlo k potížím s připojením WinRM, tento protokol obsahuje podrobné informace, které vám můžou pomoct s řešením potíží.

  1. Na serveru pro správu, který monitoruje agenta systému UNIX nebo Linux, otevřete příkazový řádek.

  2. Na příkazovém řádku zadejte následující příkazy:

    1. cd C:\Program Files\Microsoft System Center\Operations Manager\Tools

    2. StopTracing.cmd

    3. StartTracing.cmd VER

  3. Reprodukujte problém se selháním v Operations Manageru.

  4. Na příkazovém řádku zadejte následující příkazy:

    1. StopTracing.cmd

    2. FormatTracing.cmd

  5. Vyhledejte WS-Man v souboru TracingGuidsNative.log.

Poznámka:

WinRM se také označuje jako WS-Management (WS-Man).

Poznámka:

Příkaz FormatTracing otevře okno Průzkumníka Windows zobrazující C:\Windows\Logs\OpsMgrTrace adresář. Soubor TracingGuidsNative.log je v daném adresáři.

Správa souborů protokolů systémů UNIX a Linux

Agenti nástroje Operations Manager pro systémy UNIX a Linux neomezujte velikost souborů protokolu agenta. Pokud chcete řídit maximální velikost souborů protokolu, implementujte proces pro správu souborů protokolu. Standardní nástroj logrotate je například k dispozici v mnoha operačních systémech UNIX a Linux. Nástroj logrotate lze nakonfigurovat tak, aby kontroloval soubory protokolu používané agenty nástroje Operations Manager pro UNIX nebo Linux. Po obměně nebo úpravě souborů protokolu agenta musí být agent signalován, že se protokoly otočily, aby bylo možné pokračovat v protokolování. Příkaz scxadmin lze použít s parametrem -log-rotate s následující syntaxí:

scxadmin -log-rotate all

Příklad konfiguračního souboru Logrotate

Následující příklad ukazuje konfigurační soubor pro otočení scx.log souborů a omiserver.log pomocí nástroje logrotate Linuxu. Logrotate se obvykle spustí jako naplánovaná úloha (s crondem) a bude fungovat s konfiguračními soubory nalezenými v /etc/logrotate.dsouboru . Chcete-li otestovat a použít tento konfigurační soubor, upravte konfiguraci tak, aby byla vhodná pro vaše prostředí, a propojte nebo uložte soubor do /etc/logrotate.dsouboru .

#opsmgr.lr  

#Rotate scx.log  
#Weekly rotation, retain four weeks of compressed logs  
#Invoke scxadmin -log-rotate to resume logging after rotation  

/var/opt/microsoft/scx/log/scx.log {  
rotate 4  
weekly  
compress  
missingok  
notifempty  
postrotate  

/usr/sbin/scxadmin -log-rotate all  
endscript  
}

#Rotate scx.log for the monitoring user account named: monuser  
#Weekly rotation, retain four weeks of compressed logs  
#Invoke scxadmin -log-rotate to resume logging after rotation  

/var/opt/microsoft/scx/log/monuser/scx.log {  
rotate 4  
weekly  
compress  
missingok  
notifempty  
postrotate  

/usr/sbin/scxadmin -log-rotate all
endscript  
}  

#Optionally, rotate omiserver.log. This requires that OMI be stopped and started to prevent  
#impact to logging. Monthly rotation, retain two weeks of compressed logs  
#Uncomment these lines if rotation of omiserver.log is needed  

#/var/opt/microsoft/scx/log/omiserver.log{  
#        rotate 2  
#        monthly  
#        compress  
#        missingok  
#        notifempty  
#        prerotate  
#        /usr/sbin/scxadmin -stop  
#        endscript  
#        postrotate  
#        /usr/sbin/scxadmin -start  
#        endscript\
#}  

Další kroky

Další doprovodné materiály, které vám pomůžou vyřešit běžné problémy s nasazením agenta, najdete na wikiwebu zjišťování agenta systému UNIX/Linux v Operations Manageru 2012.