وروسته
ولې کوم اضافې په ټوله کې؟
دا هیڅ راز پټ نه دی چې کوبرنیټس یو بشپړ چمتو شوی محصول نه دی، او د "بالغ" کلستر جوړولو لپاره تاسو مختلف اضافو ته اړتیا لرئ. اډون آپریټر به تاسو سره د دې اضافو نصبولو ، تنظیم کولو او ساتلو کې مرسته وکړي.
په کلستر کې د اضافي اجزاوو اړتیا په کې ښکاره شوې
د دوی سره د کار کولو ځانګړتیاوې څه دي؟
لکه څنګه چې تمرین ښیې، مسله په یو نصب پورې محدود نه ده. د کلسټر سره په آرامۍ سره کار کولو لپاره ، اضافې به نوي کولو ته اړتیا ولري ، غیر فعال شوي (له کلستر څخه لرې شوي) ، او تاسو به د تولید کلستر کې د نصبولو دمخه ځینې ازموینه وکړئ.
نو، شاید ځواب ویونکی به دلته کافي وي؟ امکان لری. خو په عموم کې، بشپړ اضافې د ترتیباتو پرته ژوند نه کوي. دا ترتیبات ممکن د کلستر ډول (aws, gce, Azure, bare-metal, do, ...) پورې اړه ولري توپیر ولري. ځینې ترتیبات دمخه نشي مشخص کیدی؛ دوی باید د کلستر څخه ترلاسه شي. او کلستر جامد نه دی: د ځینو ترتیباتو لپاره تاسو باید د بدلونونو څارنه وکړئ. او دلته ځواب ورکونکی لا دمخه ورک دی: تاسو یو برنامه ته اړتیا لرئ چې په کلستر کې ژوند کوي، د بیلګې په توګه. د کوبرنیټس آپریټر.
هغه چا چې دا په کار کې هڅه کړې kubectl apply
او څارنه، د مثال په توګه، ConfigMap، چیرته چې ترتیبات به زیرمه شي. دا تقریبا هغه څه دي چې په اډون آپریټر کې پلي کیږي.
دا په اډون آپریټر کې څنګه تنظیم شوی؟
کله چې یو نوی حل رامینځته کړئ، موږ د لاندې اصولو څخه کار اخلو:
- د اضافه انسټالر باید ملاتړ وکړي نمونه او اعلاناتي ترتیب. موږ جادو سکریپټونه نه جوړوو چې اضافې نصبوي. اډون آپریټر د اډونونو نصبولو لپاره هیلم کاروي. د نصبولو لپاره، تاسو اړتیا لرئ یو چارټ جوړ کړئ او هغه ارزښتونه غوره کړئ چې د ترتیب لپاره به کارول کیږي.
- ترتیبات کیدی شي په نصبولو سره تولید کړئ، دوی کیدی شي له کلستر څخه ترلاسه کړئ، یا تازه معلومات ترلاسه کړئد کلستر سرچینو څارنه. دا عملیات د هکونو په کارولو سره پلي کیدی شي.
- ترتیبات کیدی شي په یوه کلستر کې ذخیره کول. په کلستر کې د ترتیباتو ذخیره کولو لپاره، یو ConfigMap/addon-operator جوړ شوی او د اډون آپریټر په دې ConfigMap کې بدلونونه څاري. اډون آپریټر د ساده کنوانسیونونو په کارولو سره تنظیماتو ته هک ته لاسرسی ورکوي.
- اضافه کول په ترتیباتو پورې اړه لري. که ترتیبات بدل شوي وي، نو د اډون آپریټر د هیلم چارټ د نوي ارزښتونو سره راوباسي. موږ د هیلم چارټ ترکیب ته وایو، د دې لپاره ارزښتونه او یو ماډل هک کوي (د نورو جزیاتو لپاره لاندې وګورئ).
- سټینګ. د جادو خوشې کولو سکریپټونه شتون نلري. د تازه کولو میکانیزم یو منظم غوښتنلیک ته ورته دی - په عکس کې اضافه او اډون آپریټرونه راټول کړئ ، دوی یې ټګ کړئ او رول یې کړئ.
- د پایلې کنټرول. اډون آپریټر کولی شي د پرومیتیس لپاره میټریک چمتو کړي.
په اډون آپریټر کې پیډینګ څه شی دی؟
اضافه کول هر هغه څه په پام کې نیول کیدی شي چې کلستر ته نوې دندې اضافه کوي. د مثال په توګه، د انګریس نصب کول د اضافه کولو عالي مثال دی. دا د خپل CRD سره کوم آپریټر یا کنټرولر کیدی شي: prometheus-operator، cert-manager، kube-controller-manager، او داسې نور. یا یو څه کوچنی، مګر کارول یې اسانه دي - د بیلګې په توګه، پټ کاپیر، کوم چې د راجستر رازونه نوي نوم ځایونو ته کاپي کوي، یا sysctl tuner، کوم چې په نوي نوډونو کې د sysctl پیرامیټونه تنظیموي.
د اضافو پلي کولو لپاره، اډون آپریټر ډیری مفکورې وړاندې کوي:
- د هیلم چارټ په کلستر کې د مختلف سافټویر نصبولو لپاره کارول کیږي - د بیلګې په توګه، پرومیتیوس، ګرافانا، نګینکس-انګریس. که اړینه برخه د هیلم چارټ ولري، نو د اډون آپریټر په کارولو سره یې نصب کول به خورا ساده وي.
- د ارزښتونو ذخیره کول. د هیلم چارټونه معمولا ډیری مختلف ترتیبات لري چې کولی شي د وخت په تیریدو سره بدلون ومومي. اډون آپریټر د دې ترتیباتو ذخیره کولو ملاتړ کوي او کولی شي د نوي ارزښتونو سره د هیلم چارټ بیا نصبولو لپاره د دوی بدلونونه وڅاري.
- هک د اجرا وړ فایلونه دي چې اډون آپریټر په پیښو باندې چلوي او د ارزښتونو پلورنځي ته لاسرسی لري. هک کولی شي په کلستر کې بدلونونه وڅاري او د ارزښتونو پلورنځي کې ارزښتونه تازه کړي. هغوی. د هکونو په کارولو سره، تاسو کولی شئ په پیل کې یا د مهال ویش سره سم د کلستر څخه د ارزښتونو راټولولو لپاره کشف کړئ، یا تاسو کولی شئ په کلستر کې د بدلونونو پراساس د کلستر څخه ارزښتونه راټول کړئ.
- انډول د هیلم چارټ، د ارزښتونو پلورنځی او هکس ترکیب دی. ماډلونه فعال یا غیر فعال کیدی شي. د ماډل غیر فعال کول پدې معنی دي چې د هیلم چارټ ټول ریلیزونه حذف کړئ. ماډلونه کولی شي ځان په متحرک ډول فعال کړي، د بیلګې په توګه، که ټول هغه ماډلونه چې ورته اړتیا لري فعال شوي وي یا که کشف په هکس کې اړین پیرامیټونه وموندل - دا د معاون فعال شوي سکریپټ په کارولو سره ترسره کیږي.
- نړیوال هکونه. دا "په خپله" هکونه دي، دوی په ماډلونو کې ندي شامل شوي او د نړیوال ارزښت پلورنځي ته لاسرسی لري، کوم ارزښتونه چې په ماډلونو کې ټولو هکسونو ته شتون لري.
دا برخې څنګه یوځای کار کوي؟ راځئ چې د اسنادو څخه عکس وګورو:
دوه کاري سناریوګانې شتون لري:
- نړیوال هک د یوې پیښې لخوا رامینځته کیږي - د مثال په توګه ، کله چې په کلستر کې سرچینه بدلیږي. دا هک بدلونونه پروسس کوي او د نړیوالو ارزښتونو پلورنځي ته نوي ارزښتونه لیکي. اډون آپریټر یادونه کوي چې نړیوال ذخیره بدله شوې او ټول ماډلونه پیل کوي. هر ماډل، د خپلو هکسونو په کارولو سره، دا معلومه کوي چې ایا دا فعالولو ته اړتیا لري او د ارزښتونو ذخیره تازه کوي. که موډل فعال شوی وي، د اډون آپریټر د هیلم چارټ نصب کول پیل کوي. په دې حالت کې، د هیلم چارټ د ماډل ذخیره کولو او د نړیوال ذخیره څخه ارزښتونو ته لاسرسی لري.
- دویمه سناریو ساده ده: د ماډل هک د پیښې لخوا رامینځته کیږي او د ماډل ارزښتونو پلورنځي کې ارزښتونه بدلوي. اډون آپریټر دې ته پام کوي او د تازه ارزښتونو سره هیلم چارټ پیلوي.
اضافه کولی شي د یو واحد هک په توګه پلي شي، یا د یو هیلم چارټ په توګه، یا حتی د څو انحصاري ماډلونو په څیر - دا په کلستر کې د نصب شوي برخې پیچلتیا او د تنظیم کولو انعطاف مطلوب کچې پورې اړه لري. د مثال په توګه، په ذخیره کې (
د تازه معلوماتو تحویل
د اجزاو تازه کولو تنظیم کولو په اړه یو څو ټکي چې اډون آپریټر نصب کوي.
په کلستر کې د اډون آپریټر چلولو لپاره ، تاسو اړتیا لرئ د اضافه کولو سره یو انځور جوړ کړئ د هک او هیلم چارټ فایلونو په بڼه، د بائنری فایل اضافه کړئ addon-operator
او هرڅه چې تاسو د هکس لپاره اړتیا لرئ: bash
, kubectl
, jq
, python
etc بیا دا عکس د منظم غوښتنلیک په توګه کلستر ته لیږدول کیدی شي، او ډیری احتمال به تاسو د یو یا بل ټیګ کولو سکیم تنظیم کړئ. که چیرې یو څو کلسترونه شتون ولري، د غوښتنلیکونو په څیر ورته چلند ممکن مناسب وي: نوې خپرونه، نوې نسخه، د ټولو کلسترونو له لارې لاړ شئ او د پوډونو انځور سم کړئ. په هرصورت، د پام وړ شمیر کلسترونو ته د رول آوټ په صورت کې، د چینل څخه د ځان تازه کولو مفهوم زموږ لپاره ډیر مناسب و.
دلته موږ دا څنګه کوو:
- یو چینل په اصل کې یو پیژندونکی دی چې هر څه ته ټاکل کیدی شي (د مثال په توګه، dev/stage/ea/stable).
- د چینل نوم د عکس ټګ دی. کله چې تاسو اړتیا لرئ یو چینل ته تازه معلومات وړاندې کړئ، یو نوی عکس راټول شوی او د چینل نوم سره ټګ شوی.
- کله چې یو نوی عکس په راجسټری کې څرګند شي ، اډون آپریټر بیا پیل کیږي او د نوي عکس سره پیل کیږي.
دا غوره عمل ندی، لکه څنګه چې لیکل شوی
چینلونه مرسته کوي او په ازموینه کې: که چیرې یو مرستندویه کلستر شتون ولري، تاسو کولی شئ دا چینل ته تنظیم کړئ stage
او چینلونو ته د راوتلو دمخه په دې کې تازه معلومات راولي ea
и stable
. که په چینل کې د کلستر سره ea
یوه تېروتنه رامنځ ته شوه، تاسو کولی شئ هغه ته واړوئ stable
په داسې حال کې چې د دې کلستر ستونزه څیړل کیږي. که کلستر د فعال ملاتړ څخه لیرې شي، دا خپل "منجمد" چینل ته ځي - د بیلګې په توګه، freeze-2019-03-20
.
د هکونو او هیلم چارټونو تازه کولو سربیره، تاسو ممکن اړتیا ولرئ تازه او د دریمې ډلې برخې. د مثال په توګه، تاسو د مشروط نوډ صادرونکي کې یو بګ ولیدل او حتی معلومه کړه چې څنګه یې پیچ کړئ. بیا، تاسو PR پرانیزئ او د نوي خوشې کیدو په تمه یاست ترڅو ټول کلسترونو ته لاړ شئ او د عکس نسخه زیاته کړئ. د دې لپاره چې د نامعلوم وخت انتظار ونه کړئ، تاسو کولی شئ خپل نوډ صادرونکی جوړ کړئ او د PR منلو دمخه دې ته لاړ شئ.
په عموم کې ، دا د اډون آپریټر پرته ترسره کیدی شي ، مګر د اډون آپریټر سره د نوډ صادرونکي نصبولو ماډل به په یوه ذخیره کې څرګند شي ، ستاسو د عکس جوړولو لپاره ډاکر فایل هلته ساتل کیدی شي ، دا د ټولو ګډون کونکو لپاره اسانه کیږي. پروسه د پوهیدو لپاره چې څه پیښیږي ... او که چیرې ډیری کلسترونه شتون ولري ، نو دا دواړه ستاسو د PR ازموینه او نوې نسخه رامینځته کول اسانه کیږي!
د اجزاو تازه کولو دا تنظیم زموږ لپاره په بریالیتوب سره کار کوي ، مګر کوم بل مناسب سکیم پلي کیدی شي - په هرصورت پدې حالت کې اډون آپریټر یو ساده بائنری فایل دی.
پایلې
په اډون آپریټر کې پلي شوي اصول تاسو ته اجازه درکوي په کلستر کې د اډونونو رامینځته کولو ، ازموینې ، نصبولو او تازه کولو لپاره شفاف پروسه رامینځته کړئ ، د منظم غوښتنلیکونو پراختیا پروسې ته ورته.
د اډون آپریټر لپاره اډونونه په ماډل فارمیټ کې (هیلم چارټ + هکس) په عامه توګه چمتو کیدی شي. موږ، د فلانټ شرکت، پالن لرو چې خپل پرمختګونه د دوبي په جریان کې د ورته اضافو په بڼه خپاره کړو. په GitHub کې پراختیا کې ګډون وکړئ (
PS
زموږ په بلاګ کې هم ولولئ:
- «
د Kubernetes پراخول او بشپړول (بیاکتنه او ویډیو راپور) » - «
د شیل آپریټر معرفي کول: د کوبرنیټس لپاره آپریټرونه رامینځته کول خورا اسانه شوي ".
سرچینه: www.habr.com