Автоматическое обновление ROS

Обсуждение ПО и его настройки
gmx
Модератор
Сообщения: 3290
Зарегистрирован: 01 окт 2012, 14:48

Коллеги!

Подскажите самый простой способ обновления ROS большого количества устройств микротик в сети. Выход в интернет имеют не все железки. И можно ли сделать, чтобы firmware тоже автоматически обновлялось??

The Dude не предлагать, в сети используется PRTG.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

ну написать скриптик простой который периодически ломится на ваш ФТП и если там есть обновление то загружает и перезагружается и допустим шлет письмо если все ОК


Есть интересная задача и бюджет? http://mikrotik.site
vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

хотя блин есть проблема что фетч не умеет листинг ФТП ресурса делать, поэтому костыль в виде выкладывания обновления с одним и тем же именем.


Есть интересная задача и бюджет? http://mikrotik.site
gmx
Модератор
Сообщения: 3290
Зарегистрирован: 01 окт 2012, 14:48

Да, куда ни кинь - всюду клин.

По по старинке буду, ручками...


Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

Ну а если всё же попробовать хотя бы такой костыль? Только комментарии уберите перед стартом.
Итак на головном скрипт с запуском раз в неделю. Учитываем, что при большом количестве железок скрипт будет работать достаточно долго.

Код: Выделить всё

{
/system package update check-for-updates;
:delay 1s;
:if ( [/system package  update get current-version] != [/system package  update get latest-version]) do={
:local actual [/system package  update  get latest-version];
:local downurl  "http://download2.mikrotik.com/routeros/$actual/routeros-mipsbe-$actual.npk" ;
/tool fetch url=$downurl dst-path="NewPck/$actual/routeros-mipsbe-$actual.npk";
:delay 20;
:foreach i in=[ip firewall address-list find list="Upgrade"] do={
  :local listadr [/ip firewall address-list get $i address];
  :local countip 3;
  :local pingip [/ping count=$countip $listadr interface=bridge1] ;
  :if  ($pingip=3) do={
  /tool fetch address=$listadr src-path="NewPck/$actual/routeros-mipsbe-$actual.npk" user=LOGIN mode=ftp password=PASSWORD dst-path="routeros-mipsbe-$actual.npk" upload=yes ;
  :delay 20;
  :file remove "NewPck/$actual/routeros-mipsbe-$actual.npk";
  } else={/ip firewall address-list add list="NoUpgrade" address=$listadr}
/system package update upgrade;
}
}
}


На дочерних железках вот такой скрипт запускаем раз в неделю, но на сутки позже головного.

Код: Выделить всё

{:local fl [/file find name~"routeros-mipsbe-"];
:if ($fl!="") do={ /system reboot} }


Протестируйте, если интересно, буду признателен.


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Эх, мне бы такую уверенность по обновлению удаленных железок.

Я так неделю назад 1100 обновил в ЦОД который в МСК. Терь вот репу чешу, походу в феврале в МСК поеду по делам и заодно заскочу в ЦОД что бы реанимировать...


Есть интересная задача и бюджет? http://mikrotik.site
Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

А что, в МСК нет своего человека? Просто для таких случаев?
Насчет уверенности по обновлению удаленных железок - по мне, так я без крайней необходимости удаленную и не стану трогать. Но есть часть проблем, которые решаются только обновлением. Ну не тебе объяснять, ты много больше меня знаешь...


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Это отдельная история

К стати твой скрипт имеет один большой минус, он рассчитан на одну платформу и если в сети несколько платформ то обновление не пройдет.
Далее твой скрипт загружает на микротики прошивку что тоже несколько не правильно

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


Есть интересная задача и бюджет? http://mikrotik.site
Аватара пользователя
podarok66
Модератор
Сообщения: 4355
Зарегистрирован: 11 фев 2012, 18:49
Откуда: МО

Переделать? Это не очень сложно. Это же набросок, так сказать идея. Единственное, я сторонник, чтобы именно головное само отсылало прошивки дочерним, а не наоборот.


Мануалы изучил и нигде не ошибся? Фаервол отключил? Очереди погасил? Витая пара проверена? ... Тогда Netinstal'ом железку прошей и настрой ее заново. Что, все равно не фурычит? Тогда к нам. Если не подскажем, хоть посочувствуем...
gmx
Модератор
Сообщения: 3290
Зарегистрирован: 01 окт 2012, 14:48

Что-то все слишком ложно.

Да и платформы разные, блин, появились hAP lite в сети.

Пока думаю, что проще все микротики в интернет выпустить и пусть каждый сам качает.
Хоть и переделок/доделок довольно много, но здесь есть и плюс, наконец-то все управление переведу в один специальный vlan и его выпушу в инет на определенные адреса.

А как автоматически обновить фирмваре???


Ответить