Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

README.md

DevOps Engineer Challenge

Полезные замечания перед тем как приступить к решению задач

  • Для практических задач обязательным является приведение примера команды, которая решает поставленную задачу. В идеале с входными и выходными данными.
  • Нельзя знать все, но если вы чего то не знаете, скорее всего об этом знает Google.
  • При любой оценке отталкивайтесь от точных чисел.
  • Ограничения по времени нет. Лучше предоставить более полный ответ, чем его отсутствие.

Задания

  1. На Linux-сервере с 100GB диском закончилось место, но команда du показывает что все файлы вместе занимают только 70GB. В чём может быть проблема?

  2. Веб-сервис возвращает ответ если обращаться к нему с помощью curl http://site, но не отвечает если проверять работоспособность с помощью ping, чем это может быть вызвано?

  3. Как определить открытые порты на удаленном сервере?

  4. Какой самый быстрый (производительный) способ посчитать количество файлов в директории?

  5. Каким образом можно отслеживать что приложение работающее на сервере имеет проблемы с исходящими tcp-соединениями.

  6. Чем отличается "доверенный" SSL сертификат от "самоподписного".

  7. Есть 100 серверов. На них необходимо обновить: a) адреса DNS серверов b) адреса NTP серверов Ваши действия.

  8. Есть лог-файл в котором на каждое посещение пользователя записывается три колонки: ip,"uri",response_time. Пример строчки из файла: "1.2.3.4,/shop/checkout,0.650" Напишите две shell команды: a) команда получает этот лог файл в stdin, а на выходе отображает top 15 ip-адресов, с которых были запрошены страницы, содержащие в адресе слово 'checkout'. b) команда находит 90-й перцентиль по времени ответа.

  9. Есть две "одновременных" транзакции в базе PostgreSQL. При условии, что id равно 0, какие будут результаты запросов?

transaction 1 transaction 2
BEGIN; BEGIN;
UPDATE table1 SET id = id + 1 RETURNING id;
-- Какое значение вернёт запрос? SELECT id FROM table1;
-- Какое значение вернёт запрос?
COMMIT; COMMIT;
transaction 1 transaction 2
BEGIN; BEGIN;
UPDATE table1 SET id = id + 1 RETURNING id;
-- Какое значение вернёт запрос? UPDATE table1 SET id = id + 1 RETURNING id;
-- Какое значение вернёт запрос и как быстро?
COMMIT;
COMMIT;
  1. Представьте себе сервис работающий на однотипных виртуальных машинах в облаке. В нем есть API с помощью которого можно удалить или добавить одну уже настроенную виртуальную машину. Для экономии средств стоит задача автоматически менять число запущенных виртуальных машин, например чтобы ночью, когда пользователи спят, было запущенно существенно меньше серверов, чем днём, когда нагрузка возрастает. Допустим, раз в 5 минут запускается ваш скрипт которому надо решить - добавить виртуальную машину, удалить, или ничего не делать. На основании каких метрик вы бы принимали это решение?