লজিক্যাল ভলিউমের স্ন্যাপশট কীভাবে নেবেন এবং এলভিএম-তে তৃতীয় অংশটি পুনরুদ্ধার করবেন


LVM স্ন্যাপশটগুলি হল lvm ভলিউমের স্থান দক্ষ পয়েন্টিং সময় কপি। এটি শুধুমাত্র lvm এর সাথে কাজ করে এবং কেবলমাত্র উত্সটি লজিক ভলিউমে স্ন্যাপশটের ভলিউমে পরিবর্তন করা হলে স্থানটি গ্রাস করে। যদি উত্স ভলিউমের 1GB এর যোগফলে বিশাল পরিবর্তন ঘটে থাকে তবে একই পরিবর্তনগুলি স্ন্যাপশটের ভলিউমে করা হবে। স্থান দক্ষতার জন্য সর্বদা একটি ছোট আকারের পরিবর্তন করা সেরা। স্ন্যাপশটটি সঞ্চয়স্থানের বাইরে চলে গেলে, আমরা বাড়ার জন্য লভেক্স্যান্ড ব্যবহার করতে পারি। এবং যদি আমাদের স্ন্যাপশট সঙ্কুচিত করতে হয় তবে আমরা লভ্রেডুস ব্যবহার করতে পারি।

স্ন্যাপশট তৈরির পরে যদি আমরা কোনও ফাইল দুর্ঘটনাক্রমে মুছে ফেলেছি তবে আমাদের চিন্তার দরকার নেই কারণ স্ন্যাপশটের আসল ফাইলটি আমরা মুছে ফেলেছি। স্ন্যাপশট তৈরি করার সময় ফাইলটি সেখানে উপস্থিত থাকলে এটি সম্ভব। স্ন্যাপশটের ভলিউমটি পরিবর্তন করবেন না, স্নাপশট দ্রুত পুনরুদ্ধার করার সময় যেমন রাখবেন তেমনি রাখুন।

স্ন্যাপশট ব্যাকআপ বিকল্পের জন্য ব্যবহার করা যাবে না। ব্যাকআপগুলি হ'ল কিছু ডেটার প্রাথমিক অনুলিপি, তাই আমরা ব্যাকআপ বিকল্প হিসাবে স্ন্যাপশট ব্যবহার করতে পারি না।

  1. লিনাক্সে এলভিএম দিয়ে ডিস্ক স্টোরেজ তৈরি করুন - পার্ট 1
  2. লিনাক্সে LVM- কে কীভাবে প্রসারিত/হ্রাস করবেন - দ্বিতীয় ভাগ

  1. অপারেটিং সিস্টেম - এলভিএম ইনস্টলেশন সহ CentOS 6.5
  2. সার্ভার আইপি - 192.168.0.200

পদক্ষেপ 1: এলভিএম স্ন্যাপশট তৈরি করা হচ্ছে

প্রথমে ‘ ভিজিএস ’ কমান্ডটি অনুসরণ করে একটি নতুন স্ন্যাপশট তৈরি করতে ভলিউম গোষ্ঠীতে বিনামূল্যে স্থানের জন্য চেক করুন।

# vgs
# lvs

আপনি দেখতে পাচ্ছেন, উপরে ভিজিএস আউটপুটটিতে 8 গিগাবাইট ফ্রি স্পেস বাকি আছে। সুতরাং, আসুন tecmint_datas নামের আমার কোনও ভলিউমের জন্য একটি স্ন্যাপশট তৈরি করা যাক। প্রদর্শনের উদ্দেশ্যে, আমি নিম্নলিখিত কমান্ডগুলি ব্যবহার করে কেবল 1 জিবি স্ন্যাপশট ভলিউম তৈরি করতে যাচ্ছি।

# lvcreate -L 1GB -s -n tecmint_datas_snap /dev/vg_tecmint_extra/tecmint_datas        

OR

# lvcreate --size 1G --snapshot --name tecmint_datas_snap /dev/vg_tecmint_extra/tecmint_datas

উপরের দুটি আদেশই একই কাজ করে:

  1. -এস - স্ন্যাপশট তৈরি করে
  2. -n - স্ন্যাপশটের নাম

এখানে, উপরোক্ত প্রতিটি পয়েন্টের ব্যাখ্যা দেওয়া হল।

  1. এখানে স্ন্যাপশটের আকার তৈরি হচ্ছে
  2. স্ন্যাপশট তৈরি করে
  3. স্ন্যাপশটের জন্য নাম তৈরি করে
  4. নতুন স্ন্যাপশটের নাম
  5. আমরা একটি স্ন্যাপশট তৈরি করতে যাচ্ছি ভলিউম

আপনি যদি কোনও স্ন্যাপশট অপসারণ করতে চান তবে আপনি ‘ lvremove ’ কমান্ডটি ব্যবহার করতে পারেন।

# lvremove/dev/vg_tecmint_extra/tecmint_datas_snap

এখন, নিম্নলিখিত কমান্ড ব্যবহার করে সদ্য নির্মিত স্ন্যাপশট তালিকাভুক্ত করুন।

# lvs

আপনি উপরে দেখুন, একটি স্ন্যাপশট সফলভাবে তৈরি করা হয়েছিল। আমি এমন একটি তীর চিহ্ন দিয়ে চিহ্নিত করেছি যেখানে স্ন্যাপশটগুলি যেখানে তৈরি হয়েছিল সেখান থেকে << টেকমিন্ট_ড্যাটাস । হ্যাঁ, কারণ আমরা tecmint_datas এল-ভলিউম এর জন্য একটি স্ন্যাপশট তৈরি করেছি।

আসুন tecmint_datas তে কিছু নতুন ফাইল যুক্ত করা যাক। এখন ভলিউমের কিছু ডেটা রয়েছে প্রায় 650MB এবং আমাদের স্ন্যাপশটের আকার 1GB। সুতরাং স্ন্যাপ ভলিউমে আমাদের পরিবর্তনগুলি ব্যাকআপ করার জন্য পর্যাপ্ত জায়গা রয়েছে। এখানে আমরা দেখতে পাচ্ছি, নীচের কমান্ডটি ব্যবহার করে আমাদের স্ন্যাপশটের স্থিতি কী।

# lvs

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

# lvdisplay vg_tecmint_extra/tecmint_data_snap

আবার, উপরের ছবিতে হাইলাইট করা প্রতিটি পয়েন্টের স্পষ্ট ব্যাখ্যা এখানে।

  1. স্ন্যাপশটের লজিকাল ভলিউমের নাম
  2. ভলিউম গোষ্ঠীর নাম বর্তমানে ব্যবহৃত।
  3. পড়ার এবং লেখার মোডে স্ন্যাপশট ভলিউম, আমরা এমনকি ভলিউমটি মাউন্ট করতে এবং এটি ব্যবহার করতে পারি
  4. স্ন্যাপশট তৈরি হওয়ার সময়। এটি খুব গুরুত্বপূর্ণ কারণ স্ন্যাপশট এই সময়ের পরে প্রতিটি পরিবর্তন সন্ধান করবে
  5. এই স্ন্যাপশটটি টেকমিন্ট_ড্যাটাস লজিক্যাল ভলিউমের অন্তর্ভুক্ত
  6. লজিকাল ভলিউম অনলাইন এবং ব্যবহারের জন্য উপলব্ধ
  7. উত্স ভলিউমের আকার যা আমরা স্ন্যাপশট নিয়েছি
  8. গা-টেবিলের আকার = রাইটিং-এ অনুলিপি করুন, তার অর্থ হল tecmint_data ভলিউমে যা কিছু পরিবর্তন করা হয়েছিল তা এই স্ন্যাপশটে লেখা হবে
  9. বর্তমানে স্ন্যাপশটের আকার ব্যবহৃত হয়েছে, আমাদের টেকমিন্ট_ডাতাসগুলি 10 জি কিন্তু আমাদের স্ন্যাপশটের আকারটি 1 জিবি ছিল যার অর্থ আমাদের ফাইলটি প্রায় 650 এমবি। তাই এখন এটি 51% এ কী, যদি ফাইলটি 2 জিবি আকারে টেকমিন্ট_ড্যাটাস আকারে বেড়ে যায় স্ন্যাপশট বরাদ্দ করা আকারের চেয়ে আরও বাড়বে, নিশ্চিতভাবেই আমরা স্ন্যাপশট নিয়ে সমস্যায় পড়ব। এর অর্থ আমাদের লজিকাল ভলিউমের আকার (স্ন্যাপশটের ভলিউম) বাড়ানো দরকার
  10. স্ন্যাপশটের জন্য অংশটির আকার দেয়

এখন, টেকমিন্ট_ড্যাটাস এ 1 জিবি-র বেশি ফাইল অনুলিপি করা যাক, দেখুন কী হবে। যদি আপনি এটি করেন তবে আপনি ‘ ইনপুট/আউটপুট ত্রুটি ’ বলে ত্রুটি বার্তা পাবেন, এর অর্থ স্ন্যাপশটের ফাঁকা স্থান।

লজিকাল ভলিউম পূর্ণ হয়ে গেলে এটি স্বয়ংক্রিয়ভাবে নেমে যাবে এবং আমরা স্ন্যাপশটের ভলিউমের আকার বাড়িয়ে দিলেও আমরা এটিকে আর ব্যবহার করতে পারি না। স্ন্যাপশট তৈরি করার সময় উত্সের আকারের সমান হওয়া ভাল ধারণা, টেকমিট_ড্যাটাস সাইজ 10 জি ছিল, যদি আমি 10 জিবি আকারের স্ন্যাপশট তৈরি করি তবে এটি কখনই উপরের মতো প্রবাহিত হবে না কারণ এর পর্যাপ্ত স্থান রয়েছে আপনার ভলিউম স্ন্যাপ নিতে

পদক্ষেপ 2: এলভিএম-এ স্ন্যাপশট প্রসারিত করুন

ওভারফ্লো এর আগে আমাদের যদি স্ন্যাপশটের আকার বাড়ানোর দরকার হয় তবে আমরা এটি ব্যবহার করে করতে পারি।

# lvextend -L +1G /dev/vg_tecmint_extra/tecmint_data_snap

স্ন্যাপশটের জন্য এখন সম্পূর্ণ 2 জিবি আকার ছিল।

এরপরে, নিম্নলিখিত কমান্ডটি ব্যবহার করে নতুন আকার এবং COW টেবিলটি যাচাই করুন।

# lvdisplay /dev/vg_tecmint_extra/tecmint_data_snap

স্ন্যাপ ভলিউম এবং ব্যবহারের আকার জানার জন্য %

# lvs

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

পদক্ষেপ 3: স্ন্যাপশট পুনরুদ্ধার বা মার্জ করা

স্ন্যাপশট পুনরুদ্ধার করতে, আমাদের প্রথমে ফাইল সিস্টেমটি মাউন্ট করতে হবে।

# unmount /mnt/tecmint_datas/

মাউন্ট পয়েন্টটি আনমাউন্ট করা আছে কি না তা পরীক্ষা করে দেখুন।

# df -h

এখানে আমাদের মাউন্টটি আনমাউন্ট করা হয়েছে, তাই আমরা স্ন্যাপশটটি পুনরুদ্ধার করা চালিয়ে যেতে পারি। lvconvert কমান্ডটি ব্যবহার করে স্ন্যাপটি পুনরুদ্ধার করতে।

# lvconvert --merge /dev/vg_tecmint_extra/tecmint_data_snap

মার্জ সম্পূর্ণ হওয়ার পরে, স্ন্যাপশটের ভলিউম স্বয়ংক্রিয়ভাবে সরানো হবে। df কমান্ড ব্যবহার করে এখন আমরা আমাদের পার্টিশনের স্থান দেখতে পাচ্ছি।

# df -Th

স্ন্যাপশটের পরে ভলিউম স্বয়ংক্রিয়ভাবে সরানো হবে। আপনি লজিকাল ভলিউমের আকার দেখতে পারেন।

# lvs

গুরুত্বপূর্ণ: স্ন্যাপশটগুলি স্বয়ংক্রিয়ভাবে প্রসারিত করতে, আমরা কনফাইট ফাইলে কিছু পরিবর্তন ব্যবহার করে এটি করতে পারি। ম্যানুয়াল জন্য আমরা lvextend ব্যবহার করে প্রসারিত করতে পারেন।

আপনার সম্পাদকের পছন্দটি ব্যবহার করে lvm কনফিগারেশন ফাইলটি খুলুন।

# vim /etc/lvm/lvm.conf

শব্দ অটেক্স্যান্ডের জন্য অনুসন্ধান করুন। ডিফল্ট দ্বারা মান নীচের অনুরূপ হবে।

এখানে 100 75 এ পরিবর্তন করুন, যদি অটো প্রসারিত প্রান্তি 75 হয় এবং স্বয়ংক্রিয় প্রসারিত শতাংশ হয়, এটি 20 শতাংশ দ্বারা আরও আকার বাড়ানো হবে

যদি স্ন্যাপশটের ভলিউম 75% এ পৌঁছে যায় তবে এটি << 20% দ্বারা স্বয়ংক্রিয়ভাবে স্ন্যাপ ভলিউমের আকার প্রসারিত করবে। সুতরাং, আমরা স্বয়ংক্রিয়ভাবে প্রসারিত করতে পারেন। ডাব্লুডাব্লিউকিউ! ব্যবহার করে ফাইলটি সংরক্ষণ এবং প্রস্থান করুন।

এটি ওভারফ্লো ড্রপ থেকে স্ন্যাপশট সংরক্ষণ করবে। এটি আপনাকে আরও সময় বাঁচাতে সহায়তা করবে। এলভিএম হ'ল একমাত্র পার্টিশন পদ্ধতি যেখানে আমরা আরও প্রসারিত করতে পারি এবং পাতলা বিধান, স্ট্রাইপিং, ভার্চুয়াল ভলিউম এবং আরও অনেকগুলি পাতলা-পুল ব্যবহার করে আরও বৈশিষ্ট্য পেতে পারি, আসুন পরবর্তী বিষয়গুলিতে সেগুলি দেখি।