ডিভোপস ইঞ্জিনিয়ার কীভাবে হন, পার্ট 4: সর্বোচ্চ ছয় মাসের মধ্যে প্যাকেজ

আনস্প্ল্যাশ-এ চিটস্নাপ থেকে

সারাংশ

পর্ব 1 এ, আমরা ডিওপস সংস্কৃতি এবং প্রয়োজনীয় মৌলিক বিষয়গুলি সম্পর্কে কথা বলেছি:

দ্বিতীয় খণ্ডে, আমরা কীভাবে ভবিষ্যতের কোড মোতায়েনের ভিত্তি সঠিকভাবে স্থাপন করব তা নিয়ে আলোচনা করেছি:

পার্ট 3 এ, আমরা কীভাবে আপনার মোতায়েন করা কোডটি সংগঠিত করব সে সম্পর্কে কথা বললাম:

নিম্নলিখিতটি কীভাবে আপনার সহজে কোড স্থাপন এবং তারপরে কার্যকর করার জন্য আপনার কোডটি প্যাকেজ করবেন তা ব্যাখ্যা করে।

একটি রেফারেন্স হিসাবে, আমরা এখানে আমাদের যাত্রায়:

প্যাকেজ

দ্রষ্টব্য: আপনি দেখতে পাচ্ছেন যে প্রতিটি অংশ কীভাবে পূর্ববর্তী অংশে তৈরি করে এবং পরবর্তী অংশের জন্য ভিত্তি স্থাপন করে। এটি গুরুত্বপূর্ণ এবং উদ্দেশ্য অনুযায়ী করা হয়।

এর কারণ হ'ল আপনি নিজের বর্তমান বা ভবিষ্যতের নিয়োগকর্তাদের সাথে কথা বলছেন না কেন, আপনাকে ডিওঅপ্স কী এবং কেন এটি গুরুত্ব দেয় তা স্পষ্ট করে বলতে পারা দরকার।

এবং আপনি এটি একটি সম্মিলিত গল্প বলার মাধ্যমে করেছেন - দ্রুত এবং দক্ষতার সাথে কোনও বিকাশকারী ল্যাপটপ থেকে অর্থোপার্জনকারী পণ্যতে কোড পাওয়ার সর্বোত্তম উপায় সম্পর্কে একটি গল্প।

অতএব, আমরা আলাদা, ট্রেন্ডিং ডিভোপস সরঞ্জামগুলি শিখার পরে নেই। আমরা এমন কয়েকটি দক্ষতা শিখতে চাই যা ব্যবসায়ের প্রয়োজনের উপর নির্ভর করে এবং প্রযুক্তিগত সরঞ্জামগুলি দ্বারা এটি সমর্থিত।

মনে রাখবেন যে প্রতিটি ধাপে মোট ছয় মাসের জন্য অধ্যয়নের সময় প্রায় এক মাস সময় লাগে।

ঠিক আছে, যথেষ্ট বকবক, চল শুরু করা যাক!

ভার্চুয়ালাইজেশন পরিচয়

আপনি শারীরিক সার্ভার মনে আছে? যেগুলি আপনাকে পিও অনুমোদনের জন্য সপ্তাহান্তে অপেক্ষা করতে হয়েছিল, ডেটা সেন্টারটি গৃহীত হয়েছে, র‌্যাকড, নেটওয়ার্ক, অপারেটিং সিস্টেমে ইনস্টলড এবং প্যাচ করেছে?

হ্যাঁ. তারা প্রথম এসেছিল।

থাকার জায়গার একমাত্র উপায়টি কল্পনা করুন একটি ব্র্যান্ড নতুন বাড়ি তৈরি করা। আপনার কি থাকার জায়গা দরকার? অপেক্ষা করতে কতক্ষণ লাগে! দারুণ শীতল যেহেতু সবাই একটি বাড়ি পায় তবে সত্যই তা নয় কারণ বাড়ি তৈরি করতে এটি অনেক সময় নেয়। এই উপমাতে, একটি শারীরিক সার্ভারটি একটি বাড়ির মতো like

তারপরে লোকেরা বিরক্ত হয়ে উঠত যে এটি কতক্ষণ লেগেছিল, এবং কিছু সত্যই বুদ্ধিমান লোক ভার্চুয়ালাইজেশনের ধারণা নিয়ে আসে: কীভাবে একটি একক শারীরিক মেশিনে তথাকথিত "মেশিনগুলি" চালাতে হয় এবং প্রতিটি নকল মেশিনের ভান করে কীভাবে হয় তিনি একটি বাস্তব মেশিন হতে হবে। প্রতিভা!

সুতরাং আপনি যদি সত্যিই কোনও বাড়ি চান তবে আপনি নিজের তৈরি করতে পারেন এবং ছয় সপ্তাহ অপেক্ষা করতে পারেন। অথবা আপনি অ্যাপার্টমেন্ট বিল্ডিংয়ে থাকেন এবং অন্যান্য ভাড়াটেদের সাথে সম্পদগুলি ভাগ করে নিন। সম্ভবত দুর্দান্ত না, তবে যথেষ্ট ভাল! এবং সর্বোপরি, অপেক্ষা নেই!

এটি কিছুটা সময় নিয়েছে এবং সংস্থাগুলি (অর্থাত্ ভিএমওয়্যার) এটির উপর একটি নিখুঁত হত্যা করেছে।

অন্যান্য উজ্জ্বল মনরা সিদ্ধান্ত না নিয়েছে যে কোনও ভৌত মেশিনে প্রচুর ভার্চুয়াল মেশিনে প্যাক করা যথেষ্ট ভাল নয়: আমাদের কম সংস্থায় আরও প্রক্রিয়াগুলির আরও কমপ্যাক্ট প্যাকিং প্রয়োজন।

এই মুহুর্তে, একটি বাড়ি খুব ব্যয়বহুল এবং একটি অ্যাপার্টমেন্ট এখনও খুব ব্যয়বহুল। আমার যদি কেবলমাত্র অস্থায়ীভাবে একটি রুম ভাড়া নেওয়া দরকার? এটি আশ্চর্যজনক, আমি যে কোনও সময় এবং বাইরে যেতে পারি!

মূলত এটি ডকার।

দ্রষ্টব্য: 2018 সালের ডিসেম্বর হিসাবে

ডকারের জন্ম

ডকারটি নতুন তবে ডকারের পিছনে ধারণাটি অনেক পুরানো। ফ্রিবিএসডি নামে একটি অপারেটিং সিস্টেমের জেলগুলির ধারণা ছিল যা 2000 সালের! নতুন কিছু সত্যিই পুরানো।

তখন এবং এখনের ধারণাটি ছিল একই অপারেটিং সিস্টেমের মধ্যে স্বতন্ত্র প্রক্রিয়াগুলি বিচ্ছিন্ন করা, যা "অপারেটিং সিস্টেমের স্তরে ভার্চুয়ালাইজেশন" হিসাবে পরিচিত।

দ্রষ্টব্য: এটি "সম্পূর্ণ ভার্চুয়ালাইজেশন" এর মতো নয়, যেখানে ভার্চুয়াল মেশিনগুলি একই শারীরিক হোস্টের পাশাপাশি পাশাপাশি চালিত হয়।

অনুশীলনে এর অর্থ কী?

অনুশীলনে, এর অর্থ হ'ল জনপ্রিয়তার মধ্যে ডকারের তীব্রতা মাইক্রোসার্ভেসিসগুলিতে তাত্পর্য বাড়িয়ে তোলে - এমন একটি সফ্টওয়্যার ইঞ্জিনিয়ারিং অ্যাপ্রোচ যা সফ্টওয়্যারটিকে অনেকগুলি পৃথক উপাদানগুলিতে ভেঙে দেয়।

এবং এই উপাদানগুলির একটি বাড়ি প্রয়োজন। এটিকে স্বতন্ত্র জাভা অ্যাপ্লিকেশন হিসাবে বা এক্সিকিউটেবল বাইনারি ফাইল হিসাবে পৃথকভাবে স্থাপন করা একটি বড় সমস্যা: একটি জাভা অ্যাপ্লিকেশন পরিচালনা করা সি ++ অ্যাপ পরিচালনা এবং গোলং অ্যাপ্লিকেশন পরিচালনা থেকে আলাদা।

পরিবর্তে, ডকার একটি একক পরিচালন ইন্টারফেস সরবরাহ করে যার মাধ্যমে সফ্টওয়্যার বিকাশকারীগণ প্যাকেজ (!) করতে পারেন, প্রয়োগ করতে পারবেন এবং ধারাবাহিকভাবে বিভিন্ন অ্যাপ্লিকেশন চালাতে পারেন।

এটি একটি বিশাল জয়!

ঠিক আছে, আসুন ডকারের উপকারিতা এবং কনস সম্পর্কে আরও বেশি কথা বলি।

ডকারের সুবিধা

প্রক্রিয়া বিচ্ছিন্নতা

ডকার যে কোনও পরিষেবার জন্য সম্পূর্ণ প্রক্রিয়া বিচ্ছিন্নকরণ সক্ষম করে। পরিষেবা এ এর ​​সমস্ত নির্ভরতা সহ তার নিজস্ব ছোট পাত্রে বাস করে। পরিষেবা বি এর সমস্ত নির্ভরতা সহ তার ধারকটিতে বাস করে। আর দুজনের দ্বন্দ্ব নেই!

তদতিরিক্ত, একটি ধারক ক্র্যাশ হলে কেবল এই ধারকটিই প্রভাবিত হবে। বাকিগুলি (উচিত!) আনন্দের সাথে চালিয়ে যাবে।

এটি সুরক্ষারও উপকার করে। যখন কোনও ধারককে আপস করা হয়, তখন সেই ধারকটি থেকে বেরিয়ে আসা এবং বেস অপারেটিং সিস্টেমটি হ্যাক করা অত্যন্ত কঠিন (তবে অসম্ভব নয়!)।

যদি কোনও ধারক খারাপ ব্যবহার করে (অত্যধিক সিপিইউ বা মেমরি ব্যবহার করে), তবে বিস্ফোরণের ব্যাসার্ধটি কেবলমাত্র বাকি অংশটিকে প্রভাবিত না করে সেই ধারকটির জন্য "সঙ্কুচিত" হতে পারে।

প্রতিশ্রুতি

অনুশীলনে বিভিন্ন অ্যাপ্লিকেশনগুলি কীভাবে কাঠামোগত হয় সে সম্পর্কে চিন্তা করুন।

যদি এটি পাইথন অ্যাপ হয় তবে কয়েকটি পাইথন প্যাকেজ উপলব্ধ রয়েছে। কিছু পিপ মডিউল হিসাবে ইনস্টল করা হয়, অন্যদের RPM বা দেব প্যাকেজ, এবং অন্যদের সহজ গিট ক্লোন ইনস্টলেশন। যখন এটি ভার্চুয়ালেনভ দিয়ে করা হয়, এটি ভার্চুয়ালেনভ ডিরেক্টরিতে সমস্ত নির্ভরতা সহ একটি জিপ ফাইল।

অন্যদিকে, এটি একটি জাভা অ্যাপ্লিকেশন, ধীরে ধীরে এটি নির্মিত হয়েছে, সমস্ত নির্ভরতা টানা এবং উপযুক্ত জায়গায় বিতরণ করা হচ্ছে।

আপনি পয়েন্ট পেতে। পণ্যগুলির জন্য এই অ্যাপ্লিকেশন সরবরাহ করার ক্ষেত্রে বিভিন্ন ভাষা এবং চলমান সময়গুলির সাথে বিভিন্ন অ্যাপ্লিকেশন একটি চ্যালেঞ্জ উপস্থাপন করে।

কীভাবে আমরা সমস্ত নির্ভরতা মেটাতে পারি?

এছাড়াও, দ্বন্দ্ব থাকলে সমস্যা আরও খারাপ হয় is সার্ভিস এ পাইথন লাইব্রেরি v1 এর উপর নির্ভর করে তবে পরিষেবা বি পাইথন লাইব্রেরি v2 এর উপর নির্ভর করে? এখন বিরোধ আছে কারণ ভি 1 এবং ভি 2 একই কম্পিউটারে সহাবস্থান করতে পারে না।

ডকার প্রবেশ করুন।

ডকার কেবলমাত্র সম্পূর্ণ প্রক্রিয়া বিচ্ছিন্নকরণই নয়, সম্পূর্ণ নির্ভরতা বিচ্ছিন্নকরণকেও সক্ষম করে। একই অপারেটিং সিস্টেমে একাধিক পাত্রে পাশাপাশি পাশাপাশি চালানো বেশ সম্ভব এবং সাধারণ, যার প্রত্যেকটির নিজস্ব বিবাদী লাইব্রেরি এবং প্যাকেজ রয়েছে।

রানটাইম ম্যানেজমেন্ট

আবার, আমরা বিভিন্ন অ্যাপ্লিকেশনগুলি যেভাবে পরিচালনা করি তা প্রয়োগের সাথে প্রয়োগের চেয়ে আলাদা। জাভা কোড পাইথনের চেয়ে আলাদাভাবে লগড, শুরু এবং মনিটরিং করা হয়। এবং পাইথন গোলং ইত্যাদি থেকে আলাদা is

ডকার আমাদের একটি একক, একীভূত পরিচালন ইন্টারফেস দেয় যা আমাদের বিভিন্ন ধরণের অ্যাপ্লিকেশন শুরু করতে, নিরীক্ষণ করতে, কেন্দ্রিয়করণ করতে, থামাতে এবং পুনরায় চালু করতে দেয়।

এটি একটি দুর্দান্ত লাভ এবং চলমান উত্পাদন সিস্টেমের জন্য অপারেশনাল ওভারহেডকে উল্লেখযোগ্যভাবে হ্রাস করে।

দ্রষ্টব্য: 2018 এর ডিসেম্বর পর্যন্ত, আপনাকে আর ডকারের দ্রুত প্রবর্তন এবং ভিএমএসের সুরক্ষার মধ্যে নির্বাচন করতে হবে না। প্রজেক্ট ফায়ারক্র্যাকার, অ্যামাজনের সৌজন্যে, উভয় বিশ্বের সেরাকে একত্রিত করার চেষ্টা করে। তবে এটি একটি খুব নতুন প্রযুক্তি যা এখনও উত্পাদনে ব্যবহার করা উচিত নয়।

ডকার যেমন দুর্দান্ত তেমনি এর ডাউনসাইডও রয়েছে।

লাম্বদা প্রবেশ করুন

প্রথমত, সার্ভারগুলি এখনও ডকারে চলছে। ওয়েটারগুলি ভঙ্গুর এবং ঝাপটায়। সেগুলি পরিচালনা করা, প্যাচ করা এবং অন্যথায় রক্ষণাবেক্ষণ করতে হবে।

দ্বিতীয়ত, ডকার 100% সুরক্ষিত নয়। কমপক্ষে কোনও ভিএম এর মতো নয়। হোস্টিং পাত্রে চালিত বড় সংস্থাগুলি একটি ভিয়ার ধাতব ভিত্তিতে নয়, ভিএমগুলিতে এটি করার একটি কারণ রয়েছে। আপনি দ্রুত ধারক প্রারম্ভকালীন সময় এবং ভিএম সুরক্ষা চান!

তৃতীয়ত, কেউ ডকারকে যেমন চালায় না। পরিবর্তে, এটি প্রায় সর্বদা একটি জটিল ধারক অর্কেস্ট্রেশন কাঠামোর অংশ হিসাবে সরবরাহ করা হয় যেমন কুবেরনেটস, ইসিএস, ডকার-স্বর্ম বা ন্যামডের মতো। এগুলি বেশ জটিল প্ল্যাটফর্ম যাগুলি পরিচালনা করার জন্য বিশেষজ্ঞ কর্মীদের প্রয়োজন (পরে এই সমাধানগুলির বিষয়ে আরও বেশি)।

যাইহোক, আমি যখন বিকাশকারী তখন আমি কেবল কোডটি লিখতে এবং অন্য কাউকে তা করতে চাই। ডকার, কুবারনেটস এবং সমস্ত জাজ শেখার পক্ষে সহজ জিনিস নয় - আমাকে কি সত্যিই করতে হবে ?!

সংক্ষিপ্ত উত্তর, এটি নির্ভর করে!

যে লোকেরা কেবল অন্য কাউকে তাদের কোডটি চালাতে চায়, তাদের জন্য এডাব্লুএস ল্যাম্বদা (এবং অনুরূপ সমাধান) এর উত্তর:

এডাব্লুএস লাম্বদা সহ আপনি সার্ভারগুলির বিধান বা পরিচালনা ছাড়াই কোড চালাতে পারেন। আপনি কেবল গণনার সময়টি ব্যবহারের জন্য অর্থ প্রদান করেন - আপনার কোডটি কার্যকর না করা হলে কোনও ফি নেই।

আপনি যদি পুরো "সার্ভারলেস" আন্দোলনের কথা শুনে থাকেন তবে এটিই! সার্ভার চালানোর বা পাত্রে পরিচালনার আর দরকার নেই। কেবল আপনার কোডটি লিখুন, এটিকে জিপ আপ করুন, এটি অ্যামাজনে আপলোড করুন এবং তাদের মাথা ব্যাথা মোকাবেলা করুন!

যেহেতু ল্যাম্বডাস অল্পকালীন, তাই হ্যাক করার কিছুই নেই - ল্যাম্বডাস সহজাতভাবে বেশ নিরাপদ pretty

দুর্দান্ত তাই না?

যদিও (আশ্চর্য!) রিজার্ভেশন রয়েছে।

প্রথমত, লাম্বডাস কেবল সর্বোচ্চ 15 মিনিটের জন্য (নভেম্বর 2018 পর্যন্ত) চালাতে পারে। এটি সূচিত করে যে কাফকা গ্রাহক বা সংখ্যা ক্রাঞ্চিং অ্যাপ্লিকেশনগুলির মতো দীর্ঘ চলমান প্রক্রিয়াগুলি ল্যাম্বডায় চলতে পারে না।

দ্বিতীয়ত, ল্যাম্বডাস একটি পরিষেবা হিসাবে ফাংশন। এর অর্থ হল যে আপনার অ্যাপ্লিকেশনটি অবশ্যই সম্পূর্ণরূপে মাইক্রোসার্ভেসিসে বিভক্ত হওয়া উচিত এবং অন্যান্য জটিল PaaS পরিষেবা যেমন AWS পদক্ষেপের ক্রিয়াকলাপ দ্বারা অর্কেস্টেট করা উচিত। প্রতিটি সংস্থার এই মাইক্রোসার্চ আর্কিটেকচার নেই।

তৃতীয়ত, ল্যাম্বডাসের সমস্যা সমাধানের পক্ষে সমস্যা। এগুলি মেঘ-নেটিভ রানটাইম এবং সমস্ত বাগ ফিক্সগুলি অ্যামাজন ইকোসিস্টেমের মধ্যেই ঘটে। এটি প্রায়শই চ্যালেঞ্জিং এবং স্বজ্ঞাত নয়।

সংক্ষেপে, নিখরচায় দুপুরের খাবার নেই।

দ্রষ্টব্য: এখন একটি সার্ভার ছাড়াই মেঘ ধারক সমাধান রয়েছে। এডাব্লুএস ফারগেট হ'ল এই জাতীয় একটি পদ্ধতি। মেকানিক্স অনেকাংশে একই রকম। যদি আপনি কেবল শুরু করেই থাকেন তবে আমি ফার্গেটকে একবার চেষ্টা করার পরামর্শ দিই - এটি পাত্রে উঠার এবং "সঠিক পথে" চালানোর এক অবিশ্বাস্যর সহজ উপায়।

আপডেট ১/১13/২০১৯: এডাব্লুএস সবেমাত্র ফারগেটের জন্য একটি মূল্যবান মূল্য হ্রাসের ঘোষণা দিয়েছে, এটি "সার্ভারলেস" পাত্রে চালানোর জন্য খুব আকর্ষণীয় পছন্দ হিসাবে তৈরি করেছে।

সারসংক্ষেপ

প্যাকেজিং, চলমান এবং উত্পাদন অ্যাপ্লিকেশন পরিচালনা করার জন্য ডকার এবং ল্যাম্বদা হ'ল দুটি জনপ্রিয় আধুনিক, ক্লাউড-ভিত্তিক পদ্ধতি।

এগুলি প্রায়শই পরিপূরক এবং কিছুটা ভিন্ন ব্যবহারের ক্ষেত্রে এবং অ্যাপ্লিকেশনগুলির জন্য উপযুক্ত।

নির্বিশেষে, একজন আধুনিক ডিওপস ইঞ্জিনিয়ার উভয়ের সাথে খুব পরিচিত হওয়া দরকার। অতএব, ডকার এবং ল্যাম্বদা শেখা ভাল স্বল্প এবং মধ্যমেয়াদী লক্ষ্য।

দ্রষ্টব্য: আমাদের সিরিজের এখনও অবধি, আমরা এমন বিষয়গুলি কভার করেছি যা জুনিয়র থেকে মধ্য স্তরের ডিভোপস ইঞ্জিনিয়ারদের কাছে প্রত্যাশিত। নিম্নলিখিত বিভাগগুলিতে আমরা এমন কৌশলগুলি নিয়ে আলোচনা করব যা মাঝারি থেকে সিনিয়র ডিভোপস ইঞ্জিনিয়ারদের জন্য আরও উপযুক্ত। বরাবরের মতো, অভিজ্ঞতার কোনও শর্টকাট নেই!

পরবর্তী

আধুনিক স্থাপনার সেরা অনুশীলনগুলি সম্পর্কে আরও জানতে পড়ুন।