CGroup Namespace
Temel Bilgiler
CGroup adı alanı, bir ad alanı içinde çalışan süreçlerin cgroup hiyerarşilerini izole etme sağlayan bir Linux çekirdek özelliğidir. Cgroups, kontrol grupları anlamına gelen bir çekirdek özelliğidir ve CPU, bellek ve I/O gibi sistem kaynakları üzerinde sınırlamaları yönetmek ve uygulamak için süreçleri hiyerarşik gruplara organize etmeyi sağlar.
Cgroup adı alanları, diğer ad alanı türleri (PID, mount, ağ vb.) gibi ayrı bir ad alanı türü değildir, ancak ad alanı izolasyonu kavramıyla ilişkilidir. Cgroup adı alanları, cgroup hiyerarşisinin görünümünü sanallaştırır, böylece cgroup adı alanında çalışan süreçler, ana bilgisayarda veya diğer ad alanlarında çalışan süreçlerle karşılaştırıldığında hiyerarşinin farklı bir görünümünü elde eder.
Nasıl Çalışır:
Yeni bir cgroup adı alanı oluşturulduğunda, oluşturan sürecin cgroup'una dayalı bir cgroup hiyerarşisi görünümüyle başlar. Bu, yeni cgroup adı alanında çalışan süreçlerin, oluşturan sürecin cgroup'ının kökünde yer alan cgroup alt ağacıyla sınırlı olan tüm cgroup hiyerarşisinin bir alt kümesini göreceği anlamına gelir.
Bir cgroup adı alanı içindeki süreçler, kendi cgroup'larını hiyerarşinin kökü olarak görürler. Bu, ad alanı içindeki süreçlerin bakış açısından, kendi cgroup'ları kök olarak görünür ve kendi alt ağaçlarının dışındaki cgroup'ları göremez veya erişemezler.
Cgroup adı alanları, kaynakların doğrudan izolasyonunu sağlamaz; yalnızca cgroup hiyerarşisi görünümünün izolasyonunu sağlar. Kaynak kontrolü ve izolasyonu, cgroup alt sistemleri (örneğin, cpu, bellek vb.) tarafından hala uygulanır.
Daha fazla CGroups bilgisi için:
pageCGroupsLab:
Farklı Ad Alanları Oluşturma
CLI
--mount-proc
parametresini kullanarak /proc
dosya sisteminin yeni bir örneğini bağladığınızda, yeni bağlama alanının o ad alanına özgü işlem bilgilerinin doğru ve izole bir görünümünü sağlarsınız.
Docker
Hangi ad alanında olduğunuzu kontrol edin
Bir sürecin hangi ad alanında olduğunu kontrol etmek için aşağıdaki komutu kullanabilirsiniz:
Bu komut, mevcut sürecin ad alanını gösteren bir çıktı verecektir. Ad alanı, /sys/fs/cgroup
dizinindeki bir dosyada listelenir.
Tüm CGroup isim alanlarını bulun
Bir CGroup ad alanına giriş yapın
Ayrıca, başka bir işlem ad alanına yalnızca root olarak girebilirsiniz. Ve başka bir ad alanına bir tanımlayıcı olmadan (örneğin /proc/self/ns/cgroup
) giremezsiniz.
Referanslar
Last updated