ایا د Kubernetes کلستر چمتو کول اسانه او اسانه دي؟ د اډون آپریټر اعلان کول

ایا د Kubernetes کلستر چمتو کول اسانه او اسانه دي؟ د اډون آپریټر اعلان کول

وروسته شیل چلونکی موږ د هغه مشر ورور وړاندې کوو - addon-operator. دا د خلاصې سرچینې پروژه ده چې د کوبرنیټس کلستر کې د سیسټم اجزاو نصبولو لپاره کارول کیږي ، کوم چې د اضافو په نوم یادیږي.

ولې کوم اضافې په ټوله کې؟

دا هیڅ راز پټ نه دی چې کوبرنیټس یو بشپړ چمتو شوی محصول نه دی، او د "بالغ" کلستر جوړولو لپاره تاسو مختلف اضافو ته اړتیا لرئ. اډون آپریټر به تاسو سره د دې اضافو نصبولو ، تنظیم کولو او ساتلو کې مرسته وکړي.

په کلستر کې د اضافي اجزاوو اړتیا په کې ښکاره شوې راپور همکاران ډریوشا. په لنډه توګه، دا مهال د کوبرنیټس سره وضعیت داسې دی چې د ساده "شاوخوا لوبې" نصبولو لپاره تاسو کولی شئ د بکس څخه بهر اجزاو سره ترلاسه کړئ ، د پراختیا کونکو او ازموینې لپاره تاسو کولی شئ انګریس اضافه کړئ ، مګر د بشپړ نصب لپاره ، پدې اړه. تاسو کولی شئ ووایئ "ستاسو تولید چمتو دی"، تاسو اړتیا لرئ د درجن مختلف اضافو سره اضافه کړئ: د څارنې لپاره یو څه، د ننوتلو لپاره یو څه، د ننوتلو او سند مدیر مه هیروئ، د نوډونو ګروپونه غوره کړئ، د شبکې پالیسۍ اضافه کړئ، موسم د sysctl او پوډ آټوسکلر ترتیباتو سره ...

ایا د Kubernetes کلستر چمتو کول اسانه او اسانه دي؟ د اډون آپریټر اعلان کول

د دوی سره د کار کولو ځانګړتیاوې څه دي؟

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

نو، شاید ځواب ویونکی به دلته کافي وي؟ امکان لری. خو په عموم کې، بشپړ اضافې د ترتیباتو پرته ژوند نه کوي. دا ترتیبات ممکن د کلستر ډول (aws, gce, Azure, bare-metal, do, ...) پورې اړه ولري توپیر ولري. ځینې ​​​​ترتیبات دمخه نشي مشخص کیدی؛ دوی باید د کلستر څخه ترلاسه شي. او کلستر جامد نه دی: د ځینو ترتیباتو لپاره تاسو باید د بدلونونو څارنه وکړئ. او دلته ځواب ورکونکی لا دمخه ورک دی: تاسو یو برنامه ته اړتیا لرئ چې په کلستر کې ژوند کوي، د بیلګې په توګه. د کوبرنیټس آپریټر.

هغه چا چې دا په کار کې هڅه کړې شیل چلونکی، دوی به ووایی چې د اضافه کولو او نظارت تنظیماتو نصب او تازه کولو دندې په بشپړ ډول د کارولو سره حل کیدی شي. هکس د شیل آپریټر لپاره. تاسو کولی شئ یو سکریپټ ولیکئ چې مشروط به یې وکړي kubectl apply او څارنه، د مثال په توګه، ConfigMap، چیرته چې ترتیبات به زیرمه شي. دا تقریبا هغه څه دي چې په اډون آپریټر کې پلي کیږي.

دا په اډون آپریټر کې څنګه تنظیم شوی؟

کله چې یو نوی حل رامینځته کړئ، موږ د لاندې اصولو څخه کار اخلو:

  • د اضافه انسټالر باید ملاتړ وکړي نمونه او اعلاناتي ترتیب. موږ جادو سکریپټونه نه جوړوو چې اضافې نصبوي. اډون آپریټر د اډونونو نصبولو لپاره هیلم کاروي. د نصبولو لپاره، تاسو اړتیا لرئ یو چارټ جوړ کړئ او هغه ارزښتونه غوره کړئ چې د ترتیب لپاره به کارول کیږي.
  • ترتیبات کیدی شي په نصبولو سره تولید کړئ، دوی کیدی شي له کلستر څخه ترلاسه کړئ، یا تازه معلومات ترلاسه کړئد کلستر سرچینو څارنه. دا عملیات د هکونو په کارولو سره پلي کیدی شي.
  • ترتیبات کیدی شي په یوه کلستر کې ذخیره کول. په کلستر کې د ترتیباتو ذخیره کولو لپاره، یو ConfigMap/addon-operator جوړ شوی او د اډون آپریټر په دې ConfigMap کې بدلونونه څاري. اډون آپریټر د ساده کنوانسیونونو په کارولو سره تنظیماتو ته هک ته لاسرسی ورکوي.
  • اضافه کول په ترتیباتو پورې اړه لري. که ترتیبات بدل شوي وي، نو د اډون آپریټر د هیلم چارټ د نوي ارزښتونو سره راوباسي. موږ د هیلم چارټ ترکیب ته وایو، د دې لپاره ارزښتونه او یو ماډل هک کوي (د نورو جزیاتو لپاره لاندې وګورئ).
  • سټینګ. د جادو خوشې کولو سکریپټونه شتون نلري. د تازه کولو میکانیزم یو منظم غوښتنلیک ته ورته دی - په عکس کې اضافه او اډون آپریټرونه راټول کړئ ، دوی یې ټګ کړئ او رول یې کړئ.
  • د پایلې کنټرول. اډون آپریټر کولی شي د پرومیتیس لپاره میټریک چمتو کړي.

په اډون آپریټر کې پیډینګ څه شی دی؟

اضافه کول هر هغه څه په پام کې نیول کیدی شي چې کلستر ته نوې دندې اضافه کوي. د مثال په توګه، د انګریس نصب کول د اضافه کولو عالي مثال دی. دا د خپل CRD سره کوم آپریټر یا کنټرولر کیدی شي: prometheus-operator، cert-manager، kube-controller-manager، او داسې نور. یا یو څه کوچنی، مګر کارول یې اسانه دي - د بیلګې په توګه، پټ کاپیر، کوم چې د راجستر رازونه نوي نوم ځایونو ته کاپي کوي، یا sysctl tuner، کوم چې په نوي نوډونو کې د sysctl پیرامیټونه تنظیموي.

د اضافو پلي کولو لپاره، اډون آپریټر ډیری مفکورې وړاندې کوي:

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

دا برخې څنګه یوځای کار کوي؟ راځئ چې د اسنادو څخه عکس وګورو:

ایا د Kubernetes کلستر چمتو کول اسانه او اسانه دي؟ د اډون آپریټر اعلان کول

دوه کاري سناریوګانې شتون لري:

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

اضافه کولی شي د یو واحد هک په توګه پلي شي، یا د یو هیلم چارټ په توګه، یا حتی د څو انحصاري ماډلونو په څیر - دا په کلستر کې د نصب شوي برخې پیچلتیا او د تنظیم کولو انعطاف مطلوب کچې پورې اړه لري. د مثال په توګه، په ذخیره کې (/مثالونه) دلته د sysctl-tuner اضافو شتون لري، چې دواړه د یو ساده ماډل په توګه د هک او هیلم چارټ سره پلي کیږي، او د ارزښتونو پلورنځي په کارولو سره، کوم چې د ConfigMap په ایډیټ کولو سره د ترتیباتو اضافه کول ممکنه کوي.

د تازه معلوماتو تحویل

د اجزاو تازه کولو تنظیم کولو په اړه یو څو ټکي چې اډون آپریټر نصب کوي.

په کلستر کې د اډون آپریټر چلولو لپاره ، تاسو اړتیا لرئ د اضافه کولو سره یو انځور جوړ کړئ د هک او هیلم چارټ فایلونو په بڼه، د بائنری فایل اضافه کړئ addon-operator او هرڅه چې تاسو د هکس لپاره اړتیا لرئ: bash, kubectl, jq, python etc بیا دا عکس د منظم غوښتنلیک په توګه کلستر ته لیږدول کیدی شي، او ډیری احتمال به تاسو د یو یا بل ټیګ کولو سکیم تنظیم کړئ. که چیرې یو څو کلسترونه شتون ولري، د غوښتنلیکونو په څیر ورته چلند ممکن مناسب وي: نوې خپرونه، نوې نسخه، د ټولو کلسترونو له لارې لاړ شئ او د پوډونو انځور سم کړئ. په هرصورت، د پام وړ شمیر کلسترونو ته د رول آوټ په صورت کې، د چینل څخه د ځان تازه کولو مفهوم زموږ لپاره ډیر مناسب و.

دلته موږ دا څنګه کوو:

  • یو چینل په اصل کې یو پیژندونکی دی چې هر څه ته ټاکل کیدی شي (د مثال په توګه، dev/stage/ea/stable).
  • د چینل نوم د عکس ټګ دی. کله چې تاسو اړتیا لرئ یو چینل ته تازه معلومات وړاندې کړئ، یو نوی عکس راټول شوی او د چینل نوم سره ټګ شوی.
  • کله چې یو نوی عکس په راجسټری کې څرګند شي ، اډون آپریټر بیا پیل کیږي او د نوي عکس سره پیل کیږي.

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

چینلونه مرسته کوي او په ازموینه کې: که چیرې یو مرستندویه کلستر شتون ولري، تاسو کولی شئ دا چینل ته تنظیم کړئ stage او چینلونو ته د راوتلو دمخه په دې کې تازه معلومات راولي ea и stable. که په چینل کې د کلستر سره ea یوه تېروتنه رامنځ ته شوه، تاسو کولی شئ هغه ته واړوئ stableپه داسې حال کې چې د دې کلستر ستونزه څیړل کیږي. که کلستر د فعال ملاتړ څخه لیرې شي، دا خپل "منجمد" چینل ته ځي - د بیلګې په توګه، freeze-2019-03-20.

د هکونو او هیلم چارټونو تازه کولو سربیره، تاسو ممکن اړتیا ولرئ تازه او د دریمې ډلې برخې. د مثال په توګه، تاسو د مشروط نوډ صادرونکي کې یو بګ ولیدل او حتی معلومه کړه چې څنګه یې پیچ کړئ. بیا، تاسو PR پرانیزئ او د نوي خوشې کیدو په تمه یاست ترڅو ټول کلسترونو ته لاړ شئ او د عکس نسخه زیاته کړئ. د دې لپاره چې د نامعلوم وخت انتظار ونه کړئ، تاسو کولی شئ خپل نوډ صادرونکی جوړ کړئ او د PR منلو دمخه دې ته لاړ شئ.

په عموم کې ، دا د اډون آپریټر پرته ترسره کیدی شي ، مګر د اډون آپریټر سره د نوډ صادرونکي نصبولو ماډل به په یوه ذخیره کې څرګند شي ، ستاسو د عکس جوړولو لپاره ډاکر فایل هلته ساتل کیدی شي ، دا د ټولو ګډون کونکو لپاره اسانه کیږي. پروسه د پوهیدو لپاره چې څه پیښیږي ... او که چیرې ډیری کلسترونه شتون ولري ، نو دا دواړه ستاسو د PR ازموینه او نوې نسخه رامینځته کول اسانه کیږي!

د اجزاو تازه کولو دا تنظیم زموږ لپاره په بریالیتوب سره کار کوي ، مګر کوم بل مناسب سکیم پلي کیدی شي - په هرصورت پدې حالت کې اډون آپریټر یو ساده بائنری فایل دی.

پایلې

په اډون آپریټر کې پلي شوي اصول تاسو ته اجازه درکوي په کلستر کې د اډونونو رامینځته کولو ، ازموینې ، نصبولو او تازه کولو لپاره شفاف پروسه رامینځته کړئ ، د منظم غوښتنلیکونو پراختیا پروسې ته ورته.

د اډون آپریټر لپاره اډونونه په ماډل فارمیټ کې (هیلم چارټ + هکس) په عامه توګه چمتو کیدی شي. موږ، د فلانټ شرکت، پالن لرو چې خپل پرمختګونه د دوبي په جریان کې د ورته اضافو په بڼه خپاره کړو. په GitHub کې پراختیا کې ګډون وکړئ (شیل چلونکی, addon-operator)، هڅه وکړئ چې پر بنسټ خپل ځان اضافه کړئ مثالونه и اسنادد هابري او زموږ په اړه خبرونو ته انتظار وکړئ یوټیوب چینل!

PS

زموږ په بلاګ کې هم ولولئ:

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

Add a comment