Зміст курсу
1. Планування і вибір дистрибутивів Linux
Різні ролі серверів і робочих станцій. Характеристики та вибір дистрибутивів. Тренди розвитку Linux
2. Анатомія архітектури Linux
Властивості ядра Linux. Системні виклики. Життєвий цикл процесу. Архітектура пам'яті. Фізична і віртуальна пам'ять. Менеджер вірутальних пам'яті. Архітектура підсистеми введення-виведення. Мережева підсистема. Файлова система / proc. Робота з пристроями.
3. Файлові системи і розширені технології зберігання
Вибір і обслуговування різних файлових систем: ext3, ext4, xfs, BTRFS, ZFS. Структура даних в файлової системі. Відмовостійкі рішення RAID. LVM. Сценарії резервного копіювання та відновлення. Використання знімків LVM, BTRFS в сценаріях резервного копіювання. Шифрування дисків за допомогою технології LUKS.
4. Базовий моніторинг та оптимізація продуктивності
Постановка завдання моніторингу та оптимізації. Засоби і утиліти моніторингу і бенчмаркінгу. Аналіз вузьких місць: процесор, пам'ять, дисковий введення-виведення, мережа. Оптимізація / підстроювання параметрів ядра, в тому числі: CPU affinity, поведінки kernel swap і pdflush, huge pages, I / O elevator, TCP / IP, NFS, параметрів важливих для корпоративних платформ (баз даних і серверів додатків). Принципи та інструментарій для моніторингу та оптимізація серверів додатків Oracle Weblogic, Tomcat.
5. Мережеве взаємодія та інтеграція
Дозвіл імен: DNS, NIS, LDAP. Налаштування NFS, Samba. Підключення до Active Directory, LDAP. Основи Kerberos.
6. Огляд засобів підвищення безпеки
SELinux. AppArmor. Firewall. Призначення і архітектура PAM. Файли конфігурації PAM. Шифрування в Linux. Використання сертифікатів, PKI.
7. Управління програмним забезпеченням і оновленнями
Вибір пакетних менеджерів і моделей оновлення. Робота з Puppet і Ansible.
8. Введення в віртуалізацію
Типи віртуалізації і різні проекти віртуалізації для Linux. Порівняння контейнерної і гіпервізорной віртуалізації. Використання OpenVZ і Dockers.