Pod IP, ClusterIP или интерни балансер оптерећења за VPN кориснике
Pod IP је рутабилан преко VPN-а док се Pod не замени. Упоредите директан приступ Pod-у, ClusterIP и интерни балансер и шта вас сваки од њих кошта.
Са VPC CNI, Pod може имати адресу из VPC-а, а VPN корисник са исправном рутом може му приступити директно. Зато директан приступ Pod-у изгледа као најједноставнија опција, и јесте, док се Pod не замени. Адреса коју корисник памти треба да припада апликацији, а не реплици. Поређење три улаза своди се на то који објекат поседује адресу и шта мора наставити да ради када се радно оптерећење премести.
Бирајте прво по животном циклусу, а затим по томе шта мрежа мора да уради да улаз буде доступан.
Три улаза, три животна циклуса
Pod IP поседује Pod: додељује се с њим и ослобађа када се заврши. ClusterIP поседује Service и он је виртуелан, има смисла само тамо где постоји усмеравање сервиса у кластеру. Интерни балансер поседује cloud ресурс који контролер кластера програмира бекендима. Ти модели власништва предвиђају квар који ћете добити: застарелу адресу, недоступно име или застарели скуп бекенда.
Запишите поређење пре него што изаберете. Када су власник и квар именовани, избор се обично сам наметне.
| Entry | Owner | Failure when the workload moves |
|---|---|---|
| Pod IP | The Pod | Address changes and saved links break |
| ClusterIP | The Service | Virtual address with no meaning outside cluster routing |
| Internal balancer | Cloud resource plus controller | Backends update, but the DNS view is yours to maintain |
Директан приступ Pod-у: користан, привремен
Директан приступ је заиста користан за контролисану проверу: један администратор, једна кратка сесија, један одређени порт. Али је лош уговор за кориснике јер је адреса детаљ имплементације који се мења при сваком издању. А записивање такве адресе у вики је начин на који радна услуга постаје гласина.
То такође позива на широка правила. Дозвола да један администратор достигне један Pod није дозвола за сваку адресу у подмрежи чвора, а управо се друго обично записује.
ClusterIP: ограничен на кластер по дизајну
ClusterIP ради јер dataplane кластера програмира усмеравање за њега унутар кластера. Са преносног рачунара на VPN-у адреса не значи ништа осим ако је нешто намерно не изложи. Име које се завршава на svc.cluster.local припада DNS-у кластера, па његово копирање клијенту са другим resolver-ом даје име које не постоји, а не грешку усмеравања.
ClusterIP остаје исправан улаз за позиваоце унутар кластера, укључујући друга радна оптерећења. Он једноставно није механизам објављивања за кориснике изван домена усмеравања кластера.
Интерни балансер: објављени пут
Интерни балансер вам даје стабилну приватну адресу и име на које ваша зона може да указује, док контролер одржава скуп бекенда ажурним, како описује EKS водич за балансирање оптерећења. То је улаз који преживљава обичну замену Pod-а без икаквог уређивања документа. Кошта cloud ресурс, конфигурацију контролера и руту са VPN-а, а управо те делове људи потцењују.
Користите модел контролера који кластер заиста покреће. Аногације написане за једну интеграцију не важе за другу.
Ко је изворна адреса
Сигурносне групе виде извор који стиже на њихову границу, а то може бити повезани клијент или преведена адреса, зависно од пута VPN-а и балансирања оптерећења. На чворовима на EC2 обични Pod-ови VPC CNI подразумевано наслеђују групе ENI-ја чвора, док подржане конфигурације могу прикључити групе специфичне за Pod. Пишите правила за документовани пут, а не за претпостављену адресу преносног рачунара.
Држите властити слушалац и аутентификацију апликације као одвојене контроле. Мрежно правило које допушта ток није одлука о ауторизацији и не треба се тако третирати.
Шта предати корисницима
Дајте корисницима име сервиса, а не адресу. Објавите име у приватној зони, усмерите га на интерни улаз, а затим тестирајте заменом backend Pod-а док клијент држи исто име отворено. Та вежба проверава својство које је важно: достизање исте апликације након рутинског издања.
Држите директан приступ Pod-у као документовани оперативни изузетак са властитим обухватом, далеко од упутстава за кориснике.