본문 바로가기

IT 이야기/네트워크(Network)

[Cisco] Configuration Auto Backup_시스코 장비 컨피크 자동 저장

728x90
반응형

예전에 Archive 명령을 통한 Cisco 장비 자동 Config Backup 에 대해 포스팅 한 적이 있는데요.

2014/11/18 - [Network/Switching] - Cisco 장비 Config 백업 (Archive Backup)

 

오늘은 이전에 포스팅한 내용에 대한 좀 더 상세한 내용이라고 보셔도 될 거 같습니다.

Cisco 장비의 Config 를 자동으로 Backup 하는 방법은 'kron' 을 활용한 방법과 'archive' 를 통한 방법 두 가지가 있습니다. (찾아보면 더 있을수도....)

 

1. Kron

kron 명령을 통해 백업을 하는 방법은 다음과 같습니다.

kron occurrence ConfigBackup in 7:0:0 recurring 
 policy-list ConfigBackup 
! 
kron policy-list ConfigBackup 
 cli write memory 
 cli sh run | redirect tftp://10.10.10.182/SW4-CONFIG

위 명령의 내용은 7일 간격으로 특정 tftp 서버내에 sh run 의 내용을 백업을 수행한다는 내용과,
wr 명령을 입력했을 경우에도 마찬가지로 해당 tftp 서버 내 백업을 수행합니다.

occurrence 명령을 통해 시간을 결정하고, policy-list 명령을 통해 방법을 결정합니다.

 

 

SW4(config)#kron ? 
  occurrence   Define the name, time, interval of kron occurrence 
  policy-list  Define the name and type of policy-list

먼저 occurrence 명령을 통해 언제 Backup 을 수행할 건지 설정합니다.

 

 

SW4(config)#kron occurrence aaa ? 

  at  Date of kron occurrence eg. 14:30 Feb 13 
  in  Delta time to kron occurrence

"at" 과 "in" 을 통해 시간을 정할 수 있으며, at 명령은 특정 시간을 선택할 수 있고,
"in" 명령은 주기를 선택할 수 있습니다.

 

SW4(config)#kron occurrence aaa at ? 
  hh:mm  Time of day for occurrence (hh:min eg. 14:30) 

SW4(config)#kron occurrence aaa at 14:30 ? 
  <1-31>     Day of month 
  DAY        Day of Week eg mon, tue, etc 
  MONTH      Month of year eg jan, feb, etc 
  oneshot    Schedule kron occurrence exactly once 
  recurring  Schedule kron occurrence repeatedly 

SW4(config)#kron occurrence aaa at 14:30 oneshot ? 
   

SW4(config)#kron occurrence aaa at 14:30 recu     
SW4(config)#kron occurrence aaa at 14:30 recurring ? 
  system-startup  Schedule kron occurrence at system start-up 
   

SW4(config)#kron occurrence aaa at 14:30 recurring syst 
SW4(config)#kron occurrence aaa at 14:30 recurring system-startup ? 
   

SW4(config)#kron occurrence aaa at 14:30 recurring system-startup 

- 특정 날짜나 시간을 지정할 수 있으며, recurring 명령을 통해 반복할 수 있습니다.

 

 

SW4(config)#kron occurrence aaa in ?                               
Delay before occurrence (mmm or hhh:mm or ddd:hh:mm) 

SW4(config)#kron occurrence aaa in 7:0:0 ? 
  oneshot    Schedule kron occurrence exactly once 
  recurring  Schedule kron occurrence repeatedly 

SW4(config)#kron occurrence aaa in 7:0:0 one ? 
   

SW4(config)#kron occurrence aaa in 7:0:0 recu ? 
  system-startup  Schedule kron occurrence at system start-up 
   

SW4(config)#kron occurrence aaa in 7:0:0 recu 

- "in" 옵션을 통한 백업 주기는 일/시/분 단위로 설정 가능합니다.

 

 

백업 시간을 설정하셨으면 어떤 방법으로 어디에 Config 를 저장할 건지 설정합니다.

SW4(config)#kron policy-list ? 
  WORD  Name of the policy-list being defined 

SW4(config)#kron policy-list aaa ? 
  conditional  Execution of the list of cli will stop on failure return values 
  <cr> 

SW4(config)#kron policy-list aaa condi 
SW4(config)#kron policy-list aaa conditional ? 
  <cr> 

SW4(config)#kron policy-list aaa              
SW4(config-kron-policy)#? 
KRON Specific commands for this Policy: 
  cli   Specify the exec level cli to be executed 
  exit  Exit from kron submode 
  no    Remove a CLI from the list 

SW4(config-kron-policy)#cli ? 
  LINE  Exec level cli to be executed 

SW4(config-kron-policy)#    

SW4#sh kron schedule  
Kron Occurrence Schedule 
ConfigBackup inactive, will run again in 6 days 03:17:16 

- 상기 내용은 policy-list 를 통해 설정할 수 있는 명령어 현황이며,
aaa 라는 policy 를 만든 다음 해당 policy 에서 수행할 내용을 입력합니다.

 

 

SW4(config)#kron policy-list ? 
  WORD  Name of the policy-list being defined 

SW4(config)#kron policy-list aaa ? 
  conditional  Execution of the list of cli will stop on failure return values 
   

SW4(config)#kron policy-list aaa condi 
SW4(config)#kron policy-list aaa conditional ? 
   

SW4(config)#kron policy-list aaa              
SW4(config-kron-policy)#? 
KRON Specific commands for this Policy: 
  cli   Specify the exec level cli to be executed 
  exit  Exit from kron submode 
  no    Remove a CLI from the list 

SW4(config-kron-policy)#cli ? 
  LINE  Exec level cli to be executed 

- cli 명령어 뒤에는 어떤 명령어도 올 수 있습니다.
이 말은 곧, kron 명령은 단순히 Config Backup 만을 위한 명령은 아니라는 거겠죠.
어떻게 응용하느냐에 따라 본인이 원하는 정보를 특정 시간에 게더링해 올 수도 있습니다.

 

SW4#sh kron schedule  
Kron Occurrence Schedule 
ConfigBackup inactive, will run again in 6 days 03:17:16 

- 설정을 끝마치셨으면 언제 백업이 이루어지는지 확인해야겠죠?
"show kron schedule" 명령을 통해 kron 스케쥴을 확인할 수 있습니다.
6일하고 3시간17분 16초 후에 백업이 이루어진다고 하네요.

물론 write memory 명령을 입력하는 순간에도 즉시 백업이 발생됩니다.

 

 

 

2. ARCHIVE

 

archive 명령은 최근 출시된 Cisco 장비에서는 대부분 다 적용이 됩니다만,

예전에 출시된 장비이거나 OS 에서는 해당 명령어 자체를 지원하지 않는 경우도 있으니 본인이 운영하는 장비가 archive 명령을 지원하는지 먼저 확인 후 kron 으로 백업을 할지 archive 로 할지 결정하시는 게 좋겠습니다.

SW4(config-archive)#?     
Archive configuration commands: 
  default       Set a command to its defaults 
  exit          Exit from archive configuration mode 
  log           Logging commands 
  maximum       maximum number of backup copies 
  no            Negate a command or set its defaults 
  path          path for backups 
  rollback      Rollback parameters 
  time-period   Period of time in minutes to automatically archive the running-config 
  write-memory  Enable automatic backup generation during write memory

- archive 명령어 뒤에 올 수 있는 옵션 항목입니다.

 

SW4(config-archive)#path ? 
  flash:  Write archive on flash: file system 
  ftp:    Write archive on ftp: file system 
  http:   Write archive on http: file system 
  https:  Write archive on https: file system 
  rcp:    Write archive on rcp: file system 
  scp:    Write archive on scp: file system 
  tftp:   Write archive on tftp: file system

- Config 파일의 저장 경로는 상기 보시는 것처럼 flash 뿐만 아니라 http, rcp , tftp, ftp 등 다양한  방식의 backup 저장 위치를 지원합니다.

 

SW4(config)#archive 
SW4(config-archive)#ti 
SW4(config-archive)#time-period ? 
  <1-525600>  Number of minutes to wait between archive creation

- 백업 시간 주기는 분(minutes) 기준이며 최소1분부터 525600분(365일)까지 가능합니다.

 

archive 
 path tftp://10.10.10.182/$h 
 write-memory 
 time-period 10080

- 설정 내용입니다. 
- $h 는 장비의 hostname 을 나타냅니다.
- 10080분은 일주일(1주)를 의미합니다.

 

SW4#wr 
Building configuration... 
[OK]!

- wr 명령을 칠 경우 [OK] 뒤에 "!" 가 찍히면 remote Server 에 Config Backup 이 진행되고 있다고 생각하시면 됩니다.
- 간혹 서버와의 응답이 느릴 경우 저장 시간이 평소보다 Delay 될 수도 있습니다.

 

 

 

SW4#sh archive 
The maximum archive configurations allowed is 10. 
The next archive file will be named tftp://10.10.10.182/SW4--1 
 Archive #  Name 
   1        tftp://10.10.10.182/SW4-Feb-24-09-42-03-KST-0 <- Most Recent 
   2        tftp://10.10.10.182/SW4-Dec-23-11-46-50-KST-16  
   3        tftp://10.10.10.182/SW4-Dec-29-15-07-56-KST-17  
   4        tftp://10.10.10.182/SW4-Jan--5-13-17-08-KST-18  
   5        tftp://10.10.10.182/SW4-Jan--5-15-18-19-KST-19  
   6        tftp://10.10.10.182/SW4-Jan-12-15-28-42-KST-20  
   7        tftp://10.10.10.182/SW4-Jan-19-13-17-43-KST-21  
   8        tftp://10.10.10.182/SW4-Jan-19-15-39-05-KST-22  
   9        tftp://10.10.10.182/SW4-Jan-26-15-49-28-KST-23  
   10       tftp://10.10.10.182/SW4-Feb--2-13-18-18-KST-24 

- sh archive 명령을 통해 백업 현황을 최근 10개까지 확인 가능합니다.
- 보시는 것처럼 평소에는 1주일 간격으로 저장이 되고, write 명령을 통해 저장을 했을 경우에도 tftp  서버에 저장이 됩니다.

 

 

결론

  • kron 명령어는 config 저장 외 다른 용도로도 사용이 가능하다
  • archive 명령은 $h 를 통해 장비의 hostname 을 긁어오기 때문에 여러 장비에 설정할 경우 동일한 내용으로 복사/붙여넣기가 가능하다
  • kron 은 $h 기능이 없어 각 장비의 저장될 파일명을 직접 지정하여야 한다.
  • 두 가지 명령 모두 특정 주기마다 저장하거나, write memory 명령어 입력 시 저장 가능하다.

 

 

config auto backup 용도로 사용할 경우 kron 보다 archive 명령어가 편리하게 설정 가능하다

728x90
반응형