কয়েক সপ্তাহ আগে CentOS 7.2 দিয়ে আমরা যা শুরু করেছি তা প্রসারিত করা যাক। এই নির্দেশিকায়, আমরা ডকার 1.12-এ নির্মিত নেটিভ ক্লাস্টারিং এবং অর্কেস্ট্রেশন কার্যকারিতা কীভাবে শুরু করতে এবং শুরু করতে হয় তা শিখেছি। কিন্তু আমাদের শুধুমাত্র আমাদের ম্যানেজার নোড ছিল এবং অন্য কোন কর্মী নেই। আজ, আমরা এটি প্রসারিত হবে.
আমি আপনাকে দেখাব কিভাবে অ-প্রতিসম নোডগুলিকে ঝাঁকে ঝাঁকে যোগ করতে হয়, যেমন একটি ফেডোরা 24 যেটি আমাদের CentOS বক্সের পাশে বসবে, এবং তারা উভয়ই ক্লাস্টারে অংশগ্রহণ করবে, সমস্ত সম্পর্কিত অভিনব লোডব্যালেন্সিং এবং হোয়াটনোট সহ। অবশ্যই, এটি তুচ্ছ হবে না, এবং আমরা কিছু স্নেগের সম্মুখীন হব, এবং তাই এটি বেশ আকর্ষণীয় হওয়া উচিত। আমার পরে.
পূর্বশর্ত
আমরা সফলভাবে অতিরিক্ত নোডগুলি ঝাঁকে ঝাঁকে যোগদান করতে পারার আগে আমাদের বেশ কিছু জিনিস করতে হবে। এক, আদর্শভাবে, সমস্ত নোড ডকারের একই সংস্করণ চালানো উচিত এবং স্থানীয় অর্কেস্ট্রেশনকে সমর্থন করার জন্য এটি কমপক্ষে 1.12 হওয়া উচিত। CentOS-এর মতো, ফেডোরার রেপোতে লেটেস্ট বিল্ট নেই, তাই আপনাকে ম্যানুয়ালি বা ডকার রিপোজিটরি ব্যবহার করে সঠিক সফ্টওয়্যার সংস্করণ যোগ এবং ইনস্টল করতে হবে এবং তারপর কিছু নির্ভরতা দ্বন্দ্ব ঠিক করতে হবে। CentOS এর সাথে কীভাবে এটি করতে হয় তা আমি আপনাকে দেখিয়েছি এবং অনুশীলনটি অভিন্ন।
তাছাড়া, আপনার সমস্ত নোডকে একে অপরের সাথে যোগাযোগ করতে সক্ষম হতে হবে। জায়গায় জায়গায় রাউটিং এবং ফায়ারওয়াল নিয়ম থাকতে হবে যাতে ম্যানেজার এবং শ্রমিকরা তাদের মধ্যে কথা বলতে পারে। অন্যথায়, আপনি নোডগুলিকে ঝাঁকের মধ্যে যোগদান করতে পারবেন না। সমস্যার সমাধান করার সবচেয়ে সহজ উপায় হল সাময়িকভাবে ফায়ারওয়াল নিয়মগুলি (iptables -F) ফ্লাশ করা, কিন্তু এটি আপনার নিরাপত্তাকে ক্ষতিগ্রস্ত করতে পারে। আপনি কি করছেন তা আপনি সম্পূর্ণরূপে বুঝতে পেরেছেন এবং আপনার নোড এবং পোর্টের জন্য সঠিক নিয়ম তৈরি করেছেন তা নিশ্চিত করুন।
ডেমন থেকে ত্রুটি প্রতিক্রিয়া:নোড যুক্ত হওয়ার আগে টাইমআউট হয়ে গেছে। ঝাঁকে ঝাঁকে যোগ দেওয়ার প্রয়াস পটভূমিতে অব্যাহত থাকবে। আপনার নোডের বর্তমান ঝাঁকের অবস্থা দেখতে "ডকার তথ্য" কমান্ডটি ব্যবহার করুন।
আপনার হোস্টগুলিতে আপনার একই ডকার চিত্রগুলি উপলব্ধ থাকতে হবে। আমাদের পূর্ববর্তী টিউটোরিয়ালে, আমরা একটি Apache ইমেজ তৈরি করেছি, এবং আপনাকে আপনার কর্মী নোডগুলিতে একই কাজ করতে হবে, অথবা তৈরি করা ছবিগুলি বিতরণ করতে হবে। আপনি যদি তা না করেন তবে আপনি ত্রুটির সম্মুখীন হবেন। আপনার যদি ডকার সেট আপ করতে সাহায্যের প্রয়োজন হয়, অনুগ্রহ করে আমার ভূমিকা গাইড এবং নেটওয়ার্কিং টিউটোরিয়াল পড়ুন।
7vwdxioopmmfp3amlm0ulimcu \_ websky.11 my-apache2:সর্বশেষ
localhost.localdomain শাটডাউন 7 মিনিট আগে প্রত্যাখ্যান করা হয়েছে
"এমন কোন ছবি নেই:my-apache2:lat&"
চলুন শুরু করা যাক
সুতরাং আমরা আমাদের CentOS বক্স আপ এবং চলমান আছে, এবং এটি সফলভাবে পাত্রে জন্ম দিচ্ছে। আপনি হোস্ট পোর্টগুলি ব্যবহার করে পরিষেবাগুলির সাথে সংযোগ করতে সক্ষম হন এবং সবকিছুই পিচ্চি দেখায়। এই মুহুর্তে, আপনার ঝাঁক শুধুমাত্র ম্যানেজার আছে.
কর্মীদের যোগদান করুন
নতুন নোড যোগ করতে, আপনাকে join কমান্ড ব্যবহার করতে হবে। তবে আপনাকে প্রথমে খুঁজে বের করতে হবে যে কর্মী নোডগুলিতে আপনাকে অবশ্যই কোন টোকেন, আইপি ঠিকানা এবং পোর্ট প্রদান করতে হবে যাতে তারা সোয়ার্ম ম্যানেজারের বিরুদ্ধে সঠিকভাবে প্রমাণীকরণ করে। তারপর চালান (ফেডোরাতে)।
[root@localhost ~]# ডকার সোয়ার্ম জয়েন-টোকেন কর্মী
এই ঝাঁকটিতে একজন কর্মী যোগ করতে, নিম্নলিখিত কমান্ডটি চালান:
ডকার ঝাঁক যোগদান \
--token SWMTKN-1-0xvojvlza90nrbihu6gfu3qm34ari7lwnza ... \
192.168.2.100:2377
আপনি যদি ফায়ারওয়াল এবং রাউটিং নিয়মগুলি ঠিক না করেন তবে আপনি টাইমআউট ত্রুটিগুলি পাবেন৷ আপনি যদি ইতিমধ্যেই ঝাঁকে যোগদান করে থাকেন, জয়েন কমান্ডের পুনরাবৃত্তি করলে এর নিজস্ব শব্দ তৈরি হবে:
ডেমন থেকে ত্রুটি প্রতিক্রিয়া:এই নোডটি ইতিমধ্যে একটি ঝাঁকের অংশ। এই ঝাঁক ছেড়ে অন্য একটিতে যোগ দিতে "ডকার সোয়ার্ম লিভ" ব্যবহার করুন।
যদি কখনও সন্দেহ হয়, আপনি ঝাঁক ছেড়ে আবার চেষ্টা করতে পারেন:
[root@localhost ~]# ডকার সোয়ার্ম লিভ
নোড ঝাঁক ছেড়ে.
docker swarm join --token
SWMTKN-1-0xvojvlza90nrbihu6gfu3qnza4 ... 192.168.2.100:2377
এই নোড একটি কর্মী হিসাবে একটি ঝাঁক যোগদান.
কর্মী নোডে, আপনি স্থিতি পরীক্ষা করতে ডকার তথ্য ব্যবহার করতে পারেন:
ঝাঁক:সক্রিয়
নোডআইডি:2i27v3ce9qs2aq33nofaon20k
ম্যানেজার কি:মিথ্যা
নোড ঠিকানা:192.168.2.103
একইভাবে, ম্যানেজারে:
ঝাঁক:সক্রিয়
নোডআইডি:cneayene32jsb0t2inwfg5t5q
ম্যানেজার:সত্য
ClusterID:8degfhtsi7xxucvi6dxvlx1n4
ম্যানেজারঃ ১
নোড:3
অর্কেস্ট্রেশন:
টাস্ক ইতিহাস ধরে রাখার সীমা:5
ভেলা:
স্ন্যাপশট ব্যবধান:10000
হার্টবিট টিক:1
নির্বাচনী টিক:3
প্রেরণকারী:
হার্টবিট পিরিয়ড:5 সেকেন্ড
CA কনফিগারেশন:
মেয়াদ শেষ হওয়ার সময়কাল:3 মাস
নোড ঠিকানা:192.168.2.100
পরিষেবাগুলি তৈরি করুন বা স্কেল করুন
এখন, আমাদের দেখতে হবে যে ডকার নোডগুলির মধ্যে কন্টেইনারগুলি কীভাবে এবং কীভাবে বিতরণ করে। আমার পরীক্ষা খুব হালকা লোড অধীনে একটি বরং সরল ব্যালেন্সিং অ্যালগরিদম দেখায়. একবার বা দুবার, ডকার নতুন কর্মীদের মধ্যে চলমান পরিষেবাগুলি পুনরায় বিতরণ করার চেষ্টা করেনি, এমনকি আমি তাদের স্কেল এবং আপডেট করার চেষ্টা করার পরেও। একইভাবে, এক অনুষ্ঠানে, এটি সম্পূর্ণরূপে কর্মী নোডে একটি নতুন পরিষেবা তৈরি করেছে। সম্ভবত এটি সেরা পছন্দ ছিল।
নতুন পরিষেবা সম্পূর্ণরূপে কর্মী নোডে তৈরি করা হয়েছে।
কিছুক্ষণ পরে, উভয়ের মধ্যে বিদ্যমান পরিষেবাগুলির জন্য কিছু কনটেইনার পুনরায় বিতরণ করা হয়েছিল, তবে কিছুটা সময় লেগেছিল। নতুন পরিষেবাগুলি ভাল কাজ করেছে। এটি শুধুমাত্র একটি প্রাথমিক পর্যবেক্ষণ, তাই আমি এই মুহুর্তে বেশি কিছু বলতে পারি না। আপাতত, অন্বেষণ এবং টুইকিং শুরু করার জন্য এটি একটি ভাল সূচনা পয়েন্ট।
কিছুক্ষণ পর লোড ব্যালেন্সিং শুরু হয়।
উপসংহার
ডকার একটি ঝরঝরে ছোট প্রাণী, এবং এটি কেবল বড়, আরও জটিল, আরও শক্তিশালী এবং অবশ্যই, আরও মার্জিত হতে থাকবে। এটি একটি বড়, সরস উদ্যোগের দ্বারা খাওয়ার আগে এটি কেবল সময়ের ব্যাপার। যখন এটি এর নেটিভ অর্কেস্ট্রেশনের ক্ষেত্রে আসে, ঝাঁক মোডটি বেশ ভাল কাজ করে, তবে এটির অ্যালগরিদম এবং স্কেলেবিলিটির শক্তিতে সম্পূর্ণভাবে ট্যাপ করতে মাত্র কয়েকটি পাত্রের চেয়ে বেশি লাগে৷
আমার টিউটোরিয়াল দেখায় কিভাবে একটি CentOS বক্স দ্বারা চালিত একটি ক্লাস্টারে একটি ফেডোরা নোড যুক্ত করতে হয় এবং দুটি পাশাপাশি কাজ করেছে। লোডব্যালেন্সিং এর চারপাশে কিছু প্রশ্ন আছে, তবে এটি এমন কিছু যা আমি ভবিষ্যতের নিবন্ধগুলিতে অন্বেষণ করব। সব মিলিয়ে, আমি আশা করি এটি একটি সার্থক পাঠ ছিল। আমরা কিছু পূর্বশর্ত এবং সাধারণ সমস্যাগুলি মোকাবেলা করেছি যা আপনি একটি ঝাঁক সেট আপ করার চেষ্টা করার সময় সম্মুখীন হতে পারেন, আমরা একগুচ্ছ পাত্রে গুলি চালিয়েছি, এবং এমনকি আমরা সংক্ষিপ্তভাবে কীভাবে পরিষেবাগুলি স্কেল এবং বিতরণ করতে হয় তা স্পর্শ করেছি৷ এবং মনে রাখবেন, 'এটি কেবল একটি শুরু।
চিয়ার্স।