ভ্যাগ্র্যান্ট দ্বারা পরিচালিত লিনাক্স অতিথি ভিএম এর জন্য কী স্বাপ ফাইল তৈরি করা সম্ভব?


8

আমার মধ্যে আমার Vagrantfileনীচের সরবরাহকারীর সংজ্ঞা রয়েছে:

ভ্যাগ্র্যান্টফাইলে থেকে অংশ:

config.vm.provider :virtualbox do |vb|
  vb.gui = false
  vb.customize ["modifyvm", :id, "--memory", "4096"]
end

আমি যখন free -mতৈরি ভিএম এর মধ্যে রান করি আমি নীচের প্রতিবেদনটি দেখতে পাচ্ছি:

             total       used       free     shared    buffers     cached
Mem:          3953        337       3615          0         18        119
-/+ buffers/cache:        199       3753
Swap:            0          0          0

যখন ভিএম তৈরি করা হচ্ছে এবং সরবরাহ করা হচ্ছে তখন কি অদলবদল দেওয়া সম্ভব?

আমি সেটিং চেষ্টা করেছি vm.swappiness/etc/sysctl.confএবং VM- র পুনরায় চালু করার, কিন্তু আমি কোনো VM- র জন্য swap 'র স্থান যোগ করার প্রভাবিত দেখতে পাচ্ছি না।

আমার অদলবদল কেন দরকার? আমি বরং অদলবদল স্পেসের সাথে সামান্যই ডিল করব না এবং মেমরির সাথে সমস্ত কিছু চালাব। তবে কিছু অ্যাপ্লিকেশনের জন্য (পিএইচপি-র জন্য সুরকার প্রকল্প, উদাহরণস্বরূপ) নির্দিষ্ট শর্তে প্রচুর স্মৃতি ব্যবহার করার জন্য কুখ্যাত। অদলবদল স্থান ব্যতীত আমি কোনও ভিএম-তে যে পরিমাণ মেমরি ফেলেছি তার সাথে আমাকে খুব উদার হতে হবে, যদি আমার কাছে অদলবদল স্থান ছিল - যদিও এটি ততটা দক্ষ নাও হতে পারে - আমি তাত্ত্বিকভাবে কম সমস্যার মধ্যে চলে যাব।

উত্তর:


4

আপনি যে মেমরি সেটিংস দেখছেন তা কেবল ভিএম এর র‌্যামটি কনফিগার করতে ব্যবহৃত হয়। তবে অদলবদল সংজ্ঞাটি ডিস্ক চিত্রের অংশ। এই চিত্রটি আপনাকে config.vm.boxসংজ্ঞায়নের অংশ হিসাবে সরবরাহ করা হয়েছে Vagrantfile। আমার নির্দিষ্ট ক্ষেত্রে আমি লক্ষ্য করেছি যে অদলবদলের স্থানটি সহজেই পুনরায় কনফিগার করা যায় না (আমার কাছে কেবলমাত্র 1 জিবিআইটি অদলবদল রয়েছে)।

আপনার ক্ষেত্রে আমি বেস ইমেজ ( config.vm.box) পরিবর্তন করতে বা আপনার রুট ফাইল সিস্টেমে একটি অদলবদল যুক্ত করার পরামর্শ দিচ্ছি উদাহরণস্বরূপ এই স্ক্রিপ্টটিকে আপনার মধ্যে সংহত করে Vagrantfileএটি অন্য লিঙ্ক যা চেষ্টা করার মতো বলে মনে হচ্ছে।


ধন্যবাদ, আমি একধরণের অনুভূত হয়েছি যে বেস ইমেজের দিকে আরও নজর দেওয়ার পরে তার অদলবদলটি পরিবর্তন করতে হবে। দেখা যাচ্ছে যে প্রোগ্রামটিতে বিভিন্ন ক্রিয়াকলাপের জন্য প্রচুর স্মৃতি দরকার I বেস ইমেজ সংশোধন করা ছাড়া অন্য কোনও সমাধান আছে বলে মনে হয় না।
শান কুইন

লিঙ্কযুক্ত স্ক্রিপ্ট (প্রথম এক) আমার জন্য দুর্দান্ত কাজ করেছে। লিঙ্কটি যদি কখনও বাসি হয়ে যায়: create_swap.sh এবং অপসারণ_স্বেপ.শ কে কাঁচা টুকরো টুকরো হিসাবে বলে
পানিপেটার

12

কেবল আপনার যোজক ফাইলটিতে এই লাইনটি যুক্ত করুন

Vagrantfile

 # Enable Dynamic Swap Space to prevent Out of Memory crashes
config.vm.provision "shell", inline: "sudo apt install swapspace -y"

এবং তারপরে পুনঃস্থাপন

vagrant up --provision

কিভাবে এটা কাজ করে

এটি একটি গতিশীল অদলবদল স্পেস ডেমন। বেশ কয়েকটি রয়েছে তবে এখানে একটি জনপ্রিয়।

sudo apt install swapspace

এটি চলছে কিনা তা যাচাই করতে

sudo service swapspace status

Http://pqxx.org/development/swapspace/ থেকে উদ্ধৃত অংশ

লিনাক্স কার্নেলের জন্য এই সিস্টেম ডেমনটি বড়, ফিক্স অদলবদ পার্টিশন বা অদলবদল ফাইলগুলির প্রয়োজনীয়তা সরিয়ে রাখে।

স্ব্যাপস্পেসের সাথে একটি লিনাক্স-ভিত্তিক সিস্টেম (অবিচ্ছিন্নভাবে জিএনইউ / লিনাক্স) ইনস্টল করার সময়, স্বাভাবিক অদলবদল বাদ দেওয়া যেতে পারে, বা এটি বেশ ছোট রাখা যেতে পারে। স্ব্যাপস্পেস যখনই স্বাভাবিক সিস্টেমের ব্যবহারের সময় খুঁজে পায় যে আরও ভার্চুয়াল মেমরি প্রয়োজন, এটি স্বয়ংক্রিয়ভাবে হার্ড ডিস্ক থেকে স্থান দাবি করবে। বিপরীতে, অদলবদলের আর প্রয়োজন নেই এমন ফাইল সিস্টেমের দ্বারা নিয়মিত ব্যবহারের জন্য আবার খালি করা হবে।

এর অর্থ হ'ল স্ব্যাপস্পেস ইনস্টল করার পরে, ইনস্টলেশন চলাকালীন সিস্টেমের উপলভ্য সোয়াপ স্পেসটি আর জীবন বা মৃত্যুর পছন্দ নয়। GNU / Linux কে কেবল একটি একক, বড় পার্টিশনটি চালানো এখন ব্যবহারিক হয়ে উঠেছে - আফসোসযোগ্য ইনস্টলেশন পছন্দগুলির সাথে কোনও ডিস্কের স্থান নষ্ট হয়নি। সিস্টেমটি মাঝে মাঝে মেমরি-নিবিড় কাজটি পরিচালনা করতে সক্ষম হতে পারে যা স্বাভাবিকভাবে দেখা যায় একই স্বাপের স্থানটি অব্যবহৃত এবং অকার্যকর হিসাবে স্বাভাবিক অপারেশন চলাকালীন মূলত আগে থেকে দেখা গিয়েছিল তার চেয়ে অনেক বেশি অদলবদল স্থান গ্রহণ করে।


0

আপনি যদি আপনার ভ্যাগ্র্যান্ট বাক্স সরবরাহ করতে শেফ ব্যবহার করছেন তবে সবচেয়ে সহজ সমাধানটি সম্ভবত এটি ব্যবহার করা swap_file। শেফ 14.0 এ এই সংস্থানটি নতুন।

উদাহরণস্বরূপ, আপনার রেসিপিতে নিম্নলিখিতগুলি যুক্ত করুন:

swap_file '/var/swap.1' do
  size 1024
end
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.