Megosztás a következőn keresztül:


A 4.0-s Linux diagnosztikai bővítmény használata metrikák és naplók monitorozásához

Figyelemfelhívás

Ez a cikk az End Of Life (EOL) állapotú Linux-disztribúcióra, a CentOS-ra hivatkozik. Fontolja meg a használatát, és ennek megfelelően tervezze meg. További információ: CentOS End Of Life útmutató.

Ez a cikk a Linux diagnosztikai bővítmény (LAD) legújabb verzióit ismerteti.

Fontos

A 3.x verzióval kapcsolatos információkért lásd : A 3.0-s Linux diagnosztikai bővítmény használata metrikák és naplók monitorozásához. A 2.3-es és korábbi verzióval kapcsolatos információkért lásd : Linux rendszerű virtuális gépek teljesítményének és diagnosztikai adatainak monitorozása.

A Linux diagnosztikai bővítmény segít a Linux rendszerű virtuális gépek állapotának monitorozásában a Microsoft Azure-ban. A következő képességekkel rendelkezik:

Adatforrás Testreszabási beállítások Kötelező célhelyek Választható célhelyek
Mérőszámok Számláló, Összesítés, Mintasebesség, Meghatározók Azure Table Storage EventHub, Azure Blob Storage (JSON-formátum), Azure Monitor (a LAD 4.0 újdonsága)
Rendszernapló Létesítmény, súlyossági szint Azure Table Storage EventHub, Azure Blob Storage (JSON formátum)
Fájlok Napló elérési útja, céltábla Azure Table Storage EventHub, Azure Blob Storage (JSON formátum)

Ez a bővítmény az Azure-beli üzemi modellekkel is működik: az Azure Resource Managerrel és a klasszikussal.

Előfeltételek

  • Az Azure Linux-ügynök 2.2.0-s vagy újabb verziója. Az Azure-beli virtuális gépek linuxos katalógusának legtöbb képe tartalmazza a 2.2.7-es vagy újabb verziót. Futtassa /usr/sbin/waagent -version a virtuális gépre telepített verzió megerősítéséhez. Ha a virtuális gép a vendégügynök régebbi verzióját futtatja, frissítse a Linux-ügynököt.
  • Azure parancssori felület (CLI). Állítsa be az Azure CLI-környezetet a gépén.
  • A wget parancs. Ha még nem rendelkezik vele, telepítse a megfelelő csomagkezelővel.
  • Az adatok tárolására szolgáló Azure-előfizetés és általános célú tárfiók . Az általános célú tárfiókok támogatják a táblatárolást, ami szükséges. A Blob Storage-fiók nem működik.
  • Python 2.

Támogatott Linux-disztribúciók

Lásd: Támogatott ügynök operációs rendszerek.

Python-követelmény

A Linux diagnosztikai bővítményhez Python 2 szükséges. Ha a virtuális gép olyan disztribúciót használ, amely nem tartalmazza a Python 2-t, telepítse.

Feljegyzés

Jelenleg azt tervezzük, hogy a Linux diagnosztikai bővítmények (LAD) összes verzióját az új Azure Monitoring Agenttel konvergáljuk, amely már támogatja a Python 3-at. Alad lesz ütemezve elavulás függőben bejelentés és jóváhagyás.

A Python 2 telepítéséhez futtassa az alábbi mintaparancsok egyikét:

  • Red Hat, CentOS, Oracle: yum install -y python2
  • Ubuntu, Debian: apt-get install -y python2
  • SUSE: zypper install -y python2

A python2 végrehajtható fájlt aliasként kell megadni.python

  1. Futtassa a következő parancsot a meglévő aliasok eltávolításához.

    sudo update-alternatives --remove-all python
    
  2. Futtassa a következő parancsot az új alias létrehozásához.

    sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1
    

A bővítmény telepítése

Ezt a bővítményt az Azure PowerShell-parancsmagok, az Azure CLI-szkriptek, az Azure Resource Manager-sablonok (ARM-sablonok) vagy az Azure Portal használatával engedélyezheti a virtuális gép és a virtuálisgép-méretezési csoport számára. További információkért lásd a Linux virtuálisgép-bővítményeit és funkcióit.

Feljegyzés

A Linux diagnosztikai virtuálisgép-bővítmény egyes összetevőit a Log Analytics virtuálisgép-bővítményben is szállítjuk. Ütközések akkor fordulhatnak elő, ha mindkét bővítményt ugyanabban az ARM-sablonban példányosítjuk.

A telepítési idő ütközéseinek elkerülése érdekében az dependsOn irányelv használatával egymás után telepítse a bővítményeket. A bővítmények bármelyik sorrendben telepíthetők.

A telepítési utasításokat és egy letölthető mintakonfigurációt használva konfigurálja a LAD 4.0-t a következőre:

  • Rögzítse és tárolja ugyanazokat a metrikákat, mint a LAD 2.3 és 3.x verziója.
  • Metrikák küldése az Azure Monitor-fogadóba a szokásos fogadóval együtt az Azure Storage-ba. Ez a funkció új a LAD 4.0-ban.
  • Rögzítse a fájlrendszer metrikáinak hasznos készletét, mint a LAD 3.0-s verziójában.
  • Rögzítse a LAD 2.3 által engedélyezett alapértelmezett syslog-gyűjteményt.
  • Engedélyezze az Azure Portal használatát a virtuálisgép-metrikák diagramkészítéséhez és riasztásához.

A letölthető konfiguráció csak egy példa. Módosítsa az igényeinek megfelelően.

Telepítés

A LAD 4.0-t az Azure CLI-ben vagy az Azure PowerShellben telepítheti és konfigurálhatja.

Ha a védett beállítások ProtectedSettings.json fájlban találhatók, és a nyilvános konfigurációs adatok PublicSettings.json találhatók, futtassa a következő parancsot:

az vm extension set --publisher Microsoft.Azure.Diagnostics \
  --name LinuxDiagnostic --version 4.0 --resource-group <resource_group_name> \
  --vm-name <vm_name> --protected-settings ProtectedSettings.json \
  --settings PublicSettings.json

A parancs feltételezi, hogy az Azure CLI Azure Resource Management módját használja. A klasszikus üzemi modell virtuális gépeinek LAD-jének konfigurálásához váltson Service Management módra (azure config mode asm), és hagyja ki az erőforráscsoport nevét a parancsban.

További információkért tekintse meg a platformfüggetlen parancssori felület dokumentációját.

Automatikus frissítés engedélyezése

Az ügynök automatikus frissítésének engedélyezéséhez javasoljuk, hogy engedélyezze az Automatikus bővítményfrissítés funkciót:

az vm extension set --publisher Microsoft.Azure.Diagnostics --name LinuxDiagnostic \
  --version 4.0 --resource-group <resource_group_name> --vm-name <vm_name> \
  --protected-settings ProtectedSettings.json --settings PublicSettings.json \
  --enable-auto-upgrade true

Mintatelepítés

Ezekben a példákban a mintakonfiguráció összegyűjti a szabványos adatokat, és elküldi azokat a táblatárolóba. A mintakonfiguráció URL-címe és tartalma változhat.

Feljegyzés

Az alábbi mintákhoz a kód futtatása előtt töltse ki az első szakaszban szereplő változók megfelelő értékeit.

A legtöbb esetben le kell töltenie a portálbeállítások JSON-fájljának egy példányát, és testre kell szabnia az igényeinek megfelelően. Sablonok vagy saját automatizálás használata a konfigurációs fájl testreszabott verziójának használatához ahelyett, hogy minden alkalommal letöltenél az URL-címről.

Ha engedélyezi az új Azure Monitor-fogadót, a virtuális gépeknek engedélyezniük kell a rendszer által hozzárendelt identitást a felügyeltszolgáltatás-identitás (MSI) hitelesítési jogkivonatok létrehozásához. Ezeket a beállításokat a virtuális gép létrehozása során vagy után is hozzáadhatja. Az Azure Portalra, az Azure CLI-re, a PowerShellre és az Azure Resource Managerre vonatkozó utasításokért lásd: Felügyelt identitások konfigurálása.

Telepítési minta – Azure CLI

# Set your Azure VM diagnostic variables.
my_subscription_id=<your_azure_subscription_id>
my_resource_group=<your_azure_resource_group_name_containing_your_azure_linux_vm>
my_linux_vm=<your_azure_linux_vm_name>
my_diagnostic_storage_account=<your_azure_storage_account_for_storing_vm_diagnostic_data>

# Login to Azure before you do anything else.
az login

# Select the subscription that contains the storage account.
az account set --subscription $my_subscription_id

# Enable system-assigned identity on the existing VM.
az vm identity assign --resource-group $my_resource_group --name $my_linux_vm

# Download the sample public settings. You could instead use curl or any web browser.
wget https://raw.githubusercontent.com/Azure/azure-linux-extensions/master/Diagnostic/tests/lad_2_3_compatible_portal_pub_settings.json -O portal_public_settings.json

# Build the VM resource ID. Replace the storage account name and resource ID in the public settings.
my_vm_resource_id=$(az vm show --resource-group $my_resource_group \
  --name $my_linux_vm --query "id" -o tsv)
sed -i "s#__DIAGNOSTIC_STORAGE_ACCOUNT__#$my_diagnostic_storage_account#g" portal_public_settings.json
sed -i "s#__VM_RESOURCE_ID__#$my_vm_resource_id#g" portal_public_settings.json

# Build the protected settings (storage account SAS token).
my_diagnostic_storage_account_sastoken=$(az storage account generate-sas \
  --account-name $my_diagnostic_storage_account --expiry 2037-12-31T23:59:00Z \
  --permissions wlacu --resource-types co --services bt -o tsv)
my_lad_protected_settings="{'storageAccountName': '$my_diagnostic_storage_account', \
  'storageAccountSasToken': '$my_diagnostic_storage_account_sastoken'}"

# Finally, tell Azure to install and enable the extension.
az vm extension set --publisher Microsoft.Azure.Diagnostics --name LinuxDiagnostic \
  --version 4.0 --resource-group $my_resource_group --vm-name $my_linux_vm \
  --protected-settings "${my_lad_protected_settings}" --settings portal_public_settings.json

Telepítési minta virtuálisgép-méretezési csoportokhoz – Azure CLI

# Set your Azure virtual machine scale set diagnostic variables.
my_subscription_id=<your_azure_subscription_id>
my_resource_group=<your_azure_resource_group_name_containing_your_azure_linux_vm>
my_linux_vmss=<your_azure_linux_vmss_name>
my_diagnostic_storage_account=<your_azure_storage_account_for_storing_vm_diagnostic_data>

# Login to Azure before you do anything else.
az login

# Select the subscription that contains the storage account.
az account set --subscription $my_subscription_id

# Enable system-assigned identity on the existing virtual machine scale set.
az vmss identity assign --resource-group $my_resource_group --name $my_linux_vmss

# Download the sample public settings. You could also use curl or any web browser.
wget https://raw.githubusercontent.com/Azure/azure-linux-extensions/master/Diagnostic/tests/lad_2_3_compatible_portal_pub_settings.json -O portal_public_settings.json

# Build the virtual machine scale set resource ID. Replace the storage account name and resource ID in the public settings.
my_vmss_resource_id=$(az vmss show --resource-group $my_resource_group \
  --name $my_linux_vmss --query "id" -o tsv)
sed -i "s#__DIAGNOSTIC_STORAGE_ACCOUNT__#$my_diagnostic_storage_account#g" portal_public_settings.json
sed -i "s#__VM_RESOURCE_ID__#$my_vmss_resource_id#g" portal_public_settings.json

# Build the protected settings (storage account SAS token).
my_diagnostic_storage_account_sastoken=$(az storage account generate-sas \
  --account-name $my_diagnostic_storage_account --expiry 2037-12-31T23:59:00Z \
  --permissions wlacu --resource-types co --services bt -o tsv)
my_lad_protected_settings="{'storageAccountName': '$my_diagnostic_storage_account', 'storageAccountSasToken': '$my_diagnostic_storage_account_sastoken'}"

# Finally, tell Azure to install and enable the extension.
az vmss extension set --publisher Microsoft.Azure.Diagnostics --name LinuxDiagnostic
  --version 4.0 --resource-group $my_resource_group --vmss-name $my_linux_vmss \
  --protected-settings "${my_lad_protected_settings}" --settings portal_public_settings.json

A bővítmény beállításainak frissítése

Miután módosította a védett vagy nyilvános beállításokat, futtassa ugyanazt a parancsot a virtuális gépen való üzembe helyezéshez. Ha módosultak a beállítások, a rendszer elküldi a frissítéseket a bővítménynek. A LAD újra betölti a konfigurációt, és újraindítja magát.

Migrálás a bővítmény korábbi verzióiból

A bővítmény legújabb verziója a 4.0, amely jelenleg nyilvános előzetes verzióban érhető el. A 3.x régebbi verziói továbbra is támogatottak. A 2.x verzió 2018. július 31. óta elavult.

Fontos

A 3.x verzióról a bővítmény legújabb verziójára való migráláshoz távolítsa el a régi bővítményt. Ezután telepítse a 4-es verziót, amely tartalmazza a rendszer által hozzárendelt identitások és fogadók frissített konfigurációját a metrikák Azure Monitor-fogadóba való küldéséhez.

Az új bővítmény telepítésekor engedélyezze az automatikus alverziófrissítéseket:

  • Azure Resource Manager-alapú üzemi modell virtuális gépeken vegye fel "autoUpgradeMinorVersion": true a virtuálisgép-üzembehelyezési sablont.
  • Klasszikus üzemi modell virtuális gépeken adja meg a verziót 4.* , ha a bővítményt az Azure CLI-n vagy a PowerShellen keresztül telepíti.

Ugyanazt a tárfiókot használhatja, amelyet a LAD 3.x-hez használt.

Védett beállítások

Ez a konfigurációs információkészlet bizalmas információkat tartalmaz, amelyeket védeni kell a nyilvános nézettől. Például tárolási hitelesítő adatokat tartalmaz. A rendszer a beállításokat a bővítménynek továbbítja, amely titkosított formában tárolja őket.

{
    "storageAccountName" : "the storage account to receive data",
    "storageAccountEndPoint": "the hostname suffix for the cloud for this account",
    "storageAccountSasToken": "SAS access token",
    "mdsdHttpProxy": "HTTP proxy settings",
    "sinksConfig": { ... }
}
Név szerint Érték
storageAccountName Annak a tárfióknak a neve, amelyben a bővítmény adatokat ír.
storageAccountEndPoint (Nem kötelező) Az a végpont, amely azonosítja azt a felhőt, amelyben a tárfiók létezik. Ha ez a beállítás hiányzik, a LAD alapértelmezés szerint az Azure nyilvános felhőt használja. https://core.windows.net A 21Vianet által üzemeltetett Azure Germany, Azure Government vagy Microsoft Azure tárfiók használatához szükség szerint állítsa be ezt az értéket.
storageAccountSasToken Fiók SAS-jogkivonata blob- és táblaszolgáltatásokhoz (ss='bt'). Ez a jogkivonat tárolókra és objektumokra (srt='co') vonatkozik. Megadja a hozzáadási, létrehozási, listázási, frissítési és írási engedélyeket (sp='acluw'). Ne tartalmazza a vezető kérdőjelet (?).
mdsdHttpProxy (Nem kötelező) HTTP-proxyinformációk, amelyekre a bővítménynek csatlakoznia kell a megadott tárfiókhoz és végponthoz.
sinksConfig (Nem kötelező) Az alternatív célhelyek részletei, amelyekbe a metrikák és események kézbesíthetők. Az alábbi szakaszok részletesen ismertetik a bővítmény által támogatott adatgyűjtők adatait.

Ha SAS-jogkivonatot szeretne lekérni egy ARM-sablonban, használja a függvényt listAccountSas . Példasablonért lásd a Lista függvény példáját.

A szükséges közös hozzáférésű jogosultságkód-jogkivonatot az Azure Portalon hozhatja létre:

  1. Válassza ki azt az általános célú tárfiókot, amelyhez a bővítményt írni szeretné.
  2. A bal oldali menü Biztonság + hálózatkezelés területén válassza a Közös hozzáférésű jogosultságkód lehetőséget.
  3. A korábban ismertetett módon végezze el a kijelöléseket.
  4. Válassza a SAS és kapcsolati sztring létrehozása lehetőséget.

Képernyőkép a Közös hozzáférésű jogosultságkód lapról, amelyen az SAS létrehozása és kapcsolati sztring található.

Másolja a létrehozott közös hozzáférésű jogosultságkódot a storageAccountSasToken mezőbe. Távolítsa el a vezető kérdőjelet (?).

sinksConfig

Feljegyzés

A nyilvános és a védett beállítások is választható sinksConfig szakaszokkal rendelkeznek. A sinksConfig védett beállítások szakasza csak a titkos kulcsok( például sasURLs) miatt tárolja EventHub és JsonBlob tárolja a konfigurációkat. AzMonSinka fogadó konfigurációi nem vehetők fel a védett beállítások közé.

"sinksConfig": {
    "sink": [
        {
            "name": "sinkname",
            "type": "sinktype",
            ...
        },
        ...
    ]
},

Az sinksConfig opcionális szakasz további célhelyeket határoz meg, amelyekre a bővítmény összegyűjtött információkat küld. A "sink" tömb minden további adatgyűjtőhöz tartalmaz egy objektumot. Az "type" attribútum határozza meg az objektum többi attribútumát.

Elem Érték
név A fogadóra a bővítménykonfiguráció más részein hivatkozó sztring.
típus A definiált fogadó típusa. Meghatározza az ilyen típusú példányok egyéb értékeit, ha vannak ilyenek.

A Linux diagnosztikai bővítmény 4.0 két védett fogadótípust támogat: EventHub és JsonBlob.

EventHub-fogadó

"sink": [
    {
        "name": "sinkname",
        "type": "EventHub",
        "sasURL": "https SAS URL"
    },
    ...
]

A "sasURL" bejegyzés tartalmazza annak az eseményközpontnak a teljes URL-címét, beleértve a közös hozzáférésű jogosultságkód jogkivonatát, amelyen az adatokat közzé kell tenni. A LAD megköveteli a megosztott hozzáférésű jogosultságkód használatát egy olyan szabályzat elnevezéséhez, amely lehetővé teszi a küldési jogcímet. Példa:

  • Hozzon létre egy Event Hubs-névteret .contosohub
  • Hozzon létre egy eseményközpontot a névtérben.syslogmsgs
  • Hozzon létre egy megosztott hozzáférési szabályzatot a küldési jogcímet engedélyező eseményközpontban writer .

Ha 2018. január 1-jén éjfélig jó SAS-t hoz létre, az sasURL érték az alábbi példához hasonló lehet.

https://contosohub.servicebus.windows.net/syslogmsgs?sr=contosohub.servicebus.windows.net%2fsyslogmsgs&sig=xxxxxxxxxxxxxxxxxxxxxxxxx&se=1514764800&skn=writer

Az Event Hubs SAS-jogkivonatainak létrehozásával és lekérésével kapcsolatos további információkért lásd : SAS-jogkivonat létrehozása.

JsonBlob fogadó

"sink": [
    {
        "name": "sinkname",
        "type": "JsonBlob"
    },
    ...
]

A fogadónak JsonBlob irányított adatok blobokban tárolódnak az Azure Storage-ban. A LAD minden példánya óránként létrehoz egy blobot minden fogadónévhez. Minden blob mindig tartalmaz egy szintaktikailag érvényes JSON-objektumtömböt. Az új bejegyzések atomilag hozzáadódnak a tömbhöz.

A blobok olyan tárolóban vannak tárolva, amelynek neve megegyezik a fogadó nevével. A blobtárolók nevére vonatkozó Azure Storage-szabályok a fogadók nevére JsonBlob vonatkoznak. A neveknek 3 és 63 közötti kisbetűs alfanumerikus ASCII-karakterekkel vagy kötőjelekkel kell rendelkezniük.

Nyilvános beállítások

A nyilvános beállítások struktúrája különböző beállításblokkokat tartalmaz, amelyek szabályozzák a bővítmény által gyűjtött információkat. Minden beállítás, kivéve ladCfg, nem kötelező. Ha metrikát vagy syslog-gyűjteményt ladCfgad meg, meg kell adnia StorageAccountazt is. Meg kell adnia azt az sinksConfig elemet, amely lehetővé teszi az Azure Monitor-fogadó számára a LAD 4.0 metrikáit.

{
    "ladCfg":  { ... },
    "fileLogs": { ... },
    "StorageAccount": "the storage account to receive data",
    "sinksConfig": { ... },
    "mdsdHttpProxy" : ""
}
Elem Érték
StorageAccount Annak a tárfióknak a neve, amelyben a bővítmény adatokat ír. A védett beállításokban megadott névnek kell lennie.
mdsdHttpProxy (Nem kötelező) A védett beállításokban megadott proxy. Ha a privát érték be van állítva, az felülírja a nyilvános értéket. Helyezze el a titkos kódokat (például jelszót) tartalmazó proxybeállításokat a védett beállítások között.

A következő szakaszok a többi elem részleteit ismertetik.

ladCfg

"ladCfg": {
    "diagnosticMonitorConfiguration": {
        "eventVolume": "Medium",
        "metrics": { ... },
        "performanceCounters": { ... },
        "syslogEvents": { ... }
    },
    "sampleRateInSeconds": 15
}

A ladCfg struktúra szabályozza a metrikák és naplók gyűjtését az Azure Monitor Metrics szolgáltatásnak és más adatgyűjtőknek történő kézbesítéshez. Adja meg vagy performanceCounters syslogEvents mindkettőt. Adja meg a struktúrát metrics is.

Ha nem szeretné engedélyezni a syslog vagy a metrikák gyűjteményét, adjon meg egy üres struktúrát az ladCfg elemhez:

"ladCfg": {
    "diagnosticMonitorConfiguration": {}
}
Elem Érték
eventVolume (Nem kötelező) A tárolótáblában létrehozott partíciók számát szabályozza. Az értéknek "Large", "Medium"vagy "Small". Az alapértelmezett érték "Medium".
sampleRateInSeconds (Nem kötelező) A nyers, azaz nem összesített metrikák gyűjtése közötti alapértelmezett intervallum. A legkisebb támogatott mintasebesség 15 másodperc. Az alapértelmezett érték 15.

metrics

"metrics": {
    "resourceId": "/subscriptions/...",
    "metricAggregation" : [
        { "scheduledTransferPeriod" : "PT1H" },
        { "scheduledTransferPeriod" : "PT5M" }
    ]
}
Elem Érték
resourceId A virtuális gép vagy annak a virtuálisgép-méretezési csoportnak az Azure Resource Manager-erőforrás-azonosítója, amelyhez a virtuális gép tartozik. Akkor is adja meg ezt a beállítást, ha a konfiguráció fogadót JsonBlob használ.
scheduledTransferPeriod Az összesített metrikák kiszámításának és az Azure Monitor-metrikákba való átvitelének gyakorisága. A gyakoriság értéke IS 8601 időintervallum. A legkisebb átviteli időszak 60 másodperc, azaz PT1M. Adjon meg legalább egyet scheduledTransferPeriod.

A szakaszban megadott performanceCounters metrikák mintáit 15 másodpercenként vagy a számlálóhoz explicit módon meghatározott mintasebességen gyűjtjük össze. Ha több scheduledTransferPeriod frekvencia jelenik meg, mint a példában, az egyes összesítések egymástól függetlenül lesznek kiszámítva.

performanceCounters

"performanceCounters": {
    "sinks": "",
    "performanceCounterConfiguration": [
        {
            "type": "builtin",
            "class": "Processor",
            "counter": "PercentIdleTime",
            "counterSpecifier": "/builtin/Processor/PercentIdleTime",
            "condition": "IsAggregate=TRUE",
            "sampleRate": "PT15S",
            "unit": "Percent",
            "annotation": [
                {
                    "displayName" : "cpu idle time",
                    "locale" : "en-us"
                }
            ]
        }
    ]
}

Az performanceCounters opcionális szakasz szabályozza a metrikák gyűjteményét. A nyers minták összesítése minden ütemezettTransferPeriod esetében az alábbi értékek előállításához szükséges:

  • Középérték
  • Minimum
  • Maximum
  • Legutóbb gyűjtött érték
  • Az aggregátum kiszámításához használt nyers minták száma
Elem Érték
Mosogató (Nem kötelező) Azoknak a fogadóknak a vesszővel tagolt listája, amelyekbe a LAD összesített metrikaeredményeket küld. Az összes összesített metrika minden felsorolt fogadóban közzé lesz téve. Például: "MyEventHubSink, MyJsonSink, MyAzMonSink". További információ: sinksConfig (védett beállítások) és sinksConfig (nyilvános beállítások).
típus A metrika tényleges szolgáltatóját azonosítja.
osztály Ezzel "counter"együtt azonosítja az adott metrikát a szolgáltató névterében.
számláló Ezzel "class"együtt azonosítja az adott metrikát a szolgáltató névterében. Tekintse meg az elérhető számlálók listáját.
counterSpecifier Azonosítja a metrikát az Azure Monitor Metrics névterében.
feltétel (Nem kötelező) Kiválasztja annak az objektumnak a példányát, amelyre a metrika vonatkozik. Vagy kijelöli az összesítést az objektum összes példányában.
sampleRate Az IS 8601 intervallum, amely meghatározza a metrika nyers mintáinak gyűjtésének sebességét. Ha az érték nincs beállítva, a gyűjtemény időközét sampleRateInSeconds adja meg. A legrövidebb támogatott mintasebesség 15 másodperc (PT15S).
egység Meghatározza a metrika mértékegységét. A következő sztringek egyikének kell lennie: "Count", "Bytes", "Seconds", "Percent", "CountPerSecond", "BytesPerSecond". "Millisecond" Az összegyűjtött adatok felhasználói elvárják, hogy az összegyűjtött adatértékek megfeleljenek ennek az egységnek. A LAD figyelmen kívül hagyja ezt a mezőt.
displayName Az Azure Monitor-metrikák adataihoz csatolandó címke a Guest (classic) metrikák névterében való megtekintéskor. Ez a címke a társított területi beállítás által megadott nyelven található. A LAD figyelmen kívül hagyja ezt a mezőt. Megjegyzés: Ha ugyanazt a metrikát tekinti meg a azure.vm.linux.guestmetrics Metrikák Namespace, amely konfigurálva van AzMonSink , a megjelenített név teljes mértékben a számlálótól függ. A számlálók és nevek közötti megfeleltetés megkereséséhez lásd a beépített szolgáltató által támogatott metrikákat.

Ez counterSpecifier egy tetszőleges azonosító. A metrikák felhasználói, például az Azure Portal diagramkészítési és riasztási funkciója, kulcsként használják counterSpecifier , amely azonosítja a metrikákat vagy a metrikák egy példányát.

A metrikák esetében builtin a kezdőértékeket /builtin/javasoljukcounterSpecifier. Egy metrika egy adott példányának gyűjtéséhez csatolja a példány azonosítóját az counterSpecifier értékhez. Íme néhány példa:

  • /builtin/Processor/PercentIdleTime. Üresjárati idő átlaga az összes vCPU-ban
  • /builtin/Disk/FreeSpace(/mnt). Szabad hely a /mnt fájlrendszer számára
  • /builtin/Disk/FreeSpace. Az összes csatlakoztatott fájlrendszerre átlagolt szabad terület

A LAD és az Azure Portal nem számít arra, hogy az counterSpecifier érték egyezik a mintával. Konzisztensnek kell lennie az értékek létrehozásának módjában counterSpecifier .

Amikor megadja performanceCounters, a LAD mindig adatokat ír egy táblába az Azure Storage-ban. Ugyanezek az adatok JSON-blobokba, Event Hubs-ba vagy mindkettőbe írhatók. Nem tilthatja le az adatok táblákba való tárolását.

Az azonos tárfióknevet és végpontot használó LAD összes példánya hozzáadja a metrikáit és naplóit ugyanahhoz a táblához. Ha túl sok virtuális gép ír ugyanarra a táblapartícióra, az Azure szabályozhatja a partícióra történő írást.

A eventVolume beállítás hatására a bejegyzések 1 (kicsi), 10 (közepes) vagy 100 (nagy) partíció között oszlanak el. A közepes partíciók általában elegendőek a forgalom szabályozásának elkerüléséhez.

Az Azure Portal Azure Monitor Metrics szolgáltatása a táblázatban szereplő adatokat gráfok előállítására vagy riasztások aktiválására használja. A tábla neve a következő sztringek összefűzése:

  • WADMetrics
  • A "scheduledTransferPeriod" táblában tárolt összesített értékek
  • P10DV2S
  • YYYYMMDD formátumú dátum, amely 10 naponta változik

Ilyenek például a következők: WADMetricsPT1HP10DV2S20170410 és WADMetricsPT1MP10DV2S20170609.

syslogEvents

"syslogEvents": {
    "sinks": "",
    "syslogEventConfiguration": {
        "facilityName1": "minSeverity",
        "facilityName2": "minSeverity",
        ...
    }
}

Az syslogEvents opcionális szakasz szabályozza a naplóesemények syslogból való gyűjtését. Ha a szakasz nincs megadva, a rendszer egyáltalán nem rögzíti a syslog-eseményeket.

A syslogEventConfiguration gyűjtemény minden fontos syslog-létesítményhez egy bejegyzéssel rendelkezik. Ha minSeverity egy adott létesítményről van szó "NONE" , vagy ha ez a létesítmény egyáltalán nem jelenik meg az elemben, a rendszer nem rögzíti az adott létesítményből származó eseményeket.

Elem Érték
Mosogató Azoknak a fogadóknak a vesszővel tagolt listája, amelyekbe az egyes naplóeseményeket közzéteszik. Minden olyan naplóesemény, amely megfelel a korlátozásoknak syslogEventConfiguration , minden felsorolt fogadóban közzé lesz téve. Példa: "EHforsyslog"
facilityName A syslog-létesítmény neve, például "LOG_USER" vagy "LOG_LOCAL0". További információkért tekintse meg a létesítmény értékeit a syslog manuális oldalán.
minSeverity A syslog súlyossági szintje, például "LOG_ERR" vagy "LOG_INFO". További információ: Értékek a szinthez a syslog manuális lapján. A bővítmény rögzíti a létesítménynek a megadott szinten vagy annál magasabb szinten küldött eseményeket.

Amikor megadja syslogEvents, a LAD mindig adatokat ír egy LinuxSyslogVer2v0 nevű táblába az Azure Storage-ban. Ugyanezek az adatok JSON-blobokba, Event Hubs-ba vagy mindkettőbe írhatók. Nem tilthatja le az adatok táblákba való tárolását.

sinksConfig

Az opcionális nyilvános sinksConfig szakasz lehetővé teszi metrikák küldését az Azure Monitor fogadóba a Storage-fiók és az alapértelmezett Vendégmetrika nézet mellett.

Feljegyzés

A nyilvános és a védett beállítások is választható sinksConfig szakaszokkal rendelkeznek. A sinksConfig nyilvános beállítások szakasza csak a fogadó konfigurációját AzMonSink tartalmazza. EventHub és JsonBlob a fogadó konfigurációi nem vehetők fel a nyilvános beállításokba.

Feljegyzés

A sinksConfig szakasz megköveteli, hogy a rendszer által hozzárendelt identitás engedélyezve legyen a virtuális gépeken vagy a virtuálisgép-méretezési csoportban. A rendszer által hozzárendelt identitást az Azure Portalon, a parancssori felületen, a PowerShellen vagy az Azure Resource Manageren keresztül engedélyezheti. Kövesse a részletes utasításokat , vagy tekintse meg a cikk korábbi telepítési mintáit.

  "sinksConfig": {
    "sink": [
      {
        "name": "AzMonSink",
        "type": "AzMonSink",
        "AzureMonitor": {}
      }
    ]
  },

fileLogs

A fileLogs szakasz a naplófájlok rögzítését szabályozza. A LAD a fájlba írott új szövegsorokat rögzíti. A táblázat soraiba és a megadott fogadókba írja őket, például JsonBlob és EventHub.

Feljegyzés

Ezeket fileLogs a LAD omsagentnevű alösszetevő rögzíti. Az adatgyűjtéshez fileLogsgyőződjön meg arról, hogy a omsagent felhasználó olvasási engedélyekkel rendelkezik a megadott fájlokhoz. Emellett végrehajtási engedélyekkel kell rendelkeznie a fájl elérési útjának összes könyvtárára. A LAD telepítése után az engedélyek ellenőrzéséhez futtassa a parancsot sudo su omsagent -c 'cat /path/to/file'.

"fileLogs": [
    {
        "file": "/var/log/mydaemonlog",
        "table": "MyDaemonEvents",
        "sinks": ""
    }
]
Elem Érték
fájl A megtekinteni és rögzíteni kívánt naplófájl teljes elérési útja. Az elérési út nem adhat meg könyvtárat, és nem tartalmazhat helyettesítő karaktereket. A omsagent felhasználói fióknak olvasási hozzáféréssel kell rendelkeznie a fájl elérési úthoz.
table (Nem kötelező) Az Azure Storage-tábla, amelybe a fájl farkából új sorokat ír. A táblának a védett konfigurációban megadott tárfiókban kell lennie.
Mosogató (Nem kötelező) Vesszővel tagolt lista azoknak a fogadóknak a neveiről, amelyekre a naplósorokat küldi a rendszer.

Vagy mindkettőt "table" "sinks" meg kell adni.

A beépített szolgáltató által támogatott metrikák

Az LAD által támogatott alapértelmezett metrikák összesítve vannak az összes fájlrendszerben, lemezen vagy névben. Nem összesített metrikák esetén tekintse meg az Azure Monitor újabb fogadómetrikáinak támogatását.

Feljegyzés

Az egyes metrikák megjelenítendő nevei attól függően különböznek, hogy melyik metrikák névteréhez tartozik:

  • Guest (classic) a tárfiókból tölthető ki: a szakaszban megadott displayName performanceCounters vagy az Azure Portalon látható alapértelmezett megjelenítendő név. A virtuális gép Diagnosztikai beállítások monitorozása>területén válassza a Metrikák lapot.
  • azure.vm.linux.guestmetricski van töltve a következő táblákban megadott "azure.vm.linux.guestmetrics Megjelenítendő név" lehetőségbőlAzMonSink, ha konfigurálva van.

A metrikaértékek a verziók és azure.vm.linux.guestmetrics a verziók között Guest (classic) különböznek. Bár a klasszikus metrikák bizonyos összesítéseket alkalmaztak az ügynökben, az új metrikák nem összesített számlálók, így az ügyfelek rugalmasan összesíthetők a megtekintési/riasztási idő alapján.

A builtin metrikaszolgáltató olyan metrikák forrása, amelyek a felhasználók széles köre számára a legérdekesebbek. Ezek a metrikák öt átfogó osztályba sorolhatók:

  • Adatfeldolgozó
  • Memory (Memória)
  • Network (Hálózat)
  • Fájlrendszer
  • Lemez

beépített metrikák a processzorosztályhoz

A metrika processzorosztálya információt nyújt a virtuális gép processzorhasználatáról. Százalékos értékek összesítése esetén az eredmény az összes PROCESSZOR átlaga.

Ha egy két virtuális rendszerű virtuális gépen az egyik vCPU 100 százalékban foglalt, a másik pedig 100 százalékos tétlenség, akkor a jelentett PercentIdleTime érték 50. Ha az egyes vCPU-k 50%-ban foglaltak ugyanahhoz az időszakhoz, a jelentett eredmény szintén 50. Négy vCPU-s virtuális gépen, amikor az egyik vCPU 100%-ban foglalt, a többi tétlen, a jelentett PercentIdleTime érték 75.

Számláló azure.vm.linux.guestmetrics Megjelenítendő név Értelmezés
PercentIdleTime cpu idle time A processzorok által a kernel tétlen ciklusát futtató összesítési időszak során eltelt idő százalékos aránya
PercentProcessorTime cpu percentage guest os A nem tétlen szálat futtató idő százalékos aránya
PercentIOWaitTime cpu io wait time Az I/O-műveletek befejezésére váró idő százalékos aránya
PercentInterruptTime cpu interrupt time Hardver- vagy szoftvermegszakítások és késleltetett eljáráshívások (DPC-k) futási idejének százalékos aránya
PercentUserTime cpu user time Az összesítési időszak nem tétlen ideje, a felhasználói módban normál prioritással töltött idő százalékos aránya
PercentNiceTime cpu nice time A nem tétlen időszakban a csökkentett (szép) prioritásnál töltött százalék
PercentPrivilegedTime cpu privileged time A nem üresjárati időből a kiemelt (kernel) módban töltött százalék

Az első négy számlálónak 100 százalékot kell összeadnia. Az utolsó három számláló szintén 100 százalékot ad. Ez a három számláló felosztja a , PercentIOWaitTimeés PercentInterruptTimea PercentProcessorTime.

beépített metrikák a Memória osztályhoz

A metrikák memóriaosztálya információt nyújt a memóriahasználatról, a lapozásról és a felcserélésről.

Számláló azure.vm.linux.guestmetrics Megjelenítendő név Értelmezés
AvailableMemory memory available Rendelkezésre álló fizikai memória a MiB-ben
PercentAvailableMemory mem. percent available Rendelkezésre álló fizikai memória a teljes memória százalékában
UsedMemory memory used Használatban lévő fizikai memória (MiB)
PercentUsedMemory memory percentage Használatban lévő fizikai memória a teljes memória százalékában
PagesPerSec pages Teljes lapozás (olvasás/írás)
PagesReadPerSec page reads A háttértárból beolvasott lapok, például a felcserélési fájl, a programfájl és a megfeleltetett fájl
PagesWrittenPerSec page writes A háttértárba írt lapok, például a felcserélési fájl és a leképezett fájl
AvailableSwap swap available Fel nem használt felcserélési terület (MiB)
PercentAvailableSwap swap percent available Fel nem használt felcserélési terület a teljes felcserélés százalékos arányában
UsedSwap swap used Használatban lévő felcserélési terület (MiB)
PercentUsedSwap swap percent used Használatban lévő felcserélési terület a teljes felcserélés százalékos arányaként

A metrikák ezen osztályának csak egy példánya van. Az "condition" attribútum nem rendelkezik hasznos beállításokkal, ezért ki kell hagyni.

beépített metrikák a hálózati osztályhoz

A metrikák hálózati osztálya az indítás óta információkat nyújt az egyes hálózati adaptereken végzett hálózati tevékenységről.

A LAD nem teszi elérhetővé a sávszélesség-metrikákat. Ezeket a metrikákat a gazdagépmetrikákból szerezheti be.

Számláló azure.vm.linux.guestmetrics Megjelenítendő név Értelmezés
Bájttranszmitt network out guest os Indítás óta elküldött összes bájt
BytesReceived network in guest os Indítás óta fogadott bájtok összesen
BytesTotal network total bytes Indítás óta elküldött vagy fogadott bájtok teljes száma
PacketsTransmitted packets sent Indítás óta elküldött csomagok teljes száma
PacketsReceived packets received Az indítás óta fogadott csomagok teljes száma
TotalRxErrors packets received errors A fogadási hibák száma az indítás óta
TotalTxErrors packets sent errors Átviteli hibák száma az indítás óta
TotalCollisions network collisions A hálózati portok által jelentett ütközések száma az indítás óta

beépített metrikák a fájlrendszerosztályhoz

A fájlrendszer metrikák osztálya információt nyújt a fájlrendszer használatáról. Az abszolút és százalékértékeket a rendszer úgy jelenti, hogy azok egy átlagos felhasználó számára jelennek meg, nem pedig a gyökérértékek számára.

Számláló azure.vm.linux.guestmetrics Megjelenítendő név Értelmezés
Freespace filesystem free space Rendelkezésre álló lemezterület bájtban
UsedSpace filesystem used space Felhasznált lemezterület bájtban
PercentFreeSpace filesystem % free space Szabad terület százalékos aránya
PercentUsedSpace filesystem % used space A felhasznált terület százalékos aránya
PercentFreeInodes filesystem % free inodes A nem használt indexcsomópontok százalékos aránya (inódok)
PercentUsedInodes filesystem % used inodes Az összes fájlrendszerben összegzett lefoglalt (használatban lévő) inódok százalékos aránya
BytesReadPerSecond filesystem read bytes/sec Másodpercenkénti olvasási bájtok
BytesWrittenPerSecond filesystem write bytes/sec Másodpercenként írt bájtok
BytesPerSecond filesystem bytes/sec Másodpercenkénti olvasási vagy írási bájtok
ReadsPerSecond filesystem reads/sec Olvasási műveletek másodpercenként
WritesPerSecond filesystem writes/sec Írási műveletek másodpercenként
TransfersPerSecond filesystem transfers/sec Olvasási vagy írási műveletek másodpercenként

beépített metrikák a Lemez osztályhoz

A lemezes metrikák lemezosztálya információt nyújt a lemezeszköz-használatról. Ezek a statisztikák a teljes meghajtóra vonatkoznak.

Ha egy eszköz több fájlrendszerrel rendelkezik, az eszköz számlálói gyakorlatilag összesítve vannak az összes fájlrendszerben.

Számláló azure.vm.linux.guestmetrics Megjelenítendő név Értelmezés
ReadsPerSecond disk reads Olvasási műveletek másodpercenként
WritesPerSecond disk writes Írási műveletek másodpercenként
TransfersPerSecond disk transfers Másodpercenkénti összes művelet
AverageReadTime disk read time Olvasási műveletenkénti átlagos másodperc
AverageWriteTime disk write time Átlagos másodperc írási műveletenként
AverageTransferTime disk transfer time Műveletenkénti átlagos másodperc
AverageDiskQueueLength disk queue length Várólistán lévő lemezműveletek átlagos száma
ReadBytesPerSecond disk read guest os Másodpercenként beolvasott bájtok száma
WriteBytesPerSecond disk write guest os Másodpercenként írt bájtok száma
BytesPerSecond disk total bytes Olvasási vagy írási bájtok száma másodpercenként

Példa LAD 4.0 konfigurációra

Az előző definíciók alapján ez a szakasz egy minta LAD 4.0 bővítménykonfigurációt és néhány magyarázatot tartalmaz. A minta alkalmazásához használja a saját tárfióknevét, a fiók közös hozzáférésű jogosultságkód-jogkivonatát és az Event Hubs SAS-jogkivonatait.

Feljegyzés

Attól függően, hogy az Azure CLI-t vagy az Azure PowerShellt használja-e a LAD telepítéséhez, a nyilvános és védett beállítások megadásának módja eltér:

  • Ha az Azure CLI-t használja, mentse az alábbi beállításokat a ProtectedSettings.json és PublicSettings.json az előző mintaparancs használatához.
  • Ha PowerShellt használ, futtassa $protectedSettings = '{ ... }' és $publicSettings = '{ ... }' mentse a következő beállításokat a következőre és $publicSettingsa következőre$protectedSettings:

Védett beállítások konfigurálása

A védett beállítások konfigurálása:

  • Egy tárfiók.
  • Egy egyező fiók közös hozzáférésű jogosultságkód-jogkivonata.
  • Több fogadó: JsonBlob vagy EventHub SAS-jogkivonatokkal.
{
  "storageAccountName": "yourdiagstgacct",
  "storageAccountSasToken": "sv=xxxx-xx-xx&ss=bt&srt=co&sp=wlacu&st=yyyy-yy-yyT21%3A22%3A00Z&se=zzzz-zz-zzT21%3A22%3A00Z&sig=fake_signature",
  "sinksConfig": {
    "sink": [
      {
        "name": "SyslogJsonBlob",
        "type": "JsonBlob"
      },
      {
        "name": "FilelogJsonBlob",
        "type": "JsonBlob"
      },
      {
        "name": "LinuxCpuJsonBlob",
        "type": "JsonBlob"
      },
      {
        "name": "MyJsonMetricsBlob",
        "type": "JsonBlob"
      },
      {
        "name": "LinuxCpuEventHub",
        "type": "EventHub",
        "sasURL": "https://youreventhubnamespace.servicebus.windows.net/youreventhubpublisher?sr=https%3a%2f%2fyoureventhubnamespace.servicebus.windows.net%2fyoureventhubpublisher%2f&sig=fake_signature&se=1808096361&skn=yourehpolicy"
      },
      {
        "name": "MyMetricEventHub",
        "type": "EventHub",
        "sasURL": "https://youreventhubnamespace.servicebus.windows.net/youreventhubpublisher?sr=https%3a%2f%2fyoureventhubnamespace.servicebus.windows.net%2fyoureventhubpublisher%2f&sig=yourehpolicy&skn=yourehpolicy"
      },
      {
        "name": "LoggingEventHub",
        "type": "EventHub",
        "sasURL": "https://youreventhubnamespace.servicebus.windows.net/youreventhubpublisher?sr=https%3a%2f%2fyoureventhubnamespace.servicebus.windows.net%2fyoureventhubpublisher%2f&sig=yourehpolicy&se=1808096361&skn=yourehpolicy"
      }
    ]
  }
}

Nyilvános beállítások konfigurálása

A nyilvános beállítások a következő LAD-t okozzák:

  • Töltse fel a százalékos processzoridő-metrikákat és a használt lemezterület-metrikákat a WADMetrics* táblába.
  • Üzenetek feltöltése a syslog-létesítményből "user" és a súlyosságból "info" a LinuxSyslog* táblába.
  • Töltse fel a fájl /var/log/myladtestlog hozzáfűzött sorait a MyLadTestLog táblába.

Az adatok minden esetben a következőre is fel lesznek töltve:

  • Azure Blob Storage. A tároló neve a fogadóban JsonBlob van definiálva.
  • A fogadóban EventHub megadott Event Hubs-végpont.
{
  "StorageAccount": "yourdiagstgacct",
  "ladCfg": {
    "sampleRateInSeconds": 15,
    "diagnosticMonitorConfiguration": {
      "performanceCounters": {
        "sinks": "MyMetricEventHub,MyJsonMetricsBlob",
        "performanceCounterConfiguration": [
          {
            "unit": "Percent",
            "type": "builtin",
            "counter": "PercentProcessorTime",
            "counterSpecifier": "/builtin/Processor/PercentProcessorTime",
            "annotation": [
              {
                "locale": "en-us",
                "displayName": "cpu percentage guest os"
              }
            ],
            "condition": "IsAggregate=TRUE",
            "class": "Processor"
          },
          {
            "unit": "Bytes",
            "type": "builtin",
            "counter": "UsedSpace",
            "counterSpecifier": "/builtin/FileSystem/UsedSpace",
            "annotation": [
              {
                "locale": "en-us",
                "displayName": "Used disfilesystem used space"
              }
            ],
            "condition": "Name=\"/\"",
            "class": "Filesystem"
          }
        ]
      },
      "metrics": {
        "metricAggregation": [
          {
            "scheduledTransferPeriod": "PT1H"
          },
          {
            "scheduledTransferPeriod": "PT1M"
          }
        ],
        "resourceId": "/subscriptions/your_azure_subscription_id/resourceGroups/your_resource_group_name/providers/Microsoft.Compute/virtualMachines/your_vm_name"
      },
      "eventVolume": "Large",
      "syslogEvents": {
        "sinks": "SyslogJsonBlob,LoggingEventHub",
        "syslogEventConfiguration": {
          "LOG_USER": "LOG_INFO"
        }
      }
    }
  },
  "sinksConfig": {
    "sink": [
      {
        "name": "AzMonSink",
        "type": "AzMonSink",
        "AzureMonitor": {}
      }
    ]
  },
  "fileLogs": [
    {
      "file": "/var/log/myladtestlog",
      "table": "MyLadTestLog",
      "sinks": "FilelogJsonBlob,LoggingEventHub"
    }
  ]
}

A resourceId konfigurációnak meg kell egyeznie a virtuális gép vagy a virtuálisgép-méretezési csoport beállításaival.

  • Az Azure platform metrikáinak diagramkészítése és riasztásai ismerik a resourceId virtuális gépet, amelyen dolgozik. A keresési kulcs használatával resourceId várhatóan megtalálja a virtuális gép adatait.
  • Ha az Azure automatikus skálázást használja, az resourceId automatikus skálázási konfigurációnak meg kell egyeznie a resourceId LAD által használtval.
  • Ez resourceId a LAD által írt JSON-blobok nevére épül.

Adatok megtekintése

Az Azure Portal használatával megtekintheti a teljesítményadatokat, vagy riasztásokat állíthat be:

Képernyőkép az Azure Portal Metrikák lapjáról és a kiválasztott rendelkezésre állásról.

Az performanceCounters adatok mindig egy Azure Storage-táblában lesznek tárolva. Az Azure Storage API-k számos nyelvhez és platformhoz elérhetők.

A fogadóknak JsonBlob küldött adatokat a rendszer blobokban tárolja a védett beállításokban megnevezett tárfiókban. A blobadatokat bármely Azure Blob Storage API-ban felhasználhatja.

Ezeket a felhasználói felületi eszközöket is használhatja az Azure Storage-adatok eléréséhez:

Az Azure Storage Explorer munkamenetének alábbi képernyőképe egy teszt virtuális gépen egy megfelelően konfigurált LAD 4.0-bővítményből származó Azure Storage-táblákat és -tárolókat mutatja be. A kép nem felel meg pontosan a LAD 4.0-s mintakonfigurációnak.

Képernyőkép az Azure Storage Explorerről.

Az Event Hubs-végponton közzétett üzenetek felhasználásával kapcsolatos további információkért tekintse meg a vonatkozó Event Hubs-dokumentációt.

Következő lépések