Страница 1 из 2

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

Добавлено: 07 июл 2015, 09:21
gmx
Коллеги!

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

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

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

Добавлено: 07 июл 2015, 09:51
vqd
ну написать скриптик простой который периодически ломится на ваш ФТП и если там есть обновление то загружает и перезагружается и допустим шлет письмо если все ОК

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

Добавлено: 07 июл 2015, 09:53
vqd
хотя блин есть проблема что фетч не умеет листинг ФТП ресурса делать, поэтому костыль в виде выкладывания обновления с одним и тем же именем.

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

Добавлено: 07 июл 2015, 13:19
gmx
Да, куда ни кинь - всюду клин.

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

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

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

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

{
/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} }


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

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

Добавлено: 08 июл 2015, 06:26
vqd
Эх, мне бы такую уверенность по обновлению удаленных железок.

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

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

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

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

Добавлено: 08 июл 2015, 08:32
vqd
Это отдельная история

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

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

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

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

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

Добавлено: 08 июл 2015, 09:30
gmx
Что-то все слишком ложно.

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

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

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