Басқарылатын Kubernetes бойынша шығындарды салыстыру (2020)

Ескерту. аударма: американдық DevOps инженері Сид Палас, пайдалану Google Cloud туралы соңғы хабарландыру Ақпараттық нұсқаулық ретінде мен әлемдегі жетекші бұлттық провайдерлердің басқарылатын Kubernetes қызметінің құнын (әр түрлі конфигурацияларда) салыстырдым. Оның жұмысының қосымша артықшылығы сәйкес Jupyter Notebook шығарылымы болды, ол (Python-ды аз білетін) сіздің қажеттіліктеріңізге сәйкес орындалатын есептеулерді реттеуге мүмкіндік береді.

TL; DR: Azure және Digital Ocean басқару жазықтығы үшін пайдаланылатын есептеу ресурстары үшін ақы алмайды, бұл оларды көптеген шағын кластерлерді орналастыру үшін жақсы таңдау етеді. Үлкен кластерлердің аз санын іске қосу үшін GKE ең қолайлы. Бұған қоса, сіз нүктелік/алдын ала/төмен басымдықты түйіндерді пайдалану арқылы немесе бірдей түйіндерді ұзақ мерзімді пайдалануға «жазылу» арқылы шығындарды айтарлықтай азайта аласыз (бұл барлық платформаларға қатысты).

Басқарылатын Kubernetes бойынша шығындарды салыстыру (2020)
Кластер мөлшері (жұмысшылар саны)

Негізгі ақпарат

Google Cloud туралы соңғы хабарландыру GKE әр кластер сағаты үшін кластер сағатына 10 центтен ақы ала бастағаны туралы хабарламасы мені Kubernetes басқаратын негізгі ұсыныстарының бағасын талдауды бастауға итермеледі.

Басқарылатын Kubernetes бойынша шығындарды салыстыру (2020)
Бұл хабарландыру кейбіреулерді қатты ренжітті...

Мақаланың басты кейіпкерлері:

Шығындарды бөлу

Осы платформалардың әрқайсысында Kubernetes пайдаланудың жалпы құны келесі құрамдастардан тұрады:

  • Кластерді басқару төлемі;
  • Жүктемені теңестіру (кіру үшін);
  • Жұмысшылардың есептеу ресурстары (vCPU және жады);
  • Шығу қозғалысы;
  • Тұрақты сақтау;
  • Жүктеме балансы арқылы деректерді өңдеу.

Сонымен қатар, бұлттық провайдерлер егер клиент артықшылықты қаласа/пайдаланса, айтарлықтай жеңілдіктер ұсынады нүкте немесе басымдығы төмен түйіндер НЕМЕСЕ сол түйіндерді 1-3 жыл пайдалануға міндеттенеді.

Құны қызмет жеткізушілерін салыстыру және бағалау үшін жақсы негіз болғанымен, басқа факторларды ескеру қажет екенін атап өткен жөн:

  • Жұмыс уақыты (қызмет көрсету деңгейі туралы келісім);
  • Айналадағы бұлт экожүйесі;
  • K8s қол жетімді нұсқалары;
  • Құжаттама/құралдар жинағы сапасы.

Дегенмен, бұл факторлар осы мақаланың/зерттеудің ауқымынан тыс. IN StackRox блогындағы ақпандағы жазба EKS, AKS және GKE үшін бағалық емес факторлар егжей-тегжейлі талқыланады.

Jupyter дәптері

Ең тиімді шешімді табуды жеңілдету үшін мен әзірледім Юпитер дәптері, ондағы plotly + ipywidgets көмегімен. Ол әртүрлі кластер өлшемдері мен қызмет жиындары үшін провайдердің ұсыныстарын салыстыруға мүмкіндік береді.

Биндердегі блокноттың тірі нұсқасымен жаттығуға болады:

Басқарылатын Kubernetes бойынша шығындарды салыстыру (2020)
mybinder.org сайтындағы managed-kubernetes-price-exploration.ipynb

Есептеулер немесе бастапқы баға дұрыс емес болса, маған хабарлаңыз (бұл мәселе немесе GitHub-тағы сұрау арқылы жасалуы мүмкін - міне, репозиторий).

қорытындылар

Өкінішке орай, ең басында TL;DR параграфына енгізілгеннен гөрі нақты ұсыныстар беру үшін тым көп нюанстар бар. Дегенмен, әлі де кейбір қорытындылар жасауға болады:

  • GKE және EKS-тен айырмашылығы, AKS және Digital Ocean басқару қабатының ресурстары үшін ақы алмайды. Егер архитектурада көптеген шағын кластерлер болса, AKS және DO тиімдірек болады (мысалы, бір кластер үшін әрбір әзірлеуші немесе әрбір клиент).
  • GKE сәл арзанырақ есептеу ресурстары кластер өлшемдері* ұлғайған сайын оны тиімдірек етеді.
  • Артықшылықты түйіндерді немесе ұзақ мерзімді түйіндердің ұқсастығын пайдалану шығындарды 50%-дан астамға азайтады. Ескерту: Digital Ocean бұл жеңілдіктерді ұсынбайды.
  • Google шығыс алымдары жоғарырақ, бірақ есептеу ресурстарының құны есептеуде анықтаушы фактор болып табылады (егер сіздің кластеріңіз шығыс деректердің айтарлықтай көлемін жасамаса).
  • Жұмыс жүктемелерінің CPU және жад қажеттіліктеріне негізделген машина түрлерін таңдау пайдаланылмаған ресурстар үшін қосымша ақы төлеуден аулақ болуға көмектеседі.
  • Digital Ocean басқа платформалармен салыстырғанда vCPU үшін азырақ және жад үшін көбірек ақы алады - бұл есептеу жұмыс жүктемелерінің кейбір түрлері үшін шешуші фактор болуы мүмкін.

*Ескертпе: Талдау жалпы мақсаттағы есептеу түйіндері үшін деректерді пайдаланады (жалпы мақсат). Бұл n1 GCP Compute Engine даналары, m5 AWS ec2 даналары, D2v3 Azure виртуалды машиналары және арнайы процессорлары бар DO тамшылары. Өз кезегінде, виртуалды машиналардың басқа түрлерінің арасында зерттеу жүргізуге болады (жарылғыш, бастапқы деңгей). Бір қарағанда, виртуалды машиналар құны vCPU санына және жад көлеміне сызықты түрде байланысты, бірақ мен бұл болжамның стандартты емес жад/CPU қатынасы үшін дұрыс болатынына сенімді емеспін.

Мақалада Кубернетестің соңғы нұсқаулығы: AWS және GCP және Azure және Digital Ocean, 2018 жылы жарияланған, 100 vCPU ядросы және 400 ГБ жады бар анықтамалық кластерді пайдаланды. Салыстыру үшін, менің есептеулерім бойынша, осы платформалардың әрқайсысында ұқсас кластер (сұраныс бойынша даналар үшін) келесі сомаға тұрады:

  • AKS: 51465 АҚШ доллары/жыл
  • EKS: 43138 АҚШ доллары/жыл
  • GKE: 30870 АҚШ доллары/жыл
  • DO: 36131 АҚШ доллары/жыл

Бұл мақала ноутбукпен бірге негізгі басқарылатын Kubernetes ұсыныстарын бағалауға және/немесе жеңілдіктер мен басқа мүмкіндіктерді пайдалана отырып, бұлттық инфрақұрылымға ақша үнемдеуге көмектеседі деп үміттенемін.

Аудармашыдан PS

Біздің блогта да оқыңыз:

Ақпарат көзі: www.habr.com

пікір қалдыру