Ř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:
- Import sad Management Pack stažením nejnovějších verzí z webu Stažení softwaru společnosti Microsoft.
- Vytvořte vyhrazený fond zdrojů pro monitorování počítačů se systémy UNIX a Linux.
- Nakonfigurujte certifikáty pro každý server pro správu ve fondu.
- Vytvořte a nakonfigurujte účty Spustit jako.
- Pomocí Průvodce zjišťováním nainstalujte agenta v systémech UNIX a Linux.
- Import sad Management Pack stažením nejnovějších verzí z webu Stažení softwaru společnosti Microsoft.
- Vytvořte vyhrazený fond zdrojů pro monitorování počítačů se systémy UNIX a Linux.
- Nakonfigurujte certifikáty pro každý server pro správu ve fondu.
- Vytvořte a nakonfigurujte účty Spustit jako.
- Pomocí Průvodce zjišťováním nainstalujte agenta v systémech UNIX a Linux.
- Import sad Management Pack stažením nejnovějších verzí z webu Stažení softwaru společnosti Microsoft.
- Vytvořte vyhrazený fond zdrojů pro monitorování počítačů se systémy UNIX a Linux.
- Nakonfigurujte certifikáty pro každý server pro správu ve fondu.
- Vytvořte a nakonfigurujte účty Spustit jako.
- 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:
Ujistěte se, že je spuštěn proces démon SSH na vzdáleném hostiteli.
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.
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 | 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.
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.
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.
Stáhnout DebugView z: https://go.microsoft.comfwlink/?Linkid=129486.
Spusťte DebugView na serveru pro správu, který provádí zjišťování.
Spusťte zjišťování agentů systému UNIX. V oknech DebugView byste měli začít zobrazovat výstup.
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íží.
Na serveru pro správu, který monitoruje agenta systému UNIX nebo Linux, otevřete příkazový řádek.
Na příkazovém řádku zadejte následující příkazy:
cd C:\Program Files\Microsoft System Center\Operations Manager\Tools
StopTracing.cmd
StartTracing.cmd VER
Reprodukujte problém se selháním v Operations Manageru.
Na příkazovém řádku zadejte následující příkazy:
StopTracing.cmd
FormatTracing.cmd
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.d
souboru . 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.d
souboru .
#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.