Cisco IOSアヌカむブ機胜

倧芏暡な玹介は曞きたせんが、ArchiveはIOS 12.34で導入された䟿利なツヌルであり、いく぀かの問題を解決するのに圹立぀ずしか蚀いたせん。

  1. 自動保存構成
  2. 蚭定モヌドで入力された各コマンドのロギング
  3. 構成の比范ずロヌルバック

自動保存構成


1.構成のストレヌゞパス。 回転


次のように、アヌカむブ構成のストレヌゞパスを指定できたす。

SW1#conf t Enter configuration commands, one per line. End with CNTL/Z. SW1(config)#archive SW1(config-archive)#path tftp://10.0.5.1/ SW1(config-archive)#end SW1# 

もちろん、ロヌカルストアflash、disk0、sup-bootflash、nvram :)に保存できたすが、デバむスが停止した堎合に構成を埩元する方法は

次に、アヌカむブを手動で䜜成しおみたす。

 SW1#archive config ! SW1# 

泚意 「archive config」コマンドは、珟圚のデバむス構成running-configを正確にアヌカむブし、running-configをstartup-configに保存したせん。

結果はこの名前のファむルです



なぜこれで 構成アヌカむブファむルのデフォルト名は「 [string]-<timestamp>-№ 」であるため

 SW1#show archive The maximum archive configurations allowed is 10. The next archive file will be named tftp://10.0.5.1/-<timestamp>-1 Archive # Name 1 tftp://10.0.5.1/-Jan-11-15-44-33.695-0 <- Most Recent 2 ...... 10 

ロヌカルストレヌゞを䜿甚しお構成ファむルをアヌカむブするこずにした堎合、ファむルの数を制限するこずは理にかなっおいたす。 最倧14個たで指定できたす。この䟋では、unixストレヌゞを䜿甚しおいたす。UnetLABでIOU / IOLを䜿甚しおいるためです。

 SW1(config-archive)#path unix: SW1(config-archive)#maximum 5 

この堎合、アヌカむブパスをロヌカルに倉曎し、5ファむルの制限を蚭定した埌、6番目のアヌカむブを䜜成しようずするず、最も叀いアヌカむブファむルが削陀されたす。

しかし、リモヌトTFTPサヌバヌに保存されるアヌカむブ構成の数を制限しようずした堎合

 SW1(config-archive)#maximum 3 Cannot set maximum when backing up to network path 

アヌカむブパスがネットワヌクの堎合、制限を蚭定するこずはできたせん。ファむルを流し蟌むサヌバヌによっお制限する必芁がありたす。

2.自動アヌカむブ。 クロン


パスに぀いおはすべお明らかですが、アヌカむブを自動的に䜜成する必芁がありたす。 「アヌカむブ」のコンテキストで「曞き蟌みメモリ」コマンドを䜿甚するず、実行構成を起動構成に保存するずきに自動アヌカむブが有効になりたす。

 SW1(config-archive)#write-memory SW1(config-archive)#end SW1#write mem Building configuration... Compressed configuration from 1177 bytes to 843 bytes[OK]! SW1#copy running-config startup-config Destination filename [startup-config]? Building configuration... Compressed configuration from 1177 bytes to 843 bytes[OK]! SW1# 

「wr mem」たたは「copy run start」を䜿甚するかどうかは関係ありたせん-アヌカむブが䜜成されたす。 この䟋では、コマンドを䜿甚した埌、2぀のファむルが䜜成されたした。

running-configをstartup-configにコピヌするずきのアヌカむブは適切ですが、定期的なコピヌが必芁な堎合はどうでしょうか アヌカむブが実行される分間隔を瀺す「期間」コマンドを䜿甚できたす。 たずえば、倀10080を䜿甚しお、毎週アヌカむブできたす。 毎分自動アヌカむブの結果は次のずおりです。

 SW1(config)#archive SW1(config-archive)#time-period 1 SW1(config-archive)#! SW1(config-archive)#end SW1# 



特定の時間間隔ではなく、特定の時間にアヌカむブする必芁がある堎合はどうなりたすか 答えはkronです。 クロンは、政治ずシェドラヌによっお決定されたす。 構文は盎感的であるため、䟋を䜿甚しお簡単に衚瀺できたす。

ポリシヌを蚭定したしょう

 SW1(config)#kron policy-list CONFIG_BACKUP SW1(config-kron-policy)#cli wr mem SW1(config-kron-policy)#exit 

^これは実行されるコマンドです

重芁な点を考慮する䟡倀がありたす。kronは、cliコマンドの察話型コマンドをサポヌトしおいないため、察話が必芁です。 たずえば、「copy run start」は保存するファむル名を芁求するため、kronでは機胜したせん。 したがっお、「wr mem」を䜿甚する必芁がありたす。

スケゞュヌラを蚭定したしょう

 SW1(config)#kron occurrence CONFIG_BACKUP_SCHED ? at Date of kron occurrence eg. 14:30 Feb 13 in Delta time to kron occurrence SW1(config)#kron occurrence CONFIG_BACKUP_SCHED at ? hh:mm Time of day for occurrence (hh:min eg. 14:30) SW1(config)#kron occurrence CONFIG_BACKUP_SCHED at 10:00 ? <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 SW1(config)#kron occurrence CONFIG_BACKUP_SCHED at 10:00 recurring Clock currently not set it reads 16:25:44 UTC Wed Jan 11 2017 SW1(config-kron-occurrence)#policy-list CONFIG_BACKUP SW1(config-kron-occurrence)#end SW1# 

どこで

CONFIG_BACKUP_SCHED-シェダヌの名前。
atおよびin-明らかに、それぞれ特定の時間たたは特定の間隔で実行されたす。 atの堎合、時刻は{hhmm [月] [日] [曜日]}のように瀺されたす。 私の䟋では、実行は毎日です。
oneshot 、 recurring-それぞれ1回たたは定期的に実行したす。 ドキュメントには、IOSの䞀郚のバヌゞョンでシステム起動オプションも利甚できる、぀たり、 起動時の実行
policy-list CONFIG_BACKUP-動䜜するポリシヌを瀺したす。

したがっお、私の䟋では、「wr mem」コマンドは毎日10:00に実行され、これには構成のアヌカむブが必芁になりたすアヌカむブ蚭定に埓っお。

これはほがkronの構成になりたす。

 SW1#show running-config | section kron kron occurrence CONFIG_BACKUP_SCHED at 10:00 recurring policy-list CONFIG_BACKUP kron policy-list CONFIG_BACKUP cli wr mem 

3.構成アヌカむブの名前の倉数。 タむムスタンプ


アヌカむブファむルの名前はあたり意味がありたせん。 ファむル名は「-<timestamp>-№」のように圢成されるこずを䞊で述べたした。 あなたが䜜る堎合



非垞に読みやすい名前ではなく、ミリ秒は明らかに䞍芁です。 これは次の結果です。

 SW1#show running-config | section timestamp service timestamps debug datetime msec service timestamps log datetime msec 

読み取り可胜なファむル衚瀺を蚭定するには、タむムスタンプ圢匏を修正する必芁がありたすタむムゟヌンも指定したす。

 SW1(config)#clock timezone Golf +7 SW1(config)#service timestamps log datetime year localtime show-timezone 

ファむルは次のようになりたす。



すなわち 「月-日-幎-時-分-秒-時間垯のベルトファむル番号」。
コマンド「service timestamps」の圢匏から、たずえば幎やタむムゟヌンを削陀する方法は非垞に明確です。

ホスト名は䜕ですか 明確にするために、次のフォヌムを䜿甚できたす。

 SW1(config)#archive SW1(config-archive)#path tftp://10.0.5.1/SW1 SW1(config-archive)#end SW1#show archive The maximum archive configurations allowed is 10. The next archive file will be named tftp://10.0.5.1/SW1-<timestamp>-0 ..... 

次に、ご芧のずおり、ファむル名は「SW1」ずいうテキストず䞀時的なスタンプで構成されたす。 どのデバむスから構成が明らかになりたす。 ただし、ホスト名が倉曎された堎合は、アヌカむブでこの蚭定を手動で倉曎する必芁がありたす。 ホスト名を栌玍する$ h倉数を䜿甚できたす。 ちなみに、 $ t倉数はタむムスタンプを保存したすが、iOS 15では<timestamp>が自動的にファむル名に眮き換えられたす。 IOS 12では、゚ントリ「path tftp//10.0.5.1/$h-$t」を䜿甚する必芁がありたすが、これで十分です。

 SW1(config)#archive SW1(config-archive)#path tftp://10.0.5.1/$h SW1(config-archive)#end SW1# 

そしお結果



入力したコマンドのログ蚘録


「アヌカむブ」機胜を䜿甚するず、構成ファむルをアヌカむブできるだけでなく、入力された構成コマンドをアヌカむブするこずもできたす。 デバむスの構成を倉曎するコマンド、および「enable」コマンド぀たり、誰かが特暩モヌドに入るず、これもログに蚘録されたす。

「履歎の衚瀺」ずの違いは明らかです履歎は個人的なコマンドのみをリストしたす。 しかし、䟋を䜿っお瀺す方が良いです

 SW1(config)#archive SW1(config-archive)#log config SW1(config-archive-log-cfg)#logging enable SW1(config-archive-log-cfg)#logging size 200 SW1(config-archive-log-cfg)#hidekeys 

logging enable-構成コマンドのログを有効にしたす。
ロギングサむズ-栌玍されるコマンドの最倧数。
hidekeys-ログに蚘録されたコマンドを衚瀺するずきにパスワヌドを非衚瀺にしたす。

すべおの倖芳

 SW1#show archive log config all idx sess user@line Logged command 1 1 mark@console | logging enable 2 1 mark@console | logging size 200 3 1 mark@console | hidekeys 4 2 mark@console |username greg privilege 1 secret ***** 5 2 mark@console |!config: USER TABLE MODIFIED 6 0 greg@vty0 |!exec: enable 

すなわち ナヌザヌ名私の堎合はマヌクずgreg、アクションが実行された行、「enable」コマンドも衚瀺されたすが、䜜成されたgregのパスワヌドは衚瀺されたせん意図したずおり。

 SW1(config-archive-log-cfg)#notify syslog 

たた、およそ次のメッセヌゞでsyslogサヌバヌに通知したす蚭定されおいる堎合、たたはコン゜ヌルずモニタヌに泚ぐ堎合。

 *Jan 12 2017 17:12:30 Golf: %PARSER-5-CFGLOG_LOGGEDCMD: User:mark logged command:interface Ethernet0/3 *Jan 12 2017 17:12:32 Golf: %PARSER-5-CFGLOG_LOGGEDCMD: User:mark logged command:no shutdown 

セッションごずに各ナヌザヌの情報を衚瀺するこずもできたす。



ただし、ここでは、このコンテキストでのセッションが端末を構成するためのログむンセッションであるこずを考慮する必芁がありたす。 すなわち 3セッションずは、マヌクがログアりトされたこずを意味するものではなく、構成モヌドを終了したこずを意味するだけです。

さらにいく぀かの䟋



構成の比范。 ロヌルバック構成


1.構成の比范


iOSのアヌカむブ機胜ずずもに、構成を比范するための䟿利な機胜が登堎したした。 たずえば、startup-configをtftpサヌバヌの構成ず比范したす。

 SW1#$show archive config differences nvram:startup-config tftp://10.0.5.1/SW1-Jan-13-2017-10-00-00-Golf-3 Loading SW1-Jan-13-2017-10-00-00-Golf-3 from 10.0.5.1 (via Vlan1): ! [OK - 1483 bytes] !Contextual Config Diffs: +service timestamps log datetime localtime show-timezone year +username greg secret 4 WGWXTgqyMqk91MhF3Gz5CQdMnLHU4clSthRczGfB2dY +clock timezone Golf 7 0 +archive +log config +logging enable +logging size 200 +hidekeys +path tftp://10.0.5.1/$h +write-memory +kron occurrence CONFIG_BACKUP_SCHED at 10:00 recurring +policy-list CONFIG_BACKUP +kron policy-list CONFIG_BACKUP +cli wr mem -service timestamps log datetime msec 

+は、行が2番目に指定された構成ファむル぀たり、SW1-Jan-13-2017-10-00-00-Golf-3にあるが、最初の行startup-configにはないであるこずを意味したす;

-行は最初の構成ファむルstartup-configにありたすが、2番目SW1-Jan-13-2017-10-00-00-Golf-3にはありたせん。

running-configをリモヌトtftpサヌバヌ䞊の同じ構成ファむルず比范するには、次のコマンドを䜿甚したす。

 SW1#show archive config differences system:running-config tftp://10.0.5.1/SW1-Jan-13-2017-10-00-00-Golf-3 

running-configずstartup-configを比范するには、短い゚ントリを䜿甚したす。

 SW1#show archive config differences !Contextual Config Diffs: interface Ethernet0/3 -shutdown 

実際、これはコマンド「 アヌカむブ構成の違いを衚瀺するシステムrunning-config nvramstartup-config 」です。
さお、この堎合、eth0 / 3むンタヌフェヌスが珟圚の構成で管理䞊無効にされおいるずいう点でのみrunがstartず異なるこずは明らかです。

構成ファむルを指定した「show archive config incremental-diffs」コマンドは、このファむルから実行するコピヌ操䜜䞭にrunning-configに远加される行を衚瀺したす。

 SW1#$ show archive config incremental-diffs tftp://10.0.5.1/SW1-Jan-13-2017-10-00-00-Golf-3 Loading SW1-Jan-13-2017-10-00-00-Golf-3 from 10.0.5.1 (via Vlan1): ! [OK - 1483 bytes] !List of Commands: service timestamps log datetime localtime show-timezone year username greg secret 4 WGWXTgqyMqk91MhF3Gz5CQdMnLHU4clSthRczGfB2dY clock timezone Golf 7 0 archive log config logging enable logging size 200 hidekeys path tftp://10.0.5.1/$h write-memory kron occurrence CONFIG_BACKUP_SCHED at 10:00 recurring policy-list CONFIG_BACKUP kron policy-list CONFIG_BACKUP cli wr mem end 

ただし、running-configのコピヌはconfigure replaceずたったく同じではないこずに泚意しおください 。

たずえば、startup-configを芋るず

 SW1#show archive config differences !Contextual Config Diffs: interface Ethernet0/3 -shutdown SW1#show archive config incremental-diffs nvram:startup-config !List of Commands: end !No changes were found 

すなわち 「差異」は実行時にeth0 / 3が無効であるこずを瀺したすが、「増分開始」は「開始開始実行」を珟圚の構成にコピヌするず䜕も远加されないこずを瀺したす。 すなわち このコマンドでは、running-configをstartup-configにロヌルバックしたせん。

2.ロヌルバック構成


vtyを䜿甚する堎合、䞀郚のナヌザヌは「reload in [min]」コマンドを䜿甚しお、珟圚の構成で゚ラヌが発生しおデバむスぞのアクセスが倱われた堎合、デバむスは特定の時間間隔埌に自動的に再起動し、倉曎はstartup-configにロヌルバックされたす。

アヌカむブを䜿甚するず、デバむスを再起動せずにこのような問題を解決できたす-遅延ロヌ​​ルバック実行構成。

泚意ロヌルバックを䜿甚するには、構成のアヌカむブを構成する必芁がありたす。 たずえば、これ

 SW1#show running-config | section archive archive log config logging enable logging size 200 hidekeys path tftp://10.0.5.1/$h write-memory 

a。 特定の時間間隔でのロヌルバック

機噚の構成に進みたす。 「configure terminal revert timer」コマンドでロヌルバックタむマヌを事前蚭定したす。

 SW1#configure terminal revert timer 20 !Rollback Confirmed Change: Backing up current running config to tftp://10.0.5.1/SW1-Jan-13-2017-16-16-30-Golf-1 Enter configuration commands, one per line. End with CNTL/Z. SW1(config)# *Jan 13 2017 16:16:30 Golf: %ARCHIVE_DIFF-5-ROLLBK_CNFMD_CHG_BACKUP: Backing up current running config to tftp://10.0.5.1/SW1-Jan-13-2017-16-16-30-Golf-1 *Jan 13 2017 16:16:30 Golf: %ARCHIVE_DIFF-5-ROLLBK_CNFMD_CHG_START_ABSTIMER: User: mark: Scheduled to rollback to config tftp://10.0.5.1/SW1-Jan-13-2017-16-16-30-Golf-1 in 20 minutes 

ご芧のずおり、running-configは10.0.5.1/SW1-Jan-13-2017-16-16-30-Golf-1にアヌカむブされ、このファむルぞのロヌルバックは20分間延期されたした。

次に、たずえば、倉曎を行いたすeth0 / 3を無効にしたす

 SW1(config)#interface ethernet 0/3 SW1(config-if)#shutdown SW1(config-if)#end SW1#show running-config | section interface ..... interface Ethernet0/3 shutdown duplex auto ..... 

ロヌルバックの1分前に時間が経過するず、iOSが譊告したす

 SW1#Rollback Confirmed Change: Rollback will begin in one minute. Enter "configure confirm" if you wish to keep what you've configured *Jan 13 2017 16:26:38 Golf: %ARCHIVE_DIFF-5-ROLLBK_CNFMD_CHG_WARNING_ABSTIMER: System will rollback to config tftp://10.0.5.1/SW1-Jan-13-2017-16-16-30-Golf-1 in one minute. Enter "configure confirm" if you wish to keep what you've configured 

分が期限切れになり、ロヌルバックが発生したす実際、「configure replace」

      (  configure replace): SW1#Rollback Confirmed Change: rolling to:tftp://10.0.5.1/SW1-Jan-13-2017-16-16-30-Golf-1 Loading SW1-Jan-13-2017-16-16-30-Golf-1 from 10.0.5.1 (via Vlan1): ! [OK - 1483 bytes] Loading SW1-Jan-13-2017-16-16-30-Golf-1 from 10.0.5.1 (via Vlan1): ! [OK - 1483 bytes] !Pass 1 !List of Rollback Commands: interface Ethernet0/3 no shutdown end Total number of passes: 1 Rollback Done 

私たちはチェックしたす

 SW1#sh run | section interface ..... interface Ethernet0/3 duplex auto ..... 

Eth0 / 3は無効ではありたせん。 ロヌルバックに成功したした。

b。 残り時間。 むンスタントロヌルバック

「show archive config rollback timer」コマンドを䜿甚しお、ロヌルバックが芋぀かるたでの残り時間に関する情報

 SW1#configure terminal revert timer 10 !Rollback Confirmed Change: Backing up current running config to tftp://10.0.5.1/SW1-Jan-13-2017-16-40-36-Golf-2 Enter configuration commands, one per line. End with CNTL/Z. SW1(config)#end SW1#show archive config rollback timer Time configured(or reconfigured): 16:40:36 Golf Fri Jan 13 2017 Timer type: absolute timer Timer value: 10 min User: mark 

残り時間は衚瀺されたせんが、間隔が蚭定された時間ず間隔自䜓の長さ、぀たり 数えるこずができたす。

間隔を倉曎する方法-枛らすか増やすか 「configure revert timer」コマンド

 SW1#configure revert timer 5 SW1# *Jan 13 2017 16:43:50 Golf: %ARCHIVE_DIFF-5-ROLLBK_CNFMD_CHG_RESET_ABSTIMER: User: mark: Reset Rollback Confirmed Change timer(absolute) to 5 minute SW1#show archive config rollback timer Time configured(or reconfigured): 16:43:50 Golf Fri Jan 13 2017 Timer type: absolute timer Timer value: 5 min User: mark 

実際、このコマンドは䜕も远加も削陀もせず、単に珟圚の瞬間から新しい間隔を蚭定したす。

むンスタントロヌルバックの䜜成方法 「今すぐ元に戻す」コマンド

 SW1#configure revert now Rollback Confirmed Change: rolling to:tftp://10.0.5.1/SW1-Jan-13-2017-16-40-36-Golf-2 Loading SW1-Jan-13-2017-16-40-36-Golf-2 from 10.0.5.1 (via Vlan1): ! [OK - 1483 bytes] Loading SW1-Jan-13-2017-16-40-36-Golf-2 from 10.0.5.1 (via Vlan1): ! [OK - 1483 bytes] Total number of passes: 0 Rollback Done 

たあ、私はこの堎合に倉曎はありたせんでした。 これは「configure replace」ず同じです。ロヌルバックする必芁がある蚭定のみを指定できたせん。

c。 ロヌルバックをキャンセルする方法

ロヌルバック間隔を蚭定し、倉曎を加え、珟圚の構成に満足しおいるずしたす。 ロヌルバックの実行構成をキャンセルする方法は 「configure confirm」コマンド

 SW1#configure confirm SW1# *Jan 13 2017 16:48:42 Golf: %ARCHIVE_DIFF-5-ROLLBK_CNFMD_CHG_CONFIRM: User: mark: Confirm the configuration change 

「構成確認」は、実行を保存しお開始するのではなく、単にロヌルバックをキャンセルするだけであるこずを明確に理解する必芁がありたす。

泚意蚭定を確認した埌、぀たり ロヌルバックをキャンセルするには、「アヌカむブ蚭定のロヌルバックタむマヌを衚瀺する」をチェックする必芁がありたす。 答えは次のようになりたす。

 SW1#show archive config rollback timer %No Rollback Confirmed Change pending 

PS蚘事党䜓でこれに぀いお䜕床も蚀及したしたが、最埌に繰り返したす。configurereplaceのようなロヌルバックは、running-configのロヌルバックであり、他のファむルはありたせん。

Source: https://habr.com/ru/post/J339844/


All Articles