Instalace
TeskaLabs LogMan.io lze na výpočetní zdroje nainstalovat ručně. Výpočetní zdroje zahrnují fyzické servery, virtuální servery, soukromé a veřejné cloudové výpočetní/VM instance atd.
Danger
TeskaLabs LogMan.io NELZE provozovat pod uživatelem root
(superuživatelem). Porušení tohoto pravidla může vést k významným rizikům pro kybernetickou bezpečnost.
Předpoklady
- Hardware (fyzický nebo virtualizovaný server)
- OS Linux: (v případě zájmu kontaktujte laskavě naši podporu).
- IP konektivita, která zahrnuje odchozí přístup k internetu (po počáteční instalaci může být omezena).
- server SMTP
- doména DNS, i interní pro nastavení HTTPS
- Přihlašovací údaje k "docker.teskalabs.com" (pokud je nemáte, kontaktujte naši podporu).
Ze serveru Bare Metal do operačního systému
Note
Tuto část přeskočte, pokud instalujete na virtuální počítač, resp. na hostitele s již nainstalovaným operačním systémem.
Předpoklady
- Server, který odpovídá předepsané organizaci datového úložiště.
- Bootovací USB disk s Ubuntu Server 22.04 LTS; nejnovější vydání.
- Přístup k serveru vybavenému monitorem a klávesnicí; případně přes IPMI.
- Připojení k internetu pro server, IPv4 zajišťuje server DHCP.
Note
Jedná se o další předpoklady nad rámec obecných předpokladů uvedených výše.
Kroky
1) Spusťte server pomocí bootovacího USB disku se systémem Ubuntu Server.
Vložte bootovací USB disk do USB portu serveru a zapněte server.
Jako spouštěcí zařízení použijte oddíl UEFI na paměti USB.
V zaváděcí nabídce vyberte možnost "Try or Install Ubuntu Server".
2) Jako jazyk vyberte "English ".
3) V případě potřeby proveďte aktualizaci na nový instalační program
4) Vyberte české rozložení klávesnice
5) Vyberte typ instalace "Ubuntu Server ".
6) Konfigurace síťového připojení
Toto je konfigurace sítě pro účely instalace, konečná konfigurace sítě se může lišit.
Pokud používáte server DHCP, je konfigurace sítě automatická.
DŮLEŽITÉ: Musí být k dispozici připojení k internetu.
IP adresu serveru si poznamenejte pro budoucí použití.
7) Přeskočení nebo konfigurace proxy serveru
Přeskočte (stiskněte tlačítko "Hotovo") konfiguraci serveru proxy.
8) Potvrzení vybrané adresy zrcadla
Stisknutím tlačítka "Hotovo" potvrďte zvolenou adresu zrcadla.
9) Zvolte "Vlastní rozložení úložiště ".
Vlastní rozložení úložiště, které vytvoříme, je následující:
Připojení | Velikost | Systém souborů | Odddělení | Část RAID | Skupina svazků | Logický svazek | . |
---|---|---|---|---|---|---|---|
/boot/efi |
1G | fat32 | 1 | ||||
SWAP | 64G | 2 | |||||
/boot |
512M | ext4 | 3 | md0 |
1 | ||
/ |
50G | etx4 | 2 | systemvg |
rootlv |
||
/var/log |
50G | etx4 | loglv |
10) Určete dvě jednotky systémového úložiště
Dvě systémové úložné jednotky jsou uspořádány symetricky, aby byla zajištěna redundance v případě selhání jedné systémové jednotky.
Note
Rychlé a pomalé úložiště se zde NEKONFIGURUJE během instalace operačního systému, ale později z nainstalovaného operačního systému.
11) Nastavte první systémové úložiště jako primární spouštěcí zařízení
Tento krok vytvoří první GPT oddíl s UEFI, který je připojen na adrese /boot/efi
.
Velikost tohoto oddílu je přibližně 1 GB.
12) Nastavte druhé systémové úložiště jako sekundární spouštěcí zařízení.
Na druhém systémovém úložišti se vytvoří další oddíl UEFI.
13) Vytvoření oddílů SWAP na obou systémových úložných jednotkách
Na každou ze dvou jednotek přidejte oddíl GPT o velikosti 64G a naformátujte swap
.
Na příslušné systémové úložné jednotce vyberte položku "volné místo" a poté "Přidat oddíl GPT".
Výsledné rozložení je následující:
14) Vytvoření oddílu GPT pro RAID1 na obou jednotkách systémového úložiště
Na každou ze dvou jednotek přidejte oddíl GPT s veškerým zbývajícím volným místem. Formát je "Ponechat neformátovaný", protože tento oddíl bude přidán do pole RAID1. Položku "Size" (Velikost) můžete ponechat prázdnou, abyste využili veškeré zbývající místo na zařízení.
Výsledkem je položka "oddíl" místo "volného místa" na příslušných jednotkách.
15) Vytvoření softwarového pole RAID1
Vyberte "Vytvořit softwarový RAID (md)".
Název pole je md0
(výchozí).
Úroveň RAID je "1 (zrcadlený)".
Vyberte dva oddíly z předchozího kroku, ponechte je označené jako "aktivní" a stiskněte tlačítko "Vytvořit".
Rozložení systémových úložných jednotek je následující:
16) Vytvoření BOOT oddílu RAID1
Přidejte oddíl GPT na md0
RAID1 z předchozího kroku.
Velikost je 512 MB, formát ext4
a přípojné místo /boot
.
17) Nastavte oddíl LVM na RAID1.
Zbývající prostor na RAID1 bude spravován pomocí LVM.
Přidejte oddíl GPT na RAID1 md0
pomocí položky "free space" (volné místo) v zařízení md0
.
Použijte maximální dostupné místo a nastavte formát na "Leave unformatted". Položku "Velikost" můžete ponechat prázdnou, abyste využili veškeré zbývající místo v zařízení.
18) Nastavení skupiny systémových svazků LVM
Vyberte možnost "Vytvořit skupinu svazků (LVM)".
Název skupiny svazků je systemvg
.
Vyberte dostupný oddíl na md0
, který byl vytvořen výše.
19) Vytvoření kořenového logického svazku
Přidejte logický svazek s názvem rootlv
na systemvg
(v položce "free space"), velikost je 50G, formát je ext4
a připojení je /
.
20) Přidání vyhrazeného logického svazku pro systémové protokoly
Přidejte logický svazek s názvem loglv
na systemvg
, velikost je 50G, formát je ext4
a přípojka je "Other" a /var/log
.
21) Potvrďte rozložení systémových úložných jednotek.
Stisknutím tlačítka "Done" (Hotovo) v dolní části obrazovky a nakonec tlačítka "Continue" (Pokračovat) potvrďte použití akcí na jednotkách systémového úložiště.
22) Nastavení profilu
Vaše jméno: TeskaLabs Admin
(Správce laboratoří)
Název vašeho serveru: lm01
(například)
Zvolte si uživatelské jméno: tladmin
Zvolte dočasné heslo, bude odstraněno na konci instalace.
23) Nastavení SSH
Vyberte možnost "Nainstalovat server OpenSSH"
24) Přeskočte snapy serveru
Stiskněte tlačítko "Hotovo", na této obrazovce nebudou nainstalovány žádné snapy serveru.
25) Počkejte, až bude server nainstalován
Trvá to přibližně 10 minut.
Po dokončení instalace, včetně aktualizace zabezpečení, vyberte možnost "Reboot Now".
26) Po výzvě vyjměte USB disk ze serveru.
Stisknutím tlačítka "Enter" pokračujte v procesu restartu.
Note
Tento krok můžete přeskočit, pokud instalujete přes IPMI.
27) Spusťte server do nainstalovaného operačního systému
Na obrazovce GRUB vyberte možnost "Ubuntu" nebo počkejte 30 sekund.
28) Přihlaste se jako tladmin
29) Aktualizujte operační systém
sudo apt update
sudo apt upgrade
sudo apt autoremove
30) Konfigurace pomalého ukládání dat
Pomalé datové úložiště (HDD) je připojeno na /data/hdd
.
Předpokládejme, že server poskytuje následující disková zařízení /dev/sdc
, /dev/sdd
, /dev/sde
, /dev/sdf
, /dev/sdg
a /dev/sdh
.
Vytvořte softwarové pole RAID5 na /dev/md1
se souborovým systémem ext4
připojeným na /data/hdd
.
sudo mdadm --create /dev/md1 --level=5 --raid-devices=6 /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh
Note
Pro pole RAID6 použijte --level=6
.
Vytvořte souborový systém EXT4 a přípojný bod:
sudo mkfs.ext4 /dev/md1
sudo mkdir -p /data/hdd
Do /etc/fstab
zadejte následující řádek:
/dev/md1 /data/hdd ext4 defaults,noatime 0 1
Připojte disk:
sudo mount /data/hdd
Note
Sestavení pole RAID může trvat značně dlouho. Průběh můžete sledovat pomocí cat /proc/mdstat
. Restartování serveru je během výstavby pole RAID bezpečné.
Konstrukci můžete urychlit zvýšením rychlostních limitů:
sudo sysctl -w dev.raid.speed_limit_min=5000000
sudo sysctl -w dev.raid.speed_limit_max=50000000
Toto nastavení rychlostního limitu vydrží až do příštího restartu.
31) Konfigurace rychlého ukládání dat
Rychlé datové úložiště (SSD) je připojeno na adrese /data/ssd
.
Za předpokladu, že server poskytuje následující disková zařízení /dev/nvme0n1
a /dev/nvme1n1
.
Vytvořte softwarové pole RAID1 na /dev/md2
se souborovým systémem ext4
, připojeným na /data/ssd
.
sudo mdadm --create /dev/md2 --level=1 --raid-devices=2 /dev/nvme0n1 /dev/nvme1n1
sudo mkfs.ext4 /dev/md2
sudo mkdir -p /data/ssd
Do /etc/fstab
zadejte následující řádek:
/dev/md2 /data/ssd ext4 defaults,noatime 0 1
Připojte jednotku:
sudo mount /data/ssd
32) Instalace operačního systému je dokončena
Zde je video, které rekapituluje proces instalace:
Z operačního systému do Dockeru
Předpoklady
- Spuštěný server s nainstalovaným operačním systémem.
- Přístup k serveru přes SSH, uživatel
tladmin
s oprávněním provádětsudo
. - Pomalé úložiště připojené na
/data/hdd
. - Rychlé úložiště připojené na
/data/ssd
.
Kroky
1) Přihlaste se k serveru přes SSH jako uživatel tladmin
.
ssh tladmin@<ip-of-the-server>
2) Konfigurace přístupu SSH
Nainstalujte veřejné klíče SSH pro uživatele tladmin
:
cat > /home/tladmin/.ssh/authorized_keys
Omezení přístupu:
sudo vi /etc/ssh/sshd_config
Změny v ssh_config
:
PermitRootLogin ne
PubkeyAuthentication yes
PasswordAuthentication ne
3) Zvýšení parametru VM max_map_count
Zapište tento obsah do souboru /etc/sysctl.d/01-vm.conf
.
vm.max_map_count=262144
4) Instalace nástroje Docker
Docker je nezbytný pro nasazení všech mikroslužeb LogMan.io v kontejnerech, konkrétně Apache Kafka, ElasticSearch, NGINX a jednotlivých streamovacích pump atd.
Vytvořte logický svazek dockerlv
se souborovým systémem EXT4:
sudo lvcreate -L100G -n dockerlv systemvg
sudo mkfs.ext4 /dev/systemvg/dockerlv
sudo mkdir /var/lib/dockervv
Zadejte následující řádek do /etc/fstab
:
/dev/systemvg/dockerlv /var/lib/docker ext4 defaults,noatime 0 1
Připojení svazku:
sudo mount /var/lib/docker
Nainstalujte balíček Docker:
sudo apt-get install ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo usermod -aG docker tladmin
Znovu se přihlaste k serveru, abyste použili změnu skupiny.
5) Nainstalujte git
sudo apt install git
6) Konfigurace rozlišení názvů hostitelů (volitelně)
Klastr TeskaLabs LogMan.io vyžaduje, aby každý uzel dokázal ze svého hostitelského jména přeložit IP adresu libovolného jiného uzlu klastru.
Pokud nakonfigurovaný server DNS tuto možnost neposkytuje, je třeba do souboru /etc/hosts
vložit názvy uzlů a jejich IP adresy.
sudo vi /etc/hosts
Příklad:
192.168.108.120 lm01
192.168.108.121 lm11
192.168.108.122 lm21
7) Restartujte server
sudo reboot
Z Dockeru do běžícího LogMan.io
Kroky
1) Vytvoření struktury složek
sudo mkdir -p \
/data/ssd/zookeeper/data \
/data/ssd/zookeeper/log \
/data/ssd/kafka/kafka-1/data \
/data/ssd/elasticsearch/es-master/data \
/data/ssd/elasticsearch/es-hot01/data \
/data/ssd/elasticsearch/es-warm01/data \
/data/hdd/elasticsearch/es-cold01/data \
/data/ssd/influxdb/data \
/data/hdd/nginx/log
Změna vlastnictví na složku elasticsearch data:
sudo chown -R 1000:0 /data/ssd/elasticsearch
sudo chown -R 1000:0 /data/hdd/elasticsearch
2) Naklonujte konfigurační soubory webu do složky /opt
:
cd /opt
git clone https://gitlab.com/TeskaLabs/<PARTNER_GROUP>/<MY_CONFIG_REPO_PATH>
Přihlaste se na docker.teskalabs.com.
cd <MY_CONFIG_REPO_PATH>
docker login docker.teskalabs.com
Vstupte do úložiště a nasaďte soubor Docker Compose specifický pro server:
docker compose -f docker-compose-<SERVER_ID>.yml pull
docker compose -f docker-compose-<SERVER_ID>.yml build
docker compose -f docker-compose-<SERVER_ID>.yml up -d
Zkontrolujte, zda jsou všechny kontejnery spuštěny:
docker ps