Комментарии 41
Помню мне надо было на выходах сортировочной линии организовать рабочие места, по 2 на каждом(тонкий клиент+сетевой принтер), а линию ту сдавали подрядчики и мимо ИТ. Так вот на каждом выходе линии было 2(две) сетевых розетки RJ45. Благо сделаны они были нормальной четырехпарной витой парой. Переделка кросса и обжим огромной коробки патчкордов-гидр(четырехпарка бьется на две двухпарки, через одну розетку можно два порта подключить) заняла уйму времени, аж пальцы болели потом.
Что может быть страшнее, чем откат БД на пол года назад :(
админы делятся на тех, кто не делает бэкапы, тех кто уже делает и тех кто уже делает и проверяет их целостность.
Нет, те кто не делает бэкапы -- это "ещё не админы".
Даже у админов со стажем бывают случаи, когда надо что-то поменять на удаленном сервере, или мигрировать данные и из-за простоты операции может не сработать инстинкт бэкапа. Вот недавно в ФБ такое случилось. Там тоже не админы?
Вот недавно в ФБ такое случилось. Там тоже не админы?
Там гораздо хуже.
Свои внутренние данные, включая систему контроля доступа, хостить и DNS'ить вместе с пользовательскими базами -- это уже не ошибка и не поспешность. Это, как минимум, вредительство.
Да, в этом чувствуется рука "эффективного менеджера".
Сэкономили на копейку, а ущерб получили на многие миллионы.
Нечто подобное было, например, в аварии на Фукусиме: при проектировании этой АЭС возможную потерю электроснабжения собственных нужд сочли "невероятным событием". А оно случилось и повлекло катастрофически последствия.
У друга был похожий сон: он заснул в двух потоках, после будильника один поток завершился, а второй завис.
Могу предположить, что второй поток завис потому что первый не освободил мьютекс до того как завершился по SIGALRM.
... снится мне однажды, как я в этом терминале что-то делаю и вдруг слышу будильник. Понимаю, что пора просыпаться, а для этого нужно ввести логин и пароль. Стандартные pi/raspberry почему-то не подходят, я не могу проснуться. Попытки с десятой получается таки ввести пароль и я просыпаюсь.
А пароль в диспетчере паролей
История один. Предыдущий админ рулил инфраструктурой и при падении основного контроллера домена восстановил копию из реплики полугодичной давности. Я работал в другом отделе и случайно обнаружил проблему когда сменил пароль и не смог авторизоваться на основном контроллере домена, так как репликация не работала полгода. С ужасом потом восстанавливал все после него и еще около года проблемы вылазили после его действий.
История два. Действие на пару месяцев позже. Два старых сервера. Без RAID, так как гипервизор не поддерживает контроллер, но есть бэкапы. Я уже админ и решаю провести ТО сервера. Мигрировав все с сервера, который я хотел обслужить и внимательно посмотрев на два сервера, (а они отличались внешне) я начинаю вытаскивать диски. Я немного задумался и вытащил диск из работающего сервера. Причем диск, где был гипервизор. Сервер продолжил работать, но начал тормозить. Я в ужасе "что делать?", так как там были достаточно важные ВМ. Воткнул диск обратно и побежал перезагружать сервер. К счастью помогло.
История три. Я только начинаю работать в организации и мне доверили сервера учебного сектора. Один сервер начал работать нестабильно и я решил из дома вечером его перезагрузить. Он перезагрузился, но потерял связь с vcenter. Я в ужасе пытался решить проблему, но ничего не помогало. А там были ВМ с серверами лицензий и с утра могли бы не начаться занятия. Всю ночь маялся и в шесть утра меня осенило, что я могу подключиться напрямую к гипервизору. Подключился, стартанул ВМ и со спокойной душой пошел на работу.
Действия происходили пять-шесть лет назад и сейчас эти истории вызывают улыбку, так как как все проблемы достаточно просто решаются.
1) Пятница полчаса до конца рабочего дня и отпуск. Хостер отрубает почту на рабочем проекте из-за подозрений в спаме. Благо быстро отвечали и удалось все включить назад.
2) Из той же серии. Проект сдан в пятницу и отпуск. Все проверено быстро. Первый день на море и сообщение о баге, который пропустил. А у тебя только планшет и хреновый интернет. Правишь через админку прям в браузере.
3) Взяли проект, который не работал нормально, а их админ гадил ибо не хотел, что бы проект уходил. Да опять пятница и я на свадьбе двоюродного брата. Самопальный кривой обмен с 1с не проходит. Обмен писала другая контора. И клиент выносит мозг, что у него в магазине пропал товар. Мне предлагают даже привести ноут, а я объясняю, что поправить в конфигах PHP что бы обмен все же прошел и что это не наше и код быстро не поправить. Потом меня еще в субботу доставали, но вроде как то обмен прошел. В понедельник я посмотрел чужой говнокод и оптимизировал его. А потом нас послали на три буквы и проект вернулся к старым разработчикам.
Пишем систему управления деплойментами. Выпустили нас на продакшн. Примерно 4000 серверов обслуживаем.
Внезапно прибегает к нам слегка бледный админ из Operations и, нервно дергая глазом, говорит что он нажал кнопку сохранения плана обычного деплоя, и на его глазах оба кластера продакшена написали что успешно удалены.
Разобрались - в этот момент протухла сессия пользователя и при обновлении страницы через ajax не получили списка серверов. Ну и написали что их нет. Все было цело, но нас чуть не побили.
Прости, Миша.
История, подобная "Сервер-лунатик" случилась у нас 31 декабря 2017 в 23:51. Позвонил управляющий базы отдыха, говорит "У нас отключали электричество. Когда подключили, точки продаж перестали работать". Примерно догадавшись, что произошло, подключаюсь к БД ERP. Holy shi... "Suspect"! Смотрю eventlog. Damn!.. disk, disk, disk... Упал RAID1. Но HDD сервера, куда делались инкрементные бэкапы каждые 2 минуты, выжил. Восстановил БД на том сервере, поставил MSSQL, подцепил БД, запустил ERP. 23:58. Новый Год встретил под бой курантов :)
Когда портировал IDE Dr. Pascal с MS DOS на Mac OS 7.0.1, то там была процедура SaveFile, которая, если файл под таким именем уже есть, переименует его заменив расширение .pas на .bak. И запишет новый, вызвав процедуру NewFile. Казалось, что тривиальная задача, но процедуры видимо писали разные люди, и в них был вызов closeFile стандартной функции ОС. Оказалось, что для Mac OS это недопустимо, и двойное закрытие файла может привести к его потере. Шеф из Штатов позвонил мне в Москву и минут 5 кричал. Каждая фраза начиналась с You have to… Потом специально смотрел документацию на ОС — не нашел предупреждения на повторное закрытие файла, только позже где-то прочел о такой распространенной ошибке.
«Немного напугали»?
От «ты не переживаешь, ведь у клиента RAID1. А после часа общения с железячниками выясняется, что они налажали и у них RAID0» у меня внутрях немного задёргалось.
У заказчика сервер под Hpux c софтовым зеркалом, собранным через lvm. А там забавный прикол второй диск включённый в зеркало показывается как не смонтированный. Приходит к заказчику новый админ, начинает разбираться что к чему
- о! диск не смонтированный, сча посмотрим. Хм, не монтируется. Не порядок. Надо его переразметить.
Ну и переразметил…. Бэкап был (с)
Кстати про бекапы. Сдает мне одна уважаемая организация настроенное ПО мониторинга. На сдаче ничего не работает. Мне начинают рассказывать ну это ваши чего-то изменили, мы намедни проверяли - все работало. А доступ к серверу у нас действительно был. Ладно, говорю, вы вроде как позавчера бекап делали - тогда все работало. Радостно кивают. Ну ок говорю, накатывайте. Накатывают и все становиться раком. Вообще все. Начинаем разбираться - добрый человек, который бекап делал, забекапил с опцией сохранять линки как файлы. Потом неделю лазили по системе вручную восстанавливали линки. И что сука характерно мониторинг так и не за работал …
О да! Истории с автосделками - это что-то с чем-то.
Однажды в понедельник рано утром на корпоративной автостоянке столкнулись два бентли и мерседес. Потому, что в пятницу запустили робота автоматической докупки недостающего на складе, и за выходные, без человеческого присмотра ЭТО накупило барахла на ярд евро...
К счастью у продавцов в выходные тоже были выходные и сделки не успели подтвердить :)
К счастью, остался доступ к серверу по виртуальному KVM, но через него можно сделать немного, из полезного — ну разве что перезагрузить.KVM обеспечивает полный доступ к серверу через консоль, так можно поставить другую программу удалённого управления и уже с комфортом исправлять неполадки. Если админ заранее не продумал, как он получит доступ к удалённому серверу когда всё сломается, он сам себе буратино.
а что, никто на проде update без where никогда не делал? )))
Делал ALTER TABLE на 10 миллионах записей с блокировкой базы прода на несколько часов. Сделал как-то field = REPLACE(str1, str2, field), т.е., перепутал порядок аргументов в функции MySQL. Это с первого, что вспомнил.
Делал когда-то давно с недосыпу. Хорошо, что привычка делать бэкап перед изменениями тогда уже была на уровне рефлекса :)
С тех пор всегда пару раз перепроверяю все запросы, которые могут изменить что-то в базе.
У нас однажды она коллекция из монги периодически удалялась. Поначалу думали, что баг в коде, пока не отловили в логах сервера следы гуглобота, который индексировал нашу почему-то открытую наружу базу и переходил по ссылке delete, которая удаляла базу по GET запросу. Вроде robomongo был, год эдак 2012.
Как-то включил на пограничном маршрутизаторе Juniper watchdog, и из-за глюка в прошивке он ушёл в вечный ребут. Не помогли ни кластер из двух железок (применил сразу на обеих нодах), ни commit confirm...
Пришлось срочно ехать в ДЦ. Всё лежало около двух часов.
Страшные истории из жизни айтишников