Friday, December 30, 2022

modprobe argumenti

 modprobe komanda se koristi za učitavanje kernel modula i sve zavisne module na sistemima koji koriste modulabilni kernel. Ova komanda ima razne parametre za konfigurisanje rada modula.


Evo nekoliko primer parametara za modprobe komandu:


-a: Učitava navedeni modul i sve zavisne module

-b: Učitava navedeni modul kao statički modul (bez podrške za deinstaliranje)

-c: Prikazuje konfiguracioni fajl modula

-d: Prikazuje putanju do direktorijuma u kojem se nalaze moduli

-f: Učitava navedeni modul, čak i ako već postoji učitan modul sa istim imenom

-i: Učitava navedeni modul i instalira alias (kratko ime) za modul

-l: Prikazuje spisak trenutno učitanih modula

-n: Učitava navedeni modul bez instalacije aliasa

-r: Deinstalira navedeni modul

-s: Prikazuje sistemske informacije o modulu

Ovo su samo neki od parametara za modprobe komandu.

rpm -qpl komanda

 rpm -qpl komanda je deo rpm alata za upravljanje paketima na sistemima koji koriste RPM paketni sistem, kao što su CentOS, Fedora ili Red Hat Enterprise Linux. Komanda rpm -qpl prikazuje spisak fajlova u nekom RPM paketu bez instaliranja paketa u sistem.


Ovo je primer korišćenja rpm -qpl komande:

rpm -qpl nginx-1.18.0-1.el7.ngx.x86_64.rpm

Ova komanda će prikazati spisak fajlova u nginx-1.18.0-1.el7.ngx.x86_64.rpm RPM paketu, bez instaliranja paketa u sistem.


Evo nekoliko primera korišćenja rpm -qpl komande i kako bi rezultat izgledao:


Primer 1: Prikaz spiska fajlova u nginx-1.18.0-1.el7.ngx.x86_64.rpm RPM paketu:

$ rpm -qpl nginx-1.18.0-1.el7.ngx.x86_64.rpm

/etc/logrotate.d/nginx

/etc/nginx

/etc/nginx/fastcgi_params

/etc/nginx/koi-utf

/etc/nginx/koi-win

/etc/nginx/mime.types

/etc/nginx/nginx.conf

/etc/nginx/scgi_params

/etc/nginx/uwsgi_params

/usr/sbin/nginx

/usr/share/doc/nginx-1.18.0

/usr/share/doc/nginx-1.18.0/CHANGES

/usr/share/doc/nginx-1.18.0/LICENSE

/usr/share/doc/nginx-1.18.0/README

Monday, December 26, 2022

SAS kontroler

 SAS (Serial Attached SCSI) kontroleri su uređaji koji se koriste za povezivanje hard diskova ili drugih uređaja sa skladištem podataka sa matičnom pločom računara. Oni su namenjeni za brzu razmenu podataka između uređaja i omogućavaju brži rad računara.


SAS kontroleri se koriste u serverskim računarima, gde je potrebna visoka brzina razmene podataka, i u drugim uređajima gde je potrebna velika kapaciteta skladištenja. SAS kontroleri se povezuju sa matičnom pločom računara putem SAS konektora i omogućavaju povezivanje do 128 hard diskova ili drugih uređaja sa skladištem podataka.


SAS kontroleri su brži od SATA kontrolera, koji se takođe koriste za povezivanje hard diskova sa matičnom pločom, ali su i skuplji. SAS kontroleri takođe omogućavaju da se hard diskovi povezuju u RAID konfiguracije, što omogućava bolju zaštitu podataka i brži rad računara.


Ukoliko planirate da kupite novi hard disk ili drugi uređaj sa skladištem podataka, važno je da proverite da li vaš računar ima SAS konektor ili SATA konektor i da odaberete uređaj koji se može povezati sa tim konektorom. Ukoliko vaš računar ima SAS konektor, možda će biti bolje da kupite uređaj sa SAS kontrolerom, jer će on biti brži i omogućiti bolji rad računara.

Konfiguracija multipath na Linuxu

 Da biste iskonfigurisali multipath na Linuxu, prvo je neophodno da instalirate neophodne pakete i da se uverite da je multipathd daemon pokrenut.


Instalirajte pakete za multipath:

sudo apt-get install multipath-tools

Proverite da li je multipathd daemon pokrenut:

sudo systemctl status multipathd

Ukoliko je daemon pokrenut, trebalo bi da vidite poruku "active (running)". Ukoliko nije pokrenut, pokrenite ga komandom:

sudo systemctl start multipathd

Iskonfigurišite multipath koristeći konfiguracioni fajl /etc/multipath.conf. Ovaj fajl sadrži sve opcije koje se koriste za konfigurisanje multipath sistema. Tu se mogu navesti polja kao što su "devices", "blacklist" i "whitelist", koje se koriste za određivanje koja uređaja treba da se multipath-uju i koja ne.


Podesite učitavanje multipath modula na sistemu pokretanjem sledeće komande:

sudo modprobe dm-multipath

Pokrenite multipath komandu da biste kreirali multipath-ova:

sudo multipath -ll

Proverite da li je multipath uspešno konfigurisan koristeći sledeću komandu:

sudo multipath -ll

Ako je sve ispravno podešeno, trebalo bi da vidite spisak multipath-ova koji su kreirani.


Napomena: Ovo su opšti koraci za konfigurisanje multipath-a na Linuxu. Detalji o konfiguraciji mogu varirati u zavisnosti od konkretne verzije sistema i dodatnih opcija koje su dostupne. Preporučuje se da se detaljno upoznate sa dokumentacijom i da pročitate više o opcijama koje su vam dostupne za konfigurisanje multipath-a na vašem sistemu.

Prikaži informacije o nvidia.ko

 Moduli u Linux operativnim sistemima su obično kompajlirani i smešteni u fajlovima sa ekstenzijom .ko (kernel object). Ovi fajlovi su binarni fajlovi koji sadrže kompajlirani programski kod modula.


Da biste videli sadržaj modula, možete koristiti alat za dekompajliranje modula koji se zove "modinfo". Ova komanda će vam dati različite informacije o modulu, uključujući njegovu verziju, autora, opis i druge metapodatke.


Primer:


Da biste videli informacije o modulu za upravljanje grafičkom karticom proizvođača Nvidia, možete koristiti sledeću komandu:


Copy code

modinfo /lib/modules/$(uname -r)/kernel/drivers/video/nvidia.ko

Ova komanda će vam ispisati informacije o modulu za upravljanje grafičkom karticom, uključujući njegovu verziju, autora, opis i druge metapodatke.


Napomena: Da biste mogli da koristite modinfo komandu, morate imati pristup fajlu modula i biti korisnik sa administrator ovlašćenjima (root)

Lokacija kernel modula

 Moduli se obično nalaze u direktorijumu /lib/modules/<kernel_version>/. Ovaj direktorijum sadrži sve module koji su instalirani za određenu verziju jezgra operativnog sistema.


Na primer, ako je trenutna verzija jezgra vašeg operativnog sistema 4.19.0-8, moduli se nalaze u direktorijumu /lib/modules/4.19.0-8/.

Moduli su obično smešteni u pod-direktorijume u ovom direktorijumu, što odgovara njihovoj funkciji ili tipu hardvera kojim upravljaju. Na primer, moduli za upravljanje mrežnom karticom se obično nalaze u pod-direktorijumu /lib/modules/<kernel_version>/kernel/drivers/net/.

Ukoliko želite da vidite sve module koji su instalirani za trenutnu verziju jezgra, možete koristiti sledeću komandu:

ls /lib/modules/$(uname -r)

Ova komanda će ispisati spisak svih pod-direktorijuma u direktorijumu /lib/modules/<kernel_version>/, što odgovara različitim tipovima modula koji su instalirani.

Modprobe Linux komanda

 Modprobe je komanda koja se koristi za učitavanje modula u jezgru operativnog sistema. Ovi moduli su obično programski kod koji se koristi za razne funkcije u operativnom sistemu, kao što su upravljanje hardverom, rad sa mrežama ili podrška za različite tipove fajlova.


Primer:


Da biste učitali modul za upravljanje grafičkom karticom, možete koristiti sledeću komandu:

modprobe nvidia

Ova komanda će učitati modul za upravljanje grafičkom karticom proizvođača Nvidia.


Još neki primera:


Da biste učitali modul za upravljanje mrežnom karticom, možete koristiti sledeću komandu:

modprobe e1000

Da biste učitali modul za upravljanje skenerom, možete koristiti sledeću komandu:

modprobe sane

Da biste učitali modul za upravljanje zvučnom karticom, možete koristiti sledeću komandu:

modprobe snd_hda_intel

Napomena: Da biste mogli da koristite modprobe komandu, morate biti korisnik sa administrator ovlašćenjima (root).

modinfo Linux komanda

modinfo je komanda u Linux operativnom sistemu koja se koristi za prikaz informacija o modulu u jezgru. Ovaj modul predstavlja deo jezgra koji se može učitati ili ukloniti dinamički, bez potrebe da se sistem ponovo pokrene.


Evo nekoliko primera korišćenja komande modinfo za prikaz različitih informacija o modulima u Linuxu:


Da biste videli sve informacije o modulu, koristite sledeću sintaksu:

modinfo naziv_modula

Ova komanda će prikazati sve dostupne informacije o modulu, uključujući njegov naziv, verziju, autora, komentar i druge podatke.


Da biste videli samo verziju modula, koristite sledeću sintaksu:

modinfo -F version naziv_modula

Ova komanda će prikazati samo verziju modula.


Da biste videli samo autora modula, koristite sledeću sintaksu:

modinfo -F author naziv_modula

Ova komanda će prikazati samo autora modula.


Da biste videli sve module koji su trenutno učitani u jezgru, koristite sledeću komandu:

lsmod

Ova komanda će prikazati spisak svih modula koji su trenutno učitani u jezgru, uključujući njihove veličine i broj veza sa drugim modulima.

insmod i rmmod komande na Linuxu

 insmod i rmmod su komande koje se koriste u Linux sistemima za učitavanje i uklanjanje drajvera iz jezgra sistema.


insmod komanda se koristi za učitavanje drajvera u jezgro sistema. Ovom komandom se drajver učitava u memoriju i postaje dostupan za upotrebu. Sintaksa komande je sledeća:

insmod ime_modula.ko

rmmod komanda se koristi za uklanjanje drajvera iz jezgra sistema. Ovom komandom se drajver uklanja iz memorije i više nije dostupan za upotrebu. Sintaksa komande je sledeća:

rmmod ime_modula

Primer:

insmod /path/to/module.ko

rmmod module

Treba imati u vidu da se insmod i rmmod komande mogu koristiti samo ako je drajver kompajliran u obliku modula i da su potrebne odgovarajuće privilegije da biste ih koristili. Takođe, neke drajvere ne mogu da se učitavaju ili uklanjaju pomoću ovih komandi jer se automatski učitavaju ili uklanjaju zajedno sa jezgrom sistema.

lsmod - prikazi učitane module na Linuxu

 lsmod je Linux komanda koja se koristi za prikazivanje spiska modula učitanih u jezgru sistema. Ovaj spisak obično uključuje informacije o nazivu modula, veličini i drugim relevantnim detaljima.


Da biste pokrenuli lsmod, otvorite terminal i unesite sledeću komandu:

lsmod

Ova komanda će prikazati spisak trenutno učitanih modula, sa jednim redom po modulu. Primer izlaza mogao bi izgledati ovako:

Module                  Size  Used by

nls_utf8               16384  1

isofs                  40960  1

udf                    73728  0

nls_iso8859_1          16384  1

vfat                   20480  1

fat                    69632  1 vfat

Možete takođe da koristite opcije lsmod da biste dobili više informacija o pojedinačnim modulima. Na primer, da biste videli detalje o modulu nls_utf8, unesite sledeću komandu:

lsmod | grep nls_utf8

Ovo će prikazati samo redove koji se odnose na modul nls_utf8, što bi moglo izgledati ovako:

nls_utf8               16384  1

Moduli se često koriste za dodavanje novih funkcija i mogućnosti u jezgru sistema. Na primer, modul nls_utf8 omogućava sistemu da razume i prikazuje Unicode karaktere, dok modul vfat omogućava sistemu da čita i piše na datoteke sa VFAT particijama (koje se često koriste na pokretnim uređajima, kao što su USB fleš drajvovi).

dmesg Linux komanda

 Komanda "dmesg"  služi za prikaz izveštaja o greškama u sistemu i drugih važnih informacija o radu sistema. Ova komanda čita iz sistemskog loga i ispisuje poruke koje su zabeležene u njemu. Poruke u sistemskom logu mogu biti ispisane od strane različitih dijelova sistema, kao što su jezgre, drajveri i aplikacije.


Ova komanda je korisna jer vam može pomoći da pronađete uzrok problema sa sistemom ili da otkrijete šta se dešava u pozadini. Na primer, ako nešto ne radi kako treba, možete pokrenuti "dmesg" da biste videli da li su zabeležene poruke o greškama ili upozorenja u vezi sa tim uređajem ili aplikacijom.


Da biste pokrenuli "dmesg", otvorite terminal i unesite "dmesg". Poruke će biti ispisane u terminalu, a najnovije poruke će biti na dnu. Ako želite da filtrirate poruke po ključnoj reči ili da ih sortirate po vremenu, možete koristiti opcije komande.

Evo nekoliko primera kako možete koristiti "dmesg" komandu:

Prikaz svih poruka u sistemskom logu:

dmesg

Prikaz poruka u sistemskom logu sortiranih po vremenu:

dmesg | sort -k1,1 -k2,2n

Prikaz poruka u sistemskom logu koje sadrže ključnu reč "error" (ignorišući veličinu slova):

dmesg | grep -i error

Prikaz poruka u sistemskom logu koje se odnose na Ethernet mrežni interfejs:

dmesg | grep -i ethernet

Prikaz poruka u sistemskom logu koje se odnose na grafički interfejs:

dmesg | grep -i graphics

Prikaz poruka u sistemskom logu koje se odnose na USB uređaje:

dmesg | grep -i usb

Napomena: Ako ne vidite željene poruke ili ako želite da vidite više poruka, možete koristiti opciju "-s" da biste povećali veličinu bafera za prikaz poruka. Na primer, "dmesg -s 10000" će prikazati poslednjih 10000 poruka iz sistemskog loga.


Da biste videli poruke u sistemskom logu koje se odnose na PCI uređaje, možete koristiti sledeću komandu:

dmesg | grep -i pci

Ova komanda će ispisati sve poruke u sistemskom logu koje sadrže reč "pci" (ignorišući veličinu slova). Možete promeniti reč "pci" sa bilo kojom drugom ključnom reči da biste filtrirali poruke po željenom kriterijumu.



Linux komande za proveru drajvera

 Evo nekoliko komandi koje možete koristiti da proverite drajvere na Linux sistemu:


lsmod: Ovom komandom se prikazuju drajveri koji su trenutno učitani u jezgru sistema.


lspci: Ovom komandom se prikazuje spisak svih PCI uređaja na računaru, uključujući i drajvere koji su povezani sa njima.


hwinfo: Ovom komandom se prikazuju detaljne informacije o hardware-u i drajverima koji su povezani sa njim.


lsusb: Ovom komandom se prikazuje spisak svih USB uređaja koji su povezani sa računarom, uključujući i drajvere koji su povezani sa njima.


lshw: Ovom komandom se prikazuje detaljna informacija o hardware-u računara, uključujući i informacije o drajverima.


Ove komande su dostupne na većini distribucija Linux-a i mogu se koristiti iz terminala

Sunday, December 25, 2022

Kako se kubernetes monitoriše?

 Postoji nekoliko načina na koje možete monitorisati Kubernetes klastar:


Koristite Kubernetes API server i kubectl komandu za praćenje stanja objekata u klastru, kao što su podovi, service-i i druge resurse. Možete koristiti kubectl komandu da biste dobili informacije o stanju objekata i da biste ih ažurirali.


Koristite alate za praćenje resursa, kao što su Prometheus i Grafana, da biste pratili resurse u klastru, kao što su CPU i memorija. Ovi alati vam omogućavaju da vizualizujete podatke o resursima i da odredite kada se resursi preopterećuju ili se koriste neefikasno.


Koristite alate za praćenje radnog opterećenja, kao što su New Relic ili Datadog, da biste pratili radno opterećenje u klastru i odredili uzroke problema s performansama.


Koristite Kubernetes notifikacione alate, kao što su Slack ili PagerDuty, da biste dobili obavijesti o problemima u klastru i da biste odmah reagovali na njih.

Kubernetes namespace

 Namespace u Kubernetes-u je logička granica u klastru koja se koristi za odvajanje resursa i objekata u klastru. Namespace-ovi se koriste za razdvajanje različitih radnih opterećenja u istom klastru i za osiguravanje da se resursi ne preklope ili se međusobno utječu.


Na primer, možete koristiti namespace-ove da bi ste odvojili različite aplikacije u istom klastru ili da bi ste odvojili resurse za različite timove u organizaciji.


Svaki namespace u Kubernetes klastru sadrži svoj set objekata, uključujući podove, service-e, deploymente i druge resurse. Možete kreirati više namespace-ova u jednom klastru i pristupiti im preko API-ja ili koristeći kubectl komandu.


Ukratko, namespace u Kubernetes-u je logička granica koja se koristi za odvajanje resursa i objekata u klastru i za razdvajanje različitih radnih opterećenja u istom klastru.

Kube-proxy proces

 Kube-proxy je proces koji se izvršava na svakom čvoru u Kubernetes klastru i odgovoran je za upravljanje mrežnim prometom između podova i servicea u klastru.


Konkretno, kube-proxy upravlja sljedećim zadacima:


Upravljanje mrežnim prometom: Kube-proxy se koristi za usmjeravanje mrežnog prometa između podova i servicea u klastru i za praćenje promjena u klastru kako bi se osiguralo da se promet usmjerava na odgovarajuće podove.


Pracenje stanja servicea: Kube-proxy stalno prati stanje servicea u klastru i ažurira svoje tablice usmjeravanja prometa u skladu s tim.


Kommuniciranje s API serverom: Kube-proxy se povezuje s Kubernetes API serverom kako bi dobio informacije o serviceima u klastru i kako bi ažurirao svoje tablice usmjeravanja prometa u skladu s tim.


Ukratko, kube-proxy je odgovoran za upravljanje mrežnim prometom između podova i servicea u Kubernetes klastru i za pracenje stanja servicea te kommuniciranje s API serverom.

Kube-controller-manager

 Kube-controller-manager je proces koji se izvršava u Kubernetes klastru i odgovoran je za upravljanje kontrolerima u Kubernetes sustavu. Kontroleri su procesi koji stalno prate stanje objekata u Kubernetes klastru i pokušavaju ih uskladiti s željenim stanjem.


Konkretno, kube-controller-manager upravlja sljedećim zadacima:


Upravljanje kontrolerima: Kube-controller-manager pokreće i upravlja različitim kontrolerima u Kubernetes sustavu, kao što su replikacijski kontroler, deployment kontroler i slično.


Pracenje stanja objekata: Kube-controller-manager stalno prati stanje objekata u Kubernetes klastru i pokušava ih uskladiti s željenim stanjem.


Kommuniciranje s API serverom: Kube-controller-manager se povezuje s Kubernetes API serverom kako bi dobio informacije o objektima u klastru i kako bi ažurirao stanje objekata u skladu s željenim stanjem.


Ukratko, kube-controller-manager je odgovoran za upravljanje kontrolerima u Kubernetes sustavu i za pracenje stanja objekata u klastru te kommuniciranje s API serverom.

kube-apiserver

 Kube-apiserver je proces koji se izvršava u Kubernetes klastru i odgovoran je za upravljanje API-jem za Kubernetes. API server se koristi za upravljanje objektima u Kubernetes klastru, kao što su podovi, deploymenti, servicei i slično.


Konkretno, kube-apiserver upravlja sljedećim zadacima:


Upravljanje objektima u Kubernetes klastru: Kube-apiserver omogućava kreiranje, čitanje, ažuriranje i brisanje objekata u Kubernetes klastru putem API-ja.


Kommuniciranje s ostalim komponentama Kubernetes sustava: Kube-apiserver se povezuje s ostalim komponentama Kubernetes sustava, kao što su kubeleti i kube-scheduler, kako bi im dao informacije o objektima u klastru i kako bi od njih dobio informacije o stanju čvora i resursima.


Upravljanje autentifikacijom i autorizacijom: Kube-apiserver također upravlja autentifikacijom i autorizacijom za pristup API-ju i objektima u Kubernetes klastru.


Ukratko, kube-apiserver je odgovoran za upravljanje API-jem za Kubernetes i omogućava upravljanje objektima u klastru, kommuniciranje s ostalim komponentama sustava i upravljanje autentifikacijom i autorizacijom.

Šta radi Kube-scheduler?

 Kube-scheduler je proces koji se izvršava u Kubernetes klastru i odgovoran je za određivanje na kojem čvoru/node-u će se pokrenuti specifičan pod ili kontejner.


Konkretno, kube-scheduler upravlja sljedećim zadacima:


Određivanje na kojem čvoru će se pokrenuti pod: Kube-scheduler određuje na kojem čvoru će se pokrenuti pod na osnovu raspoloživosti resursa, kao što su CPU i memorija, na svakom čvoru.


Balansiranje opterećenja: Kube-scheduler također pomaže u balansiranju opterećenja na klastru tako da se ne preopterećuju pojedini čvorovi i da se resursi koriste efikasnije.


Kommuniciranje s API serverom: Kube-scheduler se povezuje s Kubernetes API serverom kako bi dobio informacije o podacima, kontejnerima i resursima na klastru i kako bi odredio gdje treba da se pokrenu određeni podovi ili kontejneri.


Ukratko, kube-scheduler je odgovoran za određivanje gdje će se pokrenuti specifični podovi ili kontejneri u Kubernetes klastru i za balansiranje opterećenja na klastru.

Kubelet proces

 Kubelet je proces koji se pokreće na svakom čvoru u Kubernetes klastru i odgovoran je za upravljanje podacima i kontejnerima na tom čvoru. Njegove glavne dužnosti su:


Upravljanje podacima: Kubelet se brine da podaci i kontejneri na čvoru budu u skladu sa definicijama stanja objekata u Kubernetes API serveru.


Upravljanje kontejnerima: Kubelet upravlja životnim ciklusima kontejnera na čvoru, uključujući pokretanje, zaustavljanje i preuređivanje kontejnera.


Kommunikacija s API serverom: Kubelet se povezuje s Kubernetes API serverom kako bi dobio informacije o tome šta treba da radi i kako treba da upravlja podacima i kontejnerima na čvoru.


Upravljanje resursima: Kubelet upravlja resursima, kao što su CPU i memorija, na čvoru i osigurava da se kontejneri ne opterećuju više nego što im je dodeljeno.


Ukratko, kubelet je važan deo Kubernetes sistema i odgovoran je za upravljanje podacima i kontejnerima na čvoru, kommuniciranje s API serverom i upravljanje resursima.

Kubernetes volume

 Volume je objekat u Kubernetes klasteru koji se koristi za cuvanje podataka izvan pods-a. Volume se može koristiti da bi se podaci sačuvali i nakon što pods ode iz klastera, da bi se podaci delili između više pods-a ili da bi se podaci prenosili između različitih node-ova u klasteru.


Postoji mnogo različitih tipova volumena u Kubernetes-u, a neki od najčešćih su:


emptyDir: Ovaj tip volumena se kreira kada se pods pokrene i uništava kada pods prestane da radi. Podaci se cuju na node-u na kojem je pokrenut pods.

hostPath: Ovaj tip volumena povezuje podatke sa lokalnim fajl sistemom node-a na kojem je pokrenut pods.

persistentVolumeClaim (PVC): Ovaj tip volumena se povezuje sa PersistentVolume-om izvan pods-a i omogućava da podaci budu sačuvani i nakon što pods ode iz klastera.

configMap: Ovaj tip volumena se povezuje sa ConfigMap-om i omogućava da se podaci iz ConfigMap-a učitaju u pods.

secret: Ovaj tip volumena se povezuje sa Secret objektom i omogućava da se tajni podaci, kao što su lozinke i ključevi, učitaju u pods.

Evo jednog primera definicije volumena tipa "emptyDir" u pods-u sa imenom "my-pod":

apiVersion: v1

kind: Pod

metadata:

  name: my-pod

spec:

  containers:

  - name: my-container

    image: my-image

    volumeMounts:

    - name: data-volume

      mountPath: /data

  volumes:

  - name: data-volume

    emptyDir: {}

Ovaj primer definiše pods sa imenom "my-pod" i kontejnerom sa imenom "my-container" koji pokreće sliku "my-image". Kontejneru se dodaje volume sa imenom "data-volume" i mount path-om "/data". Volume se definiše kao emptyDir, što znači da će se podaci cuvati unutar pods-a na node-u na kojem je pokrenut. Podaci će biti uništeni kada pods prestane da radi.

Šta je ConfigMap?

 ConfigMap je objekat u Kubernetes klasteru koji se koristi za cuvanje konfiguracijskih podataka u obliku key-value parova. ConfigMap se može koristiti da bi se podaci izdvojili iz samog aplikativnog koda i da bi se lako menjali bez potrebe za izmenom aplikacije. To se često koristi za cuvanje podataka koji se razlikuju od jedne instalacije do druge, kao što su parametri za podešavanje, URL-ovi za pristup bazama podataka i sl.


Evo jednog primera definicije ConfigMap-a sa imenom "my-config":

apiVersion: v1

kind: ConfigMap

metadata:

  name: my-config

data:

  key1: value1

  key2: value2

  key3: value3

Ovaj primer definiše ConfigMap sa imenom "my-config" i tri key-value para sa imenima "key1", "key2" i "key3" i odgovarajućim vrednostima "value1", "value2" i "value3". ConfigMap se može koristiti da bi se podaci prosledili kao argumenti u komandnoj liniji ili kao environment varijable u kontejneru.


Da biste koristili ConfigMap u aplikaciji, potrebno je da ga dodate u specifikaciji Deployment-a ili StatefulSet-a koji pokreće pods sa aplikacijom. Evo jednog primera:

apiVersion: apps/v1

kind: Deployment

metadata:

  name: my-deployment

spec:

  template:

    spec:

      containers:

      - name: my-container

        image: my-image

        envFrom:

        - configMapRef:

            name: my-config

Ovaj primer dodaje ConfigMap "my-config" kao environment varijable u kontejner "my-container" u Deployment-u "my-deployment". Environment varijable se mogu koristiti u aplikaciji da bi se učitavali konfiguracijski podaci.

Kubernetes service

 Kubernetes service je objekat u Kubernetes klasteru koji omogućava pristup pods-u ili grupi pods-a izvan klastera. To se postiže tako što se pods-u dodeljuje jedinstvena IP adresa i DNS ime, što omogućava da se pods pristupa sa bilo kog mesta u klasteru putem jedinstvenog imena i adrese.


Postoje različiti tipovi Kubernetes servisa, a neki od najčešćih su:


ClusterIP: Ovaj tip servisa je dostupan samo unutar klastera i ne može se pristupiti sa spoljne mreže.

NodePort: Ovaj tip servisa omogućava pristup pods-u putem IP adrese i porta na kojoj je pokrenut node u klasteru.

LoadBalancer: Ovaj tip servisa koristi load balancer izvan klastera da bi omogućio pristup pods-u sa spoljne mreže.

Ingress: Ovaj tip servisa omogućava pristup grupi pods-a sa spoljne mreže putem jedinstvenog DNS imena.

Evo jednog primera definicije Kubernetes servisa za pod sa imenom "my-app":


Copy code

apiVersion: v1

kind: Service

metadata:

  name: my-app-service

spec:

  type: NodePort

  selector:

    app: my-app

  ports:

  - protocol: TCP

    port: 80

    targetPort: 8080

Ovaj primer definiše servis tipa NodePort sa imenom "my-app-service" i selectorom koji selektuje sve pods-e sa "app" label-om "my-app". Servis omogućava pristup pods-ima putem IP adrese i porta node-a na kojem su pokrenuti. Pods-i se mogu pristupiti putem protokola TCP na portu 80, dok je target port 8080 na pods-u.

Kubernetes master nod

 Master node u Kubernetes je glavni računar u klasteru Kubernetes. On kontroliše sve druge računare u klasteru, koje nazivamo node-ovi. Master node se sastoji od više komponenti koje rade zajedno da bi upravljale klasterom i omogućile da se aplikacije raspodele i izvršavaju na node-ovima.


Glavne komponente master node-a su:


etcd: distributivna baza podataka koja čuva sve konfiguracije i stanja Kubernetes klastera.

API server: komponenta koja prima zahteve od korisnika i drugih komponenti za upravljanje klasterom i izvršava ih tako što poziva odgovarajuće funkcije iz etcd baze podataka.

Scheduler: komponenta koja određuje na koji node će biti dodeljen podatak (container) u aplikaciji.

Controller manager: komponenta koja kontroliše rad node-ova i podataka u klasteru, da bi se osiguralo da se aplikacije izvršavaju u skladu sa zahtevima i da se održava odgovarajuće stanje.

Master node je odgovoran za upravljanje radom node-ova u klasteru i omogućavanje da se aplikacije izvršavaju i raspodeljuju u skladu sa zahtevima. Node-ovi se pak bave izvršavanjem podataka aplikacija i održavanjem resursa potrebnih za rad aplikacija.

Primer manifest fajla

 Evo primera manifest fajla za raspoređivanje pods u Kubernetes klaster:

apiVersion: v1

kind: Pod

metadata:

  name: nginx-pod

  labels:

    app: nginx

spec:

  containers:

  - name: nginx

    image: nginx:1.15

    ports:

    - containerPort: 80

  restartPolicy: Always

Ovaj manifest fajl opisuje pods sa imenom "nginx-pod" i etiketom "app: nginx". Pods sadrži jedan kontejner sa imenom "nginx" i sliku "nginx:1.15". Kontejner ima port 80 otvoren i pods ima politiku restartovanja "Always".


Da bi se ovaj pods rasporedio u Kubernetes klaster, potrebno je koristiti komandu "kubectl apply" i navesti putanju do manifest fajla:

kubectl apply -f /path/to/manifest.yaml

Ova komanda će rasporediti pods u klaster i aplikacija će biti dostupna za upotrebu.

Manifest fajl u Kubernetesu

 Manifest fajl u Kubernetesu je fajl u kome se navode sve potrebne informacije o resursima koje treba da se rasporede u Kubernetes klasteru, kao što su pods, deployment, servisi i slično. Manifest fajl se koristi kao osnova za raspoređivanje resursa u klasteru i omogućava da se resursi lako konfigurišu i upravljaju.


Manifest fajl se sastoji od opisa resursa u JSON ili YAML formatu. U manifest fajlu se navode svi potrebni detalji o resursima, uključujući nazive, vrednosti atributa, kontejnere i druge podešavanja.


Da bi se resursi rasporedili u Kubernetes klaster, potrebno je kreirati manifest fajl i koristiti komandu "kubectl" da bi se resurs rasporedio u klaster. Na primer, da bi se pod rasporedio u klaster, potrebno je kreirati manifest fajl u kome se navode svi potrebni detalji o podu, uključujući kontejnere koji će se rasporediti, resurse koje će pod koristiti i druge podešavanja. Nakon što se manifest fajl kreira, može se koristiti komanda "kubectl apply" da bi se pod rasporedio u klaster.


Manifest fajl je važan deo Kubernetesa jer omogućava da se resursi lako konfigurišu i upravljaju u klasteru. On takođe omogućava da se resursi lako raspoređuju i skaliraju u odgovarajućem trenutku, što olakšava razvoj i održavanje aplikacija u oblaku.

Kubernetes pod

 Pod u Kubernetesu je najmanja jedinica za raspoređivanje i upravljanje u Kubernetes klasteru. Pods predstavljaju aplikaciju ili deo aplikacije i sadrže jedan ili više kontejnera koji rade zajedno da bi se osigurala funkcionalnost aplikacije. Pods takođe mogu da sadrže resurse za rad aplikacije, kao što su memorija i procesor, i da se povežu sa drugim pods ili servisima u klasteru preko mreže.


Pods su korisni jer omogućavaju da se aplikacije lako rasporede i upravljaju u Kubernetes klasteru. Oni omogućavaju da se aplikacije lako skale tako što se dodaju ili uklanjaju pods u zavisnosti od potreba. Pods takođe omogućavaju da se aplikacije lako održavaju i nadgledaju, jer se sve što je potrebno za rad aplikacije nalazi u jednom pods, što olakšava dijagnostiku i održavanje.


Da bi se kreirao pod u Kubernetes klasteru, potrebno je kreirati manifest fajl u kome se navode svi potrebni detalji o pods, uključujući kontejnere koji će se rasporediti, resurse koje će pods koristiti i druge podešavanja. Nakon što se manifest fajl kreira, može se koristiti komanda "kubectl" da bi se pod rasporedio u klaster.

Šta je Kubernetes?

 Kubernetes (često skraćeno kao "K8s") je open-source sistem za upravljanje i automatizaciju raspoređivanja, skaliranja i upravljanja aplikacijama u oblaku. To omogućava lakše razvoj, distribuciju i održavanje aplikacija, omogućavajući da se aplikacije lako rasporede u različitim okruženjima, uključujući lokalne računare, datacentre i oblake.


Kubernetes se sastoji od više komponenti koji rade zajedno da bi se osiguralo da su aplikacije uvek dostupne i da se lako skale u odgovarajućem trenutku. Osnovne komponente Kubernetesa uključuju "podove", "nodove" i "klaster menadžere". Podovi su najmanje jedinice koje se raspoređuju u Kubernetesu i predstavljaju aplikaciju ili deo aplikacije. Nodi su računari koji izvršavaju podove i obično su organizovani u klaster. Klaster menadžer je deo Kubernetesa koji upravlja nodovima i podovima u klasteru i omogućava da se aplikacije lako rasporede i skale.


Kubernetes se često koristi u kombinaciji sa drugim tehnologijama za automatizaciju i upravljanje kontejnerima, kao što je Docker, kako bi se omogućilo lako razvoj i distribucija aplikacija u oblaku.

Šta je docker swarm?

 Docker Swarm je alat koji se koristi za upravljanje grupom Docker okruženja, ili "swarm-om". To znači da se Swarm koristi za automatizaciju deploy-a i skaliranja Docker kontejnera na više računara, kako bi se osiguralo da aplikacije rade bez prekida i da su dostupne korisnicima.


Swarm se sastoji od jednog ili više računara koji se nazivaju "čvorovima" i koji se koriste za pokretanje Docker kontejnera. Čvorovi se mogu konfigurisati da rade kao "manager" čvorovi ili kao "worker" čvorovi. Manager čvorovi se koriste za upravljanje Swarm-om i za odlučivanje gde će se pokrenuti Docker kontejneri, dok worker čvorovi služe za pokretanje Docker kontejnera.


Swarm se koristi za automatizaciju deploy-a aplikacija i za lakše upravljanje njima, što omogućava da se aplikacije pokreću na više računara bez prekida i da su dostupne korisnicima u svako doba. To je posebno korisno kada se koristi u kombinaciji sa Docker Compose, alatom za automatizaciju deploy-a više aplikacija koje su međusobno povezane i koje treba da rade zajedno.

Open-source docker registry

 Postoje nekoliko open-source za hostovanje vlastitog Docker registry-ja. Ovde su neke popularne opcije:


Docker Registry: Ovo je projekat otvorenog izvora registry-ja koji održava Docker, Inc. To je samostalni registry server koji možete pokrenuti na svojoj vlastitoj infrastrukturi.


Harbor: Ovo je registry otvorenog izvora koji je dizajniran da bude siguran, skalabilan i lak za upotrebu. Uključuje funkcije kao što su kontrola pristupa na osnovu uloga, skeniranje i potpisivanje slika i integraciju sa spoljnim sistemima za autentifikaciju.


GitLab Container Registry: Ako već koristite GitLab za upravljanje Git repozitorijumom, možete koristiti GitLab Container Registry za skladištenje i upravljanje Docker slikama.


JFrog Artifactory: Ovo je univerzalni repozitorijum artefakata koji podržava različite vrste artefakata, uključujući i Docker slike. Ima robustan skup funkcija za upravljanje i distribuciju artefakata, uključujući i podršku za verifikaciju i fino podešenu kontrolu pristupa.


Vredi napomenuti da ova open-source rešenja registry-ja mogu zahtevati neko tehničko znanje za postavljanje i održavanje. Ako tražite rešenje sa više "ključ u ruke", takođe postoje i neki komercijalni servisi za hosting registry-a.

Šta je Docker Hub?

 Docker Hub je najpopularniji Docker registry i služi kao glavni izvor slika za mnoge korisnike Dokera. Docker Hub pruža pristup velikom broju slika različitih tehnologija i alata koje su dostupne za preuzimanje i korišćenje.


Docker Hub takođe pruža mogućnosti za organizaciju slika u repozitorijume i podešavanje kontrola pristupa za različite korisnike. Korisnici mogu da kreiraju svoje repozitorijume na Docker Hub-u i da objave svoje slike u njima za javno ili privatno korišćenje.


Postoje i drugi Docker registry-ji, uključujući Azure Container Registry, Google Container Registry i AWS Elastic Container Registry, koji su dostupni za korišćenje u specifičnim cloud okruženjima.

Šta je docker registry?

 Docker registry je mesto gde se skladište Docker slike. Docker registry može biti lokalna instalacija na vašem računaru ili udaljena instalacija na nekom drugom računaru ili serveru. Docker registry može biti javni ili privatni.


Javni Docker registry je dostupan svima i može se koristiti da se preuzmu slike iz različitih projekata. Najpoznatiji javni Docker registry je Docker Hub, koji pruža pristup velikom broju slika različitih tehnologija i alata.


Privatni Docker registry je dostupan samo za korisnike koji su registrovani i autorizovani za njegovo korišćenje. Ova vrsta registry-ja se obično koristi u korporativnim okruženjima za skladištenje i raspodelu slika koje se koriste u projektima u okviru organizacije.


Da biste koristili Docker registry, morate imati instaliran Docker na računaru. Zatim možete koristiti Docker komande da preuzmete slike iz registry-ja ili da pošaljete svoje slike u registry za kasnije korišćenje.

Docker drajver za logovanje

 Možete da konfigurišete drajver za logovanje korišćenjem oznake --log-driver kada pokrenete kontejner ili možete da postavite opciju log-driver u datoteku konfiguracije daemona.


Da biste koristili određeni drajver za logovanje, možete da prosledite njegovo ime kao vrednost za oznaku --log-driver prilikom pokretanja kontejnera, na ovaj način:

$ docker run --log-driver=json-file my_image

Takođe možete da postavite opciju log-driver u datoteku konfiguracije daemona (/etc/docker/daemon.json) da biste navedli podrazumevani drajver za logovanje za sve kontejnere. Na primer:

{

  "log-driver": "json-file"

}

To će uzrokovati da svi kontejneri pokrenuti od strane Docker daemona koriste drajver za logovanje json-file.


Dostupni drajveri za logovanje su:


json-file: Ovo je podrazumevani drajver za logovanje. On upisuje podatke o logovanju u JSON datoteke na sistemu datoteka hosta.


syslog: Ovaj drajver za logovanje šalje podatke o logovanju na server syslog.


journald: Ovaj drajver za logovanje šalje podatke o logovanju u sistem za logovanje journald.


gelf: Ovaj drajver za logovanje šalje podatke o logovanju na server Graylog Extended Log Format (GELF).


fluentd: Ovaj drajver za logovanje šalje podatke o logovanju na server fluentd.


awslogs: Ovaj drajver za logovanje šalje podatke o logovanju u Amazon CloudWatch Logs.


splunk: Ovaj drajver za logovanje šalje podatke o logovanju na server Splunk.


etwlogs: Ovaj drajver za logovanje šalje podatke o logovanju u ETW na Windowsu.

Docker logovi

 Docker logovi su izlazne poruke koje proizvodi Docker kontejner ili Docker engine. Ovi logovi se mogu koristiti za otklanjanje problema pri pokretanju kontejnera, kao i za praćenje performansi i ponašanja aplikacije.


Docker logovi se obično čuvaju u tekstualnim fajlovima nazvanim "log fajlovi", koji se generišu od strane Docker demona (pozadinske radnje koja se izvršava na mašini hosta). Docker demon piše log poruke u ovim fajlovima kako se kontejneri pokreću i zaustavljaju, kao i kada se drugi događaji dešavaju u Docker okruženju.


Docker logove možete pristupiti na nekoliko načina:


Koristeći docker logs komandu: Ova komanda vam omogućava da vidite logove za određeni kontejner. Možete koristiti --follow flag da bi pratili logove u realnom vremenu, slično kao tail -f komanda.

Koristeći logging driver: Docker podržava različite logging drivere, koji su plugini koji se mogu koristiti da se log poruke šalju u različite destinacije, kao što su fajl, syslog ili cloud servis. Možete specificirati logging driver kada pokrećete kontejner, ili konfigurisati Docker demon da koristi određeni logging driver po podrazumevanom.

Pristupajući log fajlovima direktno: Na većini sistema, Docker log fajlovi se čuvaju u direktorijumu /var/lib/docker/containers. Možete pogledati log fajlove za određeni kontejner tako što ćete pogledati u njegov poddirektorijum.

Važno je napomenuti da format i sadržaj Docker logova mogu varirati u zavisnosti od logging drivera koji se koristi i od aplikacije koja se pokreće u kontejneru. Međutim, većina logova će uključivati ​​informacije o pokretanju i zaustavljanju kontejnera, kao i bilo koje poruke generisane od strane aplikacije ili Docker demona.

Šta je Docker Composer?

 Docker Compose je alat za definisanje i automatizaciju multi-kontejnerskih aplikacija. On vam omogućava da opišete sve kontejnere, povezane servise i njihove interakcije u jednom Compose file-u, a zatim da pokrenete i upravljate svim tim komponentama kao jednim celinom pomoću jedne komande.


Compose file se obično naziva docker-compose.yml i sadrži definicije za sve kontejnere i servise u aplikaciji. Ovo je primer Compose file-a:

version: '3'

services:

  web:

    build: .

    ports:

      - "5000:5000"

    volumes:

      - .:/app

  redis:

    image: redis:alpine

Ovaj Compose file definiše dva servisa: web i redis. web servis se izgradi iz trenutnog direktorijuma (.), mapira port 5000 iz kontejnera na port 5000 na hostu i montira trenutni direktorijum kao volume u /app direktorijum u kontejneru. redis servis se pokreće koristeći sliku redis:alpine.


Da biste pokrenuli aplikaciju pomoću ovog Compose file-a, možete koristiti docker-compose up komandu:

docker-compose up

Ova komanda će pokrenuti sve kontejnere navedene u Compose file-u i povezati ih sa odgovarajućim servisima.


Docker Compose je korisno jer omogućava da definišete i upravljate svim komponentama aplikacije iz jednog mesta, što je olakšava razvoj, testiranje i distribuciju aplikacija

Šta je dockerfile?

 Docker file je skripta koja sadrži komande za izgradnju Docker slike. Slika je prethodno konfigurisani paket sa svim potrebnim aplikacijama i sredstvima koja su potrebna da bi se kontejner pokrenuo. Docker file se koristi za automatizaciju izgradnje Docker slika, što olakšava razvoj, testiranje i distribuciju aplikacija.


Docker file se obično nalazi u korenu projekta i naziva se Dockerfile. On opisuje korake potrebne za izgradnju slike, uključujući odabir bazne slike, instaliranje potrebnih paketa i konfigurisanje okruženja.


Ovo je primer Docker file-a:

FROM ubuntu:20.04


RUN apt-get update && apt-get install -y \

    python3 \

    python3-pip


COPY . /app

WORKDIR /app


RUN pip3 install -r requirements.txt


CMD ["python3", "app.py"]

Ovaj Docker file koristi baznu sliku Ubuntu 20.04, instalira Python 3 i pip, kopira sve fajlove iz trenutnog direktorijuma u kontejner u /app direktorijum, postavlja /app kao radni direktorijum i instalira zavisnosti navedene u requirements.txt fajlu. Na kraju, pokreće aplikaciju pomoću komande python3 app.py.


Da biste kreirali Docker sliku pomoću ovog Docker file-a, možete koristiti docker build komandu:

docker build -t my-image .

Ova komanda će izgraditi Docker sliku sa nazivom my-image iz Docker file-a u trenutnom direktorijumu.

docker volume komande

 Docker volume-i su način da se podaci koji se generišu i koriste od strane Docker kontenera sačuvaju. Volume-i se čuvaju u deo fajl sistema hosta koji upravlja Docker (/var/lib/docker/volumes/ na Linuxu).


Evo nekih primerova čestih Docker komandi za volume-e:


Lista volume-a

docker volume ls

Ova komanda prikazuje sve trenutno dostupne volume-e na hostu.


Kreiraj volume

docker volume create my-volume

Ova komanda kreira novi volume pod nazivom my-volume.


Proveri detalje volume-a

docker volume inspect my-volume

Ova komanda prikazuje detaljne informacije o volume-u my-volume, uključujući drajver volume-a, mountpoint i bilo koje druge relevantne metapodatke.


Ukloni volume

docker volume rm my-volume

Ova komanda uklanja volume my-volume sa hosta.


Montiraj volume u kontejner

docker run -d --name my-container -v my-volume:/app/data busybox

Ova komanda pokreće novi kontejner koristeći sliku busybox i montira volume my-volume u direktorijum /app/data u kontejneru.


Kopiraj podatke u volume

docker run --rm -v my-volume:/app/data busybox cp /src/file.txt /app/data/

Ova komanda pokreće privremeni kontejner koristeći sliku busybox, montira volume my-volume u direktorijum /app/data u kontejneru i kopira fajl /src/file.txt sa hosta u volume.


Nadam se da su ovi primeri korisni! Javite mi se ako imate bilo kakva pitanja.

Šta je docker volume?

 Docker volume je mesto za trajno skladištenje podataka koje koriste Docker kontejneri. Omogućava vam da skladistite podatke na sistemu datoteka hosta, van kontejnera, i može se koristiti za razmenu podataka između kontejnera.


Kada kreirate Docker kontejner, možete da navedete volume koji će biti priključen na kontejner. Ovaj volume može biti ili direktorijum hosta koji je bindovan kao volume, ili imenovani volume upravljan od strane Docker-a. Podaci upisani u volume se skladište na sistemu datoteka hosta i sačuvani su čak i ako se kontejner obriše.


Docker volumi su korisni za skladištenje podataka koji treba da budu sačuvani van kontejnera, kao što su dnevnici aplikacije, datoteke baze podataka ili datoteke podešavanja. Omogućavaju vam da odvojite podatke od kontejnera, što ih čini lakšim za upravljanje i rezervnu kopiju.


Možete da kreirate, listate i upravljate Docker volumima pomoću docker volume komande. Na primer, možete koristiti docker volume create komandu da biste kreirali novi volume, ili docker volume ls komandu da biste listali sve volume. Takođe možete koristiti docker volume inspect komandu da biste videli detaljne informacije o volume-u.

Docker mrežni drajveri

 Docker pruža nekoliko različitih drajvera mreže koje možete koristiti za kreiranje i upravljanje mrežama za vaše kontejnere. Dostupni drajveri mreže su:


bridge: Ovo je podrazumevani drajver mreže. Kreira imenovani prostor mreže i povezuje kontejner sa njim pomoću virtuelnog Ethernet uređaja.


host: Ovaj drajver mreže uklanja izolaciju mreže između kontejnera i hosta. Kontejner deli imenovani prostor mreže hosta i ima pristup hostovim mrežnim interfejsima i IP adresama.


overlay: Ovaj drajver mreže vam omogućava da kreirate mreže koje se protežu preko više Docker hostova. Možete koristiti ovaj drajver da kreirate prekrivajuću mrežu za Docker engine skup.


macvlan: Ovaj drajver mreže vam omogućava da na hostu kreirate virtuelni mrežni interfejs koji je direktno povezan sa fizičkim mrežnim interfejsom. Ovo pruža kontejneru jedinstvenu MAC adresu na fizičkoj mreži.


none: Ovaj drajver mreže onemogućava sve mrežne opcije za kontejner.


network:<network-name>: Ovaj drajver mreže vam omogućava da specificirate postojeću mrežu za povezivanje kontejnera.


Drajver mreže koji želite da koristite možete navesti prilikom kreiranja nove mreže korišćenjem oznake --driver sa komandom docker network create. Na primer

docker network create --driver bridge moja-mreza

Takođe možete navesti drajver mreže koji želite da koristite prilikom kreiranja novog kontejnera korišćenjem oznake --network sa komandom docker run. Na primer:

docker run --network moja-mreza --network-alias moj-alias moja-slika

docker network - rad sa mrežama na docker -u

 Evo nekoliko primera komandi za rad sa Docker mrežama:


Kreiranje nove mreže:

$ docker network create my_network

Prikaz svih dostupnih mreža:

$ docker network ls

Prikaz detalja o određenoj mreži:

$ docker network inspect my_network

Spajanje kontejnera na mrežu:

$ docker run --name my_app --network my_network my_image

Isključivanje kontejnera sa mreže:

$ docker network disconnect my_network my_app

Prikaz IP adrese kontejnera u mreži:

$ docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' my_app

Spajanje više kontejnera u istoj mreži:

$ docker run --name app1 --network my_network my_image

$ docker run --name app2 --network my_network my_image

Povezivanje mreže sa drugim kontejnerima:

$ docker run --name app3 --network my_network --network-alias alias_name my_image

Povezivanje mreže sa host mašinom:

$ docker run --name my_app --network host my_image

Brisanje mreže:

$ docker network rm my_network

To su samo neke od komandi za rad sa Docker mrežama. Ako želite da naučite više, preporučujem da pročitate dokumentaciju na zvaničnom sajtu ili da pogledate online tutorijale.

Saturday, December 24, 2022

docker exec - pokretanje komande unutar kontejnera

 Docker exec je komanda koja vam omogućava da pokrenete novu komandu u pokrenutom kontejneru. Može biti korisna za otklanjanje grešaka, izmenu okruženja kontejnera ili izvršavanje jednokratnih zadataka.


Evo primer kako možete koristiti docker exec da biste pokrenuli komandu u kontejneru:

# Pokrenite novi kontejner u pozadini

$ docker run -d --name my-container ubuntu:latest bash -c "while true; do echo hello world; sleep 1; done"


# Pokrenite komandu u pokrenutom kontejneru

$ docker exec my-container cat /etc/os-release

U gornjem primeru pokrećemo novi kontejner u pozadini sa komandom koja ispisuje "hello world" svaki sekund. Zatim koristimo docker exec da bismo pokrenuli cat komandu u pokrenutom kontejneru kako bismo prikazali sadržaj /etc/os-release datoteke.


Možete takođe koristiti docker exec da pokrenete komandu u interaktivnom shell-u, koristeći -it flag:

$ docker exec -it my-container bash

Ovo će otvoriti Bash shell unutar pokrenutog kontejnera, što vam omogućava da pokrenete komande i da se interaktivno bavite okruženjem kontejnera.


Nadam se da vam je ovo pomoglo! Javite mi se ako imate bilo kakva pitanja ili vam je potrebna dodatna objašnjenja.

docker run - pokretanje kontejnera

 Evo nekoliko primer komandi docker run koje možete koristiti:


docker run ubuntu - ovo će instalirati najnoviju verziju slike Ubuntu i pokrenuti je kao novi kontejner

docker run -it ubuntu - ovo će instalirati sliku Ubuntu i pokrenuti interaktivni terminal unutar kontejnera

docker run -p 8080:80 nginx - ovo će instalirati sliku nginx i pokrenuti je kao novi kontejner sa mapiranim portom 8080 na host računaru na port 80 unutar kontejnera

docker run -v /host/directory:/container/directory ubuntu - ovo će instalirati sliku Ubuntu i pokrenuti je kao novi kontejner sa mapiranim direktorijumom iz host računara u direktorijum unutar kontejnera

docker run --name my-container ubuntu - ovo će instalirati sliku Ubuntu i pokrenuti je kao novi kontejner sa imenom "my-container"

Ove komande su samo neki od osnovnih primera kako da koristite docker run komandu. Postoji mnogo drugih opcija i parametara koje možete dodati da biste personalizovali pokretanje kontejnera. Preporučujemo da pročitate dokumentaciju Docker-a za više informacija o tome kako da koristite docker run komandu i druge Docker komande.

docker ps - kako prikazati kontejnere?

 Da biste izlistali Docker kontejnere na vašem sistemu, možete koristiti docker ps komandu. Evo nekoliko primera upotrebe ove komande:


docker ps: Izlistajte sve pokrenute Docker kontejnere na host sistemu.

docker ps -a: Izlistajte sve Docker kontejnere na host sistemu, uključujući i zaustavljene kontejnere. -a opcija se sastoji od "all" i koristi se za prikaz svih kontejnera.

docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Image}}": Izlistajte sve pokrenute Docker kontejnere i prikažite ID kontejnera, ime i sliku u tabelarnom formatu. --format opcija vam omogućava da navedete Go šablon za formatiranje izlaza komande.

docker ps -f name=my_container: Izlistajte sve Docker kontejnere sa imenom "my_container". -f opcija se sastoji od "filter" i koristi se za filtriranje liste kontejnera.

docker ps -s: Izlistajte sve pokrenute Docker kontejnere i prikažite ukupnu veličinu njihovih datoteka i prostor koji zauzimaju na host sistemu. -s opcija se sastoji od "size" i koristi se za prikaz veličine kontejnera.

Napomena: docker ps komanda je alias za docker container ps, a oba se koriste za izlistavanje Docker kontejnera.

Portainer za jednostavno administriranje Docker-a

 Portainer je alat za upravljanje Docker containerima koji se može koristiti za pregledavanje, spremanje i upravljanje containerima na Docker hostu. Portainer se može instalirati na bilo koje okruženje koje podržava Docker, uključujući računala s operacijskim sustavima Windows, Linux i MacOS.


Portainer se može koristiti za jednostavno upravljanje Docker containerima, kao što je pokretanje, zaustavljanje i brisanje containera, te za pristup containerima preko web preglednika. Portainer također omogućuje jednostavno upravljanje Docker imageima, Docker volumeima i Docker mrežama, te omogućuje praćenje stanja containera i računalnog sustava. Portainer također ima mogućnost da se integrira s različitim mrežnim infrastrukturama i da se koristi za upravljanje containerima na različitim Docker hostovima.


Portainer se često koristi kao alternativa za Docker CLI (Command Line Interface) za upravljanje Docker containerima, što ga čini dobrom opcijom za početnike ili one koji žele jednostavniji način upravljanja Dockerom. Portainer također može biti koristan za upravljanje velikim brojem containera i za održavanje mreže containera. Portainer također ima mogućnost da se integrira s drugim alatima za upravljanje mrežom, kao što su ruteri i firewalli, što omogućuje lakše upravljanje mrežom.

Veeam Backup & Replication

 Veeam Backup & Replication je softverska rešenja za zaštitu podataka i obnovu u slučaju katastrofe koja obezbeđuje funkcije za pravljenje rezervnih kopija, obnavljanje i replikaciju za virtuelne, fizičke i cloud okruženja. On pomaže organizacijama da zaštite svoje podatke i osiguraju dostupnost svojih kritičnih sistema i aplikacija.


Evo nekih ključnih komponenti Veeam Backup & Replication-a:


Backup Server: Ovo je osnovna komponenta infrastrukture Veeam Backup & Replication-a. On upravlja svim aktivnostima zaštite podataka i obnove u slučaju katastrofe i obrađuje poslove zaštite podataka.


Backup Proxies: Ovo su serveri ili VM-ovi koji su odgovorni za transport podataka između proizvodne infrastrukture i rezervne kopije. Oni se mogu postaviti u lokalu ili u oblaku.


Backup Repositories: Ovo su lokacije za skladištenje gde Veeam Backup & Replication čuva rezervne kopije podataka, podatke za replikaciju i druge vrste podataka. Oni mogu biti sistemi za skladištenje u lokalu ili cloud-based skladištenje.


Veeam Backup & Replication Console: Ovo je grafički korisnički interfejs (GUI) koji se koristi za upravljanje i praćenje procesa zaštite podataka i obnove u slučaju katastrofe. On se može instalirati na poseban server ili na isti server kao Backup Server.


Veeam Agenti: Ovo su lagani softverski agenti koji se mogu instalirati na fizičke servere, radne stanice i instance u oblaku da bi se zaštitili podaci. Oni omogućavaju organizacijama da zaštite svoje podatke čak i ako nisu hostovani u virtuelnom okruženju.


Ukupno, Veeam Backup & Replication je moćno sredstvo koje pomaže organizacijama da zaštite i obnove svoje podatke u slučaju katastrofe ili gubitka podataka.

Softveri za backup koje vredi napomenuti

 Evo top softvera za backup u enterprise okruženju:


Acronis Cyber Backup: Ovaj softver vam omogućava da napravite punu sliku backup-a vašeg sistema, uključujući operativni sistem, aplikacije i podatke. Takođe ima opcije za inkrementalne i diferencijalne backup-ove i namenjen je za preduzeća.


Arcserve UDP: Ovaj softver vam omogućava da napravite puni, inkrementalni i diferencijalni backup, kao i da replicirate svoje podatke na drugu lokaciju. Namenjen je za preduzeća i nudi opcije za backup u oblaku.


Commvault: Ovaj softver vam omogućava da napravite puni, inkrementalni i diferencijalni backup, kao i da replicirate svoje podatke na drugu lokaciju. Namenjen je za preduzeća i nudi opcije za backup u oblaku.


Dell EMC Networker: Ovaj softver vam omogućava da napravite puni, inkrementalni i diferencijalni backup, kao i da replicirate svoje podatke na drugu lokaciju. Namenjen je za preduzeća i nudi opcije za backup u oblaku.


IBM Spectrum Protect: Ovaj softver vam omogućava da napravite puni, inkrementalni i diferencijalni backup, kao i da replicirate svoje podatke na drugu lokaciju. Namenjen je za preduzeća i nudi opcije za backup u oblaku.


Veeam Backup & Replication: Ovaj softver vam omogućava da napravite puni, inkrementalni i diferencijalni backup, kao i da replicirate svoje podatke na drugu lokaciju. Namenjen je za preduzeća i nudi opcije za backup u oblaku.


Veritas NetBackup: Ovaj softver vam omogućava da napravite puni, inkrementalni i diferencijalni backup, kao i da replicirate svoje podatke na drugu lokaciju. Namenjen je za preduzeća i nudi opcije za backup u oblaku.


Microsoft Azure Backup: Ovaj softver je cloud-based rešenje za backup koje vam omogućava da napravite backup svojih podataka na Microsoftovu Azure cloud platformu. Namenjen je za preduzeća.



Top 5 softvera za monitoring mreže

 Evo pet opcija za softver za monitoring mreže:


Nagios: Ovaj softver otvorenog koda se široko koristi za monitoring servera, mreža i infrastrukture. Može vas upozoriti na probleme i probleme sa performansama i pruža veb interfejs za pregled stanja vaše mreže.


SolarWinds Network Performance Monitor (NPM): Ovaj komercijalni softver pruža praćenje u realnom vremenu i upozorenja za mreže svih veličina. Pored toga, nudi niz mogućnosti, uključujući praćenje performansi mreže, identifikaciju i rešavanje problema i generisanje izveštaja.


PRTG Network Monitor: Ovaj komercijalni softver pruža niz mogućnosti za monitoring mreža, uključujući praćenje u realnom vremenu, upozorenja i izveštavanje. Može da prati različite uređaje, uključujući servere, prekidače i rutere, i podržava niz protokola.


Zabbix: Ovaj softver otvorenog koda je dizajniran za monitoring mreža, servera i drugih IT resursa. Pored toga, nudi praćenje u realnom vremenu, upozorenja i izveštavanje i podržava niz protokola i uređaja.


ManageEngine OpManager: Ovaj komercijalni softver pruža niz mogućnosti za monitoring mreža, uključujući praćenje u realnom vremenu, upozorenja i izveštavanje. Može da prati različite uređaje i podržava niz protokola.


Vredi napomenuti da postoji mnogo drugih opcija, a najbolji izbor za vas će zavisiti od vaših specifičnih potreba i budžeta. Može biti korisno da uradite neka istraživanja i probate nekoliko različitih rešenja da vidite koje najbolje radi za vašu organizaciju.




Šta je NoSQL?

 NoSQL (Not Only SQL) je kategorija baza podataka koje se razlikuju od relacijskih baza podataka, koje su standardna opcija za mnoge organizacije. NoSQL baze podataka se koriste za pohranjivanje velikih količina neustrukturiranih podataka, koji se ne uklapaju u tabelarni oblik relacijskih baza podataka. One također omogućavaju horizontalno skaliranje, što znači da se mogu lako proširiti na više servera kako bi se poboljšala performansa i mogućnost pristupa podacima. NoSQL baze podataka se često koriste u aplikacijama koje zahtijevaju brzu izmjenu podataka i visoku razinu dostupnosti, poput web aplikacija i aplikacija za društvene mreže. Postoje različiti tipovi NoSQL baza podataka, uključujući dokument baze podataka, graf baze podataka i ključ-vrijednost baze podataka.

Šta rade QA inženjeri?

 QA Automation Engineer je odgovoran za dizajniranje, kreiranje i održavanje automatizovanih test skriptova i okvira koji se koriste za validaciju funkcionalnosti i performansi softverskih aplikacija. Oni rade uskoro sa razvojnim inženjerima softvera, QA testerima i drugim stakeholderima kako bi se osiguralo da softver ispunjava potrebne standarde kvaliteta i funkcionalnosti.


Glavne odgovornosti QA Automation Engineera uključuju:


Razvoj i održavanje automatizovanih test skriptova i okvira koristeći programere jezike i alate kao što su Python, Java, Selenium i Appium.


Dizajniranje i implementiranje automatizovanih test strategija koje obuhvataju različite aspekte softvera, uključujući funkcionalne, performanse, sigurnost i kompatibilnost testova.


Saradnja sa razvojnim inženjerima i QA testerima da se identifikuju oblasti softvera koje mogu biti automatizovane i da se utvrdi najprikladniji alati i pristupi za to.


Otklanjanje grešaka i otklanjanje problema sa automatizovanim test skriptovima i okvirima kako bi se identifikovali i otklonili problemi.


Održavanje i ažuriranje automatizovanih test skriptova i okvira kako softver napreduje.


Izveštavanje o napretku i rezultatima automatizovanih testova projekt menadžerima i drugim stakeholderima.

Šta rade Software arhitekte?

 Software arhitekte se bave dizajniranjem i implementacijom ukupne strukture softverskog sistema. Radi sa programerima i drugim zainteresovanim stranama da definiše arhitekturu i osigura da zadovoljava potrebe projekta.


Neke od specifičnih zadataka koje software arhitekte mogu da imaju su:


Definisanje ukupne strukture softverskog sistema, uključujući komponente i njihove veze

Određivanje načina na koji će se sistem implementirati i rasporediti

Identifikovanje i rešavanje potencijalnih tehničkih rizika i problema

Saradnja sa programerima da se osigura da se arhitektura ispravno implementira

Pružanje saveta i smernica razvojnom timu po potrebi

Osiguranje da je softverska arhitektura skalabilna, održiva i proširiva

Pored ovih tehničkih zadataka, software arhitekte takođe mogu da budu uključeni u druge aspekte procesa razvoja softvera, kao što su budžetiranje i planiranje, upravljanje projektima i odnosi sa klijentima. Oni takođe mogu da budu odgovorni za ažuriranje sa novim tehnologijama i pristupima koji bi mogli da se koriste za poboljšanje arhitekture softverskog sistema.

Šta rade backend inženjeri?

 Back-end inženjeri (takođe poznati kao back-end razvojni inženjeri) su odgovorni za izgradnju i održavanje back-end sistema i infrastrukture web sajta ili aplikacije. Oni sarađuju sa front-end inženjerima i dizajnerima da bi se osiguralo da je korisnički interfejs povezan sa back-end sistemima i da funkcioniše ispravno. Neki od specifičnih zadataka koje back-end inženjeri mogu obavljati su:


Dizajniranje i implementiranje back-end sistema i API

Pisanje server-side koda u jezicima kao što su Python, Java ili PHP

Upravljanje i optimizacija baza podataka

Integracija back-end sistema sa front-end kodom i trećim stranama

Otklanjanje grešaka i rešavanje problema

Osiguravanje sigurnosti i skalabilnosti back-end sistema

Sarađivanje sa front-end razvojnim inženjerima i drugim stakeholderima

Pratite najnovije back-end tehnologije i najbolje prakse

Back-end inženjeri su važan deo tima za razvoj, jer su odgovorni za izgradnju i održavanje sistema i infrastrukture koja pokreću web sajt ili aplikaciju. Oni igraju ključnu ulogu u osiguravanju da back-end sistemi budu efikasni, pouzdani i sigurni.

Šta rade front-end inženjeri?

 Front-end inženjeri (takođe poznati kao front-end razvojni inženjeri ili web razvojni inženjeri) su odgovorni za izgradnju i održavanje korisničkog interfejsa web sajta ili aplikacije. Oni sarađuju sa dizajnerima da bi preveli vizuelne dizajne u funkcionalne, interaktivne interfejse sa kojima korisnici mogu da interaguju. Neki od specifičnih zadataka koje front-end inženjeri mogu obavljati su:


Pisanje HTML, CSS i JavaScript koda da bi implementirali vizuelne dizajne

Izgradnja odziva na promenu veličine ekrana koji funkcionišu na različitim uređajima i veličinama ekrana

Implementiranje interaktivnih elemenata, kao što su forme, dugmad i meniji

Integracija front-end koda sa back-end sistemima i API

Otklanjanje grešaka i rešavanje problema

Optimizacija performansi korisničkog interfejsa

Testiranje i otklanjanje grešaka u kodu da bi se osiguralo da nema grešaka

Sarađivanje sa dizajnerima, back-end razvojnim inženjerima i drugim stakeholderima

Pratite najnovije web razvojne tehnologije i najbolje prakse

Front-end inženjeri su važan deo tima za razvoj, jer su odgovorni za izgradnju delova web sajta ili aplikacije koje korisnici vide i sa kojima interaguju. Oni igraju ključnu ulogu u oblikovanju korisničkog iskustva i osiguravanju da je interfejs lak za korišćenje i vizuelno privlačan.

Šta rade DB administratori?

 Database administratori (DBAs) su odgovorni za ukupno upravljanje i performanse sistema baze podataka. Njihove odgovornosti mogu uključivati:


Instaliranje i konfigurisanje sistema za upravljanje bazama podataka (DBMS)

Dizajniranje i kreiranje baza podataka

Uvoz i izvoz podataka

Osiguranje integriteta i sigurnosti podataka

Kreiranje rezervnih kopija i vraćanje podataka

Monitoring i optimizaciju performansi baze podataka

Rješavanje problema i ispravljanje grešaka

Nadogradnja i popravke DBMS

Upravljanje pristupom i dozvolama korisnika

Pružanje tehničke podrške korisnicima

Pored ovih tehničkih zadataka, DBA takođe mogu biti odgovorni za planiranje i koordiniranje rada tima stručnjaka za baze podataka i za komunikaciju sa stakeholderima o statusu i performansama sistema baze podataka.

Šta rade Security inženjeri?

 Security inženjer je stručnjak za bezbednost računarskih sistema i mreža. On se bavi projektovanjem, implementacijom i održavanjem sistema i procedura za očuvanje integriteta, sigurnosti i privatnosti podataka i sistema.


Security inženjer bi se mogao baviti:


Projektovanjem i planiranjem bezbednosnih sistema, uključujući odabir i konfiguraciju opreme i softvera za bezbednost.

Implementacijom bezbednosnih sistema, uključujući instalaciju opreme i konfiguraciju softvera za bezbednost.

Održavanjem i optimizacijom bezbednosnih sistema, uključujući dijagnostiku i rešavanje problema sa opremom i softverom za bezbednost.

Primenom pravila i procedura za očuvanje sigurnosti sistema i podataka, kao što su politike lozinke i sigurnosni standardi.

Analizom i identifikacijom bezbednosnih rizika i ranjivosti u sistemima i mrežama.

Security inženjer mora da ima dobro poznavanje bezbednosnih principa i tehnologija, kao što su šifrovanje, firewalli i sigurnosne politike, i da se stalno usavršava u novim tehnologijama i alatima koji se koriste u njegovom radu. On takođe mora da ima sposobnost da razmišlja logički i da ima dobre problem-solving veštine, kako bi mogao da rešava izazove sa kojima se susreće tokom održavanja i optimizacije bezbednosnih sistema.

Šta rade mrezni inženjeri?

 Mrežni inženjer je stručnjak za projektovanje, implementaciju, održavanje i optimizaciju računarskih mreža. On može raditi u različitim okruženjima, kao što su velike korporacije, mali poslovi, škole i državne institucije, i može se baviti mrežama različitih veličina i tipova, kao što su lokalne mreže (LAN), širokopojasne mreže (WAN) i bežične mreže (WLAN).


Mrežni inženjer bi se mogao baviti:


Projektovanjem i planiranjem mreža, uključujući odabir opreme i konfiguraciju rutera i switch-eva.

Implementacijom mreža, uključujući instalaciju opreme i konfiguraciju rutera i switch-eva.

Održavanjem i optimizacijom mreža, uključujući dijagnostiku i rešavanje problema sa opremom i mrežnim servisima.

Primenom sigurnosnih mera i pravila za održavanje sigurnosti mreža.

Mrežni inženjer mora da ima dobro poznavanje mrežne opreme i protokola, kao što su TCP/IP i Ethernet, i da se stalno usavršava u novim tehnologijama i alatima koji se koriste u njegovom radu. On takođe mora da ima sposobnost da razmišlja logički i da ima dobre problem-solving veštine, kako bi mogao da rešava izazove sa kojima se susreće tokom održavanja i optimizacije mreža.

Šta rade PHP inženjeri?

 PHP inženjer ili programer je osoba koja se bavi razvojem softvera pomoću PHP programskog jezika. PHP je jezik koji se koristi za razvoj web aplikacija i sajtova, i često se koristi u kombinaciji sa HTML, CSS i JavaScript da bi se kreirao dinamički sadržaj za web stranice.


PHP inženjer bi se mogao baviti:


Razvojem web aplikacija pomoću PHP-a i drugih tehnologija za web razvoj, kao što su MySQL za baze podataka i AJAX za poboljšanje interakcije sa korisnicima.

Integracijom PHP-a sa drugim sistemima i aplikacijama, kao što su CRM sistemi ili platne gateway-ji.

Održavanjem i unapređenjem postojećih web sajtova i aplikacija napisanih u PHP-u.

Razvojem e-commerce sajtova i integracijom sa platnim sistemima.

PHP inženjer mora da ima dobro poznavanje PHP jezika i da se stalno usavršava u novim tehnologijama i alatima koji se koriste u njegovom radu. On takođe mora da ima sposobnost da razmišlja logički i da ima dobre problem-solving veštine, kako bi mogao da rešava izazove sa kojima se susreće tokom razvoja web aplikacija.

Šta rade Python inženjeri?

 Python inženjer ili programer je osoba koja se bavi razvojem softvera pomoću Python programskog jezika. Python inženjer može raditi na različitim projektima i u različitim industrijama, od web razvoja i naučne obrade podataka do automatizacije poslova i razvoja igara.


Python inženjer bi se mogao baviti:


Razvojem web aplikacija pomoću Python biblioteka i okvira, kao što su Django ili Flask.

Analizom i obradom podataka pomoću Python biblioteka za naučnu obradu podataka, kao što su NumPy, Pandas i SciPy.

Automatizacijom poslova pomoću Python skripti i biblioteka za rad sa različitim aplikacijama i sistemima.

Razvojem igara ili drugih interaktivnih aplikacija pomoću Python biblioteka za grafiku, kao što su Pygame ili Pyglet.

Python inženjer mora da ima dobro poznavanje Python jezika i da se stalno usavršava u novim tehnologijama i alatima koji se koriste u njegovom radu. On takođe mora da ima sposobnost da razmišlja logički i da ima dobre problem-solving veštine, kako bi mogao da rešava izazove sa kojima se susreće tokom razvoja softvera.

Šta je python?

 Python je programski jezik koji se koristi za razvoj softvera u različitim oblastima, kao što su web razvoj, naučna obrada podataka, automatizacija poslova i mnoga druga. To je visoko produktivan jezik sa jednostavnim sintaksom i mnogim alatima za rad sa različitim tipovima podataka i integracijom sa drugim sistemima. Python se takođe često koristi kao jezik za učenje programiranja, jer je lako razumljiv i ima bogatu zajednicu koja je spremna da pomogne novim korisnicima.

Šta je DevOps?

 DevOps je filozofija razvoja softvera koja naglašava saradnju, komunikaciju i integraciju između programera i stručnjaka za informaciono tehnologiju (IT). Njegov cilj je da okupi ljude, procese i tehnologiju kako bi se softver i usluge brže isporučile, sa višim kvalitetom i sa više pouzdanih i efikasnih operacija.


Termin "DevOps" je kombinacija reči "razvoj" i "operacije", i odražava ideju da ova dva tima treba da rade usko zajedno kako bi postigli svoje zajedničke ciljeve. DevOps prakse imaju za cilj da automatizuju i ujedine procese uključene u razvoj softvera, testiranje, raspoređivanje i rad sa softverom, kako bi se ubrzala isporuka, smanjile greške i poboljšao ukupni kvalitet softvera.


DevOps prakse uključuju niz alata, tehnika i praksi, poput kontinuirane integracije, kontinuiranog isporučivanja i infrastrukture kao koda, koje omogućavaju organizacijama da razvijaju, testiraju, raspoređuju i rad sa softverom efikasnije i efektivnije. Ove prakse su dizajnirane da omoguće organizacijama da brzo i efikasno odgovore na promene potreba poslovanja i zahteva kupaca i da kontinuirano poboljšavaju svoj softver i usluge.

Šta je PHP?

 PHP (Hipertekst Preprocesor) je programski jezik koji se široko koristi za razvoj veb sajtova. To je server-side jezik, što znači da se izvršava na serveru i da se rezultujući HTML šalje klijentskom veb pretraživaču. PHP se koristi za kreiranje dinamičnih veb sajtova koji mogu da razgovaraju sa bazama podataka i da obavljaju zadatke kao što su skladištenje i čitanje podataka iz baze podataka, obrada podataka iz formulara i generisanje sadržaja u toku rada. PHP se često koristi uz MySQL sistem za upravljanje bazama podataka i Apache veb server. On je popularan izbor za razvoj veb sajtova zbog svoje jednostavnosti i fleksibilnosti.

Šta je MariaDB?

 MariaDB je relacioni baza podataka koja je dizajnirana da bude kompatibilna sa MySQL-om, što znači da može da se koristi za skoro sve što se može raditi sa MySQL-om. MariaDB je nastala kao fork MySQL-a, što znači da je razvijena od MySQL-a i sada se razvija kao nezavisni projekat.


MariaDB se često koristi uz Apache HTTP Server i PHP za izradu veb aplikacija. Ona takođe može da se koristi za skladištenje podataka u drugim aplikacijama, kao što su CRM (Customer Relationship Management) sistemi i e-trgovinske platforme.


Ukoliko imate Linux sistem, možete instalirati MariaDB tako što ćete koristiti naredbu "apt-get install mariadb-server" u terminalu. Nakon instalacije, možete pokrenuti MariaDB pomoću naredbe "service mariadb start". Možete pristupiti konzoli MariaDB-a koristeći naredbu "mysql -u root -p", nakon čega ćete biti zatraženi da unesete lozinku za root korisnika.

Šta je httpd?

 Httpd je skraćenica za Apache HTTP Server. To je softverski proizvod koji se koristi za razvoj i održavanje veb servera. Httpd je jedan od najčešće korišćenih veb servera na svetu, i podržava mnoge operativne sisteme, uključujući Linux, Unix, Windows i MacOS.


Httpd omogućava da se veb stranice i aplikacije razvijene u različitim programskim jezicima (kao što su PHP, Perl, Python, Ruby itd.) pokreću na veb serveru i pristupe se putem veb pregledača. Httpd takođe omogućava da se podešavaju različiti aspekti rada veb servera, kao što su bezbednost, performanse i drugi.


Ukoliko imate Linux sistem, možete instalirati Apache HTTP Server tako što ćete koristiti naredbu "apt-get install apache2" u terminalu. Nakon instalacije, možete pokrenuti Apache HTTP Server pomoću naredbe "service apache2 start".

Linux firewall-cmd komanda

 Podešavanje osnovnog pravila za blokiranje svega:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" drop'

Dozvoljavanje pristupa HTTP servisu:

firewall-cmd --permanent --add-service=http

Dozvoljavanje pristupa HTTPS servisu:

firewall-cmd --permanent --add-service=https

Dozvoljavanje pristupa SSH servisu:

firewall-cmd --permanent --add-service=ssh

Dozvoljavanje pristupa MySQL servisu:

firewall-cmd --permanent --add-service=mysql

Dozvoljavanje pristupa određenoj IP adresi:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.1" accept'

Dozvoljavanje pristupa određenoj mreži:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" accept'

Dozvoljavanje pristupa određenom portu:

firewall-cmd --permanent --add-port=8080/tcp

Blokiranje pristupa određenoj IP adresi:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="10.0.0.1" drop'

Blokiranje pristupa određenom portu:

firewall-cmd --permanent --remove-port=8080/tcp

Lista svih dozvoljenih servisa:

firewall-cmd --permanent --list-services

Lista svih dozvoljenih portova:

firewall-cmd --permanent --list-ports

Lista svih dozvoljenih mreža:

firewall-cmd --permanent --list-rich-rules

Uklanjanje servisa iz liste dozvoljenih:

firewall-cmd --permanent --remove-service=http

Uklanjanje porta iz liste dozvoljenih:

firewall-cmd --permanent --remove-port=8080/tcp

Linux firewall

 Linux firewall je softverska komponenta koja se koristi za kontrolu pristupa mreži i zaštitu računara od neželjenih ili štetnih ulaznih povezivanja. On može da radi na različitim nivoima mreže, uključujući pristup internetu, konekcije između računara u lokalnoj mreži ili konekcije između različitih mreža.


Linux firewall se obično implementira kao deo operativnog sistema i koristi se za filtriranje paketa podataka koji se šalju i primaju na računaru. On može da se konfiguriše da dozvoli ili blokira određene vrste paketa ili da dozvoli ili blokira pristup određenim mrežnim servisima ili protokolima. Linux firewall se takođe može konfigurisati da dozvoli ili blokira pristup određenim IP adresama ili mrežama.


Postoje različiti alati i komande koji se koriste za upravljanje Linux firewall-om, u zavisnosti od korišćenog operativnog sistema i verzije firewall-a. Neki od najčešće korišćenih alata su iptables, firewalld i nftables. Ovi alati omogućavaju korisniku da kreira pravila za filtriranje paketa i konfiguriše firewall da dozvoli ili blokira određene vrste povezivanja.


Linux firewall je važna komponenta za zaštitu računara od neželjenih povezivanja i za kontrolu pristupa mreži. On pomaže da se spreče neautorizovani pristupi i da se smanje rizici od sigurnosnih propusta i napada na računar.

Linux systemctl komanda

Evo nekoliko primeri korišćenja systemctl komande na Linux sistemima:


systemctl start apache2 - pokreće Apache web server

systemctl stop apache2 - zaustavlja Apache web server

systemctl restart apache2 - ponovo pokreće Apache web server

systemctl reload apache2 - učitava nove konfiguracijske opcije bez zaustavljanja Apache web servera

systemctl status apache2 - prikazuje status Apache web servera

systemctl enable apache2 - postavlja Apache web server da se pokreće automatski prilikom pokretanja sistema

systemctl disable apache2 - postavlja Apache web server da se ne pokreće automatski prilikom pokretanja sistema

systemctl is-enabled apache2 - proverava da li je Apache web server podešen da se pokreće automatski prilikom pokretanja sistema

systemctl list-units - prikazuje spisak svih jedinica (servisa, tj. procesa) koje upravlja systemd

systemctl list-unit-files - prikazuje spisak svih jedinica (servisa) koje su podešene za pokretanje na sistemu

systemctl list-dependencies apache2 - prikazuje spisak svih zavisnosti za Apache web server

systemctl show apache2 - prikazuje detaljne informacije o Apache web serveru, uključujući konfiguracijske opcije i zavisnosti

systemctl cat apache2 - prikazuje sadržaj konfiguracijskog fajla za Apache web server

systemctl set-property apache2 TasksMax=512 - postavlja maksimalni broj niti za Apache web server na 512

systemctl kill apache2 - ubija proces Apache web servera

systemctl isolate multi-user.target - postavlja sistem u multi-user mod, tj. u modu u kojem se mogu koristiti više korisničkih naloga

systemctl list-jobs - prikazuje spisak poslova koji su u toku ili na čekanju

systemctl reset-failed - resetuje sve servise koji su završili sa neuspehom

systemctl list-sockets - prikazuje spisak svih soketa (veze između procesa) koje upravlja systemd

Linux komande za rad sa logovima

 Na Linux sistemima postoji više komandi za prikazivanje logova. Neke od najčešće korišćenih su:


tail - prikazuje poslednjih nekoliko linija log fajla. Koristi se najčešće sa -f opcijom koja omogućava da se log fajl prati u realnom vremenu.

Primer: tail -f /var/log/syslog


grep - pretražuje log fajlove za određenim ključnim rečima ili izrazima i prikazuje linije koje sadrže te reči ili izraze.

Primer: grep "error" /var/log/syslog


less - omogućava da se log fajl čita iz komandne linije, sa mogućnošću navigacije po fajlu korišćenjem tastera na tastaturi.

Primer: less /var/log/syslog


cat - prikazuje sadržaj log fajla u konzoli.

Primer: cat /var/log/syslog


zgrep - slično kao grep, ali se koristi za pretraživanje log fajlova koji su komprimirani pomoću gzip.

Primer: zgrep "error" /var/log/syslog.gz


Ove su samo neke od komandi koje se mogu koristiti za prikazivanje logova na Linux sistemima. Postoji mnogo drugih komandi i alata koji mogu biti korisni u ovom kontekstu, u zavisnosti od vaših potreba i ciljeva.

Gde su logovi na linux sistemu?

 Logovi su fajlovi koji se koriste za beleženje rada operativnog sistema, aplikacija i drugih komponenti u računaru. U Linuxu, postoji mnogo različitih logova koji se nalaze u različitim direktorijumima i imaju različite namene.


Evo nekoliko primer logova u Linuxu:


/var/log/syslog: Ovaj log sadrži sistemske poruke, uključujući greške, upozorenja i informacije o radu.


/var/log/auth.log: Ovaj log sadrži informacije o autentifikaciji i autorizaciji korisnika i procesa.


/var/log/cron: Ovaj log sadrži informacije o radu cron servisa, koji se koristi za pokretanje zakazanih zadataka.


/var/log/kern.log: Ovaj log sadrži informacije o radu jezgra operativnog sistema, uključujući greške i upozorenja.


/var/log/messages: Ovaj log sadrži razne sistemske poruke, uključujući greške, upozorenja i informacije o radu.


Ovi su samo neki od mnogih logova koji se mogu nalaziti u Linuxu. Molim vas da mi kažete ako imate više pitanja ili ako vam je potrebna dodatna pomoć.

Linux komande za rad sa fajlovima

 Evo nekoliko korisnih Linux komandi za rad sa fajlovima:


ls - Prikazuje spisak fajlova i direktorijuma u trenutnom direktorijumu.


cd - Menja trenutni direktorijum. Na primer, cd /home/korisnik/dokumenti će promeniti trenutni direktorijum u direktorijum "dokumenti" u home direktorijumu korisnika.


cp - Kopira fajlove i direktorijume. Na primer, cp fajl1.txt fajl2.txt će kopirati fajl "fajl1.txt" u novi fajl "fajl2.txt".


mv - Premešta fajlove i direktorijume. Na primer, mv fajl1.txt /home/korisnik/dokumenti će premeštati fajl "fajl1.txt" u direktorijum "dokumenti".


rm - Briše fajlove. Na primer, rm fajl1.txt će obrisati fajl "fajl1.txt".


mkdir - Kreira novi direktorijum. Na primer, mkdir novi_direktorijum će kreirati novi prazni direktorijum pod nazivom "novi_direktorijum".


rmdir - Briše prazne direktorijume. Na primer, rmdir novi_direktorijum će obrisati direktorijum "novi_direktorijum" ako je prazan.


Ove su samo neke od osnovnih Linux komandi za rad sa fajlovima. Postoji mnogo drugih komandi koje možete koristiti za rad sa fajlovima u Linuxu, pa je dobra ideja da se upoznate sa više od njih kako biste bili u mogućnosti da efikasnije radite sa fajlovima u svom sistemu.

Linux tipovi file sistema

 U Linuxu postoji mnogo različitih tipova file sistema (eng. file systems). Evo nekoliko najčešće korišćenih:


ext2: Ovo je jedan od najstarijih datotečnih sistema u Linuxu. On se često koristi za skladištenje podataka na spoljnim uređajima, kao što su USB stickovi i drugi spoljni tvrdi diskovi.


ext3: Ovo je nadogradnja datotečnog sistema ext2 i sadrži sve njegove osobine, plus neke dodatne mogućnosti, kao što je podrška za "journaling" (eng. journaling). Journaling pomaže u sprečavanju gubitka podataka u slučaju neočekivane prekide rada sistema.


ext4: Ovo je najnoviji u nizu datotečnih sistema ext i sadrži sve mogućnosti ext2 i ext3, te neke dodatne poboljšanja, kao što je veća veličina pojedinačne datoteke i veća veličina particije.


XFS: Ovo je datotečni sistem koji se često koristi u velikim okruženjima sa visokim opterećenjem, jer se odlikuje dobrom performansom i podrškom za velike particije.


Btrfs: Ovo je datotečni sistem koji se razvija od strane projekta Linuxa i sadrži mnoge napredne mogućnosti, kao što su podrška za RAID, kompresija podataka i "copy-on-write" (eng. copy-on-write).


Ovi su samo neki od najčešće korišćenih datotečnih sistema u Linuxu. Postoji mnogo drugih datotečnih sistema koji se mogu koristiti u različitim situacijama, u zavisnosti od vaših potreba.

Linux pokretanja operativnog sistema

 Proces pokretanja operativnog sistema (eng. "boot process") je postupak koji se odvija prilikom pokretanja računara i koji omogućava da se operativni sistem (OS) učita u radnu memoriju i postane dostupan za korišćenje.


Evo kako izgleda proces pokretanja operativnog sistema u Linuxu:


BIOS ili UEFI (Unified Extensible Firmware Interface) se pokreće prilikom paljenja računara i obavlja osnovne provjere hardvera.


BIOS ili UEFI locira boot sektor sa boot loader-om (na primer, GRUB - Grand Unified Bootloader) na disku i pokreće ga.


Boot loader učitava kernel operativnog sistema u radnu memoriju i pokreće ga.


Kernel pokreće sistemske servise i aplikacije potrebne za rad operativnog sistema (na primer, init sistem, servis za upravljanje fajlovima itd.).


Korisnički interfejs se učitava i omogućava korisniku da pristupi sistemu.


Ovaj je proces pokretanja operativnog sistema u Linuxu samo opšti pregled. Postoji mnogo detalja i varijanti u zavisnosti od konkretnog sistema i konfiguracije.

20 komandi za monitoring linux servera

 Evo spiska od 20 komandi za monitoring servera u operativnom sistemu Linux:


top - prikazuje listu procesa i njihove performanse u realnom vremenu.

htop - slična komandi top, ali sa boljim interfejsom i više informacija o procesima.

ps - prikazuje listu trenutno pokrenutih procesa.

free - prikazuje korišćenje memorije i swap prostora u sistemu.

df - prikazuje korišćenje disk prostora na sistemu.

iostat - prikazuje statistike o upotrebi diska i performansama diska.

vmstat - prikazuje statistike o performansama virtualne mašine, uključujući korišćenje memorije, CPU i I/O operacije.

uptime - prikazuje koliko je sistem u pogonu i koliko je prosječno opterećenje CPU-a tokom tog vremena.

sar - prikazuje statistike o performansama sistema u određenom vremenskom periodu.

pidstat - prikazuje statistike o performansama pojedinačnih procesa.

netstat - prikazuje informacije o mrežnim vezama i statistike o protokolu.

ifconfig - prikazuje informacije o mrežnim interfejsima i konfiguraciji.

tcpdump - analizira i prikazuje podatke sa mreže.

nmap - skenira mrežu i prikazuje informacije o dostupnim servisima i hostovima.

traceroute - prikazuje putanju paketa do određenog hosta.

dig - vrši DNS lookup i prikazuje rezultate.

iwconfig - prikazuje informacije o bežičnim interfejsima i konfiguraciji.

iwlist - prikazuje detaljnije informacije o bežičnim interfejsima.

dmesg - prikazuje poruke iz kernel ring buffer-a, uključujući greške i upozorenja.

syslog - prikazuje sistemske dnevničke poruke.

Ove su samo neke od mnogih komandi za monitoring sistema u Linuxu. Svaka od ovih komandi ima mnoštvo opcija i parametara.

Linux /proc direktorijum

 Linux proc direktorijum je virtualni file sistem koji se koristi za prikaz informacija o radu sistema i procesima. Proc direktorijum se ne nalazi fizički na disku, već se dinamički generiše kada se pristupi njemu. To znači da se informacije u proc direktorijumu menjaju tokom vremena i da su uvek aktuelne.


Proc direktorijum sadrži mnoge pod-direktorijume i datoteke koje prikazuju različite informacije o radu sistema. Neki od ovih direktorijuma su:


/proc/cpuinfo - prikazuje informacije o procesoru sistema

/proc/meminfo - prikazuje informacije o korišćenju memorije sistema

/proc/uptime - prikazuje koliko vremena je sistem aktivan

/proc/version - prikazuje informacije o verziji jezgra (kernel) sistema

/proc/stat - prikazuje statistike o radu sistema

/proc/loadavg - prikazuje prosečno opterećenje sistema

Proc direktorijum takođe sadrži pod-direktorijume sa imenima koji odgovaraju PID-ovima (Process ID) procesa u sistemu. Svaki od ovih direktorijuma sadrži informacije o određenom procesu, kao što su komande koje su pokrenute, informacije o učitavanju CPU-a i memorije itd.


Proc direktorijum je korisno mesto za dobijanje informacija o radu sistema i procesa, a njegov sadržaj se može pregledati pomoću komande cat ili less. Primer: cat /proc/cpuinfo će prikazati informacije o procesoru sistema.

Linux direktorijumi

 Direktorijumi na Linux-u služe za skladištenje određenih vrsta datoteka. Neki od ovih direktorijuma su:


/bin - sadrži binarne datoteke koje su dostupne svima korisnicima sistema

/boot - sadrži datoteke potrebne za pokretanje sistema

/dev - sadrži datoteke koje predstavljaju uređaje u sistemu

/etc - sadrži konfiguracione datoteke i skripte za sistem

/home - sadrži home direktorijume za korisnike sistema

/lib - sadrži biblioteke potrebne za rad sistema

/media - sadrži datoteke povezane sa vanjskim uređajima (npr. USB driveovi)

/mnt - koristi se za montiranje vanjskih file sistema

/opt - sadrži opciono instalirane aplikacije

/root - je home direktorijum za root korisnika

/sbin - sadrži sistemske binarne datoteke

/tmp - sadrži privremene datoteke

/usr - sadrži programsku podršku za korisničke aplikacije

/var - sadrži varijabilne datoteke (npr. logovi)

Ovo su samo neke od direktorijuma u Linux file sistemu

20 Docker komandi koje se najčešće koriste

 Evo 20 Docker komandi i kratkog opisa kako se koriste:


docker run: pokreće Docker kontejner na osnovu datog slike.

docker start: pokreće već pokrenuti kontejner.

docker stop: zaustavlja pokrenuti kontejner.

docker rm: briše kontejner.

docker rmi: briše Docker sliku.

docker build: kreira Docker sliku na osnovu Dockerfile.

docker pull: preuzima Docker sliku sa Docker Hub-a.

docker push: šalje Docker sliku na Docker Hub.

docker exec: pokreće novi proces u već pokrenutom kontejneru.

docker login: loguje se na Docker Hub.

docker logout: odjavljuje se sa Docker Hub-a.

docker ps: prikazuje spisak pokrenutih kontejnera.

docker images: prikazuje spisak Docker slika.

docker inspect: prikazuje detaljne informacije o kontejneru ili slici.

docker network: upravlja mrežnim objektima u Docker-u.

docker system: upravlja sistemskim resursima u Docker-u.

docker volume: upravlja Docker volumima.

docker pause: privremeno zaustavlja rad svih procesa u kontejneru.

docker unpause: nastavlja rad procesa u kontejneru nakon što je bio privremeno zaustavljen pomoću pause komande.

docker cp: kopira datoteke ili direktorijume između host sistema i kontejnera.

Svaka od ovih komandi ima dodatne opcije i parametre koji mogu da se koriste za preciznije podešavanje rada i funkcionisanja.

Kako da instaliram docker na Linux-u?

 Da biste instalirali Docker na Linux, prvo treba da se uverite da imate pristup internetu i da ste ulogovani kao korisnik sa sudo privilegijama. Zatim, sledite ovaj korak po korak vodič:


Upotrebite sledeću naredbu da biste ažurirali listu paketa na vašem sistemu:

sudo apt-get update

Instalirajte potrebne pakete da biste koristili HTTPS protokol za preuzimanje paketa iz repozitorija Docker:

sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

Dodajte GPG ključ za Docker repozitorijum:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Dodajte Docker repozitorijum u sistemsku listu izvora paketa:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

Ponovo ažurirajte listu paketa:

sudo apt-get update

Instalirajte Docker:

sudo apt-get install docker-ce docker-ce-cli containerd.io

Pokrenite Docker daemon:

sudo systemctl start docker

Proverite da li je Docker instaliran i da li je pravilno pokrenut pomoću sledeće naredbe:

sudo docker run hello-world

Ako sve radi kako treba, trebali biste da dobijete poruku koja potvrđuje da je Docker uspešno instaliran i pokrenut.


Napomena: Ove naredbe su namenjene za Ubuntu, ali postoje slične naredbe za druge distributivne verzije Linux-a.

Šta je docker?

 Docker je softverski alat koji omogućava lakše pakovanje, distribuciju i upravljanje aplikacijama u okviru kontejnera. Kontejneri su virtualizovani okruženja koja mogu da sadrže aplikaciju i sve njene zavisnosti, tako da se aplikacija može pokrenuti bilo gde bez obzira na okruženje u kojem se nalazi. To znači da se aplikacije koje su pakovane u kontejnere mogu lako pokretati na različitim operativnim sistemima i u različitim infrastrukturnim okruženjima, bez obzira na to da li se radi o fizičkim računarima, virtuelnim mašinama ili u oblaku. Docker je veoma popularan zbog svoje jednostavnosti i fleksibilnosti, te se često koristi u razvoju, testiranju i održavanju aplikacija.

Šta su driver-i?

 Driver ili drajver je poseban softverski program koji omogućava operativnom sistemu da komunicira sa određenim hardverskim uređajem. Driver-i su neophodni za rad mnogih uređaja, kao što su štampači, miševi, tastature, hard diskovi, grafičke kartice i mnogi drugi.


Driver-i su specifični za određene vrste uređaja i operativne sisteme, pa je važno da instalirate odgovarajući driver za svaki uređaj koji želite da koristite na vašem računaru. Driver-i se obično dobijaju sa uređajem ili se mogu preuzeti sa sajta proizvođača ili sa sajta operativnog sistema.


Driver-i se obično instaliraju tako što se pokrenu instalacioni program ili se ručno dodaju u Device Manager u operativnom sistemu. Nakon što se driver instalira, operativni sistem će biti u mogućnosti da koristi odgovarajući uređaj. Ako driver nije instaliran ili je pogrešno instaliran, uređaj možda neće raditi kako treba ili uopšte neće raditi.

Windows server role

 Windows Server 2019 ima mnoštvo različitih uloga koje se mogu instalirati i konfigurisati. Neki od glavnih uloga su:


Active Directory Domain Services: Omogućava vam da kreirate i konfigurišete Active Directory domen, što vam omogućava da upravljate korisnicima, grupama i resursima na mreži.


DHCP Server: Omogućava vam da automatski dodeljujete IP adrese i druge mrežne postavke klijentima u mreži.


DNS Server: Omogućava vam da konfigurišete mrežne DNS zone i da upravljate DNS imenima računara na mreži.


File and Storage Services: Omogućava vam da konfigurišete mrežne fajlove i skladištenje, kao i da upravljate mrežnim fajlovima i datotekama.


Hyper-V: Omogućava vam da kreirate i upravljate virtuelnim računarima na vašem fizičkom računaru.


Remote Access: Omogućava vam da konfigurišete mrežne VPN veze i da omogućite daljinsko pristupanje mreži preko Interneta.


Ovo su samo neke od uloga koje se mogu instalirati na Windows Server 2019. Ima mnogo drugih uloga koje se mogu instalirati i konfigurisati, u zavisnosti od potreba vaše mreže.

Kako da instaliram DHCP na Windows serveru?

 Da biste instalirali DHCP na Windows Serveru, prvo trebate otvoriti "Server Manager" i odabrati "Add roles and features" (Dodaj uloge i značajke). Na sljedećem ekranu, odaberite "Role-based or feature-based installation" (Instalacija na temelju uloga ili značajki) i kliknite "Next" (Sljedeće).


Sljedeći korak je odabir uloge koja će se instalirati. Potražite "DHCP Server" u popisu uloga i označite ga. Možda ćete također željeti odabrati i "Remote Access" (Udaljeni pristup) ako želite da vaš server bude dostupan sa mreže. Kliknite "Next" kada budete spremni.


Na sljedećem ekranu možete odabrati značajke koje želite instalirati s DHCP Serverom. Ako ne znate koje značajke trebate, možete ostaviti zadane postavke i kliknuti "Next" (Sljedeće).


Na sljedećem ekranu će se prikazati pregled uloga i značajki koje će se instalirati. Ako se sve čini u redu, kliknite "Install" (Instaliraj) da započnete instalaciju.


Nakon instalacije, možda ćete morati pokrenuti neke dodatne konfiguracije da biste podesili DHCP Server prema vašim potrebama. To uključuje određivanje opsega adresa koje će biti dodijeljene klijentima i podešavanje drugih postavki. Za više informacija o tome kako podesiti DHCP Server, možete pogledati Microsoftove dokumente ili se posavjetovati s administratorom mreže.

Friday, December 23, 2022

Kako da kreiram grupnu polisu na ADu?

 Da biste kreirali grupnu politiku na Active Directory (AD), prvo morate imati pristup AD serveru i imati odgovarajuće ovlašćenja. Sljedeći koraci mogu vam pomoći da kreirate grupnu politiku na AD:


Otvorite "MMC" (Microsoft Management Console) na računaru sa AD serverom.


Izaberite "File" i zatim "Add/Remove Snap-in".


Iz liste snap-in-ova, izaberite "Group Policy Management" i kliknite "Add".


Izaberite naziv domena u kojem želite da kreirate grupnu politiku i kliknite "OK".


U "Group Policy Management" prozoru, izaberite "Group Policy Objects" u lijevom oknu.


Desnim klikom na "Group Policy Objects" i izaberite "New".


Unesite naziv nove grupne politike i kliknite "OK".


Desnim klikom na novu grupnu politiku i izaberite "Edit". Otvoriće se "Group Policy Management Editor" prozor.


U lijevom oknu "Group Policy Management Editor" prozora, izaberite željenu kategoriju podešavanja (npr. "Computer Configuration" ili "User Configuration").


U desnom oknu, izaberite "Policies" i pronađite željena podešavanja. Desnim klikom na podešavanje i izaberite "Properties" da biste podesili vrijednosti.


Kada završite sa podešavanjima, kliknite "OK" da biste zatvorili "Properties" prozor.


Kliknite "File" i zatim "Save" da biste sačuvali izmjene u grupnoj politici.


Napomena: Ovaj postupak je općenit i može se razlikovati u zavisnosti od verzije operativnog sistema i verzije AD-a koju koristite.

NAT Gateway

  NAT Gateway je potpuno upravljani AWS servis koji omogućava instancama u privatnim subnetima u Amazon VPC -u da uspostave izlazne veze ka...