Instalace elastického stacku (ELK) na virtuální počítač Azure
Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s Linuxem ✔️
Tento článek vás provede nasazením Elasticsearch, Logstash a Kibana na virtuální počítač s Ubuntu v Azure. Pokud chcete vidět Elastic Stack v akci, můžete se volitelně připojit ke Kibana a pracovat s ukázkovými daty protokolování.
Kromě toho můžete postupovat podle modulu Deploy Elastic on Azure Virtual Machines a získat další kurz s asistencí k nasazení elastických služeb na virtuálních počítačích Azure.
V tomto kurzu se naučíte:
- Vytvoření virtuálního počítače s Ubuntu ve skupině prostředků Azure
- Instalace Elasticsearch, Logstash a Kibana na virtuální počítač
- Odeslání ukázkových dat do Elasticsearch pomocí Logstash
- Otevření portů a práce s daty v konzole Kibana
Toto nasazení je vhodné pro základní vývoj s řešením Elastic Stack. Další informace o řešení Elastic Stack, včetně doporučení pro produkční prostředí, najdete v dokumentaci Elastic a v Azure Architecture Center.
Požadavky
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Rychlý start pro Bash v Azure Cloud Shellu.
Pokud dáváte přednost místnímu spouštění referenčních příkazů rozhraní příkazového řádku, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Další informace najdete v tématu Jak spustit Azure CLI v kontejneru Dockeru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Pokud chcete dokončit proces ověřování, postupujte podle kroků zobrazených na terminálu. Další možnosti přihlášení najdete v tématu Přihlášení pomocí Azure CLI.
Po zobrazení výzvy nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Využití rozšíření v Azure CLI.
Spuštěním příkazu az version zjistěte verzi a závislé knihovny, které jsou nainstalované. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
- Tento článek vyžaduje verzi 2.0.4 nebo novější azure CLI. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.
Vytvoření skupiny zdrojů
Vytvořte skupinu prostředků pomocí příkazu az group create. Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.
Následující příklad vytvoří skupinu prostředků myResourceGroup v umístění eastus.
az group create --name myResourceGroup --location eastus
Vytvoření virtuálního počítače
Vytvořte virtuální počítač pomocí příkazu az vm create.
Následující příklad vytvoří virtuální počítač myVM, a pokud ve výchozím umístění klíčů ještě neexistují klíče SSH, vytvoří je. Chcete-li použít konkrétní sadu klíčů, použijte možnost --ssh-key-value
.
az vm create \
--resource-group myResourceGroup \
--name myVM \
--image Ubuntu2204 \
--admin-username azureuser \
--generate-ssh-keys
Po vytvoření virtuálního počítače se v Azure CLI zobrazí podobné informace jako v následujícím příkladu. Poznamenejte si publicIpAddress
. Tato adresa se používá pro přístup k virtuálnímu počítači.
{
"fqdns": "",
"id": "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM",
"location": "eastus",
"macAddress": "00-0D-3A-23-9A-49",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "40.68.254.142",
"resourceGroup": "myResourceGroup"
}
Připojení SSH k virtuálnímu počítači
Pokud ještě neznáte veřejnou IP adresu svého virtuálního počítače, spusťte příkaz az network public-ip list:
az network public-ip list --resource-group myResourceGroup --query [].ipAddress
Pomocí následujícího příkazu vytvořte s virtuálním počítačem relaci SSH. Použijte správnou veřejnou IP adresu vašeho virtuálního počítače. V tomto příkladu je IP adresa 40.68.254.142.
ssh azureuser@40.68.254.142
Instalace řešení Elastic Stack
Importujte podpisový klíč Elasticsearch a aktualizujte svůj seznam zdrojů APT tak, aby zahrnoval úložiště balíčků Elastic:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list
Nainstalujte na virtuální počítač prostředí Java Virtual Machine a nakonfigurujte proměnnou JAVA_HOME, která je nezbytná pro spuštění komponent řešení Elastic Stack.
sudo apt update && sudo apt install openjdk-8-jre-headless
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
Spuštěním následujících příkazů aktualizujte zdroje balíčků Ubuntu a nainstalujte Elasticsearch, Kibana a Logstash.
sudo apt update && sudo apt install elasticsearch kibana logstash
Poznámka:
Podrobné pokyny k instalaci, včetně rozložení adresářů a počáteční konfigurace, se udržují v dokumentaci Elastic.
Spuštění Elasticsearch
Spusťte na svém virtuálním počítači Elasticsearch pomocí následujícího příkazu:
sudo systemctl start elasticsearch.service
Tento příkaz negeneruje žádný výstup, proto ověřte spuštění Elasticsearch na virtuálním počítači pomocí tohoto příkazu curl
:
sudo curl -XGET 'localhost:9200/'
Pokud je Elasticsearch spuštěný, zobrazí se výstup podobný tomuto:
{
"name" : "w6Z4NwR",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "SDzCajBoSK2EkXmHvJVaDQ",
"version" : {
"number" : "5.6.3",
"build_hash" : "1a2f265",
"build_date" : "2017-10-06T20:33:39.012Z",
"build_snapshot" : false,
"lucene_version" : "6.6.1"
},
"tagline" : "You Know, for Search"
}
Spuštění Logstash a přidání dat do Elasticsearch
Spusťte Logstash pomocí následujícího příkazu:
sudo systemctl start logstash.service
Otestujte Logstash v interaktivním režimu, abyste se ujistili, že funguje správně:
sudo /usr/share/logstash/bin/logstash -e 'input { stdin { } } output { stdout {} }'
Toto je základní kanál Logstash, který vrací standardní vstup do standardního výstupu.
The stdin plugin is now waiting for input:
hello azure
2017-10-11T20:01:08.904Z myVM hello azure
Nastavte Logstash tak, aby směroval zprávy jádra z tohoto virtuálního počítače do Elasticsearch. V prázdném adresáři vytvořte nový soubor vm-syslog-logstash.conf
a vložte do něj následující konfiguraci Logstash:
input {
stdin {
type => "stdin-type"
}
file {
type => "syslog"
path => [ "/var/log/*.log", "/var/log/*/*.log", "/var/log/messages", "/var/log/syslog" ]
start_position => "beginning"
}
}
output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => "localhost:9200"
}
}
Otestujte konfiguraci a odešlete do Elasticsearch data Syslogu:
sudo /usr/share/logstash/bin/logstash -f vm-syslog-logstash.conf
V terminálu se budou vypisovat položky Syslogu odesílané do Elasticsearch. Jakmile odešlete nějaká data, pomocí CTRL+C
ukončete Logstash.
Spuštění Kibana a vizualizace dat v Elasticsearch
Upravte soubor /etc/kibana/kibana.yml
a změňte IP adresu, na které Kibana naslouchá, abyste k ní měli přístup z webového prohlížeče.
server.host: "0.0.0.0"
Spusťte Kibana pomocí následujícího příkazu:
sudo systemctl start kibana.service
Otevřením portu 5601 z Azure CLI povolte vzdálený přístup ke konzole Kibana:
az vm open-port --port 5601 --resource-group myResourceGroup --name myVM
Otevřete konzolu Kibana a vyberte Create (Vytvořit). Vygeneruje se výchozí index založený na datech Syslogu, která jste dříve odeslali do Elasticsearch.
V konzole Kibana vyberte Discover (Vyhledat), abyste mohli prohledávat, procházet a filtrovat události Syslogu.
Další kroky
V tomto kurzu jste na vývojový virtuální počítač v Azure nasadili řešení Elastic Stack. Naučili jste se:
- Vytvoření virtuálního počítače s Ubuntu ve skupině prostředků Azure
- Instalace Elasticsearch, Logstash a Kibana na virtuální počítač
- Odeslání ukázkových dat do Elasticsearch z Logstash
- Otevření portů a práce s daty v konzole Kibana