Blockync.py ব্যবহার করে ভিএমএস অনুলিপি করার বিষয়ে বিস্তারিত নির্দেশাবলী
এই নির্দেশাবলী একটি ভিভিতে এলভিএম সরবরাহিত ডিস্ক ব্যবহার করে প্রযোজ্য এবং ধরে নেওয়া হয় যে প্রতিটি হোস্টে পাইথন রয়েছে
Https://gist.github.com/rcoup/1338263 থেকে blockync.py স্ক্রিপ্টটি ডাউনলোড করুন এবং আপনার / হোম / ব্যবহারকারী ফোল্ডারে উত্স এবং গন্তব্য হোস্ট উভয়ই রাখুন।
অগ্রদূত
- আপনার ব্যবহারকারীর জন্য আপনার উভয় মেশিনে (উত্স এবং লক্ষ্য) 'ssh' অ্যাক্সেস থাকা দরকার।
আপনার উভয় মেশিনে 'রুট' এ 'সুডো' অ্যাক্সেস থাকা দরকার।
বিকল্প হিসাবে, আপনি রুট হিসাবে সবকিছু করতে পারতেন, তবে কেবলমাত্র যদি আপনার ssh কী আপনাকে অন্তত লক্ষ্য মেশিনে রুট অ্যাক্সেস দেয়। ** এই ক্ষেত্রে, কমান্ড লাইনগুলি থেকে ব্যবহারকারীর নামটি সরিয়ে দিন।
উদাহরণ সেটিংস
- ভার্চুয়াল মেশিনটি চিউই নামে পরিচিত ডোম0 হোস্টে রয়েছে
- গন্তব্যটি ডোম0 হোস্টে ডার্ট হিসাবে পরিচিত এবং এখানে একটি অভ্যন্তরীণ আইপি ছিল 10.10.10.38 (আমাদের উদাহরণের জন্য)
- আমাদের আসল ক্ষেত্রে আমরা উভয় মেশিনে ডোম0 অপারেটিং সিস্টেম হিসাবে সেন্টোস 7 ব্যবহার করি
- এই পরিস্থিতিতে আমরা যে ভার্চুয়াল মেশিনটি চলছি তাকে LARRY বলা হয়
- এই ক্রিয়াটি করা ব্যবহারকারী হলেন ব্যবহারকারী (যা আপনার নাম হবে)
- DOM0 এর অর্থ আসল শারীরিক সার্ভার
কার্যপ্রণালী
উত্স হোস্টের প্রাথমিক পদক্ষেপ
- বর্তমানে ডোম0 হোস্টটিতে লগইন করুন যার বর্তমানে মেশিন রয়েছে ("উত্স" হোস্ট), যেমন:
ssh user@chewie.domainname.com.au
- আপনার ব্যবহারকারী হিসাবে থাকুন, তাই sudo ব্যবহারকারী হয়ে না * তালিকা মেশিনের সাথে
sudo virh - all
- মেশিনের সংজ্ঞাটি ব্যবহার করে ডাম্প করুন, যেমন:
sudo virsh dumpxML larry> larry.xML
নতুন মেশিনে ("টার্গেট" হোস্ট) ডাম্পড সংজ্ঞাটি অনুলিপি করুন, যেমন:
scp -p larry.xML 10.10.10.38:larry.xml
আপনি অভ্যন্তরীণ আইপিটি আপনার গন্তব্য ডোম0 সার্ভারের নামটিতে পরিবর্তন করতে পারেন ** দ্রষ্টব্য: লক্ষ্যটির জন্য আইপি ঠিকানাটি ব্যবহার করা ভাল, যেমন: scp -p larry.xML user@10.10.10.38: larry.xml
আপনি যদি চাবিগুলির কারণে বিড়াল larry.xML কে অনুলিপি করতে এবং এটি অনুলিপি করতে না পারেন তবে আপনি অন্য মেশিনে ssh করতে পারেন এবং ফাইল তৈরি করতে এবং এটি আটকে দিতে পারেন।
ব্যবহার করে ভিএম এর ডিস্কের আকার এবং নামটি সন্ধান করুন
sudo lvs --units বি
।
** উপরের কমান্ডটি ঠিক বাইটে আকার প্রদর্শন করবে। ** মেশিনের ডিস্কের নাম তালিকার প্রথম কলামে, দ্বিতীয়টিতে এর ভলিউম গ্রুপ এবং শেষের আকারে রয়েছে। ** ডিভাইসটির নাম / dev হিসাবে নির্ধারণ করুন // ** এটি 'll' কমান্ড দিয়ে পরীক্ষা করুন উদাহরণস্বরূপ, এই আউটপুটে: vm_larry vg1 -wi-ao ---- 69793218560B
এলভি ভিজি অ্যাটার এলসি আকারের পুলের উত্স ডেটা% মেটা% সরানো লগ সিপিআই% সিঙ্ক রূপান্তর
lv_root ভিজি 1 -উইও-এও ---- 53687091200B
lv_swap ভিজি 1 -উইও এও ---- 17179869184 বি
vm_vsrv1 ভিজি 1 -উইও এও ---- 193273528320 বি
vm_vsrv10 ভিজি 1 -উইও এও ---- 64424509440 বি
vm_vsrv11 ভিজি 1 -উইও এও ---- 161061273600 বি
vm_vsrv12 ভিজি 1 -উইও এও ---- 204010946560 বি
vm_vsrv2 ভিজি 1 -উইও এও ---- 140110725120 বি
vm_vsrv3 ভিজি 1 -উইও এও ---- 128849018880 বি
vm_larry ভিজি 1 -উইও-এও ---- 69793218560 বি
vm_vsrv5 ভিজি 1 -উইও এও ---- 257698037760 বি
vm_vsrv6 ভিজি 1 -উইও এও ---- 64424509440 বি
vm_vsrv7 ভিজি 1 -উইও এও ---- 161061273600 বি
vm_vsrv8 ভিজি 1 -উইও এও ---- 64424509440 বি
vm_vsrv9 ভিজি 1 -উইও এও ---- 214748364800B
লক্ষ্য হোস্টের প্রাথমিক পদক্ষেপ
- লক্ষ্য হোস্টে লগইন করুন, যেমন
ssh user@darth.domainname.com.au
- আপনার নিজের ব্যবহারকারী হিসাবে থাকুন। অর্থাত্ রুট হয়ে উঠবেন না।
একটি ভলিউম সংজ্ঞা ফাইল তৈরি করুন, যেমন:
vi larry.domainname.com.au-vol.xml
অথবা ন্যানো larry.domainname.com.au-vol.xml
নিম্নলিখিত লাইনগুলির সাথে: দ্রষ্টব্য - আপনাকে মূল ভিএম থেকে বাইট আকার নিতে হবে এবং নীচের স্ক্রিপ্টে রাখতে হবে। আকারের উত্স মেশিনে কমান্ডটি ছিল sudo lvs --units বি
<volume type='block'>
<name>larry.domainname.com.au</name>
<capacity unit='bytes'>69793218560</capacity>
<allocation unit='bytes'>69793218560</allocation>
<target>
<path>/dev/centos/larry.domainname.com.au</path>
<permissions>
<mode>0600</mode>
<owner>0</owner>
<group>6</group>
<label>system_u:object_r:fixed_disk_device_t:s0</label>
</permissions>
</target>
</volume>
দ্রষ্টব্য: এই সংজ্ঞাটি ভিএম ল্যারির জন্য 69793218560 বাইট ডিস্কের জন্য, আসল ভিএমের জন্য প্রয়োজনীয় হিসাবে পরিবর্তন করুন।
দ্রষ্টব্য: পথের নাম এবং শেষ অংশটি মিলবে এবং নতুন ডিস্কের নাম হিসাবে ব্যবহৃত হবে।
ব্যবহার করে সংজ্ঞা থেকে নতুন ডিস্ক তৈরি করুন
sudo virsh vol-create --pool centos larry.domainname.com.au-vol.xml
এটি larry.domainname.com.au-vol.xML থেকে তৈরি ভোল larry.domainname.com.au বলবে
ডিস্ক ডিভাইস ফাইলটিকে অ্যাক্সেসযোগ্য করুন:
sudo chgrp Wheel /dev/mapper/centos-larry.domainname.com.au
sudo chmod g + rw /dev/mapper/centos-larry.domainname.com.au
অনুলিপি করা এক্সএমএল সংজ্ঞাটি সম্পাদনা করুন, যেমন:
vi larry.xML
ফাইলটিতে ডিস্ক সংজ্ঞাটি সন্ধান করুন ("উত্স দেব =" এর জন্য অনুসন্ধান করুন) এবং সদ্য তৈরি করা ডিভাইসটি প্রতিস্থাপন করুন (আপনি ls / dev / Centos / ভিএম দেখতে পারেন), যেমন: / dev / drbd4 -> / dev / CentOS / larry.domainname.com.au
এই সেতুর পরিবর্তনটি আমাদের পরিস্থিতির জন্য অনন্য ছিল।
** ইন্টারফেস স্টাঞ্জগুলিতে "বিআর 1" এর কোনও রেফারেন্স সন্ধান করুন এবং এটিকে "বিআর0" তে পরিবর্তন করুন যেমন আপনি উত্স সেতু পরিবর্তন করছেন তাই লাইনটি এর মত
উত্স হোস্টের চূড়ান্ত পদক্ষেপ
উত্স হোস্টে লগইন করুন, যেমন
ssh user@chewie.domainname.com.au
চূড়ান্ত সিঙ্ক করার আগে উত্স হোস্টের ভিএম বন্ধ করে দেওয়া সবচেয়ে ভাল অনুশীলন হবে তবে তা করার দরকার নেই। (বীরশ শাটডাউন নেম অফম্যাচাইন)
যদি ইতিমধ্যে উত্স হোস্টে না থাকে তবে https://gist.github.com/rcoup/1338263 থেকে blockync.py স্ক্রিপ্টটি ডাউনলোড করুন
যদি আপনার ব্যবহারকারীর নাম ব্যবহারকারীর হয় (উদাহরণস্বরূপ) তবে blockync.py স্ক্রিপ্টটি উভয় মেশিনে / হোম / ব্যবহারকারী এবং কপ ব্যবহারকারী: ব্যবহারকারী এবং chmod 755 স্ক্রিপ্টে অনুলিপি করুন।
- যদি ইতিমধ্যে লক্ষ্য হোস্টে না থাকে তবে এটি এখানে অনুলিপি করুন, যেমন:
scp -p blockync.py user@10.10.10.38: blockync.py
- লক্ষ্য ডিস্কে উত্স ডিস্কটি অনুলিপি করতে এটি ব্যবহার করুন, যেমন eg
কমান্ড যা অনুলিপি করে
sudo -E পাইথন blockync.py / dev / vg1 / vm_larry user@10.10.10.38 /dev /mapper/centos-larry.domainname.com.au -b 4194304
দ্রষ্টব্য: প্রথম ডিভাইসের নাম উত্স হোস্টের জন্য, যেমন 'lvs' কমান্ড থেকে নির্ধারিত; এটি একজন [[চ্যুই]] উত্স হোস্টের।
দ্রষ্টব্য: এটি লক্ষ্যবস্তু ডিস্কের সামগ্রী নষ্ট করে দেবে, /dev/mapper/centos-larry.domainname.com.au সঠিক কিনা তা নিশ্চিত করুন!
দ্রষ্টব্য: সিঙ্কটি একটি দীর্ঘ সময় নিতে পারে - গিগা বাইট প্রতি প্রায় 100 সেকেন্ড, যেমন: 60 গিগাবাইট ডিস্কের জন্য 90 মিনিট।
তবে, ভিএম ব্যবহারের সময় আপনি একটি সিঙ্ক করতে পারেন; পরবর্তী সিঙ্কগুলি 25 শতাংশ পর্যন্ত দ্রুত হতে পারে
স্ক্রিপ্টটি যে পরামিতিগুলি ব্যবহার করছে তা মুদ্রণ করবে (অবহেলিত মডিউল সম্পর্কে কোনও বার্তা থাকতে পারে, এটি ঠিক আছে)। এরপরে, এটি ssh কমান্ড প্রদর্শন করে যা এটি ব্যবহার করছে এবং এটি চালায় (আপনি অনুমোদিত কর্মীদের কেবল বার্তাটি দেখতে পাবেন যখন এটি এটি করবে)। এটির সিঙ্কের সময় এটি অনুলিপি করা মোট ব্লক এবং তার গড় গতি প্রদর্শন করবে। অবশেষে, এটি যত সেকেন্ড সময় নিয়েছে তার সমাপ্তির বার্তা প্রিন্ট করে।
জানার বিষয়
আপনি সিটিআরএল সি এর সাথে সিঙ্কটি বাতিল করতে পারেন এবং আবার কমান্ডটি চালিয়ে আবার এটি পুনরায় চালু করতে পারেন
লক্ষ্য হোস্টের চূড়ান্ত পদক্ষেপ
- লক্ষ্য হোস্টে লগইন করুন, যেমন
ssh user@darth.domainname.com.au
- ভার্চুয়াল মেশিন তৈরি করুন, যেমন:
virsh larry.xML সংজ্ঞায়িত করুন
- নতুন সংজ্ঞায়িত মেশিন শুরু করুন, যেমন:
সুডো বীরশ লরি শুরু করুন
- হোস্ট বুট শুরু করার জন্য এটি চিহ্নিত করুন, যেমন:
সুডো বীরশ অটোস্টার্ট ল্যারি
দ্রষ্টব্য: নতুন পরিবেশের সাথে মানিয়ে নিতে ভিএম এর বিশদ পরিবর্তন করা প্রয়োজন হতে পারে।