Споредба на трошоци за управуван Kubernetes (2020)

Забелешка. превод.: Американскиот инженер за DevOps Сид Палас, користејќи неодамнешна објава на Google Cloud Како информативен водич, ги споредив трошоците за услугата Managed Kubernetes (во различни конфигурации) од водечките светски провајдери на облак. Дополнителна предност на неговата работа беше објавувањето на соодветниот Jupyter Notebook, кој овозможува (со минимално познавање на Python) да ги прилагоди пресметките извршени за да одговараат на вашите потреби.

TL; ДР: Azure и Digital Ocean не наплаќаат за пресметковните ресурси што се користат за контролната рамнина, што ги прави добар избор за распоредување на многу мали кластери. За водење на мал број големи кластери, GKE е најдобро одговара. Дополнително, можете значително да ги намалите трошоците со користење на јазли на место/превентивни/низок приоритет или со „претплата“ на долгорочна употреба на истите јазли (ова важи за сите платформи).

Споредба на трошоци за управуван Kubernetes (2020)
Големина на кластерот (број на работници)

Преглед

Неодамнешна објава на Google Cloud Најавата на GKE дека почнува да наплатува 10 центи по кластер час за секој кластер час ме поттикна да почнам да ги анализирам цените на главните управувани понуди на Kubernetes.

Споредба на трошоци за управуван Kubernetes (2020)
Оваа објава многу вознемири некои ...

Главните ликови на статијата се:

Распределба на трошоците

Вкупните трошоци за користење на Kubernetes на секоја од овие платформи се состојат од следните компоненти:

  • Надоместок за управување со кластери;
  • Балансирање на оптоварување (за Ingress);
  • Пресметувачки ресурси (vCPU и меморија) на работниците;
  • Излезен сообраќај;
  • Трајно складирање;
  • Обработка на податоци со балансер на оптоварување.

Дополнително, давателите на облак нудат значителни попусти доколку клиентот сака/може да користи превентивно место или јазли со низок приоритет ИЛИ се обврзува да ги користи истите јазли 1-3 години.

Вреди да се нагласи дека иако трошокот е добра основа за споредување и оценување на давателите на услуги, треба да се земат предвид и други фактори:

  • Време на работа (Договор за ниво на услуга);
  • Околниот облак екосистем;
  • Достапни верзии на K8s;
  • Квалитет на документација/прибор со алатки.

Сепак, овие фактори се надвор од опсегот на овој напис/студија. ВО Објава во февруари на блогот StackRox Неценовните фактори за EKS, AKS и GKE се детално дискутирани.

тетратка Јупитер

За полесно да го најдам најпрофитабилното решение, развив тетратка Јупитер, користејќи plotly + ipywidgets во него. Тоа ви овозможува да ги споредувате понудите на провајдерите за различни големини на кластери и сетови на услуги.

Можете да вежбате со жива верзија на бележникот во Binder:

Споредба на трошоци за управуван Kubernetes (2020)
manager-kubernetes-price-exploration.ipynb на mybinder.org

Дозволете ми да знам дали пресметките или првичните цени се неточни (ова може да се направи преку проблем или барање за повлекување на GitHub - еве го складиштето).

Наоди

За жал, има премногу нијанси за да се дадат поконкретни препораки од оние вклучени во ставот TL;DR на самиот почеток. Сепак, сè уште може да се извлечат некои заклучоци:

  • За разлика од GKE и EKS, AKS и Digital Ocean не наплаќаат за ресурсите на контролниот слој. AKS и DO се попрофитабилни ако архитектурата вклучува многу мали кластери (на пример, еден кластер по секој развивач или секој клиент).
  • Малку поевтините пресметковни ресурси на GKE го прават попрофитабилен со зголемувањето на големината на кластерите*.
  • Користењето на превентивни јазли или долгорочниот афинитет на јазлите може да ги намали трошоците за повеќе од 50%. Забелешка: Digital Ocean не ги нуди овие попусти.
  • Излезните такси на Google се повисоки, но трошоците за компјутерските ресурси се одлучувачки фактор во пресметката (освен ако вашиот кластер генерира значителна количина на излезни податоци).
  • Изборот на типови на машини врз основа на потребите на процесорот и меморијата на вашите оптоварувања ќе ви помогне да избегнете дополнително плаќање за неискористените ресурси.
  • Digital Ocean наплаќа помалку за vCPU и повеќе за меморија во споредба со другите платформи - ова може да биде одлучувачки фактор за некои видови на оптоварување на пресметување.

*Забелешка: Анализата користи податоци за пресметковни јазли со општа намена (општа намена). Тоа се n1 примероци на GCP Compute Engine, m5 AWS ec2 примери, D2v3 Azure виртуелни машини и DO капки со посветени процесори. За возврат, можно е да се спроведе истражување меѓу другите типови на виртуелни машини (рафали, влезно ниво). На прв поглед, цената на виртуелните машини зависи линеарно од бројот на vCPU и количината на меморија, но не сум сигурен дека оваа претпоставка ќе важи за високо нестандардни сооднос меморија/процесор.

Во статијата Крајниот водич за трошоци на Kubernetes: AWS vs GCP vs Azure vs Digital Ocean, објавен во 2018 година, користеше референтен кластер со 100 vCPU јадра и 400 GB меморија. За споредба, според моите пресметки, сличен кластер на секоја од овие платформи (за примери на барање) ќе ја чини следната сума:

  • АКС: 51465 УСД/година
  • EKS: 43138 УСД/година
  • GKE: 30870 УСД/година
  • DO: 36131 УСД/година

Се надевам дека овој напис заедно со тетратката ќе ви помогне да ги оцените главните управувани понуди на Kubernetes и/или да заштедите пари на облак инфраструктурата со искористување на попустите и другите можности.

PS од преведувач

Прочитајте и на нашиот блог:

Извор: www.habr.com

Додадете коментар