Ị nwere ike ọ gaghị achọ Kubernetes

Ị nwere ike ọ gaghị achọ Kubernetes
Nwa agbọghọ na skuuta. Ihe atụ freepik, Nomad logo si HashiCorp

Kubernetes bụ 300-paụnd gorilla nke akpa orchestration. Ọ na-arụ ọrụ na ụfọdụ sistemu akpa kacha ibu n'ụwa, mana ọ dị oke ọnụ.

Karịsịa ọnụ maka ndị otu obere, nke ga-achọ ọtụtụ oge nkwado yana usoro mmụta dị elu. Nke a karịrị akarị maka ndị otu anọ anyị. Ya mere, anyị malitere ịchọ ụzọ ọzọ - wee nwee ịhụnanya Nomad.

Kedu ihe ị chọrọ

Ndị otu anyị na-akwado ọtụtụ ọrụ nleba anya na nyocha ọrụ a na-ahụkarị: API njedebe maka metrik edere na Go, mbupụ Prometheus, ihe nzacha ndekọ dị ka Logstash na Gollum, yana ọdụ data dị ka InfluxDB ma ọ bụ Elasticsearch. Onye ọ bụla n'ime ọrụ ndị a na-agba n'ime akpa nke ya. Anyị chọrọ usoro dị mfe iji mee ka ihe niile na-aga n'ihu.

Anyị malitere site na ndepụta ihe achọrọ maka ịgba egwu akpa:

  • Na-agba ọsọ otu ọrụ n'ọtụtụ igwe.
  • Nchịkọta nke ọrụ ịgba ọsọ.
  • Njikọ n'etiti ọrụ.
  • Malitegharịa ekwentị na akpaghị aka ma ọ bụrụ na ọrụ ahụ daa.
  • Nlekọta akụrụngwa site na obere otu.

Na mgbakwunye, ihe ndị a ga-adị mma, mana ọ bụghị mgbakwunye achọrọ:

  • Igwe mkpado dabere na ike ha (dịka ọmụmaatụ, igwe mkpado nwere diski ngwa ngwa maka ọrụ I/O dị arọ).
  • Ikike iji rụọ ọrụ n'adabereghị na onye na-agụ egwú (dịka ọmụmaatụ, n'oge mmepe).
  • Ebe a na-ahụkarị iji kesaa nhazi na ihe nzuzo.
  • Ebe njedebe maka metrik na ndekọ.

Kedu ihe kpatara Kubernetes adịghị mma maka anyị

Ka anyị na Kubernetes na-eme ihe, anyị chọpụtara na anyị na-agbakwunye mgbagwoju anya nke mgbagwoju anya nke anyị tụkwasịrị obi na ya.

Dịka ọmụmaatụ, Kubernetes na-akwado nhazi ọrụ arụnyere site na ConfigMaps. Ị nwere ike inwe mgbagwoju anya ngwa ngwa, karịsịa mgbe ị na-ejikọta ọtụtụ faịlụ nhazi ma ọ bụ tinyekwuo ọrụ na pọd. Kubernetes (ma ọ bụ ndewo n'okwu a) na-enye gị ohere ịme nhazi nhazi nke mpụga iji kewaa nchegbu. Mana nke a na-ebute njikọ siri ike, zoro ezo n'etiti ọrụ gị na Kubernetes. Agbanyeghị, Helm na ConfigMaps bụ nhọrọ agbakwunyere, yabụ na ịgaghị eji ha. Ị nwere ike iṅomi nhazi ahụ n'ime ihe oyiyi Docker. Agbanyeghị, ọ na-anwa anwa ịgbada n'ụzọ a wee wuo abstraction na-enweghị isi nke ị nwere ike ịkwa ụta ma emechaa.

Na mgbakwunye, gburugburu Kubernetes na-etolite ngwa ngwa. Ọ na-ewe oge na ume dị ukwuu iji mee ka ihe omume kacha mma na ngwaọrụ ndị kachasị ọhụrụ na-emekọrịta ihe. Kubectl, minikube, kubeadm, helm, tiller, kops, oc - ndepụta ahụ na-aga n'ihu. Ọ bụghị ngwaọrụ ndị a niile ka achọrọ mgbe ị na-amalite, mana ị maghị ihe ị ga-achọ, yabụ ịkwesịrị ịma ihe niile. N'ihi nke a, usoro mmụta dị oke elu.

Mgbe iji Kubernetes

Na ụlọ ọrụ anyị, ọtụtụ ndị na-eji Kubernetes ma nwee obi ụtọ na ya. Google ma ọ bụ Amazon na-ahụ maka ọnọdụ ndị a, ndị nwere akụrụngwa iji kwado ha.

Kubernetes na-abịa ịtụnanya atụmatụ, nke na-eme ka nhazi ngwa ngwa n'ọtụtụ dị mfe ijikwa:

  • Zuru ezu njikwa ikike.
  • Ndị njikwa omenala tinye mgbagha na ụyọkọ. Ndị a bụ mmemme na-agwa Kubernetes API okwu.
  • Autoscaling! Kubernetes nwere ike tụọ ọrụ n'ọchịchọ site na iji metrik ọrụ na-achọghị enyemaka aka.

Ajụjụ bụ ma ị chọrọ n'ezie atụmatụ ndị a niile. Ị nwere ike ọ bụghị naanị ịdabere na abstractions; ị ga-achọpụta ihe na-eme n'okpuru mkpuchi.

Ndị otu anyị na-enye ọtụtụ ọrụ n'ime ime (n'ihi njikọ chiri anya na akụrụngwa bụ isi), yabụ anyị achọghị ibulite ụyọkọ Kubernetes nke anyị. Naanị anyị chọrọ ịnye ọrụ.

Agụnyeghị batrị

Nomad bụ 20% nke orchestration nke na-enye 80% nke ihe achọrọ. Naanị ihe ọ na-eme bụ jikwaa nrụnye. Nomad na-elekọta ọrụ mbugharị, malitegharịa arịa ma ọ bụrụ na enwere njehie… ma nke ahụ bụ ya.

Isi ihe niile nke Nomad bụ ihe ọ na-eme opekempe: enweghị granular ikike njikwa ma ọ bụ atumatu netwọk agbatịkwuru, nke a ka emebere nke ọma. A na-enye ihe ndị a na mpụga ma ọ bụ na ọ bụghị ma ọlị.

Echere m na Nomad achọtala nkwekọrịta zuru oke n'etiti ịdị mfe nke iji na ịba uru. Ọ dị mma maka obere ọrụ ndị nọọrọ onwe ha. Ọ bụrụ na ịchọrọ njikwa karịa, ị ga-ebuli ha n'onwe gị ma ọ bụ jiri ụzọ dị iche. Nomad bụ naanị onye egwu egwu.

Ihe kacha mma gbasara Nomad bụ na ọ dị mfe dochie. Enweghị njikọ ọ bụla na onye na-ere ahịa, ebe ọ bụ na arụ ọrụ ya na-adị mfe ịbanye na sistemụ ọ bụla ọzọ na-ejikwa ọrụ. Ọ na-agba ọsọ dị ka ọnụọgụ abụọ mgbe niile na igwe ọ bụla dị na ụyọkọ, nke ahụ bụ ihe niile!

Sistemụ gburugburu ebe obibi nke akụrụngwa ejikọtara enweghị isi

Ezigbo ike Nomad bụ gburugburu ebe obibi ya. Ọ na-ejikọta nke ọma na ndị ọzọ - nhọrọ kpamkpam - ngwaahịa dịka Nkwuputa (ụlọ ahịa igodo-ọnụ ahịa) ma ọ bụ uko (ihe nzuzo nhazi). N'ime faịlụ Nomad enwere ngalaba maka iwepụta data na ọrụ ndị a:

template {
  data = <<EOH
LOG_LEVEL="{{key "service/geo-api/log-verbosity"}}"
API_KEY="{{with secret "secret/geo-api-key"}}{{.Data.value}}{{end}}"
EOH

  destination = "secrets/file.env"
  env         = true
}

Ebe a ka anyị na-agụ igodo service/geo-api/log-verbosity site na Consul na mgbe anyị na-arụ ọrụ anyị na-ekpughe ya na mgbanwe gburugburu ebe obibi LOG_LEVEL. Anyị na-ewetakwa igodo secret/geo-api-key sitere na Vault dị ka API_KEY. Dị mfe ma dị ike!

N'ihi ịdị mfe ya, Nomad na-arụ ọrụ ndị ọzọ ngwa ngwa site na API. Dịka ọmụmaatụ, a na-akwado mkpado maka ọrụ. Anyị na-eji metrik kpado ọrụ niile trv-metrics. Otu a Prometheus nwere ike ịchọta ọrụ ndị a n'ụzọ dị mfe site na Consul wee lelee njedebe njedebe /metrics maka ọhụrụ data. Enwere ike ime otu ihe ahụ, dịka ọmụmaatụ, maka ndekọ, iji Loki.

Enwere ọtụtụ ihe atụ ndị ọzọ nke extensibility:

  • Jiri nko rụọ ọrụ Jenkins, Consul na-enyocha nrụgharị nke ọrụ Nomad mgbe nhazi ọrụ gbanwere.
  • Ceph na-agbakwunye sistemụ faịlụ ekesara na Nomad.
  • fabio maka ibu itule.

Ihe a niile na-enye ohere organically ịzụlite akụrụngwa na-enweghị njikọ pụrụ iche na onye na-ere ahịa.

Ịdọ aka ná ntị ziri ezi

Ọ nweghị usoro zuru oke. Anaghị m akwado ozugbo iwebata njirimara kachasị ọhụrụ na mmepụta. N'ezie enwere chinchi na atụmatụ efu, mana otu ihe ahụ metụtara Kubernetes.

E jiri ya tụnyere Kubernetes, obodo Nomad abụghị nnukwu. Kubernetes enweela ihe dị ka 75 eme na ndị ntinye aka 000, ebe Nomad nwere ihe dị ka 2000 eme na ndị ntinye aka 14. Ọ ga-esiri ndị Nomad ike ịkwado ọsọ nke Kubernetes, mana ikekwe ọ gaghị adị mkpa! Ọ bụ sistemụ pụrụiche karịa, obodo nta pụtakwara na a ga-ahụrịrị arịrịọ gị ma nabata ya, ma e jiri ya tụnyere Kubernetes.

Nchịkọta

N'okpuru ala: Ejila Kubernetes naanị n'ihi na onye ọ bụla na-eme ya. Nyochaa ihe ị chọrọ nke ọma wee lelee ngwa ọrụ bara uru karị.

Ọ bụrụ na ị na-eme atụmatụ ibuga ọtụtụ ọrụ ọnụ na akụrụngwa buru ibu, yabụ Kubernetes bụ nhọrọ dị mma. Naanị mara maka mgbagwoju anya agbakwunyere na ụgwọ ọrụ. Enwere ike izere ụfọdụ ụgwọ site na iji gburugburu Kubernetes a na-achịkwa dịka Igwe Kubernetes nke Google ma ọ bụ Amazon EKS.

Ọ bụrụ na ị na-achọ naanị onye na-akụ egwu a pụrụ ịdabere na ya nke dị mfe idowe yana nke a na-emezigharị, gịnị ma ị nwaa Nomad? O nwere ike iju gị anya ókè nke a ga-eru gị.

Ọ bụrụ na atụnyere Kubernetes na ụgbọ ala, Nomad ga-abụ skuuta. Mgbe ụfọdụ, ị chọrọ otu ihe na mgbe ụfọdụ ị chọrọ ọzọ. Ha abụọ nwere ikike ịdị adị.

isi: www.habr.com

Tinye a comment