이더넷 스위치의 트랜잭션 기반 CLI


10

관리되는 이더넷 스위치의 CLI에 익숙합니다. 그러나 최근에는 스위치에서 '트랜잭션 기반 CLI'라는 용어를 발견했습니다. 나는 그것이 무엇이고 스위치에 넣는 목적을 정확히 확신하지 못합니다. 커밋하기 전에 전체 명령을 풀 수있는 데이터베이스 트랜잭션과 비슷합니까?

편집하다:

요청한대로 :

RX5000 데이터 시트

체크 포인트 CLI 트랜잭션


어떤 대답이 도움이 되었습니까? 그렇다면 질문에 대한 답변이 계속 나오지 않도록 답변을 수락해야합니다. 또는 자신의 답변을 제공하고 수락 할 수 있습니다.
Ron Maupin

답변:


10

관리되는 이더넷 스위치의 CLI에 익숙합니다. 그러나 최근에는 스위치에서 '트랜잭션 기반 CLI'라는 용어를 발견했습니다. 나는 그것이 무엇이고 스위치에 넣는 목적을 정확히 확신하지 못합니다. 커밋하기 전에 전체 명령을 풀 수있는 데이터베이스 트랜잭션과 비슷합니까?

  • RX5000은 당신이 데이터베이스에 할 수있는 것처럼, 점진적으로 되돌리기 변경하는 기능 말하고있다.
  • 체크 포인트는 이 같은 일을 암시 언급 링크,하지만 그들은 그 개별 구성 명령은 단일로 그룹화 할 수 있습니다 지정 조치를 "커밋".

구성 아카이브 및 롤백을 사용한 Cisco CLI 트랜잭션

이러한 기능은 업계 어디에서나 찾을 수있는 것과 매우 유사합니다. 예를 들어 Cisco 라우터 archive에서 Cisco의 실행중인 구성을 활성화 한 경우 가역 트랜잭션의 변경 사항을 커밋 할 수 있습니다.

SW1#sh runn | b archive
archive
 path bootflash:$h_config
!
SW1#term exec prompt time
SW1#archive config

SW1#dir bootflash:
Directory of bootflash:/

   21  -rw-       52770   Nov 3 2013 12:48:04 -06:00  SW1_config-Nov--3-12-48-02-CST-1
   20  -rw-       52770   Nov 3 2013 12:45:02 -06:00  SW1_config-Nov--3-12-45-00-CST-0
   22  -rw-       52762   Nov 3 2013 12:52:22 -06:00  SW1_config-Nov--3-12-52-20-CST-0
   23  -rw-       52762   Nov 3 2013 14:38:44 -06:00  SW1_config-Nov--3-14-38-41-CST-1
   26  -rw-       66622  Jan 31 2014 13:17:46 -06:00  SW1_configJan-31-13-17-42-CST-2  <---

131436544 bytes total (95956992 bytes free)
SW1#

현재 구성된 Loopback100이 없습니다 ...

SW1#sh runn int lo100
                  ^
% Invalid input detected at '^' marker.

SW1#

CLI 트랜잭션 구성 및 확인 예

하자의 구성 Loopback10010 분 롤백 타이머의 설정 스냅 샷 이후 우리의 변화에서 보면, 다음 변경 및 롤 다시 확인합니다. 구성을 확인하지 않고 롤백 타이머가 만료되면 자동으로 마지막 으로 돌아갑니다 config archive(이 경우에도 수행 config terminal revert).

라우터의 구성을 도달 할 수없는 지점까지 완전히 호스 핑하면 저장된 스냅 샷으로 자동 롤백됩니다. 라우터를 관리 할 수는 있지만 알려진 정상으로 롤백해야하는 경우에도 도움이됩니다. 서둘러 설정하십시오.

SW1#configure terminal revert timer 10
Rollback Confirmed Change: Backing up current running config 
 to bootflash:SW1_configJan-31-13-20-21-CST-3

Enter configuration commands, one per line.  End with CNTL/Z.
SW1(config)#
SW1(config)#int loopback 100
SW1(config-if)#ip address 1.2.3.4 255.255.255.255
SW1(config-if)#end
SW1#

Looback100이 존재 하는 것을 볼 수 있습니다 ...

SW1#sh runn int lo100
Load for five secs: 28%/0%; one minute: 24%; five minutes: 24%
Time source is NTP, 13:21:25.243 CST Fri Jan 31 2014

Building configuration...

Current configuration : 65 bytes
!
interface Loopback100
 ip address 1.2.3.4 255.255.255.255
end

SW1#

마지막 구성 아카이브로 롤백하는 데 필요한 차이점을 볼 수 있습니다 ...

SW1#sh archive config differences bootflash:SW1_configJan-31-13-17-42-CST-2
Load for five secs: 17%/0%; one minute: 24%; five minutes: 23%
Time source is NTP, 13:25:55.832 CST Fri Jan 31 2014
!
!Contextual Config Diffs:
-interface Loopback100
 -ip address 1.2.3.4 255.255.255.255

SW1#

커밋을 확인할 수 있습니다. 이것은 10 분 타이머가 만료되면 자동으로 롤백되지 않음을 의미합니다.

SW1#configure confirm
SW1#sh runn int loo100
Load for five secs: 25%/0%; one minute: 25%; five minutes: 24%
Time source is NTP, 13:30:17.269 CST Fri Jan 31 2014

Building configuration...

Current configuration : 65 bytes
!
interface Loopback100
 ip address 1.2.3.4 255.255.255.255
end

SW1#

CLI 트랜잭션 롤백

다음에 문제가 있다고 가정 해 봅시다 config confirm. 보관 한 이전 구성으로 롤백 해 봅시다 ...

SW1#configure replace bootflash:SW1_configJan-31-13-17-42-CST-2
This will apply all necessary additions and deletions
to replace the current running configuration with the
contents of the specified configuration file, which is
assumed to be a complete configuration, not a partial
configuration. Enter Y if you are sure you want to proceed. ? [no]: yes
Total number of passes: 1
Rollback Done

SW1#

이제 Loopback100이 실행중인 구성에 없습니다. 구성은 첫 번째 스냅 샷을 만들 때와 똑같습니다.

SW1#sh runn int lo100
                  ^
% Invalid input detected at '^' marker.

SW1#

롤백이 발생하면 구성은 다른 구성 활동으로부터 잠 깁니다. 버그 또는 예측할 수없는 이벤트가 configuration mode exclusive auto expire [timeout-in-seconds]있는 경우이 기능을 사용할 때 구성에 포함 하는 것이 좋습니다 . 최대 시간 제한 값인 600 초가 마음에 듭니다. 즉, 구성을 잠글 수있는 최대 시간은 10 분입니다.

역사적 메모

주니퍼는 원래 구성 롤백 기능을 배포 한 최초의 주요 공급 업체였습니다. 당시 Cisco에서 근무했으며 영업 계정이 Cisco IOS에서이 기능에 대해 비명을 지르고있었습니다. 나는 여전히 "Cisco IOS에서는 불가능하다"고 말한 회사의 주요 업체들의 내부 평가 결과를 기억합니다.

물론 충분한 지속성 (그리고 중간에 2 년)이 있으면 IOS에 있습니다 ... 요점은 첫 번째 "아니오, 우리는 할 수 없습니다"라고 가정하지 마십시오. 정확합니다.


예를 주셔서 감사합니다. 한 가지 분명하지 않은 점 ... 명령을 입력하자마자 변경 사항 (이 경우 루프백)이 즉시 활성화되거나 트랜잭션을 확인하면 활성화됩니다 (확인 구성).
겸손한

@modest, Cisco는 즉시 명령을 적용합니다. 를 수행 config confirm하면 라우터에게 변경 사항을 자동으로 롤백하고 싶지 않다고 알려주는 것입니다. 물론, 롤백을 롤백하지 않고도 변경할 수 있습니다. 어느 쪽이든 명령이 즉시 활성화됩니다.
Mike Pennington

1

당신의 가정은 맞습니다. 이 두 경우 모두 구성 명령이 예상대로 작동하지 않으면 알려진 지점으로 롤백 할 수 있습니다.


이해했다. 그러나 상황이 나빠질 경우를 대비하여 이전 구성 파일 (로드하기 전에 파일을 저장한다고 가정)을로드하면 효과를 얻을 수 있습니다. 여기에 뭔가 빠졌습니까?
겸손한

@modest 이전 설정을 다시로드해도 "no <cmd>"가 필요한 명령은 제거되지 않습니다. 예를 들어, "ip access-group 100 in"명령을 사용하여 인터페이스에 액세스 목록을 적용한 다음 "copy start run"을 입력하여 구성을 다시로드하면 액세스 목록이 제거되지 않습니다.
Ron Trunk

이 기능이 수행하는 다른 기능 (적어도 Cisco 및 Juniper에서)은 롤백 타이머를 설정하는 것입니다. 타이머가 만료되면 구성이 자동으로 롤백됩니다. 장치와의 호환성을 잃게하는 일부 변경을 한 경우에 유용합니다. 내가 한 일이 아닙니다 :(
Ron Trunk
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.