Iwe unogona kunge usingade Kubernetes

Iwe unogona kunge usingade Kubernetes
Musikana ari pascooter. Mufananidzo freepik, Nomad logo kubva HashiCorp

Kubernetes ndiyo 300-pound gorilla yemidziyo orchestration. Inoshanda mune mamwe makuru emidziyo masisitimu munyika, asi inodhura.

Kunyanya kudhura kune zvikwata zvidiki, izvo zvinoda nguva yakawanda yetsigiro uye yakadzika yekudzidza curve. Izvi zvakawandisa kuchikwata chedu chevana. Saka takatanga kutsvaga dzimwe nzira - uye takadanana nazvo Nomad.

Unodei

Chikwata chedu chinotsigira akati wandei akajairika maitiro ekutarisa uye ekuongorora masevhisi: API endpoints yemametrics akanyorwa muGo, Prometheus kunze kwenyika, log parsers seLogstash uye. Gollum, pamwe nemadhatabhesi akadai seInfluxDB kana Elasticsearch. Imwe neimwe yemasevhisi aya inomhanya mumudziyo wayo. Tinoda hurongwa huri nyore kuti hurambe huchishanda.

Takatanga nerondedzero yezvinodiwa zvemidziyo orchestration:

  • Kumhanyisa seti yemasevhisi pamichina yakawanda.
  • Mhedziso yekumhanya masevhisi.
  • Links pakati pemasevhisi.
  • Otomatiki restart kana sevhisi yadzika.
  • Kugadziriswa kwezvivakwa nechikwata chidiki.

Mukuwedzera, zvinhu zvinotevera zvichave zvakanaka, asi zvisingadiwe kuwedzera:

  • Michina yekumaka inoenderana nekugona kwavo (semuenzaniso, michina yekumaka ine madhisiki ekukurumidza kune inorema I/O masevhisi).
  • Kugona kumhanyisa masevhisi wakazvimirira kubva kune orchestrator (semuenzaniso, panguva yekuvandudza).
  • Nzvimbo yakajairika yekugovana zvigadziriso uye zvakavanzika.
  • Endpoint yemametrics uye matanda.

Nei Kubernetes isina kunaka kwatiri

Sezvo isu tichiratidzira naKubernetes, takaona kuti isu taiwedzera zvakanyanya kuomarara zvikamu zvepfungwa zvataivimba nazvo zvakanyanya.

Semuenzaniso, Kubernetes inotsigira yakavakirwa-mukati sevhisi zvigadziriso kuburikidza ConfigMaps. Iwe unogona kukurumidza kuvhiringika, kunyanya kana uchibatanidza akawanda mafaera ekugadzirisa kana kuwedzera mamwe masevhisi kune pod. Kubernetes (kana mutungamiriri mune iyi kesi) inokutendera iwe kuti ushandise zvine simba zvigadziriso zvekunze kuparadzanisa zvinonetsa. Asi izvi zvinoguma nekubatana, kwakavanzika pakati peprojekti yako neKubernetes. Nekudaro, Helm neConfigMaps ndedzimwe sarudzo, saka haufanirwe kuzvishandisa. Iwe unogona kungoteedzera gadziriso muDocker mufananidzo. Nekudaro, zvinoyedza kuenda pasi nenzira iyi uye kuvaka zvisingakodzeri zvekubvisa zvaungademba gare gare.

Pamusoro pezvo, iyo Kubernetes ecosystem iri kubuda nekukurumidza. Zvinotora nguva yakawanda nesimba kuti ugare uchifambirana nenguva nemaitiro akanaka uye zvishandiso zvitsva. Kubectl, minikube, kubeadm, helm, tiller, kops, oc - rondedzero inoenderera ichienderera. Haasi ese maturusi aya anodiwa paunenge uchitanga, asi iwe hauzive zvauchazoda, saka unofanirwa kuziva nezve zvese. Nekuda kweizvi, nhanho yekudzidza inokwira zvakanyanya.

Nguva yekushandisa Kubernetes

Mukambani yedu, vanhu vazhinji vanoshandisa Kubernetes uye vanofara nazvo. Izvi zviitiko zvinotungamirirwa neGoogle kana Amazon, vane zviwanikwa zvekuvatsigira.

Kubernetes inouya ne zvinoshamisa zvinhu, izvo zvinoita kuti kurongeka kwemudziyo pachiyero kugone kudzoreka:

  • Detailed kutarisira kodzero.
  • Custom controllers wedzera pfungwa kune cluster. Aya angori mapurogiramu anotaura neKubernetes API.
  • Autoscaling! Kubernetes inogona kuyera masevhisi pane inodiwa ichishandisa masevhisi metrics uye isingade kupindira kwemaoko.

Mubvunzo ndewekuti unotoda zvese izvi maficha. Iwe haugone kungovimba nezvakatorwa; iwe unofanirwa kuona kuti chii chiri kuitika pasi pehodhi.

Chikwata chedu chinopa masevhisi mazhinji kure (nekuda kwekubatana kwepedyo kune mainfrastructure), saka isu hatina kuda kusimudza yedu Kubernetes cluster. Isu taingoda kupa masevhisi.

Mabhatiri haana kuiswa

Nomad i20% ye orchestration inopa 80% yezvinodiwa. Zvese zvainoita maneja deployments. Nomad anotarisira kutumirwa, anotangazve midziyo kana paine zvikanganiso ... uye ndizvozvo.

Pfungwa yese yaNomad ndozvainoita zvishoma: hapana granular kodzero manejimendi kana yakawedzera network policy, izvi zvakanyatsogadzirwa. Izvi zvikamu zvinopihwa kunze kana kwete zvachose.

Ini ndinofunga Nomad akawana kuwirirana kwakakwana pakati pekureruka kwekushandisa uye kushandiswa. Yakanakira mabasa madiki, akazvimirira. Kana iwe uchida humwe hutongi, iwe unofanirwa kuvasimudza iwe pachako kana kushandisa imwe nzira. Nomad ndiye zvakarurama orchestrator.

Chinhu chakanakisa nezveNomad ndechekuti zviri nyore kutsiva. Iko chaiko hakuna chinongedzo kune mutengesi, sezvo mabasa ayo akabatanidzwa nyore nyore mune chero imwe sisitimu inobata masevhisi. Inongomhanya sebhinari yenguva dzose pamushini wega wega musumbu, ndizvo zvese!

Nomad ecosystem yezvinhu zvakasununguka zvakabatanidzwa

Simba chairo raNomad ndiyo ecosystem yayo. Inobatanidza zvakanyanya nezvimwe - zvachose sarudzo - zvigadzirwa zvakadai Consum (key-value store) kana rakatenderera (kugadzirisa zvakavanzika). Mukati meNomad faira mune zvikamu zvekutora data kubva kune aya masevhisi:

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
}

Pano tinoverenga kiyi service/geo-api/log-verbosity kubva kuConsul uye tichishanda tinoiisa pachena kune inoshanduka nharaunda LOG_LEVEL. Isu tinopawo kiyi secret/geo-api-key kubva kuVault se API_KEY. Zviri nyore asi zvine simba!

Nekuda kwekureruka kwayo, Nomad inowedzera nyore nemamwe masevhisi kuburikidza neAPI. Semuenzaniso, ma tag emabasa anotsigirwa. Isu tinomaka masevhisi ese nemametrics trv-metrics. Nenzira iyi Prometheus inogona kuwana nyore masevhisi aya kuburikidza neConsul uye nguva nenguva tarisa iyo yekupedzisira /metrics kune data nyowani. Izvo zvinogona kuitwa, semuenzaniso, kune matanda, kushandisa Loki.

Kune mimwe mienzaniso yakawanda yekuwedzera:

  • Mhanya basa reJenkins uchishandisa chirauro, uye Consul anotarisisa kutumirwazve kwebasa reNomad kana masevhisi achinja.
  • Ceph inowedzera yakagoverwa faira system kuNomad.
  • fabio nokuda kwekugadzirisa mutoro.

Zvose izvi zvinobvumira organically gadzira zvivakwa pasina chero yakakosha kubatana kune mutengesi.

Yambiro yakanaka

Hapana hurongwa hwakakwana. Ini handikurudzire kuunza nekukurumidza zvinhu zvitsva mukugadzira. Ehe kune tsikidzi uye zvisipo maficha, asi zvakafanana zvinoshanda kuKubernetes.

Kuenzaniswa naKubernetes, nharaunda yeNomad haina kukura kudaro. Kubernetes atove neanongoita zviuru makumi manomwe neshanu uye zviuru zviviri zvevapi, nepo Nomad aine zviuru gumi nezvina zvezvipo uye mazana matatu vanopa. Nomad ichave nenguva yakaoma yekuenderana nekumhanya kweKubernetes, asi pamwe hazvifanirwe! Iyo yakawedzera hunyanzvi sisitimu, uye nharaunda diki zvinoreva zvakare kuti chikumbiro chako chekudhonza chinogona kucherechedzwa nekugamuchirwa, zvichienzaniswa neKubernetes.

Summary

Pazasi mutsara: Usashandise Kubernetes nekuda kwekuti munhu wese ari kuzviita. Nyatsoongorora zvaunoda uye tarisa kuti ndechipi chishandiso chinonyanya kubatsira.

Kana iwe ukaronga kuendesa toni yehomogeneous masevhisi pane yakakura-chiyero masisitimu, saka Kubernetes isarudzo yakanaka. Ingoziva nezvekuwedzera kuoma uye mari yekushandisa. Mimwe mari inogona kudzivirirwa nekushandisa yakachengetedzwa Kubernetes nharaunda senge Google Kubernetes Injini kana Amazon EKS.

Kana iwe uchingotsvaga yakavimbika orchestrator iri nyore kuchengetedza uye kuwedzera, wadii kuedza Nomad? Unogona kushamisika kuti izvi zvichakusvitsa kupi.

Kana Kubernetes akafananidzwa nemota, Nomad angave scooter. Dzimwe nguva unoda chimwe chinhu uye dzimwe nguva unoda chimwe. Vose vane kodzero yekuvepo.

Source: www.habr.com

Voeg