LINUX.ORG.RU
ФорумJob

Требуется системный администратор (удалённо или СПб)

 , ,


0

2

Имеется инстанс на AWS. На инстансе Fedora 16 и всякое устаревшее ПО, которое глючит, и всех это конкретно бесит.

План такой:

Есть Elastic IP. Создаём новый инстанс, там спокойно всё устанавливаем/настраиваем (текущий продакшен-сервер при этом не трогаем, всё продолжает работать — то есть это всё можно и днём совершенно спокойно делать), проверяем, и затем, когда уже известно, что всё работает, отключаем на текущем продакшен-сервере всё, что работает с базой данных (в том числе бэкэнд и фронтэнд сайта — на сайте при этом показываем сообщение о том, что проводятся технические работы), делаем дамп. Отключаем EBS-раздел с дампом от текущего продакшен-сервера и присоединяем к новому. Накатываем дамп. Включаем фронтэнд и бэкэнд на новом продакшен-сервере, отвязываем IP-адрес от старого продакшен-сервера, привязываем его к новому.

Вот, собственно, и всё.

Получается, что даунтайм — столько времени, сколько нужно, чтобы сделать дамп базы данных и накатить его (в данном случае его даже не нужно перекачивать — достаточно переприсоединить EBS-раздел). И то, в течение этого времени показывается сообщение о технических работах, поэтому мы никого особо не пугаем.

Так вот, господа системные администраторы, если ничего из вышеперечисленного (EC2, EBS) вас не пугает, как, впрочем, и SES, и автоматическое создание снэпшотов EBS (используем ec2-consistent-snapshot, для удаления слегка переписанный PHP-скрипт), и настройка Zabbix, Gitlab, Redmine, а также настройка upstream-серверов для веб-приложений (почти всё написано на Python/Django), настройка реверс-прокси (nginx), серверов баз данных (MySQL, Postgres, MongoDB), храналищ ключ-значение (Redis), очередей задач (RabbitMQ) — тогда, вероятно, мы можем сработаться.

В качестве тестового задания (разумеется, оплачиваемого, ставка обсуждается) — вот как раз поднять новый инстанс с новым ПО. Поставить туда весь необходимый софт через пакетный менеджер (если нет пакетов — то через checkinstall, например) и своевременно обновлять, держать в wiki актуальные инструкции о том, что и как настроено и так далее.

Если всё будет работать офигенно — то вы молодец, и мы хотим работать с вами дальше. Кстати, дистрибутив можете сами подобрать, мы ни на чём особо не настаиваем. Можете вообще собственный AMI накатить, лишь бы работало быстро и без глюков.

Bonus points, если сможете пройти наше тестовое задание для программистов (кстати, хороших программистов мы тоже периодически ищем):

Да, кстати, если вы умеете прилично писать на Bash или Python, то это замечательно (Lisp, Haskell, Erlang, Lua, Tcl — тоже очень хорошо).

Работать можно удалённо, либо в офисе в Санкт-Петербурге (ст. м. Удельная).



Последнее исправление: intelsonline (всего исправлений: 2)

Тест весёлый. ОтREST'ил вам. AWS/EC2 — такой опыт работы есть, пожалуйста, пишите, имейл мой у вас теперь имеется.

iamsoaw
()
Ответ на: комментарий от ii343hbka

Спасибо большое. Чувак, который его делал, есть тут на ЛОРе, но не хочет палиться, пока мы сайт не приведём к более приличному виду: например, он сейчас не соответствует стандартам секции 508, а также WCAG.

intelsonline
() автор топика
Ответ на: комментарий от intelsonline

«Нет предела совершенству». Причём, на всякие мелочи уходит львиная доля времени в любом проекте :) Впрочем, если у вас ЦА требует соблюдения этих стандартов, то другой разговор.

iamsoaw
()
Ответ на: комментарий от intelsonline

Я, кстати, имею практический опыт работы с USPTO и WIPO. По теме вашей предметной области как раз. Жду письма, спасибо!

iamsoaw
()

забавный тест, тоже отREST'ил :)

по теме могу почти всё, только в шел скриптинге слабоват.

ktk ★★★★
()

Congratulations. You’ve completed the test.

Now you can send your name and email to INTELS Online. To do so, use the REST API at **********************

You have to send a JSON request with the following fields (both with string values): «name», «email». You can also include a comment. To do so, add the «comment» field with a string value.


Где моя футболка!?)

TDrive ★★★★★
()
>>> req = requests.post('http://jobs.poiskznakov.ru/***', data=json.dumps({'name': '***', 'email': '***', 'comment': '***'}))
>>> req.content
'{"message": "You should use POST"}'

:(

xpahos ★★★★★
()
Последнее исправление: xpahos (всего исправлений: 1)
Ответ на: комментарий от apmucm

удаленного сотрудника из других городов рассматриваете?

Извините, вы нам не подходите. Системный администратор, о котором мы мечтаем, читает внимательно, а не «по горизонтали».

intelsonline
() автор топика

Bonus points

Прошел до hex, дальше лень стало.

Могу на удаленке подключиться, соотвествующий опыт имеется, с амазоном работал.

Читать тут и тут.

tazhate ★★★★★
()

Получается, что даунтайм — столько времени, сколько нужно, чтобы сделать дамп базы данных и накатить его

Лучше поднять реплику. Даунтайма тогда не будет вообще.

mega_venik ★★★
()
Ответ на: комментарий от catap

Догонит. :) В крайнем случае можно на мастере остановить работу с базой и дождаться когда реплика догонит. Будет быстрее, чем дамп/рестор.

Log_in
()
Ответ на: комментарий от rival

О, так сработало, большое спасибо! На вакансии не претендую, но было интересно довести до конца.

decadent
()

Клевый тест, спасибо! :)

А вы со всеми свяжитесь из этого тредика? :)

catap ★★★★★
()

Zabbix
MongoDB
RabbitMQ
тогда, вероятно, мы можем сработаться.

Нет. Точно нет. Особенно, с учетом того, что слово «репликация» вам незнакомо.

zabdetud
()
Ответ на: комментарий от iamsoaw

Ааа, тьфу блин всё понял. Не отвечай.

Dron ★★★★★
()

Тест зачетный, с удовольствием прошел! Правда нашел пару мелких недочетов: в некоторых местах есть незакрытые HTML-теги =)

Siado ★★★★★
()
Ответ на: комментарий от Siado

Мсье не админ, поэтому по резюме на админа не претендует =)

Посему лучше помалкивать, а то глупо выглядишь :)

tazhate ★★★★★
()
Ответ на: комментарий от Siado

Уж не глупее неосиляторов. Или желаешь тут срач развести? :)

А почему б и нет!

tazhate ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.