Aula 18 - Gerenciamento Avançado de Memória, Cgroups e Namespaces 🐧
Objetivo Pedagógico
Objetivo: Fundamentos da tecnologia de containers: Namespaces (PID, NET, MNT, IPC, UTS, USER) para isolamento lógico e Control Groups (Cgroups v2) para limitação de CPU, RAM e I/O de processos.
📑 1. Fundamentos Teóricos & Arquitetura
Fundamentos da tecnologia de containers: Namespaces (PID, NET, MNT, IPC, UTS, USER) para isolamento lógico e Control Groups (Cgroups v2) para limitação de CPU, RAM e I/O de processos. No ecossistema corporativo moderno, servidores de missão crítica, instâncias de nuvem (AWS, GCP, Azure), clusters Kubernetes e a esmagadora maioria dos supercomputadores do mundo rodam sobre sistemas Linux/Unix.
📐 Visão Arquitetural & Fluxo Operacional
graph TD
A["Espaço de Usuário (User Space)<br>Shell / Comandos / Aplicações"] -->|System Calls| B["Espaço de Kernel (Kernel Space)<br>Gerenciamento Avançado de Memória, Cgroups e Namespaces"]
B --> C["Drivers e Periféricos"]
C --> D["Hardware Físico<br>CPU, Memória, Disco e Rede"]
style A fill:#e3f2fd,stroke:#1565c0
style B fill:#fff3e0,stroke:#e65100,stroke-width:2px
style C fill:#e8f5e9,stroke:#2e7d32
style D fill:#f3e5f5,stroke:#7b1fa2 🔍 Pilares Técnicos de Engenharia
Nesta unidade, exploramos em detalhe: - Linux Namespaces: Pilar conceitual indispensável para administração profissional do sistema. - Control Groups (Cgroups v2): Pilar conceitual indispensável para administração profissional do sistema. - Isolamento de Recursos: Pilar conceitual indispensável para administração profissional do sistema. - Mecanismos Internos do Docker: Pilar conceitual indispensável para administração profissional do sistema. - OOM Killer (Out Of Memory): Pilar conceitual indispensável para administração profissional do sistema.
💻 2. Laboratório de Comandos no Terminal
Execute os comandos práticos abaixo para validar e consolidar o aprendizado em seu terminal:
# Criação de namespace de rede isolado com ip netns
sudo ip netns add rede_isolada
sudo ip netns exec rede_isolada ip a
# Verificação de cgroups v2
cat /sys/fs/cgroup/cgroup.controllers
💡 Análise Técnica dos Comandos
- Padrão de Execução: Comandos são executados de forma não-interativa e com flags que favorecem automação em scripts de infraestrutura.
- Boas Práticas: Uso consciente de privilégios de superusuário (
sudo), minimizando execuções diretas como root. - Inspeção e Verificação: Sempre valide o código de retorno (
echo $?) e consulte a documentação oficial comman [comando].
🎯 3. Próximos Passos & Sequência Didática
-
Slides da Aula
-
Quiz de Fixação
-
Exercícios Práticos
-
Desafio de Projeto