VictoriaMetrics هڪ تيز ۽ اسپيبلبل ڊي بي ايم ايس آهي ڊيٽا کي محفوظ ڪرڻ ۽ پروسيسنگ ڪرڻ لاءِ ٽائم سيريز جي صورت ۾ (هڪ رڪارڊ وقت تي مشتمل هوندو آهي ۽ هن وقت سان لاڳاپيل قدرن جو هڪ سيٽ، مثال طور، سينسرز جي حيثيت جي وقتي پولنگ ذريعي حاصل ڪيل يا ميٽرڪ جو مجموعو).
منهنجو نالو Kolobaev Pavel آهي. DevOps، SRE، LeroyMerlin، هر شي ڪوڊ وانگر آهي - اهو سڀ ڪجهه اسان جي باري ۾ آهي: مون بابت ۽ ٻين LeroyMerlin ملازمن بابت.
OpenStack تي ٻڌل بادل آھي. ٽيڪنيڪل راڊار لاء هڪ ننڍڙو لنڪ آهي.
اهو Kubernetes هارڊويئر تي ٺهيل آهي، انهي سان گڏ سڀني لاڳاپيل خدمتن تي OpenStack ۽ لاگنگ لاء.
هي اهو منصوبو آهي جيڪو اسان ترقي ۾ ڪيو هو. جڏهن اسان هي سڀ ترقي ڪري رهيا هئاسين، اسان وٽ هڪ Prometheus آپريٽر هو جيڪو K8s ڪلستر جي اندر ئي ڊيٽا محفوظ ڪندو هو. هو پاڻمرادو ڳولهي ٿو جنهن کي ڇڪڻ جي ضرورت آهي ۽ ان کي پيرن هيٺان رکي ٿو، تقريبن ڳالهائڻ.
اسان کي سڀني ڊيٽا کي ڪبرنيٽس ڪلستر کان ٻاهر منتقل ڪرڻ جي ضرورت پوندي، ڇاڪاڻ ته جيڪڏهن ڪجهه ٿئي ٿو، اسان کي سمجهڻ جي ضرورت آهي ته ڇا ۽ ڪٿي.
پهريون حل اهو آهي ته اسان فيڊريشن کي استعمال ڪريون ٿا جڏهن اسان وٽ ٽئين پارٽي پروميٿيس آهي، جڏهن اسان فيڊريشن ميڪانيزم ذريعي ڪبرنيٽس ڪلستر ڏانهن وڃون ٿا.
پر هتي ڪجهه ننڍا مسئلا آهن. اسان جي حالت ۾، مسئلا تڏهن شروع ٿيا جڏهن اسان وٽ 250 ميٽرڪ هئا، ۽ جڏهن 000 ميٽرڪ هئا، اسان محسوس ڪيو ته اسان انهي وانگر ڪم نه ڪري سگهون ٿا. اسان scrape_timeout کي 400 سيڪنڊن تائين وڌايو.
اسان کي ائين ڇو ڪرڻو پيو؟ Prometheus باهه جي شروعات کان وقت جي ڳڻپ شروع ڪري ٿو. اهو مسئلو ناهي ته ڊيٽا اڃا تائين وهندي آهي. جيڪڏهن هن مخصوص عرصي دوران ڊيٽا کي ضم نه ڪيو ويو آهي ۽ سيشن کي http ذريعي بند نه ڪيو ويو آهي، پوء سيشن کي ناڪام سمجهيو ويندو آهي ۽ ڊيٽا پاڻ پروميٿيس ۾ نه ايندي آهي.
هرڪو واقف آهي گرافس سان جيڪي اسان حاصل ڪندا آهيون جڏهن ڪجهه ڊيٽا غائب آهي. شيڊول ڀڄي ويا آهن ۽ اسان ان سان خوش نه آهيون.
ايندڙ آپشن هڪ ئي فيڊريشن ميڪانيزم ذريعي ٻن مختلف پروميٿيوس جي بنياد تي شارڊنگ آهي.
مثال طور، صرف انھن کي وٺو ۽ انھن جي نالي سان شيئر ڪريو. اهو پڻ استعمال ڪري سگهجي ٿو، پر اسان اڳتي وڌڻ جو فيصلو ڪيو.
اسان کي هاڻي انهن شارڊ کي ڪنهن به طرح عمل ڪرڻو پوندو. توھان وٺي سگھو ٿا promxy، جيڪو شارڊ ايريا ڏانھن وڃي ٿو ۽ ڊيٽا کي وڌائي ٿو. اهو ڪم ڪري ٿو ٻن شارڊن سان هڪ واحد داخلا پوائنٽ جي طور تي. اهو promxy ذريعي لاڳو ٿي سگهي ٿو، پر اهو اڃا تائين تمام ڏکيو آهي.
پهريون آپشن اهو آهي ته اسان فيڊريشن ميڪنزم کي ڇڏڻ چاهيون ٿا ڇاڪاڻ ته اهو تمام سست آهي.
Prometheus ڊولپر واضح طور تي چئي رهيا آهن، "ماڻهو، هڪ مختلف TimescaleDB استعمال ڪريو ڇو ته اسان ميٽرڪ جي ڊگهي مدت جي اسٽوريج کي سپورٽ نه ڪنداسين." اهو سندن ڪم ناهي.
اسان ڪاغذ جي هڪ ٽڪري تي لکندا آهيون ته اسان کي اڃا تائين ٻاهر ڪڍڻ جي ضرورت آهي، جيئن هر شيء کي هڪ جاء تي محفوظ نه ڪيو وڃي.
ٻيو نقصان ياداشت جو استعمال آهي. ها، مان سمجهان ٿو ته ڪيترائي چون ٿا ته 2020 ۾ ڪجهه گيگا بائيٽ ياداشت جي قيمت هڪ پئسو آهي، پر اڃا به.
هاڻي اسان وٽ هڪ ديو ۽ پيداوار ماحول آهي. dev ۾ اهو اٽڪل 9 گيگا بائيٽ آهي 350 ميٽرڪ لاءِ. پيداوار ۾ اهو 000 گيگا بائيٽ ۽ ٿورڙو 14 ميٽرڪس کان وڌيڪ آهي. ساڳئي وقت، اسان جي برقرار رکڻ جو وقت صرف 780 منٽ آهي. هي خراب آهي. ۽ هاڻي مان وضاحت ڪندس ڇو.
اسان هڪ ڳڻپ ڪريون ٿا، اهو آهي، هڪ اڌ ملين ميٽرڪ سان، ۽ اسان اڳ ۾ ئي انهن جي ويجهو آهيون، ڊزائن اسٽيج تي اسان کي 35-37 گيگا بائيٽ ياداشت ملي ٿي. پر اڳ ۾ ئي 4 ملين ميٽرڪ جي ضرورت آهي اٽڪل 90 گيگا بائيٽ ميموري. اهو آهي، اهو پروميٿيس ڊولپرز پاران مهيا ڪيل فارمولا استعمال ڪندي حساب ڪيو ويو. اسان رابطي کي ڏٺو ۽ محسوس ڪيو ته اسان صرف نگراني لاءِ سرور لاءِ ٻه ملين ادا ڪرڻ نٿا چاهيون.
اسان نه رڳو مشينن جو تعداد وڌائينداسين، اسان پاڻ به ورچوئل مشينن جي نگراني ڪري رهيا آهيون. ان ڪري، جيتريون وڌيڪ ورچوئل مشينون، اوترو وڌيڪ مختلف قسمن جا ميٽرڪ وغيره. اسان وٽ ميٽرڪس جي لحاظ کان اسان جي ڪلستر جو خاص واڌارو ٿيندو.
ڊسڪ اسپيس سان، هتي هر شيء ايترو خراب ناهي، پر مان ان کي بهتر ڪرڻ چاهيندس. اسان 15 ڏينهن ۾ ڪل 120 گيگا بائيٽ حاصل ڪيون، جن مان 100 ڪمپريس ٿيل ڊيٽا آهن، 20 انڪپريس ٿيل ڊيٽا آهن، پر اسان هميشه گهٽ چاهيون ٿا.
ان جي مطابق، اسان هڪ وڌيڪ نقطو لکون ٿا - هي وسيلن جو هڪ وڏو استعمال آهي، جيڪو اسان اڃا تائين بچائڻ چاهيون ٿا، ڇاڪاڻ ته اسان نٿا چاهيون ته اسان جي نگراني ڪلستر اسان جي ڪلستر کان وڌيڪ وسيلن کي استعمال ڪري، جيڪو OpenStack کي منظم ڪري ٿو.
Prometheus جي هڪ وڌيڪ خرابي آهي، جنهن کي اسان پاڻ سڃاڻي چڪا آهيون، اها گهٽ ۾ گهٽ ڪنهن قسم جي ياداشت جي حد آهي. Prometheus سان، هتي هر شيء تمام خراب آهي، ڇاڪاڻ ته ان ۾ اهڙي قسم جي موڙ نه آهي. ڊاکر ۾ حد استعمال ڪرڻ پڻ هڪ اختيار ناهي. جيڪڏهن اوچتو توهان جو RAF گر ٿي ويو ۽ اتي 20-30 گيگا بائيٽ آهن، پوء اهو اڀرڻ لاء تمام ڊگهو وقت وٺندو.
اهو هڪ ٻيو سبب آهي جو Prometheus اسان لاءِ موزون ناهي، يعني اسان ميموري جي استعمال کي محدود نٿا ڪري سگهون.
اهو ممڪن آهي ته اهڙي منصوبي سان گڏ اچي. HA ڪلستر کي منظم ڪرڻ لاءِ اسان کي ھن اسڪيم جي ضرورت آھي. اسان چاهيون ٿا ته اسان جا ميٽرڪ هميشه ۽ هر جڳهه تي موجود هجن، جيتوڻيڪ سرور جيڪو انهن ميٽرڪ کي محفوظ ڪري ٿو حادثو. ۽ اهڙي طرح اسان کي اهڙي اسڪيم ٺاهڻي پوندي.
هن اسڪيم جو چوڻ آهي ته اسان وٽ شارڊز جو نقل هوندو، ۽، مطابق، استعمال ٿيل وسيلن جي خرچن جو نقل. اهو تقريبا افقي طور تي ماپ ڪري سگهجي ٿو، پر ان جي باوجود وسيلن جو استعمال دوزخي هوندو.
ترتيب ۾ نقصانات جنهن ۾ اسان انهن کي پنهنجي لاءِ لکيو آهي:
- خارجي طور تي ميٽرڪ اپ لوڊ ڪرڻ جي ضرورت آهي.
- اعلي وسيلن جي واپرائڻ.
- ميموري جي استعمال کي محدود ڪرڻ جو ڪو طريقو ناهي.
- HA جو ڪمپليڪس ۽ وسيلا-گھڻي عملدرآمد.
پاڻ لاءِ، اسان فيصلو ڪيو ته اسان پروميٿيس کان پري وڃي رهيا هئاسين هڪ اسٽوريج جي سهولت جي طور تي.
اسان پاڻ لاءِ اضافي ضرورتن جي نشاندهي ڪئي آهي جيڪا اسان کي گهربل آهي. هي:
- ھي آھي promql جي حمايت، ڇاڪاڻ ته پروميٿيوس لاءِ اڳي ئي گھڻيون شيون لکيون ويون آھن: سوال، خبرداري.
- ۽ پوءِ اسان وٽ Grafana آهي، جيڪو اڳ ۾ ئي Prometheus لاءِ هڪ پسمنظر ۾ بلڪل ساڳي طرح لکيو ويو آهي. مان ڊيش بورڊ کي ٻيهر لکڻ نٿو چاهيان.
- اسان هڪ عام HA آرڪيٽيڪچر ٺاهڻ چاهيون ٿا.
- اسان چاهيون ٿا ته ڪنهن به وسيلن جي استعمال کي گهٽائڻ گهرجي.
- اتي هڪ ٻيو ننڍڙو nuance آهي. اسان ڪلائوڊ ميٽرڪ گڏ ڪرڻ واري نظام جا مختلف قسم استعمال نٿا ڪري سگهون. اسان کي خبر ناهي ته اڃا تائين انهن ميٽرڪ ۾ ڇا ٿيندو. ۽ جيئن ته اتي ڪا به شيءِ اڏامي سگهي ٿي، اسان کي پاڻ کي مقامي جڳهه تي محدود ڪرڻو پوندو.
اتي ٿورو اختيار هو. اسان سڀ ڪجهه گڏ ڪيو جنهن سان اسان جو تجربو هو. اسان انٽيگريشن سيڪشن ۾ Prometheus صفحي تي ڏٺو، مضمونن جو هڪ گروپ پڙهيو، ۽ ڏٺو ته اتي ڇا هو. ۽ پاڻ لاءِ، اسان VictoriaMetrics کي Prometheus جي متبادل طور چونڊيو.
ڇو؟ ڇاڪاڻ ته:
- promql ڄاڻي ٿو.
- اتي هڪ ماڊلر فن تعمير آهي.
- گرافانا ۾ تبديلين جي ضرورت ناهي.
- ۽ سڀ کان وڌيڪ اهم، اسان شايد مهيا ڪنداسين ميٽرڪ اسٽوريج اسان جي ڪمپني جي اندر هڪ خدمت جي طور تي، تنهنڪري اسان مختلف قسمن جي پابندين ڏانهن اڳ ۾ ئي ڳولي رهيا آهيون ته جيئن صارف ڪلستر جي سڀني وسيلن کي ڪجهه محدود طريقي سان استعمال ڪري سگهن، ڇو ته اتي هڪ موقعو آهي. ته ان کي گھڻائي ڪندو.
اچو ته پهريون مقابلو ڪريون. اسان ساڳئي پروميٿيس کي ڪلستر جي اندر کڻون ٿا، ٻاهرئين پروميٿيس ان ڏانهن وڃي ٿو. remoteWrite VictoriaMetrics ذريعي شامل ڪريو.
مان فوري طور تي هڪ رزرويشن ڪندس ته هتي اسان VictoriaMetrics کان CPU واپرائڻ ۾ معمولي اضافو پڪڙيو. VictoriaMetrics وڪي توهان کي ٻڌائي ٿي ته ڪهڙا پيرا ميٽر بهترين آهن. اسان انهن کي چيڪ ڪيو. انهن سي پي يو جو استعمال تمام سٺو گهٽايو آهي.
اسان جي حالت ۾، پروميٿيس جي يادگيري جو استعمال، جيڪو ڪبرنيٽس ڪلستر ۾ واقع آهي، خاص طور تي نه وڌايو.
اسان ساڳئي ڊيٽا جي ٻن ڊيٽا ذريعن جو مقابلو ڪندا آهيون. Prometheus ۾ اسان ساڳيو غائب ڊيٽا ڏسون ٿا. VictoriaMetrics تي سڀ ڪجهه ٺيڪ آهي.
ڊسڪ اسپيس ٽيسٽ جا نتيجا. اسان Prometheus تي مجموعي طور تي 120 گيگا بائيٽ حاصل ڪيو. VictoriaMetrics تي اسان اڳ ۾ ئي وصول ڪندا آهيون 4 گيگا بائيٽ في ڏينهن. اتي ڪجھ مختلف ميڪانيزم آھي جيڪو اسان کي پروميٿيس ۾ ڏسڻ لاء استعمال ڪيو ويو آھي. اهو آهي، ڊيٽا اڳ ۾ ئي هڪ ڏينهن ۾، اڌ ڪلاڪ ۾ ڪافي چڱي طرح ٺهيل آهي. اهي اڳ ۾ ئي هڪ ڏينهن ۾ چڱي طرح حاصل ڪيا ويا آهن، اڌ ڪلاڪ ۾، ان حقيقت جي باوجود ته ڊيٽا اڃا به بعد ۾ گم ٿي ويندي. نتيجي طور، اسان ڊسڪ اسپيس تي بچايو.
اسان ميموري وسيلن جي استعمال تي پڻ بچائيندا آهيون. جانچ جي وقت، اسان Prometheus کي هڪ ورچوئل مشين تي لڳايو هو - 8 ڪور، 24 گيگا بائيٽ. Prometheus لڳ ڀڳ هر شيء کائي ٿو. هو اوم قاتل تي ڪري پيو. ساڳئي وقت، صرف 900 فعال ميٽرڪ ان ۾ داخل ڪيا ويا. اهو اٽڪل 000-25 ميٽرڪ في سيڪنڊ آهي.
اسان VictoriaMetrics کي ڊبل ڪور ورچوئل مشين تي 8 گيگا بائيٽ ريم سان هلائي ڇڏيو. اسان VictoriaMetrics کي 8GB مشين تي ڪجھ شين سان گڏ ڪم ڪندي چڱي طرح ڪم ڪرڻ لاءِ منظم ڪيو. آخر ۾، اسان ان کي 7 گيگا بائيٽ تائين رکيو. ساڳئي وقت، مواد جي ترسيل جي رفتار، يعني ميٽرڪس، پروميٿيس کان به وڌيڪ هئي.
CPU Prometheus جي مقابلي ۾ تمام گهڻو بهتر ٿي چڪو آهي. هتي Prometheus 2,5 cores استعمال ڪري ٿو، ۽ VictoriaMetrics صرف 0,25 cores استعمال ڪري ٿو. شروعات ۾ - 0,5 ڪور. جيئن اهو ضم ٿئي ٿو، اهو هڪ ڪور تائين پهچي ٿو، پر اهو انتهائي، انتهائي نادر آهي.
اسان جي صورت ۾، چونڊ وڪٽوريا ميٽرڪس تي واضح سببن جي ڪري ٿي؛ اسان پئسا بچائڻ چاهيون ٿا ۽ اسان ڪيو.
اچو ته ٻه نقطا فوري طور تي پار ڪريون - ميٽرڪس جي اپ لوڊ ڪرڻ ۽ وسيلن جو وڏو استعمال. ۽ اسان کي صرف ٻه نقطا طئي ڪرڻا آهن جيڪي اسان اڃا تائين پنهنجي لاءِ ڇڏيا آهن.
هتي مان هڪ رزرويشن ڪندس فوري طور تي، اسان سمجهون ٿا VictoriaMetrics کي ميٽرڪ جي ذخيري طور. پر جيئن ته اسان گهڻو ڪري VictoriaMetrics فراهم ڪنداسين سڀني Leroy لاءِ اسٽوريج طور، اسان کي انهن کي محدود ڪرڻ جي ضرورت آهي جيڪي هن ڪلسٽر کي استعمال ڪندا ته جيئن اهي اسان کي نه ڏين.
اتي ھڪڙو شاندار پيٽرولر آھي جيڪو توھان کي وقت جي حد تائين محدود ڪرڻ جي اجازت ڏئي ٿو، ڊيٽا جي مقدار ۽ عمل جي وقت طرفان.
اتي پڻ ھڪڙو بھترين اختيار آھي جيڪو اسان کي ميموري جي استعمال کي محدود ڪرڻ جي اجازت ڏئي ٿو، اھڙيء طرح اسان تمام گھڻو توازن ڳولي سگھون ٿا جيڪو اسان کي عام آپريٽنگ رفتار ۽ مناسب وسيلن جي استعمال حاصل ڪرڻ جي اجازت ڏيندو.
مائنس هڪ وڌيڪ پوائنٽ، يعني نقطي کي پار ڪريو - توهان ياداشت جي استعمال کي محدود نه ٿا ڪري سگهو.
پهرين ورهاڱي ۾، اسان آزمايو VictoriaMetrics Single Node. اڳيون اسان اڳتي وڌون ٿا VictoriaMetrics Cluster Version.
هتي اسان وٽ مفت هٿ آهي مختلف خدمتن کي الڳ ڪرڻ لاءِ VictoriaMetrics ان تي منحصر آهي ته اهي ڇا هلندا ۽ ڪهڙا وسيلا استعمال ڪندا. هي هڪ تمام لچڪدار ۽ آسان حل آهي. اسان اهو پاڻ تي استعمال ڪيو.
VictoriaMetrics ڪلستر ورزن جا مکيه حصا vmstsorage آهن. انھن مان N نمبر ٿي سگھي ٿو. اسان جي حالت ۾، انهن مان 2 اڃا تائين آهن.
۽ اتي vminsert آهي. هي هڪ پراڪسي سرور آهي جيڪو اسان کي اجازت ڏئي ٿو: سڀني اسٽوريج جي وچ ۾ شارڊنگ جو بندوبست ڪريو جنهن بابت اسان ان کي ٻڌايو آهي، ۽ اهو پڻ هڪ نقل جي اجازت ڏئي ٿو، يعني توهان وٽ شارڊنگ ۽ هڪ نقل ٻئي هوندي.
Vminsert Prometheus کان OpenTSDB، Graphite، InfluxDB ۽ remoteWrite پروٽوڪول کي سپورٽ ڪري ٿو.
اتي پڻ vmselect آهي. ان جو بنيادي ڪم vmstorage ڏانھن وڃڻ آھي، انھن مان ڊيٽا حاصل ڪرڻ، ھن ڊيٽا کي نقل ڪرڻ ۽ ڪلائنٽ کي ڏيو.
اتي هڪ عجيب شيء آهي جنهن کي vmagent سڏيو ويندو آهي. اسان واقعي هن کي پسند ڪيو. اهو توهان کي پروميٿيس وانگر بلڪل ترتيب ڏيڻ جي اجازت ڏئي ٿو ۽ اڃا تائين هر شيء بلڪل پروميٿيس وانگر ڪريو. اهو آهي، اهو مختلف ادارن ۽ خدمتن کان ميٽرڪ گڏ ڪري ٿو ۽ انهن کي vminsert ڏانهن موڪلي ٿو. پوء هر شي تي منحصر آهي.
ٻي عظيم خدمت vmalert آهي، جيڪا توهان کي اجازت ڏئي ٿي VictoriaMetrics کي هڪ پسمنظر طور استعمال ڪرڻ، vminsert کان پروسيس ٿيل ڊيٽا حاصل ڪرڻ ۽ ان کي vmselect ڏانهن موڪليو. اهو پاڻ الارٽس تي عمل ڪري ٿو، گڏوگڏ ضابطن کي. الرٽ جي صورت ۾، اسان الرٽ مئنيجر ذريعي الرٽ وصول ڪندا آهيون.
اتي هڪ wmauth جزو آهي. اسان ڪري سگهون ٿا يا نه (اسان اڃا تائين ان تي فيصلو نه ڪيو آهي) ان کي ڪلسٽرز جي گھڻائي واري ورزن لاءِ اجازت ڏيڻ واري نظام طور استعمال ڪريون. اهو Prometheus لاءِ remoteWrite کي سپورٽ ڪري ٿو ۽ url جي بنياد تي اختيار ڪري سگهي ٿو، يا ان جو ٻيو حصو، جتي توهان لکي سگهو ٿا يا نه ٿا سگهو.
هتي پڻ آهي vmbackup، vmrestore. هي آهي، جوهر ۾، سڀني ڊيٽا جي بحالي ۽ بيڪ اپ. ڪري سگھي ٿو S3، GCS، فائل.
اسان جي ڪلستر جو پهريون ورهاڱو قرنطين دوران ڪيو ويو. ان وقت، ڪا به نقل نه هئي، تنهنڪري اسان جي ورهاڱي ۾ ٻه مختلف ۽ آزاد ڪلستر شامل هئا جن ۾ اسان ريموٽ رائٽ ذريعي ڊيٽا حاصل ڪئي.
هتي مان هڪ رزرويشن ڪندس ته جڏهن اسان VictoriaMetrics Single Node کان VictoriaMetrics Cluster Version ۾ تبديل ٿياسين، تڏهن به اسان وٽ ساڳيا استعمال ٿيل وسيلا آهن، يعني مکيه هڪ ياداشت آهي. اهو تقريبن اسان جي ڊيٽا، يعني وسيلن جو استعمال، ورهايو ويو آهي.
ھڪڙو نقل اڳ ۾ ئي شامل ڪيو ويو آھي ھتي. اسان اهو سڀ ڪجهه هڪ نسبتا وڏي ڪلستر ۾ گڏ ڪيو. اسان جي سڀني ڊيٽا کي ڇڪايو ويو آهي ۽ نقل ٿيل آهي.
پوري ڪلستر ۾ N داخلا پوائنٽون آھن، مطلب ته Prometheus HAPROXY ذريعي ڊيٽا شامل ڪري سگھي ٿو. هتي اسان وٽ هي داخلا پوائنٽ آهي. ۽ هن داخلا پوائنٽ ذريعي توهان گرافانا کان لاگ ان ڪري سگهو ٿا.
اسان جي صورت ۾، HAPROXY واحد بندرگاهه آهي جيڪو پراکسيز کي چونڊي، داخل ڪري ٿو ۽ ٻيون خدمتون هن ڪلستر جي اندر. اسان جي حالت ۾، اهو ناممڪن هو ته هڪ پتو لڳائڻ؛ اسان کي ڪيترائي داخلا پوائنٽ ٺاهڻا هئا، ڇاڪاڻ ته اهي مجازي مشينون جن تي VictoriaMetrics ڪلستر هلندو آهي، ساڳئي ڪلائوڊ فراهم ڪندڙ جي مختلف زونن ۾ واقع آهن، يعني اسان جي بادل جي اندر نه، پر ٻاهران. .
اسان وٽ خبرداري آهي. اسان ان کي استعمال ڪندا آهيون. اسان Prometheus کان alertmanager استعمال ڪندا آهيون. اسان استعمال ڪندا آهيون Opsgenie ۽ Telegram هڪ الرٽ پهچائڻ واري چينل طور. ٽيليگرام ۾ اهي dev کان داخل ڪن ٿا، شايد پروڊ کان ڪجهه، پر گهڻو ڪري ڪجهه شمارياتي، انجنيئرن جي ضرورت آهي. ۽ Opsgenie نازڪ آهي. اهي ڪالون آهن، واقعا انتظام.
دائمي سوال: "مانيٽرنگ ڪير ڪندو؟" اسان جي صورت ۾، مانيٽرنگ مانيٽر پاڻ کي مانيٽر ڪري ٿو، ڇاڪاڻ ته اسان هر نوڊ تي vmagent استعمال ڪندا آهيون. ۽ جيئن ته اسان جا نوڊس هڪ ئي مهيا ڪندڙ جي مختلف ڊيٽا سينٽرن ۾ ورهايل آهن، هر ڊيٽا سينٽر جو پنهنجو چينل آهي، اهي آزاد آهن، ۽ جيتوڻيڪ هڪ ورهايل دماغ اچي ٿو، اسان اڃا تائين الرٽ حاصل ڪنداسين. ها، انهن مان وڌيڪ هوندا، پر اهو بهتر آهي ته ڪنهن کان وڌيڪ خبرداري حاصل ڪرڻ لاء.
اسان پنھنجي لسٽ کي HA تي عمل ڪرڻ سان ختم ڪريون ٿا.
۽ اڳتي هلي مان VictoriaMetrics ڪميونٽي سان رابطي جي تجربي کي نوٽ ڪرڻ چاهيان ٿو. اهو تمام مثبت نڪتو. ماڻهو جوابدار آهن. اهي پيش ڪيل هر معاملي کي ڳولڻ جي ڪوشش ڪندا آهن.
مون GitHub تي مسئلا شروع ڪيا. اهي تمام جلدي حل ڪيا ويا. ڪجھ وڌيڪ مسئلا آھن جيڪي مڪمل طور تي بند نه آھن، پر مان اڳ ۾ ئي ڪوڊ مان ڏسي سگھي ٿو ته ھن طرف ڪم جاري آھي.
تکرار دوران مون لاءِ بنيادي درد اهو هو ته جيڪڏهن مان هڪ نوڊ کي بند ڪري ڇڏيان ته پوءِ پهرين 30 سيڪنڊن لاءِ vminsert سمجهي نه سگهيو ته ڪو به پسمنظر نه هو. اهو هاڻي فيصلو ڪيو ويو آهي. ۽ لفظي طور تي هڪ سيڪنڊ يا ٻن ۾، ڊيٽا سڀني باقي نوڊس مان ورتو وڃي ٿو، ۽ درخواست ان غائب نوڊ جي انتظار ۾ روڪي ٿي.
ڪجهه نقطي تي اسان چاهيون ٿا ته VictoriaMetrics هڪ VictoriaMetrics آپريٽر ٿئي. اسان هن جو انتظار ڪيو. اسان ھاڻي فعال طور تي ھڪ فريم ورڪ ٺاھي رھيا آھيون VictoriaMetrics آپريٽر لاءِ سڀني اڳڪٿي ڪرڻ وارا ضابطا وغيره. Prometheus، ڇاڪاڻ ته اسان ڪافي فعال طور تي انھن ضابطن کي استعمال ڪري رھيا آھيون جيڪي Prometheus آپريٽر سان ملن ٿا.
ڪلستر تي عمل درآمد کي بهتر بڻائڻ لاءِ تجويزون آهن. مون انهن کي مٿي بيان ڪيو آهي.
۽ مان واقعي نموني ڪرڻ چاهيان ٿو. اسان جي حالت ۾، خاص طور تي رجحانات کي ڏسڻ لاء نموني جي ضرورت آهي. عام طور تي ڳالهائڻ، هڪ ميٽرڪ مون لاء ڪافي آهي ڏينهن دوران. انهن رجحانن کي هڪ سال، ٽي، پنج، ڏهن سالن جي ضرورت آهي. ۽ هڪ ميٽرڪ قدر ڪافي آهي.
- اسان درد کي ڄاڻون ٿا، جيئن اسان جا ڪجهه ساٿي آهن، جڏهن پروميٿيس استعمال ڪندي.
- اسان پنهنجي لاءِ VictoriaMetrics چونڊيو آهي.
- اهو عمودي ۽ افقي طور تي چڱي طرح ماپ ڪري ٿو.
- اسان مختلف حصن کي ڪلستر ۾ نوڊس جي مختلف نمبرن تي ورهائي سگھون ٿا، انھن کي ميموري جي ذريعي محدود ڪري سگھون ٿا، ميموري شامل ڪريو، وغيره.
اسان گهر ۾ VictoriaMetrics استعمال ڪنداسين ڇو ته اسان واقعي ان کي پسند ڪيو. اهو آهي جيڪو هو ۽ جيڪو بڻجي چڪو آهي.
VictoriaMetrics چيٽ، منهنجا رابطا، LeroyMerlin ٽيڪنيڪل راڊار لاءِ ڪي آر ڪوڊ جا ٻه.
جو ذريعو: www.habr.com