Ce este Kubernetes?

Ce este Kubernetes?

Kubernetes (pronunțat „CUBE-A-NET-IS”) este o platformă open-source care ajută la gestionarea aplicațiilor de containere precum Docker. Fie că doriți să automatizați sau să scalați aceste containere pe mai multe gazde, Kubernetes poate accelera implementarea. Pentru a face acest lucru, acesta poate utiliza componente interne, cum ar fi API-ul Kubernetes sau extensii terță parte care rulează pe Kubernetes.

Acest articol vă va ajuta să înțelegeți conceptele de bază ale Kubernetes și de ce provoacă o astfel de schimbare seismică pe piața serverelor, atât cu furnizorii, cât și cu furnizorii de cloud, cum ar fi Azur și Google Cloud, oferind servicii Kubernetes.

Conţinut

Kubernetes: O scurtă istorie

Kubernetes este unul dintre cadourile Google pentru comunitatea open source. Platforma de containere a făcut parte din Borg, un proiect Google intern de mai bine de un deceniu. Borg a permis companiei Google să gestioneze sute și chiar mii de sarcini (numite „Borglets”) din diferite aplicații din clustere. Obiectivul său a fost utilizarea eficientă a mașinilor (și a mașinilor virtuale), asigurând în același timp o disponibilitate ridicată a caracteristicilor de rulare.

Aceeași arhitectură a fost populară cu alte companii care caută modalități de a asigura în mod eficient disponibilitate ridicată. Undeva în 2015, de îndată ce Kubernetes 1.0 a ieșit, Google a renunțat la controlul asupra tehnologiei. Kubernetes are acum o fundație numită Fundația Cloud Native Computing (CNCF), care în sine face parte din Linux Foundation.

Kubernetes ca parte a Fundației CNCF și Linux

Cum funcționează Kubernetes

Împrumutând ideile Proiectului Borg, „Borglets” au dat locul „podurilor”, care sunt unități de planificare care găzduiesc containerele. În esență, acestea au adrese IP individuale care apar în imagine ori de câte ori un container necesită procesor, memorie sau stocare.

containere-schematică

Capsulele asigură o disponibilitate ridicată prin echilibrarea încărcării traficului într-un format round-robin. Mai mult, acestea sunt în interiorul mașinilor (sau mașinilor virtuale) numite „noduri lucrătoare”, cunoscute și sub numele de „slujitori”. Din acest moment, un „nod master” controlează întregul cluster orchestrând containerizarea utilizând API-ul Kubernetes. Docker este capabil să ruleze în fiecare nod lucrător de unde poate descărca imagini și porni containere.

Kubernetes cluster de echilibrare a sarcinii

Pentru a obține conexiunea API la un cluster Kubernetes, se numește o sintaxă CLI kubectl este folosit. Aceasta este o comandă foarte importantă, deoarece execută singură toate instrucțiunile pe care nodul Master le servește nodurilor lucrătorului. Stăpânirea kubectl necesită un pic de învățare, dar odată ce ați învățat, puteți începe să utilizați clusterele Kubernetes. Kubernetes, precum și Docker sunt scrise în limbajul de programare Go.

Aplicații

Kubernetes poate reduce drastic costurile serverelor și centrelor de date datorită eficienței sale ridicate în utilizarea mașinilor. Unele dintre aplicațiile obișnuite ale Kubernetes includ:

  • Gestionarea serverelor de aplicații. Majoritatea serverelor de aplicații necesită securitate, gestionarea configurației, actualizări și multe altele, care pot rula utilizând Kubernetes.
  • Lansări și reveniri automate. Cu Kubernetes, nu trebuie să vă faceți griji cu privire la lansările de produse sau retrocedări pe mai multe noduri finale.
  • Implementarea aplicațiilor fără stat. Aplicațiile web sunt acum controlabile de la distanță. De exemplu, Kubernetes vă poate ajuta să rulați servere Nginx utilizând o aplicație fără stat.
  • Implementarea aplicațiilor cu stare. Kubernetes poate rulați o bază de date MySQL.
  • Stocarea obiectelor API. Pentru diferite nevoi de stocare, Kubernetes asigură stocarea ideală, deoarece folosește principiile containerului.
  • Gata de livrare. Kubernetes este foarte util în aplicații care nu sunt disponibile, cum ar fi descoperirea serviciilor, înregistrarea și monitorizarea și autentificarea.
  • Aplicații IoT. Kubernetes își găsește o utilizare tot mai mare în IoT datorită capacității sale de scalare masivă.
  • Aleargă oriunde. Puteți rula Kubernetes oriunde, inclusiv în interiorul unei valize.

kubernetes-suitcase-cluster-assembly-twitter-ocasquero

În concluzie

Obiectivul Kubernetes este de a utiliza resursele de calcul în măsura maximă. Deoarece puteți orchestra containere pe mai multe gazde, nodurile finale nu vor avea niciodată probleme de resurse sau eșec. Ajută la scalarea automată, deoarece trebuie să dați comanda o singură dată de la nodul Master, iar scalarea aplicațiilor nu este decât revoluționară.

Pentru a afla mai multe despre Kubernetes, vizitați-l site oficial care conține tutoriale.

Credit de imagine: Oskar Casquero

Scroll to Top