CodeGym /Kurslar /Docker SELF /Overlay şəbəkəsinin öyrənilməsi

Overlay şəbəkəsinin öyrənilməsi

Docker SELF
Səviyyə , Dərs
Mövcuddur

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:

  1. 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.
  2. İzolyasiya: Müxtəlif tətbiqlər üçün izolyasiya olunmuş şəbəkə mühitləri yaratmağa imkan verir.
  3. 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.

Terminal


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:

Terminal

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:

Terminal


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

Terminal


docker service create --name webserver --network my_overlay_network -p 8080:80 nginx 

2-ci addım: Verilənlər bazası servisini yaratmaq

Terminal

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:

Terminal


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:

Terminal

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

Yaml

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ı:

Terminal

        
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:

  1. Şə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.
  2. 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.
  3. 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.
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION