DevOps جي ضرورت ڇو آهي ۽ DevOps ماهر ڪير آهن؟

جڏهن هڪ ايپليڪيشن ڪم نه ڪندي، آخري شيء جيڪو توهان پنهنجي ساٿين کان ٻڌڻ چاهيو اهو جملو آهي "مسئلو توهان جي پاسي آهي." نتيجي طور، صارفين کي ڏک ٿيو - ۽ انهن کي پرواه ناهي ته ٽيم جو ڪهڙو حصو خراب ٿيڻ جو ذميوار آهي. DevOps ڪلچر صحيح طور تي سامهون آيو ته ترقي ۽ سپورٽ کي گڏ ڪرڻ لاءِ هڪ گڏيل ذميواري جي چوڌاري آخري پيداوار لاءِ.

DevOps جي تصور ۾ ڪهڙا طريقا شامل آهن ۽ انهن جي ضرورت ڇو آهي؟ DevOps انجنيئر ڇا ڪندا آهن ۽ انهن کي ڇا ڪرڻ گهرجي؟ EPAM جا ماهر انهن ۽ ٻين سوالن جا جواب ڏين ٿا: Kirill Sergeev، سسٽم انجنيئر ۽ DevOps مبشر، ۽ Igor Boyko، معروف سسٽم انجنيئر ۽ ڪمپني جي DevOps ٽيمن مان هڪ جو ڪوآرڊينيٽر.

DevOps جي ضرورت ڇو آهي ۽ DevOps ماهر ڪير آهن؟

DevOps جي ضرورت ڇو آهي؟

اڳي، ڊولپرز ۽ سپورٽ (نام نهاد آپريشنز) جي وچ ۾ هڪ رڪاوٽ هئي. اهو متضاد آواز آهي، پر انهن جا مختلف مقصد هئا ۽ KPIs، جيتوڻيڪ اهي ساڳيو ڪم ڪري رهيا هئا. ترقي جو مقصد ڪاروبار جي ضرورتن کي جلدي ممڪن طور تي لاڳو ڪرڻ ۽ انهن کي ڪم ڪندڙ پيداوار ۾ شامل ڪرڻ هو. سپورٽ ان ڳالهه کي يقيني بڻائڻ جي ذميوار هئي ته ايپليڪيشن مستحڪم طور تي ڪم ڪري ٿي - ۽ ڪنهن به تبديليءَ سان استحڪام کي خطري ۾ وجهي ڇڏيو. اتي دلچسپي جي تڪرار آهي - DevOps ان کي حل ڪرڻ لاء ظاهر ٿيو.

DevOps ڇا آهي؟

اھو ھڪڙو سٺو سوال آھي - ۽ ھڪڙو تڪراري آھي: دنيا اڃا تائين ھن تي اتفاق نه ڪيو آھي. EPAM مڃي ٿو ته DevOps هڪ ٽيم جي اندر ٽيڪنالاجيز، عمل ۽ رابطي جي ثقافت کي گڏ ڪري ٿو. هن انجمن جو مقصد آهي مسلسل استعمال ڪندڙن کي قدر پهچائڻ.

ڪريل سرجيف: “ڊولپرز ڪوڊ لکندا آهن، ٽيسٽ ڪندڙ ان جو جائزو وٺندا آهن، ۽ منتظمين حتمي پراڊڪٽ کي پروڊڪشن تائين پهچائيندا آهن. هڪ ڊگهي وقت تائين، ٽيم جا اهي حصا ڪجهه ٽڪرا ٽڪرا هئا، ۽ پوء خيال پيدا ٿيو ته انهن کي هڪ عام عمل ذريعي متحد ڪيو وڃي. اهو ڪيئن آهي DevOps عمل ظاهر ٿيو.

اهو ڏينهن آيو جڏهن ڊولپر ۽ سسٽم انجنيئر هڪ ٻئي جي ڪم ۾ دلچسپي ورتي. پيداوار ۽ حمايت جي وچ ۾ رڪاوٽ غائب ٿيڻ شروع ڪيو. اهو ڪيئن آهي DevOps ظاهر ٿيو، جنهن ۾ عمل، ثقافت ۽ ٽيم جي رابطي شامل آهن.

DevOps جي ضرورت ڇو آهي ۽ DevOps ماهر ڪير آهن؟

DevOps ڪلچر جو جوهر ڇا آهي؟

حقيقت اها آهي ته حتمي نتيجن جي ذميواري هر ٽيم جي ميمبر تي آهي. DevOps فلسفي ۾ سڀ کان وڌيڪ دلچسپ ۽ ڏکيو شيء اهو سمجهڻ آهي ته هڪ مخصوص شخص صرف پنهنجي ڪم جي اسٽيج جو ذميوار ناهي، پر اهو ذميوار آهي ته سڄي پيداوار ڪيئن ڪم ڪندي. مسئلو ڪنهن جي پاسي تي ڪوڙ ناهي - اهو حصيداري آهي، ۽ هر ٽيم ميمبر ان کي حل ڪرڻ ۾ مدد ڪري ٿو.

DevOps ڪلچر ۾ سڀ کان اهم شيءِ مسئلو حل ڪرڻ آهي ، نه صرف DevOps طريقا لاڳو ڪرڻ. ان کان علاوه، اهي طريقا لاڳو نه ڪيا ويا آهن "ڪنهن جي پاسي"، پر سڄي پيداوار ۾. هڪ پروجيڪٽ کي هر هڪ DevOps انجنيئر جي ضرورت ناهي - ان کي هڪ مسئلي جي حل جي ضرورت آهي، ۽ DevOps انجنيئر جو ڪردار ڪيترن ئي ٽيمن جي ميمبرن ۾ مختلف ماهرن سان ورهائي سگهجي ٿو.

DevOps طريقن جا ڪهڙا قسم آهن؟

DevOps طريقا سافٽ ويئر جي زندگي جي چڪر جي سڀني مرحلن کي ڍڪيندا آهن.

Igor Boyko: "مثالي صورت آهي جڏهن اسان استعمال ڪرڻ شروع ڪريون ٿا DevOps طريقا صحيح منصوبي جي شروعات تي. معمارن سان گڏ، اسان منصوبابندي ڪريون ٿا ته ڪهڙي قسم جي آرڪيٽيڪچرل لينڊ اسڪيپ ۾ ايپليڪيشن هوندي، اها ڪٿي هوندي ۽ ڪيئن ماپي ويندي، ۽ پليٽ فارم چونڊيو. اڄڪلهه، مائڪرو سروس آرڪيٽيڪچر فيشن ۾ آهي - ان لاءِ اسان هڪ آرڪيسٽريشن سسٽم چونڊيندا آهيون: توهان کي گهرجي ته ايپليڪيشن جي هر عنصر کي الڳ الڳ منظم ڪرڻ ۽ ان کي ٻين کان آزاد طور تي تازه ڪاري ڪرڻ جي قابل هوندو. ٻيو مشق آهي "بنيادي ڍانچي جي طور تي ڪوڊ." هي هڪ نقطي جو نالو آهي جنهن ۾ پروجيڪٽ جو بنيادي ڍانچو ٺاهيو ويو آهي ۽ ڪوڊ استعمال ڪندي منظم ڪيو ويو آهي، بجاءِ سرور سان سڌي رابطي جي ذريعي.

ان کان پوء اسان ترقي جي اسٽيج تي وڃو. هتي جي سڀ کان وڏي عملن مان هڪ آهي CI/CD تعمير ڪرڻ: توهان کي ڊولپرز جي مدد ڪرڻ جي ضرورت آهي تبديلين کي جلدي پيداوار ۾ ضم ڪرڻ ۾، ننڍن حصن ۾، گهڻو ڪري ۽ بي درديءَ سان. CI/CD ڪوڊ جو جائزو، ماسٽر کي ڪوڊ بيس تي اپلوڊ ڪرڻ، ۽ ايپليڪيشن کي ٽيسٽ ۽ پيداوار جي ماحول کي ترتيب ڏيڻ تي مشتمل آهي.

CI/CD مرحلن تي، ڪوڊ معيار جي دروازن مان گذري ٿو. انهن جي مدد سان، اهي چيڪ ڪن ٿا ته ڪوڊ جيڪو ڊولپر جي ڪم اسٽيشن مان نڪرندو آهي مخصوص معيار جي معيار کي پورو ڪري ٿو. يونٽ ۽ UI جاچ هتي شامل ڪئي وئي آهي. تيز، بي درد ۽ مرڪوز پيداوار جي مقرري لاءِ، توھان چونڊي سگھوٿا مناسب ترتيب ڏيڻ جو قسم.

DevOps عملي کي به هڪ جاءِ آهي اسٽيج تي مڪمل پيداوار جي حمايت ڪرڻ جي. اهي نگراني، موٽ، سيڪيورٽي، ۽ تبديلين کي متعارف ڪرائڻ لاء استعمال ڪيا ويا آهن. DevOps انهن سڀني ڪمن کي مسلسل سڌاري واري نقطه نظر کان ڏسي ٿو. اسان بار بار ٿيندڙ عملن کي گھٽ ڪريون ٿا ۽ انھن کي خودڪار ڪريون ٿا. ھن ۾ لڏپلاڻ، ايپليڪيشن جي توسيع، ۽ ڪارڪردگي جي مدد پڻ شامل آھي.

DevOps عملن جا ڪهڙا فائدا آهن؟

جيڪڏهن اسان جديد DevOps طريقن تي درسي ڪتاب لکي رهيا هئاسين، پهرين صفحي تي ٽي نقطا هوندا: خودڪار، تيز رفتار رليز، ۽ صارفين کان تيز موٽ.

ڪريل سرجيف: ”پهرين شيءِ آٽوميشن آهي. اسان ٽيم ۾ سڀني ڳالهين کي خودڪار ڪري سگھون ٿا: ڪوڊ لکيو - ان کي رول ڪيو - ان کي چيڪ ڪيو - ان کي نصب ڪيو - راء گڏ ڪيو - شروعات ڏانھن موٽيو. هي سڀ خودڪار آهي.

ٻيو رليز کي تيز ڪري رهيو آهي ۽ ترقي کي به آسان بڻائي رهيو آهي. گراهڪ لاءِ اهو هميشه اهم هوندو آهي ته پراڊڪٽ جلد کان جلد مارڪيٽ ۾ داخل ٿئي ۽ مقابلي ڪندڙن جي اينالاگز کان پهريان فائدا مهيا ڪرڻ شروع ڪري. پيداوار جي ترسيل جي عمل کي لامحدود طور تي بهتر ڪري سگهجي ٿو: وقت گھٽايو، اضافي ڪنٽرول نشان شامل ڪريو، نگراني کي بهتر ڪريو.

ٽيون آهي صارف جي راءِ جي تڪڙي. جيڪڏهن هن وٽ رايا آهن، اسان فوري طور تي ترتيب ڏئي سگهون ٿا ۽ فوري طور تي ايپليڪيشن کي اپڊيٽ ڪري سگهون ٿا.

DevOps جي ضرورت ڇو آهي ۽ DevOps ماهر ڪير آهن؟

”سسٽم انجنيئر“، ”بلڊ انجنيئر“ ۽ ”DevOps انجنيئر“ جا تصور ڪيئن جڙيل آهن؟

اهي اوورليپ، پر ٿورڙي مختلف علائقن سان تعلق رکن ٿا.

EPAM ۾ سسٽم انجنيئر هڪ پوزيشن آهي. اهي مختلف سطحن ۾ اچن ٿا: جونيئر کان چيف ماهر تائين.

هڪ تعمير انجنيئر هڪ وڌيڪ ڪردار آهي جيڪو هڪ منصوبي تي انجام ڏئي سگهجي ٿو. ھاڻي اھو اھو آھي جيڪو CI/CD جا ذميوار ماڻھو سڏبا آھن.

هڪ DevOps انجنيئر هڪ ماهر آهي جيڪو هڪ منصوبي تي DevOps طريقن کي لاڳو ڪري ٿو.

جيڪڏهن اسان اهو سڀ ڪجهه گڏ ڪريون ٿا، اسان کي ڪجهه هن طرح ملي ٿو: سسٽم انجنيئر جي پوزيشن ۾ هڪ شخص هڪ منصوبي تي تعمير انجنيئر جو ڪردار ادا ڪري ٿو ۽ اتي DevOps جي عملن جي عمل ۾ ملوث آهي.

هڪ DevOps انجنيئر ڇا ڪندو آهي؟

DevOps انجنيئر سڀني ٽڪرن کي گڏ ڪن ٿا جيڪي هڪ منصوبو ٺاهيندا آهن. اهي پروگرامرز، ٽيسٽرز، سسٽم ايڊمنسٽريٽرن جي ڪم جا تفصيل ڄاڻن ٿا ۽ انهن جي ڪم کي آسان ڪرڻ ۾ مدد ڪن ٿا. اھي سمجھندا آھن ڪاروبار جي ضرورتن ۽ ضرورتن کي، ترقي جي عمل ۾ ان جو ڪردار - ۽ عمل کي ٺاھيو صارف جي مفادن کي مدنظر رکندي.

اسان آٽوميشن جي باري ۾ تمام گهڻو ڳالهايو - اهو ئي آهي جيڪو DevOps انجنيئرن سان پهريون ۽ اهم معاملو آهي. اهو هڪ تمام وڏو نقطو آهي، جنهن ۾، ٻين شين جي وچ ۾، ماحول کي تيار ڪرڻ شامل آهي.

ڪريل سرجيف: "پراڊڪٽ ۾ تازه ڪاريون لاڳو ڪرڻ کان پهريان، انهن کي ٽئين پارٽي جي ماحول ۾ جانچڻ جي ضرورت آهي. اهو DevOps انجنيئرن پاران تيار ڪيو ويو آهي. اهي مڪمل طور تي منصوبي تي هڪ DevOps ڪلچر قائم ڪن ٿا: اهي انهن جي منصوبن جي سڀني پرتن تي DevOps طريقا متعارف ڪرايو. اهي ٽي اصول: خودڪار، سادگي، تيز رفتار - اهي آڻيندا آهن جتي اهي پهچي سگهن ٿا.

هڪ DevOps انجنيئر کي ڇا ڄاڻڻ گهرجي؟

وڏي ۽ وڏي، هن کي مختلف علائقن مان ڄاڻ هجڻ گهرجي: پروگرامنگ، آپريٽنگ سسٽم سان ڪم ڪرڻ، ڊيٽابيس، اسيمبلي ۽ ترتيب ڏيڻ وارو نظام. انهن ۾ ڪلائوڊ انفراسٽرڪچر، آرڪيسٽريشن ۽ مانيٽرنگ سسٽم سان ڪم ڪرڻ جي صلاحيت شامل آهي.

1. پروگرامنگ ٻوليون

DevOps انجنيئر آٽوميشن لاءِ ڪيتريون ئي بنيادي ٻوليون ڄاڻن ٿا ۽ ڪري سگهن ٿا، مثال طور، هڪ پروگرامر کي: ”توهان ڪيئن ٿا انسٽال ڪريو ڪوڊ هٿ سان نه، پر اسان جي اسڪرپٽ استعمال ڪندي، جيڪا هر شيءِ کي خودڪار ڪري ٿي؟ اسان ان لاءِ هڪ ترتيب واري فائل تيار ڪنداسين، اهو توهان ۽ اسان ٻنهي لاءِ پڙهڻ لاءِ آسان هوندو، ۽ اسان ان کي ڪنهن به وقت تبديل ڪري سگهنداسين. اسان اهو به ڏسنداسين ته ڪير، ڪڏهن ۽ ڇو ان ۾ تبديلي آڻي ٿو.

هڪ DevOps انجنيئر انهن ٻولين مان هڪ يا وڌيڪ سکي سگهي ٿو: Python، Groovy، Bash، Powershell، Ruby، Go. اهو ضروري ناهي ته انهن کي تمام گهڻي سطح تي ڄاڻڻ - نحو جي بنياديات، او او پي اصولن، ۽ خودڪار ڪرڻ لاء سادي اسڪرپٽ لکڻ جي صلاحيت ڪافي آهي.

2. آپريٽنگ سسٽم

هڪ DevOps انجنيئر کي اهو سمجهڻ گهرجي ته پراڊڪٽ ڪهڙي سرور تي نصب ڪيو ويندو، اهو ڪهڙي ماحول ۾ هلندو، ۽ ڪهڙي خدمتن سان رابطو ڪندو. توھان چونڊيو ڪري سگھو ٿا خاص ڪرڻ لاءِ Windows يا Linux خاندان.

3. ورجن ڪنٽرول سسٽم

هڪ ورزن ڪنٽرول سسٽم جي ڄاڻ کان سواء، هڪ DevOps انجنيئر ڪٿي به ناهي. Git هن وقت سڀ کان وڌيڪ مشهور سسٽم مان هڪ آهي.

4. ڪلائوڊ فراهم ڪندڙ

AWS، گوگل، Azure - خاص طور تي جيڪڏهن اسان ونڊوز جي هدايت بابت ڳالهائي رهيا آهيون.

ڪريل سرجيف: "ڪلائوڊ فراهم ڪندڙ اسان کي ورچوئل سرور فراهم ڪن ٿا جيڪي مڪمل طور تي CI/CD ۾ مناسب ٿين ٿا.

ڏهن فزيڪل سرورز کي انسٽال ڪرڻ لاءِ اٽڪل سؤ دستي آپريشنن جي ضرورت آهي. هر سرور کي لازمي طور تي دستي طور تي شروع ڪيو وڃي، نصب ڪيو وڃي ۽ گهربل آپريٽنگ سسٽم کي ترتيب ڏيو، اسان جي ايپليڪيشن کي انهن ڏهن سرورن تي نصب ڪيو، ۽ پوء هر شيء کي ڏهه ڀيرا ٻه ڀيرا چيڪ ڪيو. ڪلائوڊ خدمتون هن طريقيڪار کي ڪوڊ جي ڏهن لائينن سان تبديل ڪن ٿيون، ۽ هڪ سٺو DevOps انجنيئر انهن سان هلائڻ جي قابل هوندو. هي وقت، ڪوشش ۽ پئسا بچائيندو آهي - ٻئي گراهڪ ۽ ڪمپني لاءِ.

5. آرڪيسٽريشن سسٽم: ڊڪر ۽ ڪبرنيٽس

ڪريل سرجيفورچوئل سرورز ڪنٽينرز ۾ ورهايل آهن، جن مان هر هڪ ۾ اسان پنهنجي ايپليڪيشن کي انسٽال ڪري سگهون ٿا. جڏهن اتي تمام گهڻا ڪنٽينر آهن، توهان کي انهن کي منظم ڪرڻ جي ضرورت آهي: هڪ کي بند ڪريو، ٻيو بند ڪريو، بيڪ اپ ٺاهيو. اهو ڪافي پيچيده ٿي ويندو آهي ۽ هڪ آرڪيسٽريشن سسٽم جي ضرورت آهي.

اڳي، هر ايپليڪيشن کي الڳ سرور ذريعي سنڀاليو ويندو هو - ان جي آپريشن ۾ ڪا به تبديلي ايپليڪيشن جي خدمت کي متاثر ڪري سگهي ٿي. ڪنٽينرز جي مهرباني، ايپليڪيشنون الڳ ٿي وينديون آهن ۽ الڳ الڳ هلنديون آهن - هر هڪ پنهنجي ورچوئل مشين تي. جيڪڏهن هڪ ناڪامي ٿئي ٿي، سبب ڳولڻ ۾ وقت ضايع ڪرڻ جي ڪا ضرورت ناهي. اهو آسان آهي ته پراڻي ڪنٽينر کي تباهه ڪرڻ ۽ هڪ نئون شامل ڪرڻ.

6. ترتيب ڏيڻ وارو نظام: شيف، جوابي، پپٽ

جڏهن توهان کي سرور جي پوري بيٺي کي برقرار رکڻ جي ضرورت آهي، توهان کي ڪرڻو پوندو تمام گهڻو ساڳيو قسم جا آپريشن. اهو ڊگهو ۽ ڏکيو آهي، ۽ دستي ڪم پڻ غلطي جو موقعو وڌائي ٿو. اهو آهي جتي ترتيب ڏيڻ وارو نظام بچاء ۾ اچي ٿو. انهن جي مدد سان، اهي هڪ اسڪرپٽ ٺاهيندا آهن جيڪي پروگرامرز، DevOps انجنيئرز، ۽ سسٽم منتظمين لاءِ پڙهڻ ۾ آسان آهن. هي اسڪرپٽ خود بخود سرور تي ساڳيو آپريشن ڪرڻ ۾ مدد ڪري ٿي. هي دستي عملن کي گھٽائي ٿو (۽ ان ڪري غلطيون).

DevOps انجنيئر ڪهڙي قسم جو ڪيريئر ٺاهي سگهي ٿو؟

توهان ٻنهي افقي ۽ عمودي ترقي ڪري سگهو ٿا.

Igor Boyko: "افقي ترقي جي نقطي نظر کان، DevOps انجنيئرن وٽ هاڻي وسيع امڪان آهن. هر شي مسلسل تبديل ٿي رهي آهي، ۽ توهان مختلف علائقن ۾ مهارتون ٺاهي سگهو ٿا: ورزن ڪنٽرول سسٽم کان مانيٽرنگ تائين، ترتيب جي انتظام کان ڊيٽابيس تائين.

توهان هڪ سسٽم معمار بڻجي سگهو ٿا جيڪڏهن هڪ ملازم اهو سمجهڻ ۾ دلچسپي رکي ٿو ته هڪ ايپليڪيشن پنهنجي زندگي جي چڪر جي سڀني مرحلن تي ڪيئن ڪم ڪري ٿي - ترقي کان سپورٽ تائين.

DevOps انجنيئر ڪيئن ٿيو؟

  1. پڙهو فينڪس پروجيڪٽ ۽ DevOps دستي ڪتاب. اهي ديواپس فلسفي جا حقيقي ٿنڀا آهن، جن جو پهريون ڪم افسانوي ڪم آهي.
  2. مٿي ڏنل فهرست مان ٽيڪنالاجيون سکو: پاڻ تي يا آن لائن ڪورسز ذريعي.
  3. هڪ اوپن سورس پروجيڪٽ لاءِ DevOps انجنيئر طور شامل ٿيو.
  4. توهان جي ذاتي ۽ ڪم جي منصوبن تي DevOps مشقون مشق ۽ پيش ڪريو.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو