| forum.bitel.ru http://forum.bitel.ru/ |
|
| Альтернативный механизм обновления ситемы http://forum.bitel.ru/viewtopic.php?f=22&t=7257 |
Страница 1 из 2 |
| Автор: | max [ 28 сен 2012, 01:33 ] |
| Заголовок сообщения: | Альтернативный механизм обновления ситемы |
Доброго времени суток! Передо мной стоит вопрос обновления с версии 5.1 на 5.2, и вот что я тут подумал на эту тему: Уважаемые разработчики, а почему бы вам не сделать возможность обновления путём конвертирования базы? Рассмотрим ситуацию: Имеется работающий сервер 5.1 с давнего времени (2009 год). Берём и ставим на второй (альтернативный) сервер новую версию 5.2 с нуля. Дампим базу 5.1. Конвертим её при помощи волшебного конвертера пока которого нет, в 5.2. Подсовываем её новому серверу 5.2. Запускаем, наблюдаем, тестим, если всё ок. Остаёмся на новом сервере, старый сервер в резерв или ещё куда. Если не ок, то просто продолжаем работать на старом, пишем на форум или в хелпдеск, о траблах. Почему я прошу это сделать? Потому, что каждый раз обновление с версии на версию (4.6->5.0; 5.0->5.1) вызывало не кислые трудности, и никогда ещё не проходило с первого раза. А делать это приходится ночью и в нерабочее время, что отдельно доставляет. И по прошествии неудачного обновления приходится вертать всё в зад! Описанный мною способ я считаю был бы более удобен и безопасен чем тот что есть сейчас. Спасибо, надеюсь на поддержку сообщества. Заранее спасибо. |
|
| Автор: | skn [ 28 сен 2012, 04:38 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
по хорошему надо просто сначала сделать обновление на копии рабочей системы, убедиться, что все нормально, а затем повторить на боевой машине. P.S. А для быстрого отката есть такая штука как snapshot |
|
| Автор: | skyb [ 28 сен 2012, 05:03 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
Да, обновления с версии на версию страдают, и похорошему лучше бы было сделать поддержку младших версий, хотяб на одну ниже, тоесть обновление было бы что то в духе ./update.sh --ver --5.2 Обновляется сервак, бд, и тд. А после этого, то что уже нужно правишь, добавляешь и изменяешь, а не кучу всего фиксишь для обновления, и не факт что заведется. |
|
| Автор: | max [ 28 сен 2012, 14:21 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skn писал(а): по хорошему надо просто сначала сделать обновление на копии рабочей системы, убедиться, что все нормально, а затем повторить на боевой машине. Ага тоесть получается что, что бы обновиться нужно сначала поставить с танцами старую версию (с танцами потому что FreeBSD) потом накатить на нё обновление, и опять танцевать.... Зачем танцы два раза? Не проще ли конвертер? Это так сложно? |
|
| Автор: | skn [ 28 сен 2012, 14:39 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
max писал(а): Не проще ли конвертер? Это так сложно? так при запуске обновления и происходит конвертация базы и замена кода, смысл их разделять? если вы на тестовой базе сделаете обновление, вы и получете обновленную базу. что мешает на рабочей машине скопировать каталог с кодом, сделать копию базы и обновить копию, если все нормально, просто поменять их местами |
|
| Автор: | skyb [ 28 сен 2012, 16:52 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skn писал(а): max писал(а): Не проще ли конвертер? Это так сложно? так при запуске обновления и происходит конвертация базы и замена кода, смысл их разделять? если вы на тестовой базе сделаете обновление, вы и получете обновленную базу. что мешает на рабочей машине скопировать каталог с кодом, сделать копию базы и обновить копию, если все нормально, просто поменять их местами а мое предложение? |
|
| Автор: | dimOn [ 28 сен 2012, 17:10 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
max писал(а): skn писал(а): по хорошему надо просто сначала сделать обновление на копии рабочей системы, убедиться, что все нормально, а затем повторить на боевой машине. Ага тоесть получается что, что бы обновиться нужно сначала поставить с танцами старую версию (с танцами потому что FreeBSD) потом накатить на нё обновление, и опять танцевать.... Зачем танцы два раза? Не проще ли конвертер? Это так сложно? дык конвертер и так есть. хотя раз руками заставляли разве схему бд обновлять? |
|
| Автор: | skn [ 28 сен 2012, 18:41 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skyb писал(а): skn писал(а): max писал(а): Не проще ли конвертер? Это так сложно? так при запуске обновления и происходит конвертация базы и замена кода, смысл их разделять? если вы на тестовой базе сделаете обновление, вы и получете обновленную базу. что мешает на рабочей машине скопировать каталог с кодом, сделать копию базы и обновить копию, если все нормально, просто поменять их местами а мое предложение? обновление на предыдующую версию? типа удалять столбцы из баз, делать обратные конверторы данных, т.е. куча дополнительной работы (которую еще где то и на ком то тестить надо...) оно вам точно надо? не проще какую нибудь файловую систему поставить с поддержкой snatshot-ов, типа btrfs. Делать снимок перед перед обновлением, если что то не пошло, просто откатить (правда это в любом случае не отменяет предварительный прогон обновления на тестовой машине) |
|
| Автор: | max [ 29 сен 2012, 00:26 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
Ну так выложите отдельно конвертер и я от вас отстану! |
|
| Автор: | skn [ 29 сен 2012, 00:36 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
max писал(а): Ну так выложите отдельно конвертер и я от вас отстану! так в каждом модуле свой конвертор... т.е. вам надо 30 коверторов? при этом не известно с какой версии идет обновление, т.е. конвертор должен быть интелектуальным, уметь разбираться что и как нужно обновлять и конвертировать.... т.е. нужна программа, которая сейчас и есть в данный момент при обновление делается 1) конвертируется база 2) заменяется jar 3) заменяются файлы личного кабинета и что тут делить? 1) сделали копию каталога с биллингом 2) запустили обновление 3) скопировали обратно каталог с биллингом имеем конвертированную базу и старые файлы.... вам это надо? |
|
| Автор: | skyb [ 29 сен 2012, 06:26 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skn писал(а): skyb писал(а): skn писал(а): max писал(а): Не проще ли конвертер? Это так сложно? так при запуске обновления и происходит конвертация базы и замена кода, смысл их разделять? если вы на тестовой базе сделаете обновление, вы и получете обновленную базу. что мешает на рабочей машине скопировать каталог с кодом, сделать копию базы и обновить копию, если все нормально, просто поменять их местами а мое предложение? обновление на предыдующую версию? Прочтите что я написал, не обновление на предидущую версию, а поддержка старой при обновлении...чтоб просто апдейт и все работает, потом уже донастраивать изменения |
|
| Автор: | skn [ 29 сен 2012, 11:12 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skyb писал(а): skn писал(а): skyb писал(а): а мое предложение? обновление на предыдующую версию? Прочтите что я написал, не обновление на предидущую версию, а поддержка старой при обновлении...чтоб просто апдейт и все работает, потом уже донастраивать изменения перечитал, несколько раз, но так и не понял, что значит "лучше бы было сделать поддержку младших версий", текущая 5.2, младшая 5.1? |
|
| Автор: | skyb [ 29 сен 2012, 11:32 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skn писал(а): skyb писал(а): skn писал(а): skyb писал(а): а мое предложение? обновление на предыдующую версию? Прочтите что я написал, не обновление на предидущую версию, а поддержка старой при обновлении...чтоб просто апдейт и все работает, потом уже донастраивать изменения перечитал, несколько раз, но так и не понял, что значит "лучше бы было сделать поддержку младших версий", текущая 5.2, младшая 5.1? да, тоесть обновление - это просто команда ./update.sh --ver --5.2 меняются либы, бд и тд, но настройки остаются теже, после обновления все работает так же как и работало на предидущей версии, без изменений, единственное что можно слать алармы о дебрикейтах, но все должно работать, и потом уже в рабочем режиме менять настройки и смотреть вкусности новой версии. |
|
| Автор: | skn [ 29 сен 2012, 14:27 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
странно, а какие настройки мы меняем при обновление? расскажите, а то я, что то не в курсе.... и как это вы себе представляете, код поменялся, но все работает также... (нафига его тогда менять то было?) |
|
| Автор: | skyb [ 30 сен 2012, 03:40 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
http://bgbilling.ru/v5.2/download/kernel/howto.txt тут далеко не ./update.sh --ver --5.2 |
|
| Автор: | Phricker [ 30 сен 2012, 14:52 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skyb писал(а): http://bgbilling.ru/v5.2/download/kernel/howto.txt тут далеко не ./update.sh --ver --5.2 ты бы еще сюда приплел что подревнее Неоднократно тут на форуме говорилось что лучше и проще обновляться по версиям. 4.6 - 5.0 - 5.1 - 5.2 А обновления между версиями все таки попроще будут http://bgbilling.ru/v5.2/download/kerne ... om_5.1.txt Ну и конечно как ты себе представляешь поддержку биллинга если он в своем коде будет учитывать все нюансы конфигураций которые уже не поддерживаются? Например в 5.1 не было нужды указывать перечень статусов. Т.е. биллинг должен учитывать если версия >= 5.2 то работать с новыми статусами договоров перечень которых описан в конфигурации биллинга, но если этот перечень не указан - буду работать по старому. и это лишь малая часть Вон тот же гугл вырезает поддержку устаревших форматов .doc .xls и т.п. чтобы не мучаться с новыми фишками которые они наверняка планируют. А я почему то не сомневаюсь что в команде гугла разработчиков поболее чем в бителе, и они могли бы тащить эту поддержку. но не хотят. |
|
| Автор: | skyb [ 30 сен 2012, 15:43 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
И обновления там не такие критические, я версии ОС обновляю менее болезнено, кстати почти через команду апдейт |
|
| Автор: | zavndw [ 30 сен 2012, 16:00 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
по мне так лучше без фиксов получалось бы обновление=) просто запустил обновление и все=) |
|
| Автор: | Phricker [ 30 сен 2012, 16:49 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
zavndw писал(а): по мне так лучше без фиксов получалось бы обновление=) просто запустил обновление и все=) Я какбэ тоже за то чтобы обновление выполнялось без необходимости что-то где-то править, но ведь обновление не будет за вас прописывать параметры в конфигурации модулей/сервера. Так же оно не скачает и не поставит для вас радиусы/коллекторы и не пропишет в их конфигурационные файлы то что необходимо. я бы вот тоже согласился бы на Код: apt-get (yum) install mysql-server,mysql-client, oracle-jdk, bgbilling-server, bgbilling-scheduler, bgbilling-dataloader, bgipncollector, bgradiusdialup |
|
| Автор: | skyb [ 30 сен 2012, 17:31 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
Phricker писал(а): Я какбэ тоже за то чтобы обновление выполнялось без необходимости что-то где-то править, но ведь обновление не будет за вас прописывать параметры в конфигурации модулей/сервера. Так же оно не скачает и не поставит для вас радиусы/коллекторы и не пропишет в их конфигурационные файлы то что необходимо. Тада расскажи мне как это работает? почему они тада тянуть все настройки? тот же мускул, потом тока дебрикейты выдает и новые фичи показыват, НО РАБОТАЕТ, чем тут хуже? |
|
| Автор: | skn [ 30 сен 2012, 20:16 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skyb писал(а): Тада расскажи мне как это работает? почему они тада тянуть все настройки? тот же мускул, потом тока дебрикейты выдает и новые фичи показыват, НО РАБОТАЕТ, чем тут хуже? это разные продукты и орентированны на разные группы потребителей. Мускл стоит у миллионов и не все из них являются высоко клалифицированными пользователями, поэтому и приходится орентироваться на них. Наш продукт не орентирован на домохозяек и кол-во пользователей далеко не миллионы, поэтому тащить совместимость со старыми версиями и тратить время на разработку ИНТЕЛЕКТУАЛЬНЫХ мастеров конвертации данных не вижу смысла. К тому же в отличие от mysql у нас практически нет двух клиентов имеющих одинаковые конфигурации системы (железо, схемы сети, тарифы, бизнес процессы и т.д.) и теперь сравните с конфигом mysql из 10 строк.В принципе в любой более менее крупной организации работа админа в том и состоит, что бы проверять насколько новые версии программы соовместимы с другим ПО и действующими бизнес процессами. ПРичем все это проверяется не на боевых машинах и не пять минут, у админа в каждой организации должен быть свой "чек лист" в который должны вноситься все изменения которые производятся в настройках ПО. Что то я сильно совмеваюсь, что в какой нибудь фирме типа yandex, админ ночью на боевых серверах запускает "yum update mysql" и спокойно уходит до дому. |
|
| Автор: | zavndw [ 01 окт 2012, 04:21 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
Phricker у меня на работе напарник собрал пакеты=) БГ. правда билд уже старенький и пакет только под линукс |
|
| Автор: | skyb [ 01 окт 2012, 06:02 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skn писал(а): skyb писал(а): Тада расскажи мне как это работает? почему они тада тянуть все настройки? тот же мускул, потом тока дебрикейты выдает и новые фичи показыват, НО РАБОТАЕТ, чем тут хуже? это разные продукты и орентированны на разные группы потребителей. Мускл стоит у миллионов и не все из них являются высоко клалифицированными пользователями, поэтому и приходится орентироваться на них. Наш продукт не орентирован на домохозяек и кол-во пользователей далеко не миллионы, поэтому тащить совместимость со старыми версиями и тратить время на разработку ИНТЕЛЕКТУАЛЬНЫХ мастеров конвертации данных не вижу смысла. К тому же в отличие от mysql у нас практически нет двух клиентов имеющих одинаковые конфигурации системы (железо, схемы сети, тарифы, бизнес процессы и т.д.) и теперь сравните с конфигом mysql из 10 строк.В принципе в любой более менее крупной организации работа админа в том и состоит, что бы проверять насколько новые версии программы соовместимы с другим ПО и действующими бизнес процессами. ПРичем все это проверяется не на боевых машинах и не пять минут, у админа в каждой организации должен быть свой "чек лист" в который должны вноситься все изменения которые производятся в настройках ПО. Что то я сильно совмеваюсь, что в какой нибудь фирме типа yandex, админ ночью на боевых серверах запускает "yum update mysql" и спокойно уходит до дому. Проблема то не в чек листе, я чтоб обновится на 5.2 наверное все на тесте гонял месяца 3, потом обновления встали сразу, правда потратил на это 6 часов ночью, с 12 до 6. Но речь то не про это, проблема в том что из версии к весии обновления все страшней и страшней становятся, чтоб обновиться так с бубном понаплясаться нада. .... Эм, и да, а владение мускулом теперь домохозяйки освоили ? |
|
| Автор: | Phricker [ 01 окт 2012, 09:57 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skyb писал(а): Проблема то не в чек листе, я чтоб обновится на 5.2 наверное все на тесте гонял месяца 3, потом обновления встали сразу, правда потратил на это 6 часов ночью Фью. Я с 5.0 до 5.1 обновлялся (тогда еще не было у меня скриптов) так: раза 3-4 обновлял тестовую машину на которой поднимал полную копию боевого. Потом вышел ночью. примерно за полтора часа поменял сервер (железо) плюс его обновил прямо по пунктам которые запомнил Но все таки ничто не устоит перед обновлением с 5.1 на 5.2 30 декабря 2011 года Во время обновления упал фтп. обновление сервера прошло а радиуса и прочего нет. помоему я как раз у тебя и брал либы для радиуса ))) И потом патрулирование сервера 31 декабря с 9 вечера до 3х ночи 1го января потому что оказывается 5.2 чуть больше жрет на мускуле, а я выставил innodb слишком большие параметры и у меня постоянно база вылезала в своп |
|
| Автор: | dimOn [ 01 окт 2012, 11:41 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
Просто поверьте на слово: автоматическая интеллектуальная апдейтилка - настоящая утопия. Где такое видано то? Например, даже в линуксах, которые типа готовы для конечных юзеров такого нету, я уж не говорю о дистрибутивах типа арча , которые (при своём роллинг-релизе!) прямым текстом заставляют руками порыться в системе после каждого мелкого апдейта. 10 пунктов выполнить — что сложного то? Участие человека по-любому потребуется. Ежели мы напишем прогу которая сама себя настраивать будет, то зачем нужны будут админы нашему продукту?
|
|
| Автор: | skyb [ 01 окт 2012, 11:52 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
dimOn писал(а): Ежели мы напишем прогу которая сама себя настраивать будет, то зачем нужны будут админы нашему продукту? ![]() А что ваш софт только апдейтить можно? |
|
| Автор: | Phricker [ 01 окт 2012, 12:09 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skyb писал(а): dimOn писал(а): Ежели мы напишем прогу которая сама себя настраивать будет, то зачем нужны будут админы нашему продукту? ![]() А что ваш софт только апдейтить можно? Мммм... Ключевая фраза "которая сама себя НАСТРАИВАТЬ будет", а не апдейтить |
|
| Автор: | skyb [ 01 окт 2012, 13:16 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
А хотели же чекбоксы сделать по всем конфигам, жмакай галочки и агонь!!! |
|
| Автор: | Cromeshnic [ 01 окт 2012, 13:39 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
Админы бастуют! |
|
| Автор: | snark [ 01 окт 2012, 16:29 ] |
| Заголовок сообщения: | Re: Альтернативный механизм обновления ситемы |
skyb писал(а): А хотели же чекбоксы сделать по всем конфигам, жмакай галочки и агонь!!! Предлагали, ага ... в результате все равно в эпоху веб 2.0 у нас текстовый конфиг ... хорошо хоть его теперь не надо по всей доке собирать по крупицам Вот чего реально не хватает - так это встроенного в БГ дефолтного конфига (этакий конфиг с id = 0), который нельзя было бы применить (т.к. он только для справки), но с ним можно было бы diff-ить свои конфиги и тогда было бы видно что убралось/добавилось, где поменялся синтаксис и т.д. и т.п.. В таком раскладе обновлять было бы значительно проще, т.к. не надо было бы вырезать родные конфиги из доки и свои конфиги из БГ, чтобы потом их построчно сравнивать на предмет изменений. В клиенте это все сразу было бы видно. |
|
| Страница 1 из 2 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
| Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |
|