
Komponente Linux servera: zašto CPU, RAM i skladište zaslužuju poseban pristup
Razumevanje komponenata Linux servera je osnova za stabilan i siguran rad produkcionih sistema. Ovaj vodič objašnjava uloge procesora (CPU), radne memorije (RAM) i skladišta (diskovi/RAID), daje praktične komande za proveru i predlaže ključne metrike i osnovne sigurnosne smernice za brzo dijagnostikovanje i rešavanje problema.
Procesor (CPU): uloga, provera i osnovna optimizacija
CPU izvršava kod i određuje kapacitet za obradu zahteva. Pratite broj jezgara, frekvenciju, load average, CPU utilization i steal time u virtuelnim okruženjima.
Provere i komande
Osnovne komande za brzu dijagnostiku:
sudo lscpu
cat /proc/cpuinfo | grep -E 'model name|cpu cores|siblings'
top
mpstat -P ALL 1 3
lscpu daje statiku, top i mpstat pokazuju trenutne opterećenja i pomažu da identifikujete bottleneck ili zlonameran proces.
Metrike i sigurnosne preporuke
- Pratiti load average u odnosu na jezgra — load > broj jezgara ukazuje na zagušenje.
- Paziti na steal time u virtuelizovanim okruženjima — visoki steal znači da host deli resurse.
- Ograničavati resurse kritičnih servisa pomoću cgroups/systemd (CPUQuota) i kontrolisati privilegije procesa.
RAM i swap: kapacitet, podešavanja i monitoring
RAM utiče na performanse i keširanje; swap služi kao rezervni prostor ali prekomerno swapovanje usporava sistem.
Provere i komande
free -h
cat /proc/meminfo | head -n 10
vmstat 1 5
free brzo daje stanje memorije; vmstat pomaže da detektujete intenzivno swapovanje ili nedostatak memorije.
Preporuke i rešavanje problema
- Za moderne servere swap od 4–8 GB često je dovoljan; prilagodite prema radnom opterećenju i testirajte restore scenarije.
- Smanjite swappiness ako želite da sistem više koristi RAM:
sudo sysctl vm.swappiness=10Trajno u /etc/sysctl.conf.
- Nepromenljive operacije na swap/particijama raditi samo uz backup.
Diskovi i RAID: vrste, provere i osnovne smernice
Diskovi su trajno skladište; RAID daje redundanciju/perfomanse. Znajte da li imate HDD/SSD, particije i softverski (mdadm) ili hardverski RAID.
Komande za proveru stanja diska i RAID-a
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT
sudo fdisk -l
cat /proc/mdstat
sudo mdadm --detail /dev/md0
sudo smartctl -a /dev/sdX
lsblk/fdisk su neinvazivni pregledi; /proc/mdstat i mdadm pokazuju stanje niza; smartctl pruža SMART podatke o zdravlju diska.
- Pratite IOPS i latenciju (iostat), SMART i redovno testirajte backup pre povraćaja podataka.
- Imati plan za zamenu diska — testirajte rebuild vremena i pratite degradirane nizove.
Mrežne kartice (NIC): konfiguracija, provere i nadzor
NIC utiče na sve komunikacije; pratite link speed, greške, drops, offload podešavanja i interrupt balans.
Brze komande za dijagnostiku
ip link show
ip -s link show eth0
ethtool eth0
ethtool -S eth0
cat /proc/interrupts | grep eth0
# Test performansi:
# Server: iperf3 -s
# Klijent: iperf3 -c server_ip -P 8
Metrike i preporuke za nadzor
- Pratiti bandwidth, RX/TX rate i broj drop-ova; alarmovati na nagle promene.
- Upozorenje pri promeni link speed-a (npr. 10Gbps -> 1Gbps).
- Ako je bottleneck na IRQ/CPU, razmotrite RSS/RPS ili podešavanje offload-a.
Bezbednosne preporuke i rešavanje problema
- Onemogućite nepotrebne interfejse i portove; koristite VLAN/ACL za upravljanje.
- Za bonding koristite odgovarajući mode (active-backup za redundanciju, LACP za agregaciju):
sudo ip link add bond0 type bond mode active-backup sudo ip link set eth0 master bond0 sudo ip link set eth1 master bond0 sudo ip link set bond0 up - Pri RX/TX errors proverite kabl/port, SFP/CU i MTU/offload podešavanja.
Napajanje i hlađenje: monitoring, provere i hitne procedure
Stabilno napajanje i dobar protok vazduha su ključni za integritet servera; senzori i UPS moraju biti u monitoring sistemu.
Komande i alati
sudo sensors
sudo ipmitool sdr
sudo ipmitool chassis power status
upsc myups@localhost
Metrike i preporuke
- Pratite CPU temp, inlet temp i RPM ventilatora; alarm pre kritične vrednosti (npr. ~10°C ispod Tj max).
- Monitorišite PSU redundanciju preko IPMI/SNMP i redovno testirajte UPS.
- Testirajte failover napajanja i ograničite pristup BMC/IPMI na management VLAN; ažurirajte firmware.
Kernel i systemd: podešavanja, komande za proveru i rešavanje čestih problema
Kernel i systemd utiču na stabilnost i kontrolu resursa; pratite logove i ograničite resurse gde treba.
Brze provere
uname -sr
sudo dmesg | tail -n 50
sudo journalctl -b -p err
systemctl --failed
systemd-analyze blame
Metrike, podešavanja i rešavanje problema
- Pratiti OOM događaje i koristiti MemoryMax/CPUQuota u systemd jedinicama za kritične servise.
- Sistemska podešavanja (/etc/sysctl.conf) menjati s oprezom i testirati u staging-u.
- Pri kernel paniku: omogućiti kdump/serial konzolu i vratiti poslednju dobru kernel verziju ako je potrebno.
SSH: sigurna udaljena administracija
Provere i osnovne komande
Proverite status sa sudo systemctl status sshd, testirajte konfiguraciju sa sshd -T i pregledajte aktivne veze sa ss -tulpn | grep ssh. Generišite jake ključeve (ssh-keygen -t ed25519).
Metrike, bezbednost i rešavanje problema
- Pratite neuspele prijave u /var/log/auth.log ili journalctl -u sshd; koristite rate-limiting i fail2ban.
- Onemogućite root login i lozinke u sshd_config; koristite AllowUsers/AllowGroups i centralno upravljanje ključevima.
- Ako se ne možete povezati: proverite firewall, daemon status, rutu/DNS i testirajte sa netcat/tcpdump.
Firewall: politika najmanjeg privilegija
Osnovne provere i alati
Pregledajte pravila sa sudo nft list ruleset ili sudo iptables -L -n -v; za jednostavna okruženja koristite ufw ili firewalld alate.
Metrike, preporuke i rešavanje problema
- Default policy na DROP i dozvolite samo neophodne portove; logujte odbijene konekcije radi uvida u skeniranja.
- Koristite stateful pravila i rate-limit za izloženije servise (SSH); sinhronizujte pravila kroz konfiguracioni menadžment.
- Pri problemima proverite redosled pravila, NAT i da li su pravila učitana pri boot-u.
Web i DB servisi: performanse, sigurnost i održavanje
Praktične provere i podešavanja
Proverite konfiguraciju web servera (nginx -t / apachectl configtest), pratite worker/connection parametre i keepalive. Za baze optimizujte buffer/innodb veličine i max_connections prema resursima.
Metrike, bezbednost i rešavanje problema
- Pratite HTTP 5xx/4xx, vreme odgovora, broj konekcija i DB latenciju; aktivirajte slow query log i analizirajte spore upite.
- Implementirajte TLS sa jakim cipherima; za DB koristite najmanje privilegija, bind na odgovarajuće interfejse i enkripciju replikacije/backup-a.
- Ako servis pada: proverite error logove, dostupne resurse (CPU/RAM/I/O) i connection pool-ove; skalirajte preko load balancera ili replica-setova.
Backup i monitoring: plan, verifikacija i alarmi
Strategija i osnovni alati
Primena pravila 3-2-1: najmanje tri kopije, dva medija, jedna van lokacije. Automatizujte backup (rsync, borg, restic, pg_dump), šifrujte i verifikujte arhive; redovno testirajte restore.
Metrike, alerting i runbook
- Monitoring obuhvata dostupnost servisa, sistemske metrike, SMART status, stanje RAID niza, mrežne greške i neuspele backup zadatke.
- Korišćenje Prometheus + node_exporter i Grafana sa alertima u Alertmanager-u omogućava definiranje pragova i eskalacija.
- Pripremite kratke, testirane runbook-ove za česte incidente (degradirani RAID, failed backup, nedostupni servisi) i redovno proveravajte integritet backup-a.
Kako nastaviti: praksa, automatizacija i održavanje
Rad na Linux serverima je kontinuirani proces: automatski testovi, monitoring sa jasnim alertima i dostupnim runbook-ovima, redovan ciklus ažuriranja u staging-u pre produkcije, i dokumentacija svih promena održavaju sisteme stabilnim i bezbednim. Investirajte vreme u automatizaciju rutinskih zadataka, redovno testirajte backup i planove failover-a, i učite iz incidenta — svaka greška je prilika da unapredite procese.
