Немного расскажу о конфигурациии на устройствах Juniper. Для новичков может быть полезно.
В Junos конфигурация хранится в общей базе данных, которую называют shared или global configuration database.
При редактировании конфига создается конфигурация-кандидат, которая после завершения редактирования и проверки на ошибки применяется как рабочая.
Конфигурацию могут одновременно редактировать до 32 пользователей.
Режимы редактирования.
Существует 3 режима редактирования конфигурации:
-configure
В этом режиме все могут редактировать конфиг одновременно.
При коммите любым пользователем — применяются все изменения.
При изменениями несколькими пользователями одного параметра — применится то, что было сделано последним.
-configure exclusive
Эксклюзивная кофигурация. Другие пользователи не могут ничего менять.
-configure private
Каждый пользователь может вносить изменения независимо.
Если во время конфигруации кто то внес изменения, нужно применить команду update, что бы редактируемая версия глобального конфига была актуальной.
Применение конфигурации.
После завершения конфигурации, для ее применения, нужно набрать команду:
rtr3-msk# commit
Так же, перед применением, можно проверить конфигурацию на ошибки:
rtr3-msk# commit check
configuration check succeeds
Посмотреть внесенные изменения перед коммитом:
rtr3-msk# show | compare
Можно добавить комментарий к сделанным изменениям:
rtr3-msk# commit comment "adding as-path prepend to peer"
Для отложенного применения, например, в 14-00, можно воспользоваться таймером:
rtr3-msk# commit at 14:00:00
Отмена запланированного коммита:
rtr3-msk> clear system commit
Pending commit cleared
Посмотреть изменения в pending commit :
rtr3-msk> start shell
% su
Password:
root@rtr3-msk:/var/home/remote # cd /config/
root@rtr3-msk:/config #zcat juniper.conf.gz > 0 ; zcat juniper.conf+.gz > 1 ; diff -rupP 0 1 ; rm 0 1
--- 0 2021-10-14 13:14:24.523453000 +0300
+++ 1 2021-10-14 13:14:24.529945000 +0300
@@ -1,4 +1,4 @@
-## Last changed: 2021-10-13 13:40:41 +03
+## Last changed: 2021-10-14 13:02:59 +03
version 19.4R3-S3.3;
system {
host-name rtr3-msk;
@@ -8,7 +8,7 @@ system {
commit synchronize;
login {
class remote {
- idle-timeout 30;
+ idle-timeout 28;
permissions all;
}
root@rtr3-msk:/config # exit
exit
% exit
exit
{master}
@rtr3-msk>
Для тестового применения, если вы не уверены в результатах, можно использовать функцию автоматического rollback с укзанным интервалом. В данном случае — конфиг будет отменен через 5 минут, если не будет подтвержден командой commit.
rtr3-msk# commit confirmed 5
Откат конфигурации и сравнение.
Для отката конфигурации, можно воспользоваться функционалом rollback. Junos хранит последние 49 изменений.
rtr3-msk> show system commit
0 2019-05-25 15:41:17 GMT-3 by root via cli commit synchronize
1 2019-05-25 15:36:45 GMT-3 by root via cli commit synchronize
2 2019-05-25 15:30:43 GMT-3 by root via cli commit synchronize
3 2019-05-25 14:23:45 GMT-3 by root via cli commit synchronize
Откатить конфигурацию можно к любой точке.
rtr3-msk# rollback 3
load complete
Так же можно сравнить любые последние изменения.
Например, для сравнения текущей конфигурации и точки 3:
rtr3-msk> show configuration | compare rollback 3
Для сравнения точек 3 и 5:
rtr3-msk> show system rollback compare 3 5