Програм хангамжийг хөгжүүлэх, байршуулах орчин үеийн платформ

Энэ нь удахгүй гарах Red Hat OpenShift платформ 4.0 шинэчлэлтийн өөрчлөлт, сайжруулалт, нэмэлтүүдийн тухай цуврал нийтлэлүүдийн эхнийх нь бөгөөд таныг шинэ хувилбар руу шилжихэд бэлтгэхэд тань туслах болно.

Програм хангамжийг хөгжүүлэх, байршуулах орчин үеийн платформ

2014 оны намар Google-ийн Сиэттл оффис дээр дөнгөж хөл тавьж буй Кубернетес нийгэмлэг анх цугларсан тэр мөчөөс эхлэн Кубернетес төсөл нь өнөө үед программ хангамжийг хөгжүүлж, байршуулах аргад хувьсгал хийх зорилготой байсан нь тодорхой байсан. Үүний зэрэгцээ, нийтийн үүлэн үйлчилгээ үзүүлэгчид дэд бүтэц, үйлчилгээг хөгжүүлэхэд идэвхтэй хөрөнгө оруулалт хийсээр байсан нь мэдээллийн технологитой ажиллах, програм хангамжийг бий болгоход илүү хялбар, хүртээмжтэй болгож, гайхалтай хүртээмжтэй болгосон бөгөөд үүнийг эхэн үед цөөхөн хүн төсөөлж байсан. арван жил.

Мэдээжийн хэрэг, шинэ үүлэн үйлчилгээ бүрийг зарлах нь Twitter дэх мэргэжилтнүүдийн дунд олон тооны хэлэлцүүлэг дагалдаж, нээлттэй эхийн эрин төгсгөл, дотоод мэдээллийн технологийн бууралт, зайлшгүй байх зэрэг олон сэдвээр мэтгэлцээн өрнүүлсэн. үүлэн дэх шинэ программ хангамжийн монополийн тухай, шинэ парадигм X бусад бүх парадигмуудыг хэрхэн орлох талаар.

Энэ бүх маргаан их тэнэг байсныг хэлэх нь илүүц биз

Бодит байдал нь юу ч алга болохгүй бөгөөд өнөөдөр бидний амьдралд шинэ програм хангамж байнга гарч ирснээр эцсийн бүтээгдэхүүн, тэдгээрийг боловсруулах арга зам нь экспоненциал өсөлтийг харж байна. Хэдийгээр эргэн тойронд байгаа бүх зүйл өөрчлөгдөх боловч мөн чанартаа бүх зүйл өөрчлөгдөөгүй хэвээр байх болно. Програм хангамж хөгжүүлэгчид алдаатай код бичсээр байх болно, үйл ажиллагааны инженерүүд болон найдвартай байдлын мэргэжилтнүүд пейжерүүдтэй хамт явж, Slack-д автомат дохио хүлээн авах болно, менежерүүд OpEx болон CapEx-ийн дагуу ажиллах болно, алдаа гарах бүрт ахлах хөгжүүлэгч "Би чамд хэлсэн" гэсэн үгээр гунигтай санаа алддаг ...

Өө нээрээ хэлэлцэх ёстой, гэдэг нь илүү сайн програм хангамжийн бүтээгдэхүүн бий болгохын тулд бидэнд ямар хэрэгсэл байж болох, тэдгээр нь аюулгүй байдлыг хэрхэн сайжруулж, хөгжлийг хялбар, найдвартай болгох вэ? Төслүүд илүү төвөгтэй болохын хэрээр шинэ эрсдэлүүд бий болж, өнөөдөр хүмүүсийн амьдрал програм хангамжаас ихээхэн хамааралтай болсон тул хөгжүүлэгчид зүгээр л ажлаа илүү сайн хийхийг хичээхээс өөр аргагүй болдог.

Kubernetes бол ийм хэрэгсэл юм. Red Hat OpenShift-ийг бусад хэрэгсэл, үйлчилгээтэй хослуулан нэг платформд нэгтгэх ажил хийгдэж байгаа бөгөөд ингэснээр программ хангамжийг илүү найдвартай, удирдахад хялбар, хэрэглэгчдэд аюулгүй болгоно.

Үүнтэй холбогдуулан OpenShift баг нэг энгийн асуулт асууж байна:

Та Кубернетестэй хэрхэн ажиллахыг илүү хялбар, хялбар болгох вэ?

Хариулт нь гайхалтай тодорхой байна:

  • үүлэн дээр эсвэл үүлний гадна талд байршуулах нарийн төвөгтэй талуудыг автоматжуулах;
  • нарийн төвөгтэй байдлыг нуухын зэрэгцээ найдвартай байдалд анхаарлаа хандуулах;
  • энгийн бөгөөд аюулгүй шинэчлэлтүүдийг гаргахын тулд үргэлжлүүлэн ажиллах;
  • хяналт, аудит хийх боломжтой байх;
  • Эхний ээлжинд өндөр аюулгүй байдлыг хангахыг хичээх хэрэгтэй, гэхдээ ашиглах боломжтой байдлын зардлаар биш.

OpenShift-ийн дараагийн хувилбар нь бүтээгчдийн туршлага болон дэлхийн хамгийн том компаниудад програм хангамжийг өргөн хүрээнд хэрэгжүүлж буй бусад хөгжүүлэгчдийн туршлагыг харгалзан үзэх ёстой. Нэмж дурдахад орчин үеийн ертөнцийн үндэс болсон нээлттэй экосистемийн бүх хуримтлагдсан туршлагыг харгалзан үзэх ёстой. Үүний зэрэгцээ сонирхогчийн хөгжүүлэгчийн хуучин сэтгэлгээг орхиж, автоматжуулсан ирээдүйн шинэ философи руу шилжих шаардлагатай байна. Энэ нь програм хангамжийг ашиглах хуучин болон шинэ аргуудын хоорондох ялгааг арилгах, хамгийн том үүлэн үйлчилгээ үзүүлэгчийн байршуулсан эсвэл захын жижиг систем дээр ажиллаж байгаа эсэхээс үл хамааран боломжтой бүх дэд бүтцийн давуу талыг бүрэн ашиглах шаардлагатай.

Энэ үр дүнд хэрхэн хүрэх вэ?

Red Hat-д байгуулагдсан нийгэмлэгийг хадгалах, компанийн оролцож буй төслүүдийг хаахаас урьдчилан сэргийлэхийн тулд уйтгартай, талархалгүй ажлыг удаан хугацаанд хийдэг заншилтай байдаг. Нээлттэй эх сурвалжийн нийгэмлэг нь зугаа цэнгэл, боловсрол, шинэ боломжуудыг нээж өгдөг, зүгээр л үзэсгэлэнтэй, ер бусын зүйлсийг бүтээдэг асар олон тооны авъяаслаг хөгжүүлэгчдийг агуулдаг боловч мэдээжийн хэрэг, хэн ч хүн бүр нэг чиглэлд шилжих эсвэл нийтлэг зорилгын төлөө ажиллахыг хүлээхгүй. . Энэ энергийг ашиглах, зөв ​​чиглэлд чиглүүлэх нь заримдаа хэрэглэгчиддээ ашиг тустай салбаруудыг хөгжүүлэхэд зайлшгүй шаардлагатай байдаг ч бид хамт олныхоо хөгжлийг хянаж, тэднээс суралцах ёстой.

2018 оны эхээр Red Hat нь ирээдүйн талаар ижил төстэй үзэл бодолтой, илүү найдвартай, найдвартай, нээлттэй эхийн зарчмаар бүтээгдсэн CoreOS төслийг худалдаж авсан. Компани нь эдгээр санааг цаашид хөгжүүлж, хэрэгжүүлэхийн төлөө ажиллаж, бүх программ хангамжийг аюулгүй ажиллуулахын тулд бидний философийг практикт нэвтрүүлсэн. Энэ бүх ажлыг Kubernetes, Linux, нийтийн үүл, хувийн үүл болон манай орчин үеийн дижитал экосистемийг үндэслэдэг мянга мянган төслүүд дээр бүтээдэг.

OpenShift 4-ийн шинэ хувилбар нь ойлгомжтой, автоматжуулсан, илүү байгалийн байх болно

OpenShift платформ нь хамгийн сайн, найдвартай Линукс үйлдлийн системүүдтэй ажиллах бөгөөд нүцгэн металлын техник хангамж, тохиромжтой виртуалчлал, автомат дэд бүтцийн програмчлал, мэдээжийн хэрэг контейнерууд (энэ нь үндсэндээ зүгээр л Линуксийн зургууд юм).

Платформ нь эхнээсээ аюулгүй байх ёстой, гэхдээ хөгжүүлэгчдийг амархан давтах, өөрөөр хэлбэл хангалттай уян хатан, аюулгүй байхын зэрэгцээ администраторуудад үүнийг хялбархан шалгаж, удирдах боломжийг олгодог.

Энэ нь программ хангамжийг "үйлчилгээний хэлбэрээр" ажиллуулах боломжийг олгож, операторуудын дэд бүтцийн зохицуулалтгүй өсөлтөд хүргэхгүй байх ёстой.

Энэ нь хөгжүүлэгчдэд хэрэглэгчид болон үйлчлүүлэгчдэд зориулсан бодит бүтээгдэхүүн бий болгоход анхаарлаа төвлөрүүлэх боломжийг олгоно. Та техник хангамж, програм хангамжийн тохиргооны ширэнгэн ойг туулах шаардлагагүй бөгөөд санамсаргүй тохиолдсон бүх хүндрэлүүд өнгөрсөн зүйл болно.

OpenShift 4: Засвар үйлчилгээ шаарддаггүй NoOps платформ

В энэ нийтлэлийг OpenShift 4-ийн талаарх компанийн алсын харааг тодорхойлоход тусалсан эдгээр ажлуудыг тодорхойлсон. Багийн зорилго нь програм хангамжийг ажиллуулах, засварлах өдөр тутмын ажлыг аль болох хялбарчилж, эдгээр үйл явцыг хэрэгжүүлэхэд оролцож буй мэргэжилтнүүд болон хөгжүүлэгчдэд хялбар, тайван байлгахад оршино. Гэхдээ та энэ зорилгодоо хэрхэн ойртох вэ? Хамгийн бага оролцоо шаарддаг програм хангамжийг ажиллуулах платформыг хэрхэн бий болгох вэ? Энэ нөхцөлд NoOps нь юу гэсэн үг вэ?

Хэрэв та хийсвэрлэх гэж оролдвол хөгжүүлэгчдийн хувьд "сервергүй" эсвэл "NoOps" гэсэн ойлголтууд нь "үйл ажиллагааны" бүрэлдэхүүн хэсгийг нуух эсвэл хөгжүүлэгчийн ачааллыг багасгах боломжийг олгодог хэрэгсэл, үйлчилгээ гэсэн үг юм.

  • Системтэй биш, харин програмын интерфейстэй (API) ажиллана.
  • Програм хангамжийг хэрэгжүүлэхэд бүү санаа зов - үйлчилгээ үзүүлэгч танд үүнийг хийхийг зөвшөөр.
  • Нэн даруй том хүрээ үүсгэх гэж бүү яараарай - "барилгын блок" үүрэг гүйцэтгэх жижиг хэсгүүдийг бичиж эхлээрэй, энэ кодыг диск болон мэдээллийн сантай биш харин өгөгдөл, үйл явдалтай ажиллахыг хичээгээрэй.

Зорилго нь өмнөх шигээ програм хангамжийн хөгжүүлэлтийн давталтыг хурдасгах, илүү сайн бүтээгдэхүүн бий болгох боломжийг олгох бөгөөд ингэснээр хөгжүүлэгч өөрийн програм хангамжийн систем дээр санаа зовохгүй байх явдал юм. Туршлагатай хөгжүүлэгч нь хэрэглэгчдэд анхаарлаа төвлөрүүлэх нь зургийг хурдан өөрчлөх боломжтой гэдгийг сайн мэддэг тул шаардлагатай гэдэгт бүрэн итгэлтэй биш л бол програм хангамж бичихэд хэт их хүчин чармайлт гаргаж болохгүй.

Засвар үйлчилгээ, үйл ажиллагааны мэргэжилтнүүдийн хувьд "NoOps" гэдэг үг бага зэрэг аймшигтай сонсогдож магадгүй юм. Гэхдээ хээрийн инженерүүдтэй харилцахдаа найдвартай, найдвартай байдлыг хангахад чиглэсэн тэдний ашигладаг хэв маяг, арга техникүүд (Сайтын найдвартай байдлын инженерчлэл, SRE) дээр дурдсан загвартай олон ижил төстэй байдаг нь илт харагдаж байна.

  • Системийг бүү удирдаарай - тэдгээрийн удирдлагын үйл явцыг автоматжуулах.
  • Програм хангамжийг бүү хэрэглээрэй - үүнийг байрлуулах шугамыг үүсгэ.
  • Бүх үйлчилгээгээ нэгтгэж, нэг нь бүтэлгүйтсэн нь бүхэл системийг доголдуулахаас зайлсхийж, автоматжуулалтын хэрэгслийг ашиглан тэдгээрийг бүхэлд нь дэд бүтцээрээ тарааж, хянаж, хянах боломжтой байдлаар холбоно уу.

SRE нь ямар нэг зүйл буруу болж болзошгүйг мэддэг бөгөөд тэд асуудлыг хайж олох, засах шаардлагатай байдаг тул тэд ердийн ажлыг автоматжуулж, алдааны төсвийг урьдчилан тогтоодог тул асуудал гарахад тэргүүлэх ач холбогдол өгч, шийдвэр гаргахад бэлэн байдаг.

OpenShift дахь Kubernetes нь хоёр үндсэн асуудлыг шийдвэрлэхэд зориулагдсан платформ юм: виртуал машин эсвэл ачааллын тэнцвэржүүлэгч API-г ойлгохыг албадахын оронд энэ нь илүү өндөр түвшний хийсвэрлэлүүд - байршуулах процессууд болон үйлчилгээнүүдтэй ажилладаг. Програм хангамжийн агентуудыг суулгахын оронд та контейнер ажиллуулж, өөрийн хяналтын стек бичихийн оронд платформ дээр байгаа хэрэгслүүдийг ашиглаж болно. Тиймээс, OpenShift 4-ийн нууц сумс нь үнэхээр нууц биш бөгөөд зөвхөн SRE зарчмууд болон сервергүй ойлголтуудыг авч, тэдгээрийг логик дүгнэлтэд хүргэх нь хөгжүүлэгчид болон үйл ажиллагааны инженерүүдэд туслах явдал юм.

  • Аппликешнүүдийн ашигладаг дэд бүтцийг автоматжуулж, стандартчилах
  • Хөгжүүлэгчдийг өөрсдөө хязгаарлахгүйгээр байршуулах, хөгжүүлэх үйл явцыг хооронд нь холбоно уу
  • XNUMX дахь үйлчилгээ, онцлог, програм эсвэл бүх стекийг эхлүүлэх, шалгах, аюулгүй болгох нь эхнийхээс илүү хэцүү биш гэдгийг баталгаажуулах.

Гэхдээ OpenShift 4 платформ болон түүний өмнөх хувилбаруудын хооронд ийм асуудлыг шийдвэрлэх "стандарт" арга барилаас ялгаа нь юу вэ? Хэрэгжилт болон үйл ажиллагааны багуудын цар хүрээг юу хөдөлгөдөг вэ? Энэ нөхцөл байдалд байгаа хаан нь бөөгнөрөл юм. Тэгэхээр,

  • Бид кластеруудын зорилго тодорхой байгаа эсэхийг шалгадаг (Эрхэм үүл минь, би боломжтой учраас энэ кластерыг авсан)
  • Кластерт үйлчлэх машинууд болон үйлдлийн системүүд байдаг (Эрхэм дээдэс)
  • Хостуудын төлөвийг кластераас удирдаж, тэдгээрийн дахин бүтээн байгуулалтыг багасгах (зөрөх).
  • Системийн чухал элемент бүрийн хувьд асуудлыг хянаж, арилгах сувилагч (механизм) шаардлагатай
  • Системийн *бүх* тал эсвэл элемент болон холбогдох нөхөн сэргээх механизмын бүтэлгүйтэл нь амьдралын хэвийн хэсэг юм
  • Дэд бүтцийг бүхэлд нь API-ээр тохируулсан байх ёстой.
  • Kubernetes-ийг ажиллуулахын тулд Kubernetes-ийг ашиглана уу. (Тиймээ, тийм ээ, энэ нь үсгийн алдаа биш)
  • Шинэчлэлтүүдийг суулгахад хялбар, хүндрэлгүй байх ёстой. Хэрэв шинэчлэлт суулгахын тулд нэгээс олон товшилт шаардлагатай бол бид ямар нэг буруу зүйл хийж байгаа нь ойлгомжтой.
  • Аливаа бүрэлдэхүүн хэсгийг хянах, дибаг хийх нь асуудал үүсгэх ёсгүй тул бүх дэд бүтцэд хяналт тавих, тайлагнах нь хялбар бөгөөд тохиромжтой байх ёстой.

Платформын чадавхийг хэрхэн ажиллаж байгааг харахыг хүсч байна уу?

OpenShift 4-ийн урьдчилан үзэх хувилбарыг хөгжүүлэгчид ашиглах боломжтой болсон. Ашиглахад хялбар суулгагчийн тусламжтайгаар та Red Had CoreOS дээр AWS дээр кластер ажиллуулж болно. Урьдчилан үзэхийг ашиглахын тулд танд зөвхөн дэд бүтцээр хангах AWS бүртгэл болон урьдчилан үзэх зургуудад хандах багц данс хэрэгтэй.

  1. Эхлэхийн тулд дараах руу очно уу try.openshift.com болон "Эхлэх" дээр дарна уу.
  2. Red Hat данс руугаа нэвтэрч (эсвэл шинээр үүсгэнэ үү) зааврыг дагаж анхны кластераа тохируулна уу.

Амжилттай суулгасны дараа манай зааварчилгааг үзнэ үү OpenShift сургалтOpenShift 4 платформыг Kubernetes-ийг ажиллуулахад хялбар бөгөөд тохиромжтой болгох систем, үзэл баримтлалын талаар илүү гүнзгий ойлголттой болох.

OpenShift-ийн шинэ хувилбарыг туршиж үзээд санал бодлоо хуваалцаарай. Бид Kumbernetes-тэй ажиллахыг аль болох хүртээмжтэй, хялбар болгохыг зорьж байна—NoOps-ийн ирээдүй өнөөдрөөс эхэлнэ.

Одоо анхаарлаа хандуулаарай!
Бага хурлын үеэр DevOpsForum 2019 20-р сарын 37-нд OpenShift хөгжүүлэгчдийн нэг Вадим Рутковский мастер анги зохион байгуулна - тэр арван кластерыг эвдэж, тэдгээрийг засахыг албадах болно. Хурал төлбөртэй боловч # RedHat сурталчилгааны кодоор та XNUMX% хямдралтай

Мастер анги 17:15 - 18:15, стенд өдөржингөө нээлттэй. Подволк, малгай, наалт - ердийн зүйл!

№2 танхим
"Энд системийг бүхэлд нь өөрчлөх шаардлагатай: бид эвдэрсэн k8-ийн кластеруудыг баталгаажуулсан механикчуудтай хамтран засдаг."


Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх