Архив за месяц: Октябрь 2015

Обновление Junos на живом MX

После заливки софта необходимо разрушить redundancy, это делаем следующим образом:

> configure
[edit]
delete chassis redundancy

но, поскольку железка у нас живая, необходимо до коммита разрушить еще кое-что:


deactivate protocols layer2-control nonstop-bridging
deactivate routing-options nonstop-routing
deactivate protocols pim nonstop-routing

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

commit synchronize and-quit

Теперь, после того как мы приготовились, начинаем апгрейд с бэкапного RE

 

request routing-engine login other-routing-engine
request system software add re0:/var/home//JUNOS.tgz

тут мы обязательно в конце процесса должны увидеть что-нибудь похожее

 

mgd: commit complete
Validation succeeded
Installing package ‘/var/tmp/jinstall-10.4R7.5-domestic-signed.tgz’ …
Verified jinstall-10.4R7.5-domestic.tgz signed by PackageProduction_10_4_0
Adding jinstall…
Verified manifest signed by PackageProduction_10_4_0

WARNING: This package will load JUNOS 10.4R7.5 software.
WARNING: It will save JUNOS configuration files, and SSH keys
WARNING: (if configured), but erase all other files and information
WARNING: stored on this machine. It will attempt to preserve dumps
WARNING: and log files, but this can not be guaranteed. This is the
WARNING: pre-installation stage and all the software is loaded when
WARNING: you reboot the system.

Saving the config files …
NOTICE: uncommitted changes have been saved in /var/db/config/juniper.conf.pre-install
Installing the bootstrap installer …

WARNING: A REBOOT IS REQUIRED TO LOAD THIS SOFTWARE CORRECTLY. Use the
WARNING: ‘request system reboot’ command when software installation is
WARNING: complete. To abort the installation, do not reboot your system,
WARNING: instead use the ‘request system software delete jinstall’
WARNING: command as soon as this operation completes.

Saving package file in /var/sw/pkg/jinstall-10.4R7.5-domestic-signed.tgz …
Saving state for rollback …
Проверяем, что RE готова загрузиться с новым софтом:

show version
Hostname: MINNNN
Model: mx480
JUNOS Base OS boot [10.4R3.4]
JUNOS Base OS Software Suite [10.4R3.4]
JUNOS Kernel Software Suite [10.4R3.4]
JUNOS Crypto Software Suite [10.4R3.4]
JUNOS Packet Forwarding Engine Support (M/T Common) [10.4R3.4]
JUNOS Packet Forwarding Engine Support (MX Common) [10.4R3.4]
JUNOS Online Documentation [10.4R3.4]
JUNOS Voice Services Container package [10.4R3.4]
JUNOS Border Gateway Function package [10.4R3.4]
JUNOS Services AACL Container package [10.4R3.4]
JUNOS Services LL-PDF Container package [10.4R3.4]
JUNOS Services PTSP Container package [10.4R3.4]
JUNOS Services Stateful Firewall [10.4R3.4]
JUNOS Services NAT [10.4R3.4]
JUNOS Services Application Level Gateways [10.4R3.4]
JUNOS Services Captive Portal and Content Delivery Container package [10.4R3.4]
JUNOS Services RPM [10.4R3.4]
JUNOS AppId Services [10.4R3.4]
JUNOS IDP Services [10.4R3.4]
JUNOS Runtime Software Suite [10.4R3.4]
JUNOS Routing Software Suite [10.4R3.4]
JUNOS Installation Software [10.4R7.5]

о чём свидетельствует последняя строчка. Теперь бэкапный RE надо перезагрузить, как это и рекомендовалось.

request system reboot

после этого нас выбросит с бэкапного RE и мы сидим и ждем, пока поднимется железка с новым софтом, а помогает нам в этом две команды:

show chassis routing-engine
show version invoke-on all-routing-engines

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

request chassis routing-engine master switch

Это как раз и есть тот момент, когда мы теряем из вида наш маршрутизатор на некоторое время (~2-3 мин). Коннект потерялся и нам надо по новой залогиниться на коробку, после чего мы обнаруживаем, что мы уже на бэкапном RE с новым софтом

 

show version
Теперь можно приступить к апгрейду мастера, который теперь является бэкапом, в соответствии с выводом комманды

show chassis routing-engine

Процедура не отличается от предыдущей:

 

request routing-engine login other-routing-engine
request system software add /var/home//JUNOS.tgz
request system reboot

теперь все так-же ждём, когда к нам вернется обновленный мастер.
И после того, как все железки к нам вернулись, восстанавливаем статус-кво, т.е. возвращаем синхронизацию и мастера на места. Сначала синхронизация:

>configure

set chassis redundancy routing-engine 0 master
set chassis redundancy routing-engine 1 backup
set chassis redundancy failover on-loss-of-keepalives
set chassis redundancy failover on-disk-failure
set chassis redundancy graceful-switchover
set chassis routing-engine on-disk-failure disk-failure-action reboot

Далее вводим команды:
Код: [Выделить]

top
activate protocols pim nonstop-routing
activate protocols layer2-control nonstop-bridging
activate routing-options nonstop-routing
activate interfaces lo0 unit 0 family inet filter
commit synchronize and-quit
Теперь обязательно! ждем когда закончится репликация между RE, раньше того, как она закончилась переключать мастера НЕЛЬЗЯ! Иначе упадут динамические протоколы типа bgp.
А посмотреть закончилась или нет, можно командой:

show task replication

zzzz@S> show task replication
Stateful Replication: Enabled
RE mode: Master

Protocol Synchronization Status
OSPF Complete
BGP Complete
MPLS Complete
LDP Complete

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

> request chassis routing-engine master switch no-confirm

естественно, мы отвалились и подключились уже на другой RE, ну вот по идее и всё!

Переполнение базы в Zabbix

База Заббикса со временем принимает катастрофические объемы, в основном самый большой размер у таблиц history. Если история не сильна критична — почистить место можно очистив эти таблицы:


truncate table history_uint;
truncate table history;
truncate table history_text;
truncate table history_log;

Предварительно необходимо остановить сервер Zabbix.