← До списку лабораторних по Kubernetes
Повний опис / сценарій лабораторної:
Мета: навчитися налаштовувати політику podsecurity для namespace та бачити ефект на pod конфігурації. Крок 1. Створити namespace ps-demo. Команда: kubectl create namespace ps-demo Пояснення: у ньому будемо вмикати політику. Крок 2. Додати лейбли pod-security для режиму baseline. Команда: kubectl label namespace ps-demo pod-security.kubernetes.io/enforce=baseline pod-security.kubernetes.io/enforce-version=latest Пояснення: kube контролер почне перевіряти pod цього namespace. Крок 3. Спробувати створити pod з привілеями. Команда: kubectl run priv-pod -n ps-demo --image=nginx --overrides=<JSON spec з securityContext.privileged=true> Пояснення: очікуємо що створення буде заборонене політикою. Крок 4. Перевірити повідомлення про помилку. Пояснення: уважно прочитай текст помилки від api сервера, він показує яке правило порушено. Крок 5. Створити безпечний pod без привілеїв. Команда: kubectl run safe-pod -n ps-demo --image=nginx Пояснення: такий pod повинен створитися успішно. Крок 6. Посилити політику до рівня restricted. Команда: kubectl label namespace ps-demo pod-security.kubernetes.io/enforce=restricted --overwrite Пояснення: тепер вимоги до pod стануть більш суворими. Крок 7. Спробувати створити pod без вказаних ресурсів. Пояснення: деякі конфігурації можуть бути заблоковані через невідповідні параметри. Крок 8. Виправити pod згідно рекомендацій. Пояснення: додай необхідні securityContext параметри та повтори створення. Крок 9. Переглянути документацію до профілів baseline та restricted у офіційному гайді. Пояснення: зафіксуй для себе основні відмінності між рівнями. Крок 10. Міні звіт. Завдання: опиши як ти розділиш namespace dev stage та prod за рівнями podsecurity.