linux centos7 cgroup 命令列操作
阿新 • • 發佈:2018-12-31
1, lssubsys -am 檢視系統中已經存在的參cgroup子系統以及子系統的掛載點:
cpuset /sys/fs/cgroup/cpuset
cpu,cpuacct /sys/fs/cgroup/cpu,cpuacct
memory /sys/fs/cgroup/memory
devices /sys/fs/cgroup/devices
freezer /sys/fs/cgroup/freezer
net_cls /sys/fs/cgroup/net_cls
blkio /sys/fs/cgroup/blkio
perf_event /sys/fs/cgroup/perf_event
hugetlb /sys/fs/cgroup/hugetlb memory /sys/fs/cgroup/memory 2, 命令列掛載和解除安裝子系統: # umount /sys/fs/cgroup/memory/
執行後lssubsys -am 就不會看到memory 子系統的掛載點了 #mount -t cgroup -o memory memory111 /sys/fs/cgroup/memory/
在這條命令中 memory是要掛載的cgroup子系統名稱, memory111 是在/proc/mounts檔案中顯示的名稱 #cat /proc/mounts就會看到一行 memory111 /sys/fs/cgroup/memory cgroup rw,relatime,memory 0 0 3, 在linux系統中有/etc/cgconfig.conf 檔案,在這個檔案裡面可以建立自動開機自動啟動的掛載條目:
# ps aux | grep sshd
root 871 0.0 0.0 82508 3600 ? Ss 12:47 0:00 /usr/sbin/sshd -D
得到程序號871,通過cgclassify把程序加入到/sys/fs/cgroup/test 組群中,命令如下:
# cgclassify -g cpuset:/test 871
# cat /sys/fs/cgroup/cpuset/test/tasks 就會看到871程序在這個檔案下
cpu,cpuacct /sys/fs/cgroup/cpu,cpuacct
memory /sys/fs/cgroup/memory
devices /sys/fs/cgroup/devices
freezer /sys/fs/cgroup/freezer
net_cls /sys/fs/cgroup/net_cls
blkio /sys/fs/cgroup/blkio
perf_event /sys/fs/cgroup/perf_event
hugetlb /sys/fs/cgroup/hugetlb memory /sys/fs/cgroup/memory 2, 命令列掛載和解除安裝子系統: # umount /sys/fs/cgroup/memory/
執行後lssubsys -am 就不會看到memory 子系統的掛載點了 #mount -t cgroup -o memory memory111 /sys/fs/cgroup/memory/
在這條命令中 memory是要掛載的cgroup子系統名稱, memory111 是在/proc/mounts檔案中顯示的名稱 #cat /proc/mounts就會看到一行 memory111 /sys/fs/cgroup/memory cgroup rw,relatime,memory 0 0 3, 在linux系統中有/etc/cgconfig.conf 檔案,在這個檔案裡面可以建立自動開機自動啟動的掛載條目:
mount {#定義需要建立的cgroup子系統及其掛載點,這裡建立cpu與cpuacct(統計)兩個cgroup子系統
cpu = /mnt/cgroups/cpu;
cpuacct = /mnt/cgroups/cpu;
}
4, 命令列建立控制組群:
#cgreate -g memory:/test
執行後就會在memory掛載目錄下/sys/fs/cgroup/memory/ 目錄下看到一個新的目錄test,這個就是新建立的memory子控制組群
#cgdelete -g memory:/test
執行後就會刪除memory的子控制組群test 5,設定組群引數: 假設 存在/sys/fs/cgroup/cpuset/test 組群 #cgset -r cpuset.cpus=0-1 test #cat /sys/fs/cgroup/cpuset/test/cpuset.cpus 0-1 6, 將某個程序移動到控制組群中
假設 存在/sys/fs/cgroup/cpuset/test 組群
cgclassify -g subsystems:path_to_CGROUPS pidlist# ps aux | grep sshd
root 871 0.0 0.0 82508 3600 ? Ss 12:47 0:00 /usr/sbin/sshd -D
得到程序號871,通過cgclassify把程序加入到/sys/fs/cgroup/test 組群中,命令如下:
# cgclassify -g cpuset:/test 871
# cat /sys/fs/cgroup/cpuset/test/tasks 就會看到871程序在這個檔案下