CLI dựa trên giao dịch trên các thiết bị chuyển mạch Ethernet


10

Tôi quen thuộc với CLI trên các thiết bị chuyển mạch Ethernet được quản lý. Tuy nhiên, gần đây tôi đã bắt gặp một thuật ngữ 'CLI dựa trên giao dịch' trên các thiết bị chuyển mạch. Tôi không chắc chắn chính xác đó là gì và mục đích của việc có nó trong thiết bị chuyển mạch. Nó có giống với các giao dịch cơ sở dữ liệu nơi bạn có thể hủy đăng ký toàn bộ các lệnh trước khi thực hiện chúng không?

Biên tập:

Như yêu cầu:

Bảng dữ liệu RX5000

Điểm giao dịch CLI


Có câu trả lời nào giúp bạn không? nếu vậy, bạn nên chấp nhận câu trả lời để câu hỏi không xuất hiện mãi mãi, tìm kiếm câu trả lời. Ngoài ra, bạn có thể cung cấp và chấp nhận câu trả lời của riêng bạn.
Ron Maupin

Câu trả lời:


10

Tôi quen thuộc với CLI trên các thiết bị chuyển mạch Ethernet được quản lý. Tuy nhiên, gần đây tôi đã bắt gặp một thuật ngữ 'CLI dựa trên giao dịch' trên các thiết bị chuyển mạch. Tôi không chắc chắn chính xác đó là gì và mục đích của việc có nó trong thiết bị chuyển mạch. Nó có giống với các giao dịch cơ sở dữ liệu nơi bạn có thể hủy đăng ký toàn bộ các lệnh trước khi thực hiện chúng không?

  • Các RX5000 đang nói về khả năng thay đổi Revert từng bước, như bạn có thể trong một cơ sở dữ liệu.
  • Các Checkpoint liên kết mà bạn đề cập ám chỉ điều tương tự, nhưng họ xác định rằng các lệnh cấu hình rời rạc có thể được nhóm lại với nhau thành một "cam kết" hành động.

Cisco CLI giao dịch với lưu trữ cấu hình và khôi phục

Các khả năng này rất giống với những gì bạn tìm thấy ở nơi khác trong ngành ... ví dụ trên bộ định tuyến của Cisco, bạn có thể cam kết thay đổi trong các giao dịch có thể đảo ngược, nếu bạn đã archivebật cấu hình đang chạy của 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#

Hiện tại không có Loopback100 được cấu hình ...

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

SW1#

Ví dụ cấu hình giao dịch CLI và xác nhận

Hãy cấu hình Loopback100với bộ đếm thời gian khôi phục 10 phút, xem xét các thay đổi của chúng tôi kể từ ảnh chụp nhanh cấu hình, xác nhận các thay đổi và sau đó cuộn lại. Nếu bộ đếm thời gian rollback hết hạn mà không xác nhận cấu hình, nó sẽ tự động trở lại lần cuối cùng của chúng tôi config archive(điều này cũng xảy ra khi bạn thực hiện config terminal revert).

Các giao dịch này rất có giá trị, bởi vì nếu bạn hoàn toàn cấu hình bộ định tuyến của mình đến mức không thể truy cập được, nó sẽ tự động quay trở lại ảnh chụp nhanh đã lưu của bạn ... điều đó cũng có ích nếu bạn có thể quản lý bộ định tuyến nhưng cần quay ngược lại với mục đích đã biết cấu hình vội vàng.

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#

Chúng ta có thể thấy rằng Looback100 tồn tại ...

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#

Chúng ta có thể thấy các khác biệt cần thiết để quay trở lại kho lưu trữ cấu hình cuối cùng ...

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#

Bây giờ chúng tôi có thể xác nhận cam kết ... điều này có nghĩa là chúng tôi không tự động quay lại nếu hết giờ 10 phút.

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#

Phục hồi giao dịch CLI

Giả sử chúng ta tìm thấy một vấn đề sau config confirm. Hãy quay trở lại cấu hình cũ mà chúng tôi đã lưu trữ ...

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#

Bây giờ Loopback100 không tồn tại trong cấu hình đang chạy. Cấu hình chính xác như khi chúng tôi chụp ảnh đầu tiên.

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

SW1#

Khi khôi phục xảy ra, cấu hình bị khóa khỏi mọi hoạt động cấu hình khác. Trong trường hợp có lỗi, hoặc một số sự kiện không thể đoán trước, configuration mode exclusive auto expire [timeout-in-seconds]bạn nên có cấu hình của mình khi sử dụng tính năng này. Tôi thích giá trị thời gian chờ tối đa là 600 giây ... điều này có nghĩa là thời gian tối đa mà cấu hình có thể bị khóa là 10 phút.

Ghi chú lịch sử

Ban đầu, Juniper là nhà cung cấp lớn đầu tiên triển khai các tính năng rollback cấu hình. Tôi đã làm việc cho Cisco vào thời điểm đó và các tài khoản bán hàng của chúng tôi đã hét lên về tính năng này trong Cisco IOS. Tôi vẫn còn nhớ các sắc lệnh nội bộ từ những người chơi quan trọng trong công ty, người đã nói rằng "không thể có trong Cisco IOS".

Tất nhiên, với đủ kiên trì (và một vài năm ở giữa), chúng tôi có nó trong iOS ... vấn đề là, đừng cho rằng "không, chúng tôi không thể làm điều đó" thực sự là chính xác.


Cảm ơn ví dụ. Một điều không rõ ràng đối với tôi ... Các thay đổi (trong trường hợp này là loopback) có được kích hoạt ngay khi bạn nhập lệnh hoặc chúng có được kích hoạt sau khi bạn xác nhận giao dịch (cấu hình xác nhận).
khiêm tốn

@modest, Cisco áp dụng các lệnh ngay lập tức; Khi bạn thực hiện config confirm, bạn chỉ nói với bộ định tuyến rằng bạn không muốn tự động khôi phục các thay đổi đó. Tất nhiên, hoàn toàn có thể thực hiện các thay đổi mà không cần quay ngược thời gian. Dù bằng cách nào, các lệnh được kích hoạt ngay lập tức.
Mike Pennington

1

Giả định của bạn là chính xác. Trong cả hai trường hợp này, bạn có thể khôi phục các lệnh cấu hình tới một điểm đã biết nếu chúng không hoạt động như mong đợi.


Hiểu. Tuy nhiên, bạn có thể đạt được hiệu quả bằng cách tải tập tin cấu hình trước đó (giả sử bạn lưu nó trước khi bắt đầu thay đổi) trong trường hợp nếu mọi thứ trở nên tồi tệ. Am i thiếu cái gì ở đây?
khiêm tốn

@modest Tải lại cấu hình trước đó sẽ không xóa các lệnh yêu cầu "không <cmd>". Ví dụ: nếu bạn áp dụng danh sách truy cập vào giao diện với lệnh "ip access-group 100 in" và sau đó nhập "copy start run" để tải lại cấu hình, điều đó sẽ không xóa danh sách truy cập.
Ron Trunk

Một điều khác mà tính năng này thực hiện (ít nhất là trên Cisco và Juniper) là cho phép bạn đặt hẹn giờ quay ngược. Khi hết giờ, cấu hình sẽ tự quay trở lại. Điều này hữu ích nếu bạn đã thực hiện một số thay đổi khiến bạn mất khả năng giao tiếp với thiết bị. Không phải là tôi đã từng làm điều đó :(
Ron Trunk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.