Overlay şəbəkəsinin öyrənilməsi overlay
Overlay
şəbəkəsi — bu, müxtəlif hostlarda işləyən konteynerlərin bir-biri ilə ünsiyyət qurmasına imkan verən paylanmış Docker şəbəkəsidir. Bu, adətən Docker Swarm və ya Kubernetes kimi konteynerlərin orkestrasiyası kontekstində, müxtəlif nodlarda işləyən konteynerlər arasında əlaqəni təmin etmək üçün istifadə olunur. Bu mühazirədə biz overlay şəbəkəsinin necə yaradılacağını və istifadə olunacağını, eləcə də onun tətbiq nümunələrini nəzərdən keçirəcəyik.
Overlay
şəbəkəsi mövcud şəbəkələrin üzərində virtual bir paylanmış şəbəkə yaradaraq bir neçə hostu vahid bir şəbəkə mühitinə birləşdirir. Bu, konteynerlərə hostların fiziki yerləşməsindən asılı olmayaraq, bir yerli şəbəkədəymiş kimi bir-biri ilə ünsiyyət qurmağa imkan verir.
Overlay
şəbəkəsinin istifadəsinin üstünlükləri:
- Müxtəlif hostlardakı konteynerlər arasında əlaqə: Müxtəlif nodlarda işə salınmış konteynerlər arasında şəbəkə əlaqəsini təmin edir.
- İzolyasiya: Müxtəlif tətbiqlər üçün izolyasiya olunmuş şəbəkə mühitləri yaratmağa imkan verir.
- Miqyaslanma: Node-ların dinamik şəkildə əlavə edilməsi və ya silinməsini iş rejimində fasiləsiz dəstəkləyir.
7.2 overlay
şəbəkəsinin yaradılması
overlay
şəbəkəsi yaratmaq üçün əvvəlcə Docker Swarm
klasterini inicializasiya etmək lazımdır. Bu, idarəçi düyünü (menecer) yaradacaq və paylanmış şəbəkələr yaratmağa imkan verəcək.
1-ci Addım: Docker Swarm
inicializasiyası
Klasterin menecer düyünü olacaq hostda əmri işə salın. Bu əmr Swarm
klasterini inicializasiya edəcək və digər düyünlərin klasterə qoşulması üçün əmr göstərəcək.
docker swarm init
2-ci Addım: İşçi düyünlərin klasterə qoşulması
Digər hostlarda docker swarm init
tərəfindən göstərilən əmri icra edin, onları klasterə qoşmaq üçün. Əmr nümunəsi:
docker swarm join --token <SWARM_TOKEN> <MANAGER_IP>:2377
3-cü Addım: overlay
şəbəkəsinin yaradılması
Klasteri inicializasiya etdikdən sonra overlay şəbəkəsini yaradın:
docker network create -d overlay my_overlay_network
7.3 overlay
şəbəkəsindən istifadə
Artıq şəbəkə yaradıldığına görə, siz konteynerlər və servisləri bu şəbəkəyə qoşa bilərsiniz.
Overlay şəbəkəsinin servislər üçün istifadəsi misalı
Docker Swarm
-da konteynerləri idarə etmək üçün servislərdən istifadə etmək olar. Gəlin overlay şəbəkəsinə qoşulacaq bir neçə servis yaradaq.
1-ci addım: Veb-server servisini yaratmaq
docker service create --name webserver --network my_overlay_network -p 8080:80 nginx
2-ci addım: Verilənlər bazası servisini yaratmaq
docker service create --name database --network my_overlay_network -e
POSTGRES_PASSWORD=mysecretpassword postgres
3-cü addım: Servislər arasında əlaqəni yoxlamaq
Servislər arasında əlaqəni yoxlamaq üçün konteyner işə salın:
docker run -it --network my_overlay_network busybox
Konteynerin içərisində ping
komandasından istifadə edərək veb-server və verilənlər bazası ilə əlaqəni yoxlayın:
ping webserver
ping database
Əgər sazlama düzgün həyata keçirilibsə, konteynerlər host adları ilə məlumat mübadiləsi edə biləcəklər.
7.4 overlay
şəbəkəsindən istifadə nümunələri Docker Compose
Docker Compose
çox konteynerli tətbiqləri və şəbəkələri idarə etməyi sadələşdirir. Siz overlay şəbəkəsini təyin edə və onu docker-compose.yml
faylında konteynerlər arasında əlaqə üçün istifadə edə bilərsiniz.
docker-compose.yml
fayl nümunəsi
version: '3.8'
services:
web:
image: nginx:latest
ports:
- "8080:80"
networks:
- my_overlay_network
db:
image: postgres:latest
environment:
POSTGRES_PASSWORD: mysecretpassword
networks:
- my_overlay_network
networks:
my_overlay_network:
driver: overlay
Docker Compose
-in işə salınması:
docker stack deploy -c docker-compose.yml mystack
Bu komanda docker-compose.yml
faylından istifadə edərək stack-i yerləşdirəcək və my_overlay_network
şəbəkəsinə qoşulmuş servisləri yaradacaq.
Praktiki tövsiyələr:
- Şəbəkəyə nəzarət: Şəbəkənin vəziyyətinə və konteynerlər arasında qarşılıqlı əlaqəyə nəzarət etmək üçün Docker Swarm monitorinq alətlərindən, məsələn, Docker Dashboard və ya Prometheus-dan istifadə edin.
- Massivliyin idarəsi: Overlay şəbəkəsi dinamik olaraq nod-ların əlavə olunmasını və ya silinməsini dəstəkləyir. Tətbiqlərin massivliyini təmin etmək üçün şəbəkə resurslarının düzgün tənzimlənməsi vacibdir.
- Konfiqurasiya ehtiyatı: Şəbəkə və stack konfiqurasiyalarını müntəzəm olaraq saxlayın ki, nasazlıqlar olduqda sürətli bərpa mümkün olsun.
GO TO FULL VERSION