LINUX.ORG.RU

История изменений

Исправление Harliff, (текущая версия) :

Единый конфиг файл. Они изобрели NixOS?

файл

Не только файл. Хотел бы обратить на этот момент особое внимание, ибо админам Linux’а это не всегда очевидно.

У VyOS, например, несколько конфигов:

  • planning config
  • running config
  • saved config
  • и ещё архив конфигов

Когда вы вносите изменение, то оно сначала попадает в planning config:

vyos@R1001# set interfaces ethernet eth0 address 192.168.100.2/24
vyos@R1001# set interfaces ethernet eth0 description Uplink
vyos@R1001# set protocols static route 0.0.0.0/0 next-hop 192.168.100.1
vyos@R1001# compare
[interfaces ethernet eth0]
+ address "192.168.100.2/24"
+ description "Uplink"
[]
+ protocols {
+     static {
+         route 0.0.0.0/0 {
+             next-hop 192.168.100.1 {
+             }
+         }
+     }
+ }

Когда вы применяете изменение (командой commit), то оно попадает в running config. То есть, фактически начинает работать.

Когда вы сохраняете изменение (командой save), то оно попадает в saved config, который загрузится, когда система будет перезагружена.

Так же, есть бэкап из последних 100 (настраивается) конфигов: можно их смотреть, сравнивать с текущим конфигом (и с running и с saved), можно сравнивать между собой, можно загружать, можно объединять с текущим. Это из коробки, без доп. инструментов.

Сравнение походов:

  • Linux: saved config -> running config
    • цикл: поправили конфиг -> перезапустили сервис или послали ему HUP
  • Windows: planing config -> running config = saved config
    • цикл: в GUI поправили настройки, нажали ОК или Apply
  • Cisco IOS, Eltex, SNR и т.д.: running config -> saved config
    • цикл: изменили активную конфигурацию, если всё ОК - сохранили конфиг (скопировали running config в startup config)
  • RouterOS (ненавижу их за этот подход): running config = saved config
    • цикл: изменили конфиг - он сразу сохранился
    • если это удалённый объект - то нет опции «Алё, Иван Иванович, зайдите в серверную, найдите коробку с лампочками с надписью «Router-…» и выключите/включите у неё питание; спасибо»
    • что бы реже стрелять себе в ногу при удалённой настройке, можно использовать safe mode - спасет, но с оговорками.
  • VyOS + EdgeOS + JunOS + Cisco IOS-XR/NX-OS: planing config -> running config -> saved config
    • цикл: внесли предполагаемые изменения, применили их (commit), сохранили конфиг

Исходная версия Harliff, :

Единый конфиг файл. Они изобрели NixOS?

файл

Не только файл. Хотел бы обратить на этот момент особое внимание, ибо админам Linux’а это не всегда очевидно.

У VyOS, например, несколько конфигов:

  • planning config
  • running config
  • saved config
  • и ещё архив конфигов

Когда вы вносите изменение, то оно сначала попадает в planning config:

vyos@R1001# set interfaces ethernet eth0 address 192.168.100.2/24
vyos@R1001# set interfaces ethernet eth0 description Uplink
vyos@R1001# set protocols static route 0.0.0.0/0 next-hop 192.168.100.1
vyos@R1001# compare
[interfaces ethernet eth0]
+ address "192.168.100.2/24"
+ description "Uplink"
[]
+ protocols {
+     static {
+         route 0.0.0.0/0 {
+             next-hop 192.168.100.1 {
+             }
+         }
+     }
+ }

Когда вы применяете изменение (командой commit), то оно попадает в running config. То есть, фактически начинает работать.

Когда вы сохраняете изменение (командой save), то оно попадает в saved config, который загрузится, когда система будет перезагружена.

Так же, есть бэкап из последних 100 (настраивается) конфигов: можно их смотреть, сравнивать с текущим конфигом (и с running и с saved), можно сравнивать между собой, можно загружать, можно объединять с текущим. Это из коробки, без доп. инструментов.

Сравнение походов:

  • Linux: saved config -> running config
    • цикл: поправили конфиг -> перезапустили сервис или послали ему HUP
  • Windows: planing config -> running config = saved config
    • цикл: в GUI поправили настройки, нажали ОК или Apply
  • Cisco IOS, Eltex, SNR и т.д.: running config -> saved config
    • цикл: изменили активную конфигурацию, если всё ОК - скопировали running config в startup config
  • RouterOS (ненавижу их за этот подход): running config = saved config
    • цикл: изменили конфиг - он сразу сохранился
    • если это удалённый объект - то нет опции «Алё, Иван Иванович, зайдите в серверную, найдите коробку с лампочками с надписью «Router-…» и выключите/включите у неё питание; спасибо»
    • что бы реже стрелять себе в ногу при удалённой настройке, можно использовать safe mode - спасет, но с оговорками.
  • VyOS + EdgeOS + JunOS + Cisco IOS-XR/NX-OS: planing config -> running config -> saved config
    • цикл: внесли предполагаемые изменения, применили их (commit), сохранили конфиг