Արժեքի համեմատություն կառավարվող Kubernetes-ի վրա (2020)
Նշում. թարգմ.Ամերիկյան DevOps-ի ինժեներ Սիդ Պալասը, օգտագործելով Google Cloud-ի վերջին հայտարարությունը Որպես տեղեկատվական ուղեցույց՝ ես համեմատեցի Կառավարվող Kubernetes ծառայության արժեքը (տարբեր կոնֆիգուրացիաներով) աշխարհի առաջատար ամպային մատակարարներից: Նրա աշխատանքի լրացուցիչ առավելությունը համապատասխան Jupyter Notebook-ի հրապարակումն էր, որը թույլ է տալիս (Պիթոնի նվազագույն իմացությամբ) կարգավորել կատարված հաշվարկները՝ ձեր կարիքներին համապատասխան։
TL. DRAzure-ը և Digital Ocean-ը չեն գանձում կառավարման հարթության համար օգտագործվող հաշվարկային ռեսուրսները, ինչը նրանց լավ ընտրություն է դարձնում շատ փոքր կլաստերներ տեղակայելու համար: Փոքր թվով խոշոր կլաստերների գործարկման համար GKE-ն լավագույնս համապատասխանում է: Բացի այդ, դուք կարող եք զգալիորեն նվազեցնել ծախսերը՝ օգտագործելով տեղում/կանխարգելիչ/ցածր առաջնահերթ հանգույցներ կամ «բաժանորդագրվելով» նույն հանգույցների երկարաժամկետ օգտագործմանը (սա վերաբերում է բոլոր հարթակներին):
Կլաստերի չափը (աշխատողների թիվը)
Overview
Google Cloud-ի վերջին հայտարարություն GKE-ի հայտարարությունը յուրաքանչյուր կլաստեր ժամի համար 10 ցենտ գանձելու մասին, ինձ դրդեց վերլուծել Kubernetes-ի հիմնական կառավարվող առաջարկների գինը:
Այս հարթակներից յուրաքանչյուրում Kubernetes-ի օգտագործման ընդհանուր արժեքը բաղկացած է հետևյալ բաղադրիչներից.
Կլաստերների կառավարման վճար;
Բեռի հավասարակշռում (Ingress-ի համար);
Աշխատողների հաշվողական ռեսուրսներ (vCPU և հիշողություն);
Արտագնա երթևեկություն;
Մշտական պահեստավորում;
Տվյալների մշակում բեռի հավասարակշռման միջոցով:
Բացի այդ, ամպային պրովայդերները առաջարկում են զգալի զեղչեր, եթե հաճախորդը ցանկանում է/կարող է օգտագործել կանխարգելիչ բիծ կամ ցածր առաջնահերթ հանգույցներ ԿԱՄ պարտավորվում է օգտագործել նույն հանգույցները 1-3 տարի:
Արժե ընդգծել, որ չնայած ծախսերը լավ հիմք են ծառայություններ մատուցողներին համեմատելու և գնահատելու համար, սակայն պետք է հաշվի առնել այլ գործոններ.
Uptime (Ծառայության մակարդակի պայմանագիր);
Շրջապատող ամպային էկոհամակարգը;
K8-ի հասանելի տարբերակները;
Փաստաթղթերի/գործիքների որակը:
Այնուամենայնիվ, այս գործոնները դուրս են այս հոդվածի/ուսումնասիրության շրջանակներից: IN Փետրվարի գրառումը StackRox բլոգում EKS-ի, AKS-ի և GKE-ի համար ոչ գնային գործոնները մանրամասն քննարկվում են:
Jupyter Notebook
Առավել շահավետ լուծում գտնելն ավելի հեշտ դարձնելու համար ես մշակել եմ Jupyter նոթատետր, դրանում օգտագործելով plotly + ipywidgets: Այն թույլ է տալիս համեմատել մատակարարների առաջարկները տարբեր կլաստերի չափերի և ծառայությունների հավաքածուների համար:
Դուք կարող եք պարապել նոթատետրի կենդանի տարբերակով Binder-ում.
Տեղեկացրեք ինձ, եթե հաշվարկները կամ սկզբնական գները սխալ են (դա կարող է արվել խնդրի կամ 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-ների քանակից և հիշողության քանակից, բայց ես վստահ չեմ, որ այս ենթադրությունը ճշմարիտ կլինի բարձր ոչ ստանդարտ հիշողություն/CPU հարաբերակցության դեպքում:
Հուսով եմ, որ այս հոդվածը նոութբուքի հետ միասին կօգնի ձեզ գնահատել Kubernetes-ի հիմնական կառավարվող առաջարկները և/կամ խնայել գումար ամպային ենթակառուցվածքի վրա՝ օգտվելով զեղչերից և այլ հնարավորություններից: