Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Salam, mənim adım Kostya Kramlich, mən Yandex.Cloud-da Virtual Şəxsi Bulud bölməsinin aparıcı tərtibatçısıyam. Mən virtual şəbəkə üzərində işləyirəm və təxmin etdiyiniz kimi, bu yazıda ümumiyyətlə Virtual Private Cloud (VPC) cihazı və xüsusən də virtual şəbəkə haqqında danışacağam. Siz həmçinin öyrənəcəksiniz ki, biz, xidmət tərtibatçıları, istifadəçilərimizin rəylərinə niyə dəyər veririk. Ancaq ilk şeylər.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

VPC nədir?

Hal-hazırda xidmətlərin yerləşdirilməsi üçün müxtəlif variantlar var. Əminəm ki, kimsə hələ də administrator masasının altında server saxlayır, baxmayaraq ki, ümid edirəm ki, bu cür hekayələr getdikcə daha az yayılır.

İndi xidmətlər ictimai buludlara keçməyə çalışır və burada VPC-lərlə qarşılaşırlar. VPC istifadəçini, infrastrukturu, platformanı və digər imkanları harada olursa olsun, Buludumuzda və ya ondan kənarda birləşdirən ictimai buludun bir hissəsidir. Eyni zamanda, VPC bu imkanları lazımsız yerə İnternetə məruz qoymamağa imkan verir; onlar təcrid olunmuş şəbəkənizdə qalırlar.

Virtual şəbəkə kənardan necə görünür

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

VPC dedikdə, ilk növbədə VPNaaS, NATaas, LBaas və s. kimi üst-üstə düşən şəbəkə və şəbəkə xidmətlərini nəzərdə tuturuq. Və bütün bunlar artıq müzakirə olunmuş xətaya dözümlü şəbəkə infrastrukturunun üzərində işləyir. əla məqalə burada Habré-də.

Virtual şəbəkəyə və onun strukturuna daha yaxından nəzər salaq.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Gəlin iki əlçatanlıq zonasına baxaq. Biz VPC adlandırdığımız virtual şəbəkə təqdim edirik. Əslində, bu, "boz" ünvanlarınızın unikallığını müəyyənləşdirir. Hər bir virtual şəbəkə daxilində hesablama resurslarına təyin edə biləcəyiniz ünvanlar sahəsinə tam nəzarət edirsiniz.

Şəbəkə qlobaldır. Eyni zamanda, o, Subnet adlı bir obyekt şəklində mövcudluq zonalarının hər birinə proqnozlaşdırılır. Hər bir alt şəbəkə üçün siz ölçüsü 16 və ya daha az olan CIDR təyin edirsiniz. Hər bir əlçatanlıq zonasında birdən çox belə obyekt ola bilər və onlar arasında həmişə şəffaf marşrutlaşdırma mövcuddur. Bu o deməkdir ki, eyni VPC daxilindəki bütün resurslarınız müxtəlif Əlçatımlılıq Zonalarında olsa belə, bir-biri ilə “danışa” bilər. İnternetə çıxışı olmadan, daxili kanallarımız vasitəsilə eyni şəxsi şəbəkə daxilində olduqlarını “düşünərək” “ünsiyyət qurun”.

Yuxarıdakı diaqram tipik bir vəziyyəti göstərir: ünvanlarında bir yerdə kəsişən iki VPC. Hər ikisi sizin ola bilər. Məsələn, biri inkişaf üçün, digəri sınaq üçün. Sadəcə fərqli istifadəçilər ola bilər - bu halda fərq etməz. Və hər bir VPC-nin bir virtual maşını var.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Gəlin sxemi daha da pisləşdirək. Bir virtual maşının eyni anda bir neçə alt şəbəkəyə qoşulmasını təmin edə bilərsiniz. Və yalnız belə deyil, müxtəlif virtual şəbəkələrdə.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Eyni zamanda, İnternetdə maşınları ifşa etmək lazımdırsa, bu API və ya UI vasitəsilə edilə bilər. Bunu etmək üçün "boz" daxili ünvanınızın NAT tərcüməsini "ağ" - ümumi ünvana konfiqurasiya etməlisiniz. Siz “ağ” ünvan seçə bilməzsiniz, o, bizim ünvan hovuzumuzdan təsadüfi olaraq təyin edilir. Xarici IP-dən istifadəni dayandıran kimi o, hovuza qayıdır. Siz yalnız “ağ” ünvandan istifadə etdiyiniz vaxt üçün ödəniş edirsiniz.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

NAT instansiyasından istifadə edərək maşına İnternetə çıxış imkanı vermək də mümkündür. Trafiki statik marşrutlaşdırma cədvəli vasitəsilə nümunənizə yönləndirə bilərsiniz. İstifadəçilərin bəzən buna ehtiyacı olduğu üçün belə bir işi təqdim etdik və bu barədə məlumatımız var. Müvafiq olaraq, şəkil kataloqumuzda xüsusi konfiqurasiya edilmiş NAT şəkli var.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Ancaq hətta hazır NAT təsviri olduqda belə, konfiqurasiya mürəkkəb ola bilər. Bəzi istifadəçilər üçün bunun ən əlverişli seçim olmadığını başa düşdük, buna görə də sonda bir kliklə istədiyiniz alt şəbəkə üçün NAT-ı aktivləşdirməyə imkan verdik. Bu xüsusiyyət hələ də icma üzvlərinin köməyi ilə sınaqdan keçirildiyi qapalı önizləmə girişindədir.

Virtual şəbəkə daxildən necə işləyir

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

İstifadəçi virtual şəbəkə ilə necə əlaqə qurur? Şəbəkə API ilə xaricə baxır. İstifadəçi API-yə gəlir və hədəf dövlətlə işləyir. API vasitəsilə istifadəçi hər şeyin necə təşkil edilməli və konfiqurasiya edilməli olduğunu, statusu isə, faktiki vəziyyətin istədiyindən necə fərqləndiyini görür. Bu istifadəçinin şəklidir. İçəridə nə baş verir?

İstədiyiniz vəziyyəti Yandex verilənlər bazasında qeyd edirik və VPC-nin müxtəlif hissələrini konfiqurasiya etməyə gedirik. Yandex.Cloud-da üst-üstə düşən şəbəkə bu yaxınlarda Tungsten Fabric adlanan OpenContrail-in seçilmiş komponentləri əsasında qurulub. Şəbəkə xidmətləri vahid CloudGate platformasında həyata keçirilir. CloudGate-də biz bir sıra açıq mənbə komponentlərindən də istifadə etdik: nəzarət məlumatlarını idarə etmək üçün GoBGP, həmçinin məlumat yolu üçün DPDK-nın üstündə işləyən proqram yönləndiricisini həyata keçirmək üçün VPP.

Tungsten Fabric GoBGP vasitəsilə CloudGate ilə əlaqə qurur. Overlay şəbəkəsində baş verənləri izah edir. CloudGate, öz növbəsində, üst-üstə düşən şəbəkələri bir-birinə və İnternetə bağlayır.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

İndi virtual şəbəkənin genişlənmə və əlçatanlıq məsələlərini necə həll etdiyinə baxaq. Sadə bir halı nəzərdən keçirək. Bir əlçatanlıq zonası var və orada iki VPC yaradılıb. Biz bir Tungsten Fabric nümunəsini yerləşdirdik və o, bir neçə on minlərlə şəbəkəni ehtiva edir. Şəbəkələr CloudGate ilə əlaqə qurur. CloudGate, artıq dediyimiz kimi, onların bir-biri ilə və İnternetlə əlaqəsini təmin edir.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Deyək ki, ikinci Əlçatımlılıq Zonası əlavə edildi. Birincidən tamamilə müstəqil olaraq uğursuz olmalıdır. Buna görə də, biz ikinci əlçatanlıq zonasında ayrıca Volfram Parça nümunəsi quraşdırmalıyıq. Bu, örtüyü idarə edən və birinci sistem haqqında az şey bilən ayrıca bir sistem olacaq. Virtual şəbəkəmizin qlobal olması əslində VPC API-mizi yaradır. Bu onun vəzifəsidir.

Mövcudluq Zonasının B VPC1-ə yapışan resursları varsa, VPC1 Əlçatımlılıq Zonası B ilə əlaqələndirilir. Mövcudluq zonası B-də VPC2-dən heç bir resurs yoxdursa, biz bu zonada VPC2-ni reallaşdırmırıq. Öz növbəsində, VPC3-dən olan resurslar yalnız B zonasında mövcud olduğundan, VPC3 A zonasında mövcud deyil. Hər şey sadə və məntiqlidir.

Gəlin bir az daha dərinə gedək və Y.Cloud-da xüsusi hostun necə işlədiyini görək. Qeyd etmək istədiyim əsas odur ki, bütün hostlar eyni dizayn edilib. Biz əmin edirik ki, yalnız zəruri minimum xidmətlər aparatda, qalanları isə virtual maşınlarda işləyir. Biz əsas infrastruktur xidmətlərinə əsaslanan yüksək səviyyəli xidmətlər qururuq, həmçinin bəzi mühəndislik problemlərini həll etmək üçün Buluddan istifadə edirik, məsələn, Davamlı İnteqrasiya çərçivəsində.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Müəyyən bir hosta baxsaq, host ƏS-də işləyən üç komponentin olduğunu görə bilərik:

  • Hesablama hostda hesablama resurslarının paylanmasına cavabdeh olan hissədir.
  • VRouter, üst qatı təşkil edən, yəni paketləri alt təbəqədən keçirən Volfram Parçanın bir hissəsidir.
  • VDisklər saxlama virtualizasiyasının parçalarıdır.

Bundan əlavə, virtual maşınlar xidmətləri idarə edir: Bulud infrastruktur xidmətləri, platforma xidmətləri və müştəri tutumu. Müştərilərin imkanları və platforma xidmətləri həmişə VRouter vasitəsilə üst-üstə düşür.

İnfrastruktur xidmətləri üst təbəqəyə qoşula bilər, lakin onlar əsasən alt təbəqədə işləmək istəyirlər. Onlar SR-IOV istifadə edərək, alt təbəqəyə yapışdırılır. Əslində, biz kartı virtual şəbəkə kartlarına (virtual funksiyalar) kəsdik və performansını itirməmək üçün onları infrastrukturun virtual maşınlarına itələyirik. Məsələn, eyni CloudGate bu infrastruktur virtual maşınlarından biri kimi işə salınır.

İndi virtual şəbəkənin qlobal vəzifələrini və buludun əsas komponentlərinin dizaynını təsvir etdikdən sonra virtual şəbəkənin müxtəlif hissələrinin bir-biri ilə tam olaraq necə qarşılıqlı əlaqədə olduğuna baxaq.

Sistemimizdə üç təbəqəni ayırırıq:

  • Config Plane – sistemin hədəf vəziyyətini təyin edir. Bu, istifadəçinin API vasitəsilə konfiqurasiya etdiyi şeydir.
  • Control Plane – istifadəçi tərəfindən müəyyən edilmiş semantika təmin edir, yəni Data Plane vəziyyətini istifadəçi tərəfindən Konfiqurasiya Planında təsvir etdiyi vəziyyətə gətirir.
  • Data Plane – istifadəçi paketlərini birbaşa emal edir.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Yuxarıda dediyim kimi, hər şey istifadəçi və ya daxili platforma xidmətinin API-yə gəlməsi və müəyyən bir hədəf vəziyyətini təsvir etməsi ilə başlayır.

Bu vəziyyət dərhal Yandex verilənlər bazasına yazılır, API vasitəsilə asinxron əməliyyatın identifikatorunu qaytarır və istifadəçinin istədiyi vəziyyəti yaratmaq üçün daxili mexanizmimizi işə salır. Konfiqurasiya tapşırıqları SDN nəzarətçisinə gedir və Tungsten Fabric-ə üst-üstə düşmədə nə edilməli olduğunu söyləyin. Məsələn, onlar portları, virtual şəbəkələri və s.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Volfram Parçasındakı Konfiqurasiya Planı tələb olunan vəziyyəti İdarəetmə Planına yükləyir. Onun vasitəsilə Config Plane ev sahibləri ilə əlaqə saxlayır və onlara yaxın gələcəkdə onların üzərində dəqiq nə işləyəcəyini söyləyir.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

İndi sistemin hostlarda necə göründüyünə baxaq. Virtual maşın VRouter-ə qoşulmuş müəyyən şəbəkə adapterinə malikdir. VRouter, paketlərə baxan Volfram Parça əsas moduludur. Əgər hansısa paket üçün artıq axın varsa, modul onu emal edir. Əgər axın yoxdursa, modul sözdə punting edir, yəni paketi usermod prosesinə göndərir. Proses paketi təhlil edir və ya DHCP və DNS kimi ona cavab verir, ya da VRouter-ə onunla nə edəcəyini söyləyir. VRouter daha sonra paketi emal edə bilər.

Bundan əlavə, eyni virtual şəbəkə daxilində virtual maşınlar arasında trafik şəffaf şəkildə axır, CloudGate-ə göndərilmir. Virtual maşınların yerləşdirildiyi hostlar bir-biri ilə birbaşa əlaqə qurur. Onlar trafiki tunel edir və alt qat vasitəsilə bir-birinə ötürürlər.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

İdarəetmə Təyyarələri digər marşrutlaşdırıcıda olduğu kimi, BGP vasitəsilə Əlçatımlılıq Zonalarında bir-biri ilə əlaqə qurur. Onlar sizə hansı maşınların harada quraşdırıldığını söyləyirlər ki, bir zonadakı virtual maşınlar digər virtual maşınlarla birbaşa əlaqə saxlaya bilsin.

Yandex.Cloud Virtual Private Cloud ilə necə işləyir və istifadəçilərimiz faydalı funksiyaları həyata keçirməkdə bizə necə kömək edir

Control Plane həmçinin CloudGate ilə əlaqə saxlayır. Eynilə, harada və hansı virtual maşınların quraşdırıldığını, ünvanlarının nə olduğunu bildirir. Bu, xarici trafiki və trafiki balanslaşdırıcılardan onlara yönəltməyə imkan verir.

VPC-dən çıxan trafik, plaginlərimizlə VPP-nin tez çeynəndiyi məlumat yolunda CloudGate-ə gəlir. Sonra trafik ya digər VPC-lərə, ya da CloudGate-in özünün İdarəetmə Planı vasitəsilə konfiqurasiya edilən kənar marşrutlaşdırıcılara yönəldilir.

Yaxın gələcək üçün planlar

Yuxarıda deyilən hər şeyi bir neçə cümlə ilə ümumiləşdirsək, deyə bilərik ki, Yandex.Cloud-da VPC iki mühüm problemi həll edir:

  • Müxtəlif müştərilər arasında izolyasiya təmin edir.
  • Resursları, infrastrukturu, platforma xidmətlərini, digər buludları və yerli vahid şəbəkədə birləşdirir.

Və bu problemləri yaxşı həll etmək üçün VPC-nin etdiyi daxili arxitektura səviyyəsində miqyaslılığı və nasazlığa dözümlülüyü təmin etməlisiniz.

Tədricən VPC funksiyalar əldə edir, biz yeni funksiyalar tətbiq edirik və istifadəçilər üçün rahatlıq baxımından nəyisə təkmilləşdirməyə çalışırıq. Bəzi fikirlər cəmiyyətimizin üzvləri sayəsində səslənir və prioritetlər siyahısına daxil edilir.

İndi yaxın gələcək üçün təxminən aşağıdakı planların siyahısı var:

  • VPN xidmət kimi.
  • Şəxsi DNS nümunələri – əvvəlcədən konfiqurasiya edilmiş DNS serveri ilə virtual maşınların tez qurulması üçün şəkillər.
  • DNS bir xidmət olaraq.
  • Daxili yük balanslayıcısı.
  • Virtual maşını yenidən yaratmadan “ağ” IP ünvanı əlavə etmək.

İstifadəçilərin istəyi ilə balanslaşdırıcı və artıq yaradılmış virtual maşın üçün IP ünvanını dəyişmək imkanı bu siyahıya daxil edilib. Düzünü desəm, açıq rəy olmasaydı, biz bu funksiyaları bir az sonra götürərdik. Beləliklə, biz artıq ünvanlarla bağlı problem üzərində işləyirik.

Əvvəlcə "ağ" IP ünvanı yalnız maşın yaratarkən əlavə edilə bilər. Əgər istifadəçi bunu etməyi unutdusa, virtual maşın yenidən yaradılmalı idi. Eyni şey, zəruri hallarda xarici IP-nin çıxarılmasına da aiddir. Tezliklə, maşını yenidən yaratmadan ictimai IP-ni açmaq və söndürmək mümkün olacaq.

Öz fikrinizi ifadə etməkdən çəkinməyin ideyalar və dəstək təklifləri digər istifadəçilər. Buludu daha da yaxşılaşdırmağa və vacib və faydalı xüsusiyyətləri daha sürətli əldə etməyə kömək edirsiniz!

Mənbə: www.habr.com

Добавить комментарий