ব্যবহারকারীদের মধ্যে সম্পদ ভাগ করে নেওয়ার জন্য আমি কীভাবে সিগ্রুপগুলি কনফিগার করতে পারি?


11

এখানে একটি কার্নেল কনফিগারেশন অপশন থাকত যার নাম শিডিউইউজার বা সিগ্রুপের অধীনে অনুরূপ। এটি (আমার জ্ঞানের) সমস্ত ব্যবহারকারীকে সিস্টেম সংস্থানগুলি মোটামুটি ভাগ করে নেওয়ার অনুমতি দিয়েছে। 2.6.35 এ এটি উপলব্ধ নেই। আমি / সিস্টেম / সিপিইউ / মেমোরি সংস্থানগুলি সমস্ত ব্যবহারকারীর মধ্যে (রুট সহ?) ভাগ করে নেওয়ার জন্য কি আমার সিস্টেমটি কনফিগার করতে পারি? আমি এর আগে কখনও একটি গ্রুপ তৈরি করি নি, এমন করার জন্য কোনও ভাল টিউটোরিয়াল আছে কি? আপনাকে অনেক ধন্যবাদ.


ঠিক আছে, আমি উবুন্টুর সিগ্রুপ-বিন প্যাকেজটিতে একটি লুট নিয়েছি এবং আমি নিশ্চিত যে আমি এটি ইনস্টল করলে ডিফল্টরূপে এটি "এটি করে" fair আমি ধরে নিয়েছি এটির জন্য সেটআপ দরকার হবে, তবে আমি মনে করি আপনার বিশেষ চাহিদা থাকলে এটি ঠিক এটি করে। আমি 2 টি সিপিইউ থ্রেডটি মূলের নীচে এবং 2 টি আমার ব্যবহারকারীর অধীনে চালনা করে পরীক্ষা করেছি এবং সমস্ত 4 টি থ্রেড শীর্ষে 50% ভাগ করে নেবে বলে মনে হয় যা এটি কাজ করছে বলে আমার মনে হয়। এটি আমার জন্য "এটি সমাধান" করতে পারে, তবে আমার কাছে নিশ্চিত হওয়ার আরও সুস্পষ্ট উপায় বা এটি কীভাবে কনফিগার করা যায় তার চেয়ে ভাল ধারণা পেতে চাইলে আবারও ধন্যবাদ!
নাইটউইশফ্যান

এটি চেষ্টা করুন: kennistachtalk.blogspot.co.uk/2015/04/…
কেন শার্প

উত্তর:


12

কার্নেল ডকুমেন্টেশন উদাহরণ সহ cgroups এর সাধারণ কভারেজ সরবরাহ করে।

cgroups-binপ্যাকেজ (যার উপর নির্ভর করে libcgroup1) ইতিমধ্যে বিতরণ দ্বারা উপলব্ধ জরিমানা করা উচিত।

নিম্নলিখিত দুটি ফাইল সম্পাদনা করে কনফিগারেশন করা হয়:

/etc/cgconfig.conf

নিয়ন্ত্রণ গ্রুপ, তাদের পরামিতি এবং মাউন্ট পয়েন্টগুলি সংজ্ঞায়িত করতে libcgroup দ্বারা ব্যবহৃত।

/etc/cgrules.conf

প্রক্রিয়া যার সাথে সম্পর্কিত গ্রুপগুলি নির্ধারণ করতে libcgroup দ্বারা ব্যবহৃত।

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

এরপরে, কাজের চাপ পরিচালক এবং ডিমনকে নিয়ম করুন:

service cgconfig restart
service cgred restart

ওয়ার্কলোড ম্যানেজার (cgconfig) রিসোর্সগুলি বরাদ্দ করার জন্য দায়বদ্ধ।
পরিচালককে একটি নতুন প্রক্রিয়া যুক্ত করা হচ্ছে:

cgexec [-g <controllers>:<path>] command [args]

পরিচালককে ইতিমধ্যে চলমান প্রক্রিয়াটি যুক্ত করা হচ্ছে:

cgclassify [-g <controllers>:<path>] <pidlist>

অথবা স্বয়ংক্রিয়ভাবে cgrules.conf ফাইল এবং সিগ্রুপ রুলস ডেমন (সিগ্রেড) এর মাধ্যমে, যা প্রতিটি নতুন প্রসেস প্রক্রিয়াটিকে নির্দিষ্ট গোষ্ঠীতে জোর করে।


উদাহরণ /etc/cgconfig.conf:

group group1 {
    perm {
            task {
                    uid = alice;
                    gid = alice;
            }
            admin {
                    uid = root;
                    gid = root;
            }
    }

    cpu {
            cpu.shares = 500;
    }

}

group group2 {
    perm {
            task {
                    uid = bob;
                    gid = bob;
            }
            admin {
                    uid = root;
                    gid = root;
            }
    }

    cpu {
            cpu.shares = 500;
    }

}

mount {
    cpu = /dev/cgroups/cpu;
    cpuacct = /dev/cgroups/cpuacct;
}

উদাহরণ /etc/cgrules.conf:

alice            cpu             group1/
bob              cpu             group2/

এটি ব্যবহারকারী 'অ্যালিস' এবং 'বব'-এর মধ্যে সিপিইউ সম্পর্কে রিসোর্সগুলি প্রায় 50-50 ভাগ করে নেবে


সিগ্রুপ শিখতে, এটি বুকমার্ক করে। ধন্যবাদ।
জিগার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.