د هیلم امنیت

د کبرنیټس لپاره د خورا مشهور کڅوړې مدیر په اړه د کیسې جوهر د ایموجي په کارولو سره ښودل کیدی شي:

  • بکس هیلم دی (کوم چې د وروستي ایموجي ریلیز ته نږدې شی دی)؛
  • تالا - امنیت؛
  • کوچنی سړی د ستونزې حل دی.

د هیلم امنیت

په حقیقت کې، هرڅه به یو څه ډیر پیچلي وي، او کیسه د تخنیکي توضیحاتو څخه ډکه ده څنګه هیلم خوندي کړئ.

  • په لنډه توګه هیلم څه شی دی که تاسو نه پوهیږئ یا هیر شوي یاست. دا کومې ستونزې حل کوي او دا په ایکوسیستم کې چیرې موقعیت لري.
  • راځئ چې د هیلم معمارۍ ته وګورو. د امنیت او د یوې وسیلې یا حل حل کولو څرنګوالي په اړه هیڅ خبرې د برخې جوړښت له پوهیدو پرته بشپړ ندي.
  • راځئ چې د هیلم اجزاو په اړه بحث وکړو.
  • ترټولو سوځیدونکي پوښتنه راتلونکې ده - د هیلم 3 نوې نسخه. 

په دې مقاله کې هر څه په هیلم 2 کې پلي کیږي. دا نسخه اوس مهال په تولید کې ده او ډیری احتمال هغه نسخه ده چې تاسو یې اوس کاروئ، او دا هغه نسخه ده چې امنیتي خطرونه لري.


د سپیکر په اړه: الکساندر خایروف (الیکسکس) د 10 کلونو لپاره وده کوي، د منځپانګې ښه کولو کې مرسته کوي د مسکو پایتون کنف++ او په کمیټه کې شامل شو د هیلم غونډه. اوس هغه په ​​Chainstack کې د پرمختیایي مشر په توګه کار کوي - دا د پرمختیایي مدیر او یو کس ترمنځ یو هایبرډ دی چې د وروستي ریلیزونو وړاندې کولو مسولیت لري. دا دی، دا د جګړې په ډګر کې موقعیت لري، چیرې چې هرڅه د محصول له جوړولو څخه تر عملیاتو پورې پیښیږي.

Chainstack یو کوچنی، په فعاله توګه وده کوونکی پیل دی چې دنده یې د پیرودونکو ته وړتیا ورکول دي چې د غیر متمرکز غوښتنلیکونو عملیاتي زیربناوو او پیچلتیاو په اړه هیر کړي؛ پراختیایی ټیم په سینګاپور کې موقعیت لري. له چینسټیک څخه مه وغواړئ چې د کریپټو کرنسی پلور یا پیرود وکړي ، مګر د سوداګرۍ بلاکچین چوکاټونو په اړه د خبرو وړاندیز وکړئ ، او دوی به په خوښۍ سره تاسو ته ځواب ووایی.

خولۍ

دا د Kubernetes لپاره یو بسته (چارټ) مدیر دی. د کبرنیټس کلستر ته د غوښتنلیکونو راوستلو لپاره خورا هوښیار او نړیواله لاره.

د هیلم امنیت

موږ ، البته ، ستاسو د YAML څرګندونو رامینځته کولو او کوچني اسانتیاو لیکلو په پرتله د ډیر ساختماني او صنعتي چلند په اړه خبرې کوو.

هیلم ترټولو غوره دی چې اوس مهال شتون لري او مشهور دی.

ولې هیلم؟ په ابتدايي توګه ځکه چې دا د CNCF لخوا ملاتړ کیږي. Cloud Native یو لوی سازمان دی او د Kubernetes، etcd، Fluentd او نورو پروژو لپاره اصلي شرکت دی.

بل مهم حقیقت دا دی چې هیلم خورا مشهوره پروژه ده. کله چې ما د جنوري په 2019 کې د هیلم خوندي کولو څرنګوالي په اړه خبرې پیل کړې ، پروژې په GitHub کې زره ستوري درلودل. د می په میاشت کې د دوی شمیر 12 زره وو.

ډیری خلک د هیلم سره علاقه لري، نو حتی که تاسو یې تر اوسه نه کاروئ، تاسو به د هغې د امنیت په اړه پوهیدو څخه ګټه پورته کړئ. خوندیتوب مهم دی.

د هیلم اصلي ټیم د مایکروسافټ ازور لخوا ملاتړ کیږي او له همدې امله د ډیری نورو په پرتله خورا باثباته پروژه ده. د جولای په نیمایي کې د هیلم 3 الفا 2 خوشې کول په ګوته کوي چې په دې پروژه کې ډیر خلک کار کوي، او دوی د هیلم پراختیا او ښه کولو لپاره لیوالتیا او انرژي لري.

د هیلم امنیت

هیلم په کبرنیټس کې د غوښتنلیک مدیریت ډیری ریښې ستونزې حل کوي.

  • د غوښتنلیک بسته بندي. حتی یو غوښتنلیک لکه "هیلو، ورلډ" په ورڈپریس کې لا دمخه ډیری خدمتونه لري، او تاسو غواړئ دوی یوځای بسته کړئ.
  • د پیچلتیا اداره کول چې د دې غوښتنلیکونو اداره کولو سره راځي.
  • د ژوند دوره چې د غوښتنلیک نصب یا ځای پرځای کیدو وروسته پای ته نه رسیږي. دا ژوند ته دوام ورکوي، دا تازه کولو ته اړتیا لري، او هیلم پدې کې مرسته کوي او هڅه کوي چې د دې لپاره سم اقدامات او پالیسۍ راوړي.

کیسه کول دا په روښانه ډول تنظیم شوی: د لینکس ، وینډوز یا MacOS لپاره د منظم کڅوړې مدیر د کار سره په بشپړ ډول میټاډاټا شتون لري. دا، یو ذخیره، په مختلفو کڅوړو باندې انحصار، د غوښتنلیکونو لپاره میټا معلومات، ترتیبات، د ترتیب کولو ځانګړتیاوې، د معلوماتو لیست کول، او داسې نور. هیلم تاسو ته اجازه درکوي چې دا ټول د غوښتنلیکونو لپاره ترلاسه او وکاروئ.

د پیچلتیا مدیریت. که تاسو د ورته ډول ډیری غوښتنلیکونه لرئ، نو بیا پیرامیټریشن ته اړتیا ده. ټیمپلیټونه له دې څخه راځي، مګر د دې لپاره چې د ټیمپلیټونو جوړولو لپاره ستاسو د خپل طریقې سره مخ کیدو څخه مخنیوی وشي، تاسو کولی شئ هغه څه وکاروئ چې هیلم د بکس څخه بهر وړاندیز کوي.

د غوښتنلیک د ژوند دورې مدیریت - زما په اند، دا تر ټولو په زړه پورې او نه حل شوې پوښتنه ده. له همدې امله زه په ورځ کې بیرته هلمند ته راغلم. موږ اړتیا درلوده چې د غوښتنلیک د ژوند دورې ته پام وکړو او غوښتل یې چې زموږ CI/CD او د غوښتنلیک دورې دې تمثیل ته واړوو.

هیلم تاسو ته اجازه درکوي:

  • د ګمارنې اداره کول، د ترتیب او بیاکتنې مفهوم معرفي کوي؛
  • په بریالیتوب سره رول بیک ترسره کړئ؛
  • د مختلفو پیښو لپاره هکونه وکاروئ؛
  • د غوښتنلیک اضافي چکونه اضافه کړئ او د دوی پایلو ته ځواب ووایی.

سربیره پردې هیلم "بیټرۍ" لري - د خوندور شیانو لوی شمیر چې د پلگ انونو په شکل کې شامل کیدی شي ، ستاسو ژوند ساده کوي. پلگ انونه په خپلواک ډول لیکل کیدی شي ، دوی خورا جلا دي او همغږي جوړښت ته اړتیا نلري. که تاسو غواړئ یو څه پلي کړئ ، زه وړاندیز کوم چې دا د پلگ ان په توګه ترسره کړئ ، او بیا یې احتمالا په اپسټریم کې شامل کړئ.

هیلم په دریو اصلي مفکورو ولاړ دی:

  • چارټ ریپو - ستاسو د مینی فیسټ لپاره ممکن د پیرامیټریزیشن توضیحات او لړۍ. 
  • تړون - دا هغه ارزښتونه دي چې پلي کیږي (متن، شمیرې ارزښتونه، او نور).
  • اعلامیه دوه پورتنۍ برخې راټولوي، او یوځای دوی په ریلیز بدلوي. ریلیزونه نسخه کیدی شي، په دې توګه د ژوند منظم دوره ترلاسه کوي: د نصب کولو په وخت کې کوچني او د نوي کولو، ښکته کولو یا رول بیک په وخت کې لوی.

د هیلم معمارۍ

ډیاګرام په مفهوم سره د هیلم د لوړې کچې جوړښت انځوروي.

د هیلم امنیت

اجازه راکړئ تاسو ته یادونه وکړم چې هیلم یو څه دی چې د کوبرنیټس پورې اړه لري. نو ځکه، موږ نشو کولی د کوبرنیټس کلستر (مستطیل) پرته ترسره کړو. د کیوب اپیسرور برخه په ماسټر کې اوسیږي. د هیلم پرته موږ Kubeconfig لرو. هیلم یو کوچنی بائنری راوړي، که تاسو ورته ووایئ، د هیلم CLI یوټیلیټ، کوم چې په کمپیوټر، لپ ټاپ، مین فریم کې نصب شوی - په هر څه کې.

خو دا کافي نه ده. هیلم د سرور برخه لري چې د ټیلر په نوم یادیږي. دا په کلستر کې د هیلم د ګټو استازیتوب کوي؛ دا د کوبرنیټس کلستر کې یو غوښتنلیک دی، لکه د نورو په څیر.

د چارټ ریپو راتلونکی برخه د چارټونو سره ذخیره ده. یو رسمي ذخیره شتون لري، او ممکن د شرکت یا پروژې شخصي ذخیره وي.

متقابل عمل

راځئ وګورو چې د معمارۍ برخې څنګه تعامل کوي کله چې موږ غواړو د هیلم په کارولو سره غوښتنلیک نصب کړو.

  • موږ خبرې کوو Helm install، ذخیره (چارټ ریپو) ته لاسرسی ومومئ او د هیلم چارټ ترلاسه کړئ.

  • د هیلم یوټیلیټ (Helm CLI) د Kubeconfig سره اړیکه لري ترڅو معلومه کړي چې کوم کلستر سره اړیکه ونیسي. 
  • د دې معلوماتو په ترلاسه کولو سره، افادیت ټیلر ته اشاره کوي، کوم چې زموږ په کلستر کې موقعیت لري، د غوښتنلیک په توګه. 
  • ټیلر د کوبی اپیسرور غږ کوي ترڅو په کوبرنیټس کې عملونه ترسره کړي ، ځینې شیان رامینځته کړي (خدمتونه ، پوډونه ، عکسونه ، رازونه او نور).

بیا به موږ ډیاګرام پیچلی کړو ترڅو د برید ویکتور وګورو چې د هیلم ټول جوړښت په بشپړ ډول څرګند کیدی شي. او بیا به موږ د هغې د ساتنې هڅه وکړو.

د برید ویکتور

لومړی احتمالي ضعیف ټکی دی مراعات شوي API-کارن. د سکیم د یوې برخې په توګه، دا یو هیکر دی چې د هیلم CLI ته د اډمین لاسرسی ترلاسه کړی.

بې امتیازه API کارونکي که چیرې دا نږدې ځای وي نو خطر هم رامینځته کولی شي. دا ډول کاروونکي به مختلف شرایط ولري، د بیلګې په توګه، هغه د Kubeconfig ترتیباتو کې په یو کلستر نوم ځای کې ټاکل کیدی شي.

ترټولو په زړه پورې برید ویکتور ممکن داسې پروسه وي چې د ټیلر سره نږدې په کلستر کې اوسیږي او کولی شي ورته لاسرسی ومومي. دا کیدای شي یو ویب سرور یا مایکرو خدمت وي چې د کلستر شبکې چاپیریال ګوري.

یو بهرنی، مګر په زیاتیدونکي توګه مشهور، د برید ډول د چارټ ریپو شامل دی. یو چارټ چې د بې ایمانه لیکوال لخوا رامینځته شوی ممکن ناامنه سرچینې ولري، او تاسو به یې د باور په اخیستلو سره بشپړ کړئ. یا دا کولی شي هغه چارټ بدل کړي چې تاسو یې د رسمي ذخیره څخه ډاونلوډ کړئ او د بیلګې په توګه، د پالیسیو په بڼه یوه سرچینه جوړه کړئ او د هغې لاسرسی زیات کړئ.

د هیلم امنیت

راځئ هڅه وکړو چې د دې ټولو څلورو خواوو بریدونو مخه ونیسو او معلومه کړو چې د هیلم په جوړښت کې ستونزې شتون لري او چیرته، شاید، هیڅ شتون نلري.

راځئ چې ډیاګرام پراخه کړو، نور عناصر اضافه کړو، مګر ټول اساسي برخې وساتئ.

د هیلم امنیت

هیلم CLI د چارټ ریپو سره اړیکه نیسي، د Kubeconfig سره اړیکه نیسي، او کار کلستر ته د ټیلر برخې ته لیږدول کیږي.

ټیلر د دوو شیانو لخوا استازیتوب کیږي:

  • Tiller-deploy svc، کوم چې یو ځانګړی خدمت افشا کوي؛
  • د ټیلر ډیپلای پوډ (په یوه نقل کې په یو واحد کاپي کې په ډیاګرام کې) ، په کوم کې چې ټول بار چلیږي ، کوم چې کلستر ته لاسرسی لري.

د متقابل عمل لپاره مختلف پروتوکولونه او سکیمونه کارول کیږي. د امنیت له نظره، موږ خورا لیوالتیا لرو:

  • هغه میکانیزم چې له مخې یې هیلم CLI د چارټ ریپو ته لاسرسی لري: کوم پروتوکول، ایا تصدیق شتون لري او د دې سره څه کیدی شي.
  • هغه پروتوکول چې له مخې یې هیلم CLI، د کیوبیکل په کارولو سره، د ټیلر سره اړیکه نیسي. دا یو RPC سرور دی چې په کلستر کې نصب شوی.
  • ټیلر پخپله مایکرو خدماتو ته د لاسرسي وړ دی چې په کلستر کې اوسیږي او د کیوب اپیسرور سره اړیکه لري.

د هیلم امنیت

راځئ چې د دې ټولو برخو په ترتیب سره بحث وکړو.

RBAC

په کلستر کې د هیلم یا کوم بل خدمت لپاره د امنیت په اړه خبرې کول هیڅ معنی نلري پرته لدې چې RBAC فعال شوی وي.

داسې بریښي چې دا وروستی وړاندیز ندی ، مګر زه ډاډه یم چې ډیری خلکو لاهم په تولید کې حتی RBAC نه دی فعال کړی ، ځکه چې دا خورا ګډوډي ده او ډیری شیان تنظیم کولو ته اړتیا لري. په هرصورت، زه تاسو هڅوم چې دا کار وکړئ.

د هیلم امنیت

https://rbac.dev/ - د RBAC لپاره د ویب پاڼې وکیل. دا په زړه پورې موادو خورا لوی مقدار لري چې تاسو سره به د RBAC تنظیم کولو کې مرسته وکړي ، وښیې چې ولې دا ښه دی او څنګه په تولید کې د دې سره اساسا ژوند وکړئ.

زه به هڅه وکړم چې تشریح کړم چې ټیلر او RBAC څنګه کار کوي. ټیلر د یو ځانګړي خدمت حساب لاندې کلستر کې کار کوي. عموما، که RBAC ترتیب شوی نه وي، دا به سوپر کاروونکي وي. په لومړني ترتیب کې، ټیلر به یو مدیر وي. له همدې امله ډیری وختونه ویل کیږي چې ټیلر ستاسو کلستر ته د SSH تونل دی. په حقیقت کې، دا ریښتیا ده، نو تاسو کولی شئ په پورتني انځور کې د ډیفالټ خدمت حساب پرځای یو جلا وقف شوي خدمت حساب وکاروئ.

کله چې تاسو هیلم پیل کړئ او د لومړي ځل لپاره یې په سرور کې نصب کړئ، تاسو کولی شئ د خدماتو حساب په کارولو سره تنظیم کړئ --service-account. دا به تاسو ته اجازه درکړي چې د لږ تر لږه اړین حقونو سیټ سره یو کاروونکي وکاروئ. ریښتیا، تاسو باید دا ډول "مال" جوړ کړئ: رول او رول بانډنګ.

د هیلم امنیت

له بده مرغه، هیلم به ستاسو لپاره دا کار ونه کړي. تاسو یا ستاسو د Kubernetes کلستر مدیر ته اړتیا لرئ چې د خدمت حساب لپاره د رولونو او رول بانډنګونو سیټ مخکې له مخکې چمتو کړئ ترڅو هیلم ته لاړ شئ.

پوښتنه راپورته کیږي - د رول او کلستر رول ترمینځ څه توپیر دی؟ توپیر دا دی چې ClusterRole د ټولو نوم ځایونو لپاره کار کوي، د منظم رولونو او رول بانډنګونو برعکس، کوم چې یوازې د ځانګړي نوم ځای لپاره کار کوي. تاسو کولی شئ د ټول کلستر او ټولو نوم ځایونو لپاره پالیسي ترتیب کړئ، یا په انفرادي توګه د هر نوم ځای لپاره شخصي کړئ.

دا د یادولو وړ ده چې RBAC بله لویه ستونزه حل کوي. ډیری خلک شکایت کوي چې هیلم، له بده مرغه، څو اړخیزه نه ده (ملتړ نه کوي). که څو ټیمونه یو کلستر مصرف کړي او هیلم وکاروي، دا په اصل کې ناشونې ده چې پالیسي جوړه کړي او په دې کلستر کې د دوی لاسرسی محدود کړي، ځکه چې د یو ځانګړي خدمت حساب شتون لري چې هیلم پرمخ ځي، او دا په کلستر کې ټولې سرچینې د هغې لاندې جوړوي. ، کوم چې ځینې وختونه خورا ناامنه وي. دا ریښتیا ده - د بائنری فایل په څیر پخپله، د پروسې په څیر، هیلم ټیلر د ملټيټینانس مفهوم نلري.

په هرصورت، یوه غوره لاره شتون لري چې تاسو ته اجازه درکوي څو څو ځله په کلستر کې ټیلر چل کړئ. پدې کې کومه ستونزه نشته، ټیلر په هر نوم ځای کې پیل کیدی شي. په دې توګه، تاسو کولی شئ RBAC، Kubeconfig د شرایطو په توګه وکاروئ، او ځانګړي هیلم ته لاسرسی محدود کړئ.

دا به داسې ښکاري.

د هیلم امنیت

د مثال په توګه، د مختلفو ټیمونو لپاره د شرایطو سره دوه Kubeconfigs شتون لري (دوه نوم ځایونه): د پراختیا ټیم او د مدیر کلستر لپاره X ټیم. د اډمین کلستر خپل پراخه ټیلر لري، کوم چې د کوبی سیسټم نوم ځای کې موقعیت لري، د ورته پرمختللي خدماتو حساب. او د پراختیایي ټیم لپاره جلا نوم ځای، دوی به وکولی شي خپل خدمات په ځانګړي نوم ځای کې ځای په ځای کړي.

دا د کار وړ طریقه ده، ټیلر دومره د بریښنا لوږه نه ده چې دا به ستاسو بودیجه ډیره اغیزه وکړي. دا یو له چټک حلونو څخه دی.

د ټیلر په جلا توګه تنظیم کولو لپاره وړیا احساس وکړئ او د ټیم لپاره د شرایطو سره Kubeconfig چمتو کړئ، د ځانګړي پراختیا کونکي یا چاپیریال لپاره: دیو، سټینګ، تولید (دا شک نشته چې هرڅه به په ورته کلستر کې وي، په هرصورت، دا ترسره کیدی شي).

زموږ د کیسې په دوام، راځئ چې د RBAC څخه تیر شو او د ConfigMaps په اړه وغږیږو.

ConfigMaps

هیلم د خپل ډیټا ذخیره په توګه ConfigMaps کاروي. کله چې موږ د معمارۍ په اړه خبرې وکړې، هیڅ کوم ډیټابیس شتون نلري چې د ریلیزونو، ترتیبونو، رول بیکس، او نور په اړه معلومات ذخیره کړي. ConfigMaps د دې لپاره کارول کیږي.

د ConfigMaps سره اصلي ستونزه معلومه ده - دوی په اصولو کې ناامنه دي؛ د حساسو معلوماتو ذخیره کول ناممکن دي. موږ د هر هغه څه په اړه خبرې کوو چې باید د خدماتو څخه بهر نشي، د بیلګې په توګه، پاسورډونه. همدا اوس د هیلم لپاره ترټولو اصلي لاره دا ده چې د ConfigMaps کارولو څخه رازونو ته واړول شي.

دا خورا ساده ترسره کیږي. د ټیلر تنظیم کول اوورډ کړئ او مشخص کړئ چې ذخیره به راز وي. بیا د هرې ګمارنې لپاره تاسو به د ConfigMap نه ترلاسه کړئ، مګر یو راز.

د هیلم امنیت

تاسو استدلال کولی شئ چې رازونه پخپله یو عجیب مفهوم دی او ډیر خوندي ندي. په هرصورت، دا د پوهیدو وړ ده چې د Kubernetes پراختیا کونکي پخپله دا کار کوي. د 1.10 نسخه څخه پیل کیږي، i.e. د یو څه مودې لپاره ، دا ممکنه وه ، لږترلږه په عامه بادلونو کې ، د رازونو ذخیره کولو لپاره سم ذخیره وصل کړئ. ټیم اوس په داسې لارو کار کوي چې رازونو، انفرادي پوډونو، یا نورو ادارو ته د لاسرسي ښه توزیع کړي.

دا غوره ده چې د ذخیره کولو هیلم رازونو ته انتقال کړئ، او دوی، په پایله کې، په مرکزي توګه خوندي شوي.

البته دا به پاتې شي د معلوماتو ذخیره کولو حد د 1 MB. هیلم دلته د ConfigMaps لپاره د توزیع شوي ذخیره په توګه etcd کاروي. او هلته دوی فکر وکړ چې دا د نقل کولو لپاره د ډیټا مناسبه برخه وه، او داسې نور. په ریډیټ کې پدې اړه په زړه پوري بحث شتون لري ، زه وړاندیز کوم چې د اونۍ پای لپاره دا مسخره لوستل ومومئ یا استخراج ولولئ دلته.

چارټ ریپوز

چارټونه ترټولو ټولنیز زیان منونکي دي او کولی شي د "مین په مینځ کې د انسان" سرچینه شي، په ځانګړې توګه که تاسو د ذخیره حل کاروئ. له هرڅه دمخه ، موږ د ذخیره کولو په اړه خبرې کوو چې د HTTP له لارې افشا شوي.

تاسو حتما اړتیا لرئ د HTTPS په اړه هیلم ریپو افشا کړئ - دا غوره انتخاب دی او ارزانه دی.

پاملرنه وکړه د چارټ لاسلیک میکانیزم. ټیکنالوژي د دوزخ په څیر ساده ده. دا هماغه شی دی چې تاسو یې په GitHub کې کاروئ، د عامه او خصوصي کیلي سره منظم PGP ماشین. تنظیم کړئ او ډاډ ترلاسه کړئ چې اړین کیلي ولرئ او هرڅه لاسلیک کړئ چې دا واقعیا ستاسو چارټ دی.

سربیره پردې، د هیلم پیرودونکي د TLS ملاتړ کوي (نه د سرور اړخ HTTP احساس کې، مګر دوه اړخیز TLS). تاسو کولی شئ د خبرو اترو لپاره د سرور او مراجعینو کیلي وکاروئ. د ریښتیني کیدو لپاره ، زه دا ډول میکانیزم نه کاروم ځکه چې زه دوه اړخیز سندونه نه خوښوم. په اصل کې، چارټ میوزیم - د هیلم 2 لپاره د هیلم ریپو تنظیم کولو اصلي وسیله - د لومړني تصدیق ملاتړ هم کوي. تاسو کولی شئ بنسټیز سند وکاروئ که چیرې دا خورا اسانه او خاموش وي.

یو پلگ ان هم شتون لري helm-gcs، کوم چې تاسو ته اجازه درکوي په ګوګل کلاوډ ذخیره کې د چارټ ریپوز کوربه توب وکړئ. دا خورا اسانه دی ، عالي کار کوي او خورا خوندي دی ، ځکه چې ټول بیان شوي میکانیزمونه ریسایکل شوي.

د هیلم امنیت

که تاسو HTTPS یا TLS فعال کړئ، mTLS وکاروئ، او د خطرونو د کمولو لپاره بنسټیز سند فعال کړئ، تاسو به د هیلم CLI او چارټ ریپو سره یو خوندي ارتباطي چینل ترلاسه کړئ.

gRPC API

بل ګام خورا مهم دی - د ټیلر خوندي کولو لپاره، کوم چې په کلستر کې موقعیت لري او له یوې خوا، سرور دی، له بلې خوا، دا پخپله نورو برخو ته لاسرسی لري او هڅه کوي چې یو څوک وي.

لکه څنګه چې ما مخکې وویل، ټیلر یو خدمت دی چې gRPC افشا کوي، د هیلم پیرودونکی دې ته د gRPC له لارې راځي. د ډیفالټ په واسطه، البته، TLS غیر فعال دی. ولې دا ترسره شوی یو د بحث وړ پوښتنه ده، داسې ښکاري چې ما په پیل کې تنظیم کول ساده کړي.

د تولید او حتی سټیګینګ لپاره، زه په gRPC کې د TLS فعالولو وړاندیز کوم.

زما په نظر، د چارټونو لپاره د mTLS برعکس، دا دلته مناسب دی او په ساده ډول ترسره کیږي - د PQI زیربنا رامینځته کړئ، یو سند جوړ کړئ، ټیلر پیل کړئ، د پیل کولو پرمهال سند انتقال کړئ. له دې وروسته، تاسو کولی شئ د هیلم ټول حکمونه اجرا کړئ، خپل ځان د تولید شوي سند او شخصي کیلي سره وړاندې کړئ.

د هیلم امنیت

پدې توګه تاسو به خپل ځان د کلستر څخه بهر ټیلر ته د ټولو غوښتنو څخه خوندي کړئ.

نو، موږ ټیلر ته د اتصال چینل خوندي کړی، موږ دمخه د RBAC په اړه بحث کړی او د Kubernetes apiserver حقونه یې تنظیم کړي، هغه ډومین کموي چې ورسره اړیکه کولی شي.

د هیلم ساتل

راځئ چې وروستی ډیاګرام وګورو. دا د ورته تیرونو سره ورته جوړښت دی.

د هیلم امنیت

ټولې اړیکې اوس په خوندي ډول په شنه رنګ کې کیدی شي:

  • د چارټ ریپو لپاره موږ TLS یا mTLS او بنسټیز سند کاروو؛
  • د ټیلر لپاره mTLS، او دا د TLS سره د gRPC خدمت په توګه ښکاره شوی، موږ سندونه کاروو؛
  • کلستر د رول او رول بانډنګ سره د ځانګړي خدماتو حساب کاروي. 

موږ د پام وړ کلستر خوندي کړی دی، مګر یو هوښیار وویل:

"یوازې یو بشپړ خوندي حل کیدی شي - یو بند شوی کمپیوټر چې په کانکریټ بکس کې موقعیت لري او د سرتیرو لخوا ساتل کیږي."

د معلوماتو سمبالولو او د نوي برید ویکتورونو موندلو لپاره مختلفې لارې شتون لري. په هرصورت، زه ډاډه یم چې دا وړاندیزونه به د خوندیتوب لپاره د صنعت بنسټیز معیار ترلاسه کړي.

بونس

دا برخه په مستقیم ډول له امنیت سره تړاو نه لري، بلکې ګټور به وي. زه به تاسو ته ځینې په زړه پورې شیان وښیم چې لږ خلک یې په اړه پوهیږي. د مثال په توګه، څنګه د چارټونو لټون کول - رسمي او غیر رسمي.

په ذخیره کې github.com/helm/charts اوس شاوخوا 300 چارټونه او دوه جریانونه شتون لري: مستحکم او انکیوبیټر. هر هغه څوک چې مرسته کوي په ښه توګه پوهیږي چې د انکیوبټر څخه مستحکم ته رسیدل څومره ستونزمن دي، او د ثبات څخه بهر الوتنه څومره اسانه ده. په هرصورت، دا د پرومیټیوس لپاره د چارټونو لټون کولو لپاره غوره وسیله نه ده او هر هغه څه چې تاسو یې خوښوي، د یو ساده دلیل لپاره - دا یو پورټل ندی چیرې چې تاسو په اسانۍ سره د کڅوړو لټون کولی شئ.

مګر یو خدمت شتون لري hub.helm.sh، کوم چې دا د چارټونو موندلو لپاره خورا اسانه کوي. خورا مهم ، دلته ډیری بهرني ذخیره شتون لري او نږدې 800 چارمونه شتون لري. برسیره پردې، تاسو کولی شئ خپل ذخیره وصل کړئ که د کوم دلیل لپاره تاسو نه غواړئ خپل چارټونه ثبات ته واستوئ.

hub.helm.sh هڅه وکړئ او راځئ چې په ګډه یې وده وکړو. دا خدمت د هیلم پروژې لاندې دی، او تاسو حتی کولی شئ د دې UI سره مرسته وکړئ که تاسو د مخکښې پای پراختیا کونکي یاست او یوازې غواړئ ظاهري ښه کړئ.

زه هم غواړم ستاسو پام ورته راواړوم د خدماتو بروکر API ادغام خلاص کړئ. دا ستونزمن او ناڅرګند ښکاري، مګر دا هغه ستونزې حل کوي چې هرڅوک ورسره مخ دي. اجازه راکړئ په ساده مثال سره تشریح کړم.

د هیلم امنیت

دلته د Kubernetes کلستر شتون لري په کوم کې چې موږ غواړو یو کلاسیک غوښتنلیک پرمخ بوځو - WordPress. عموما، د بشپړ فعالیت لپاره ډیټابیس ته اړتیا ده. ډیری مختلف حلونه شتون لري، د بیلګې په توګه، تاسو کولی شئ خپل دولتي خدمت پیل کړئ. دا خورا اسانه نه دی، مګر ډیری خلک یې کوي.

نور، زموږ په څیر په Chainstack کې، د دوی سرورونو لپاره اداره شوي ډیټابیسونه لکه MySQL یا PostgreSQL کاروي. له همدې امله زموږ ډیټابیسونه په بادل کې موقعیت لري.

مګر یوه ستونزه رامینځته کیږي: موږ اړتیا لرو خپل خدمت د ډیټابیس سره وصل کړو ، د ډیټابیس خوند رامینځته کړو ، اعتبار انتقال کړو او یو څه یې اداره کړو. دا ټول معمولا د سیسټم مدیر یا پراختیا کونکي لخوا په لاسي ډول ترسره کیږي. او کومه ستونزه نشته کله چې لږ غوښتنلیکونه شتون ولري. کله چې دوی ډیری وي، تاسو یو ترکیب ته اړتیا لرئ. داسې یو حاصل کونکی شتون لري - دا د خدماتو بروکر دی. دا تاسو ته اجازه درکوي د عامه کلاوډ کلستر لپاره ځانګړي پلگ ان وکاروئ او د بروکر له لارې چمتو کونکي څخه سرچینې ترتیب کړئ ، لکه څنګه چې دا یو API وي. د دې کولو لپاره، تاسو کولی شئ د کوبرنیټس اصلي وسیلې وکاروئ.

دا خورا ساده دی. تاسو کولی شئ پوښتنه وکړئ ، د مثال په توګه ، په Azure کې د اساس ټایر سره اداره شوی MySQL (دا تنظیم کیدی شي). د Azure API په کارولو سره، ډیټابیس به جوړ او د کارولو لپاره چمتو شي. تاسو اړتیا نلرئ پدې کې مداخله وکړئ، پلگ ان د دې لپاره مسؤل دی. د مثال په توګه، OSBA (Azure plugin) به خدمت ته اعتبار بیرته راولي او هیلم ته به یې انتقال کړي. تاسو به وکولی شئ د کلاوډ مای ایس کیو ایل سره ورڈپریس وکاروئ ، په هیڅ ډول د مدیریت شوي ډیټابیسونو سره معامله مه کوئ او دننه د دولتي خدماتو په اړه اندیښنه مه کوئ.

موږ کولی شو ووایو چې هیلم د ګوتو په توګه کار کوي چې له یوې خوا تاسو ته اجازه درکوي خدمتونه ځای په ځای کړئ او له بلې خوا د بادل چمتو کونکو سرچینې مصرف کړئ.

تاسو کولی شئ خپل پلگ ان ولیکئ او دا ټوله کیسه په اساس وکاروئ. بیا به تاسو په ساده ډول د کارپوریټ کلاوډ چمتو کونکي لپاره خپل پلگ ان ولرئ. زه د دې تګلارې هڅه کولو وړاندیز کوم، په ځانګړې توګه که تاسو لویه پیمانه لرئ او غواړئ په چټکۍ سره د یو ځانګړتیا لپاره dev، سټینګ، یا ټول زیربنا ځای پرځای کړئ. دا به ستاسو د عملیاتو یا DevOps لپاره ژوند اسانه کړي.

بله موندنه چې ما مخکې یادونه کړې ده helm-gcs پلگ ان، کوم چې تاسو ته اجازه درکوي د هیلم چارټونو ذخیره کولو لپاره د ګوګل بالټ (د شیانو ذخیره) وکاروئ.

د هیلم امنیت

تاسو د دې کارولو پیل کولو لپاره یوازې څلور امرونو ته اړتیا لرئ:

  1. پلگ ان نصب کړئ؛
  2. پیل یې کړئ؛
  3. بالټ ته لاره وټاکئ، کوم چې په gcp کې موقعیت لري؛
  4. چارټونه په معیاري ډول خپاره کړئ.

ښکلا دا ده چې اصلي Gcp میتود به د اختیار لپاره وکارول شي. تاسو کولی شئ د خدماتو حساب وکاروئ، د پراختیا کونکي حساب، هر هغه څه چې تاسو یې غواړئ. دا خورا اسانه دی او د چلولو لپاره هیڅ لګښت نلري. که تاسو، زما په څیر، د غیر فعال فلسفې ته وده ورکړئ، نو دا به خورا اسانه وي، په ځانګړې توګه د کوچنیو ټیمونو لپاره.

بدیلونه

هیلم یوازې د خدماتو مدیریت حل ندی. د دې په اړه ډیری پوښتنې شتون لري، چې شاید ولې دریمه نسخه په چټکۍ سره ښکاره شوه. البته، بدیلونه شتون لري.

دا کیدای شي ځانګړي حلونه وي، د بیلګې په توګه، Ksonnet یا Metaparticle. تاسو کولی شئ خپل د کلاسیک زیربنا مدیریت وسیلې وکاروئ (Ansible, Terraform, Chef, etc.) د ورته موخو لپاره چې ما یې په اړه خبرې وکړې.

په نهایت کې یو حل شتون لري د چلونکي چوکاټ، چې شهرت یې مخ په ډیریدو دی.

د آپریټر چوکاټ د غور کولو لپاره غوره هیلم بدیل دی.

دا د CNCF او Kubernetes لپاره ډیر اصلي دی، مګر د ننوتلو خنډ ډیر لوړ دی، تاسو اړتیا لرئ ډیر برنامه وکړئ او لږ توضیحات بیان کړئ.

مختلف اډونونه شتون لري، لکه مسوده، سکافولډ. دوی ژوند خورا اسانه کوي، د بیلګې په توګه، دوی د آزموینې چاپیریال ځای پرځای کولو لپاره د پراختیا کونکو لپاره د هیلم لیږلو او پیل کولو دوره ساده کوي. زه به دوی ته ځواک ورکوونکي وایم.

دلته یو بصری چارټ دی چیرې چې هرڅه شتون لري.

د هیلم امنیت

په ایکس محور کې د هغه څه په اړه ستاسو د شخصي کنټرول کچه ده چې پیښیږي ، په y محور کې د کوبرنیټس د اصليت کچه ​​ده. د هیلم نسخه 2 په مینځ کې یو ځای راځي. په 3 نسخه کې، په پراخه کچه نه، مګر د کنټرول او د اصليت کچه ​​دواړه ښه شوي. د Ksonnet په کچه حلونه حتی د هیلم 2 په پرتله خورا ټیټ دي. په هرصورت، دوی د لیدلو ارزښت لري ترڅو پوه شي چې په دې نړۍ کې نور څه دي. البته، ستاسو د ترتیب مدیر به ستاسو تر کنټرول لاندې وي، مګر دا په بشپړ ډول د کوبرنیټس اصلي نه دی.

د آپریټر چوکاټ په بشپړ ډول د کوبرنیټس اصلي دی او تاسو ته اجازه درکوي چې دا خورا ډیر په زړه پوري او په احتیاط سره اداره کړئ (مګر د ننوتلو کچې په اړه په یاد ولرئ). بلکه، دا د یو ځانګړي غوښتنلیک او د هغې لپاره د مدیریت رامینځته کولو لپاره مناسب دی، نه د هیلم په کارولو سره د ډیری غوښتنلیکونو بسته کولو لپاره د ډله ایزو راټولولو په ځای.

تمدید کونکي په ساده ډول یو څه کنټرول ښه کوي ، د کاري جریان بشپړوي ، یا د CI/CD پایپ لاینونو کونجونه پرې کوي.

د هیلم راتلونکی

ښه خبر دا دی چې هیلم 3 راځي. د هیلم 3.0.0-alpha.2 الفا نسخه لا دمخه خپره شوې ، تاسو یې هڅه کولی شئ. دا خورا باثباته دی، مګر فعالیت لاهم محدود دی.

تاسو ولې هیلم 3 ته اړتیا لرئ؟ تر ټولو لومړی، دا یوه کیسه ده د ټیلر ورکیدلد یوې برخې په توګه. دا، لکه څنګه چې تاسو دمخه پوهیږئ، یو لوی ګام دی، ځکه چې د معمارۍ د امنیت له نظره، هرڅه ساده شوي.

کله چې هیلم 2 رامینځته شو، کوم چې د کوبرنیټس 1.8 یا حتی مخکې وخت کې و، ډیری مفکورې ناپاک وې. د مثال په توګه، د CRD مفهوم اوس په فعاله توګه پلي کیږي، او هیلم به CRD وکاروئد جوړښتونو ذخیره کول. دا به ممکنه وي چې یوازې پیرودونکي وکاروئ او د سرور برخه نه ساتي. په دې اساس، د جوړښتونو او سرچینو سره کار کولو لپاره اصلي کوبرنیټس کمانډونه وکاروئ. دا یو لوی ګام دی.

ښکاره به شي د اصلي OCI ذخیره کولو لپاره ملاتړ (د خلاص کانټینر نوښت). دا یو لوی نوښت دی، او هیلم په ابتدايي توګه د خپلو چارټونو د پوسټ کولو لپاره لیوالتیا لري. دا دې ټکي ته راځي چې د مثال په توګه ، ډاکر هب د ډیری OCI معیارونو ملاتړ کوي. زه اټکل نه کوم ، مګر شاید د کلاسیک ډاکر ذخیره چمتو کونکي به تاسو ته د خپل هیلم چارټونو کوربه توب فرصت درکړي.

زما لپاره متنازع کیسه ده د لوا ملاتړد سکریپټ لیکلو لپاره د ټیمپلینګ انجن په توګه. زه د لوا لوی پرستار نه یم، مګر دا به په بشپړه توګه اختیاري ځانګړتیا وي. ما دا 3 ځله چیک کړ - د لوا کارول به اړین نه وي. له همدې امله ، هغه څوک چې غواړي د لوا کارولو وړ وي ، هغه څوک چې ګو خوښوي ، زموږ لوی کمپ کې ګډون وکړئ او د دې لپاره go-tmpl وکاروئ.

په نهایت کې ، هغه څه چې زه یقینا ورک وم د سکیما ظهور او د معلوماتو ډول تایید. د int یا تار سره به نور ستونزې شتون ونلري ، په دوه ګونی نرخونو کې صفر وتړلو ته اړتیا نشته. د JSONS سکیما به ښکاره شي چې تاسو ته به اجازه درکړي چې دا د ارزښتونو لپاره په واضح ډول تشریح کړئ.

په کلکه به بیا کار وشي د پیښې پرمخ وړل ماډل. دا لا دمخه په مفهوم تشریح شوی. د هیلم 3 څانګې ته وګورئ، او تاسو به وګورئ چې څومره پیښې او هکونه او نور شیان اضافه شوي، کوم چې به خورا ساده کړي او له بلې خوا به د دوی د ځای پرځای کولو پروسو او عکس العملونو کنټرول اضافه کړي.

هیلم 3 به ساده، خوندي او ډیر ساتیري وي، نه دا چې موږ هیلم 2 نه خوښوو، مګر دا چې کوبرنیټس ډیر پرمختللی کیږي. په دې اساس، هیلم کولی شي د کبرنیټس پرمختګونه وکاروي او په دې کې د کبرنیټس لپاره غوره مدیران رامینځته کړي.

بل ښه خبر دا دی DevOpsConf الکساندر خیوروف به تاسو ته ووایي، ایا کانتینرونه خوندي کیدی شي؟ راځئ چې تاسو ته یادونه وکړو چې د پراختیا، ازموینې او عملیاتي پروسو د ادغام کنفرانس به په مسکو کې جوړ شي د سپتمبر 30 او اکتوبر 1. تاسو کولی شئ دا د اګست تر 20 پورې ترسره کړئ راپور وړاندې کړئ او موږ ته د حل سره د خپلې تجربې په اړه ووایاست یو له ډیرو څخه د DevOps طریقې دندې.

د کنفرانس پوستې او خبرونه تعقیب کړئ خبر پاڼه и د ټیلیګرام چینل.

سرچینه: www.habr.com

Add a comment