Proyecto Integral de Ingeniería del Software | |
---|---|
Metodologías Ágiles |
Trabajo Fin De Grado | |
---|---|
Guía Memoria TFG |
Servidores | |
---|---|
Minercraft | |
Knoppia | |
Omegacraft |
Base de datos de juegos | |
---|---|
GameBoy Advance (GBA) |
Proyecto Integral de Ingeniería del Software | |
---|---|
Metodologías Ágiles |
Trabajo Fin De Grado | |
---|---|
Guía Memoria TFG |
Servidores | |
---|---|
Minercraft | |
Knoppia | |
Omegacraft |
Base de datos de juegos | |
---|---|
GameBoy Advance (GBA) |
Firefox (Proceso 110216) está consumiendo en torno al 60% de la CPU como podemos ver en la siguiente captura:
Para realizar esto ejecutaremos los siguientes comandos:
cd /sys/fs/cgroup/ mkdir firefox #Creamos el cgroup para firefox cd firefox
Tras eso añadimos firefox al cgroup y procedemos a limitar su consumo de CPU
echo 110216 > cgroup.procs#Metemos el proceso de firefox en el cgroup echo 200000 1000000 > cpu.max #Limitamos el uso de CPU al 20%
Para arrancar un container debian usamos el siguiente comando:
lxc-create -t debian -n deb
Para ello debemos entrar primero a la máquina con el siguiente comando para abrir la terminal del contenedor:
lxc-start #Arrancamos la máquina lxc-attach -n deb /bin/sh #Llamamos a la terminal
Tras eso procedemos a establecer la contraseña del root con el siguiente comando:
passwd root
Desde el mismo sitio que hemos establecido la contraseña para el root procedemos a crear los 3 usuarios:
su - root useradd -m -s /bin/bash usuario1 useradd -m -s /bin/bash usuario2 useradd -m -s /bin/bash usuario3
Para establecer una IP estática usamos el siguiente comando:
sudo ifconfig eth0 10.0.3.68 netmask 255.255.255.0 up
Creamos un nuevo csgroup con el siguiente comando:
cd /sys/fs/cgroup/ mkdir grupo #Creamos el nuevo cgroup cd grupo
echo $$ #Obtenemos el ID del proceso del Shell (En este caso 1709) echo 1709 > cgroup.procs #Añadimos el proceso del shell al gproup
Los programas que abrimos antes quedan congelados. El contenido de memory.current es ahora este:
Este valor que podemos observar es la memoria consumida por los procesos de cgroup en bytes. Ahora el valor parece ser superior al que vimos anteriormente. Tras esto descongelamos el proceso poniendo un 0 en groups.freeze
Estamos limitando cuanto pueden consumir los procesos del cgroup, en este caso estamos limitando los procesos a un 30%
aa-easyprof /usr/bin/listar #Creamos archivo de configuración plantillaque debemos editar aa-easyprof /usr/bin/listar > /etc/apparmor.d/usr.bin.listar #Copiamos el archivo generado al apparmor nano /etc/apparmor.d/usr.bin.listar
Editamos el archivo añadiendo las reglas de denegación debajo de “# No read paths specified”
Tras eso parseamos el archivo modificado para apparmor y habilitamos la política con enforce:
apparmor_parser -r /etc/apparmor.d/usr.bin.listar aa-enforce /usr/bin/listar