====== DevOps: Вопросы для кандидатов ====== ===== Общие вопросы ===== * Что такое DevOps? * Что такое SDLC? * Что такое Agile? * Agile Manifesto? ===== Linux / Bash ===== * Что такое Linux? * Что такое shell? * Чем sh отличается от bash? * Что такое демоны и зачем они? * Как проверить доступность порта? * Что такое хеш? * Где хранятся пароли пользователей? * Что такое UID? * Как можно защитить файл от удаления? * Как узнать сколько процессов запущено в системе? * Как узнать сколько использовано ресурсов, а с сколько доступно? * Что такое crontab и для чего это нужно? * Как узнать какие порты открыты в системе и какие приложения их используют? * Какой дистрибутив выбрать для корпоративной среды и почему? * Что такое пакетный менеджер? * Что такое PATH? * В чем разница между soft и hard symlink? * Что такое Zombie процессы? * Что такое Форк-Бомба? ===== git ===== * Чем merge отличается от rebase? * Зачем нужны ветки? * Что такое flow? * Что такое .gitignore? ===== Docker ===== * Чем Entrypoint отличается от CMD и где и что лучше применить? * Чем Copy отличается от ADD? * Как хранятся контейнеры? * Будет ли работать контейнер собраный на компьютере Apple с процессор м1 на на платформе x86_64? * Можно ли запустить контейнер без Docker? * Чем Docker отличается от VM? * Как скопировать файл в контейнер? ===== K8S ===== * Что такое пробы и зачем они нужны? * Что такое request и limits? * Что такое Ingress? * Что такое под и чем он отличается от контейнера? * Что такое rolling update? * Что такое ImagePullPolicy? * Что такое replica set? * Что такое hpa и для чего это нужно? ===== Jenkins ===== * Что такое пайплайн? * Что такое docker wrapper? * Какие способы описания пайплайнов есть в Jenkins и в чем разница? * Как запустить выполнения шагов на разных воркерах? * Что такое Jenkinsfile? * Что такое shared libraries? * Для чего существует опция Use Groovy Sandbox? * Можно ли совмещать скриптовые и декларативные пайплайны? * Можно ли использовать в пайпланах другие языки bash, python and etc? ===== Helm ===== * Что нужно сделать, чтоб при изменении переменных сред или секретов применялись настройки только для тех сервисов, где используются те самое переменные и секреты? * Зачем нужно _tpl файлы? * Что такое сабчарт? * Что такое конфиг-мапы и сереты? ===== Nexus ===== * Какие типы репозиториев доступны? * Для чего нужен нексус? * Можно ли использовать один репозиторий нескольким пользователям? * Что такое политики очистки? * Как сделать чтобы пользователи не имели возможности перезаписывать артефакты? * Чем snapshot отличается release репозиториев? * Как хранятся контейнеры? * Что такое стеджинг? * Зачем нужны теги? * Как запустить контейнер хранящийся в нексусе? ===== Безопасность ===== * Как лучше всего хранить пароли? * Что такое обфускация? * Я обфускировал пароль при помощи base64, на сколько это надежно? * Я случайно запушил пароли в отрытом виде в гит, что мне делать и как избежать повторение ситуации? * Мне нужно передать коллегам пароли, как лучше всего это сделать? * Что такое Istio? * Что такое mTLS? ===== Сети ===== * Что такое серый и белый адрес? * Что такое DHCP? * Что такое DNS? * Как проверить доступность хота? * Что такое маршруты и для чего они нужны? * Что такое nslookup? * Что такое VPN и для чего это нужно? * Что такое Балансир и зачем он нужен? ===== Метрики ===== * Как узнать срок истечения сертификата/кейстора/трастстора? * Что такое промитей? * Что такое графана? * Кто откуда графана берет данные для отображения графиков? ===== Логгирование ===== * Что такое fluentBit? * Зачем нужен ELK?