- Managing Configuration Files
- Exclusive Configuration Change Access Configuration Lock and Access Session Locking
- Configuration Replace and Configuration Rollback
- Contextual Configuration Diff Utility
- Configuration Change Notification and Logging
- Configuration Logger Persistency
- Configuration Partitioning
Configuration Partitioning
The Configuration Partitioning feature provides modularization ("partitioning") of the running configuration state to provide granular access to the running configuration in Cisco IOS software.
This feature is enabled by default in Cisco IOS software images that include this feature.
The configuration state of a device is retrieved dynamically whenever a user issues the showrunning-config command. When the Configuration Partitioning feature is enabled, the system groups the configuration state of the device into parts (called "partitions") so that only the configuration state the user wishes to review is retrieved when generating a displayed list of commands in the running configuration. This feature improves performance for high-end systems with complex configurations because only a part of the running configuration state is processed when generating the running configuration command list, as opposed to the existing method of processing the entire system configuration state.
Default configuration partitions are provided by the introduction of this feature; other Cisco IOS software features may define their own command partitions in later releases.
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest feature information and caveats, see the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the Feature Information Table at the end of this document.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Information About Configuration Partitioning
- System Running Configurations
- Retrieving the Running Configuration for Display or Copy Operations
- Benefits of Partitioning the Running Configuration
System Running Configurations
Managing the configuration of any Cisco IOS software-based device involves managing the startup configuration (startup-config), which is a file stored in nonvolatile memory, and the running configuration (running-config), which is the set of all configuration options currently in effect on the system. Typically, the startup configuration file is loaded when the system boots, and changes to the system's running configuration, applied using the command-line interface (CLI), are saved by copying the running configuration to a configuration file (either locally or on the network), which can then be used to configure the device at startup, or used to configure other devices.
Retrieving the Running Configuration for Display or Copy Operations
In the Cisco IOS software configuration model, the configuration state is maintained in a distributed manner, with each component storing its own configuration state. To retrieve global configuration information, the software must poll every component to collect the distributed information. This configuration state retrieval operation is performed by a process known as nonvolatile generation (NVGEN), and it is invoked by commands such as showrunning-config, which is used to display the current configuration state, and copysystem:running-configuration, which is used to save the running configuration by copying it to a file. When invoked, the NVGEN process queries each system component, each interface instance, and all other configured component objects in a standard sequence. A running configuration file is constructed as NVGEN traverses the system performing these queries, and it is this "virtual file" that is displayed or copied.
Benefits of Partitioning the Running Configuration
The Configuration Partitioning feature is the latest in a series of Configuration Generation Performance Enhancement Features for Cisco IOS software. (See the "Related Documents" section for related features.) This feature improves the system's response time by providing a method for querying only the system component you wish to review when issuing the showrunning-config command.
When the Configuration Partitioning feature is enabled, the system groups the configuration state of the device into parts (called "partitions") for the purpose of generating the virtual running configuration file (the list of configuration commands). A new command, showrunning-configpartition, allows you to display only the part of the running configuration that you want to examine, rather than having to display the entire running configuration at once, or displaying only lines that match a certain string.
The key benefit of this feature is that it increases system performance by allowing the system to run the NVGEN process for only the collection of system components (such as specific interfaces) that you need to display. This is in contrast to other existing extensions to the showrunning-config command, which only filter the generated list after all system components have been processed.
The selective processing of the system's configuration state for the purpose of generating a partial running configuration is called "configuration partitioning."
More granular access to configuration information offers important performance benefits for high-end routing platforms with very large configuration files, while also enhancing configuration management by allowing advanced configuration features to be implemented at a more granular level. Advanced configuration options include Cisco IOS software support for provisioning of customer services, Config Rollback, Config Locking, and configuration access control.
How to Use the Configuration Partitioning Feature
Displaying Configuration Partitions
The main method of taking advantage of this feature is by using the showrunning-configpartitionpartcommand in priveledge exec mode, which is a specialized extension to the showrunning-configcommand.
Note |
The partitionpart command extension is not available for the more:systemrunning-config command. |
Because this feature offers improved performance for existing commands, this feature is enabled by default in Cisco IOS software images that support this feature. To quickly determine if this feature is supported and running on your system, issue the showrunning-configpartition? command in privileged EXEC mode.
DETAILED STEPS
Disabling the Configuration Partitioning Feature
Because this feature offers improved performance for existing commands, this feature is enabled by default for Cisco IOS software images that support this feature. However, you may want to disable this feature if you determine that it is not needed, as this feature does use a small amount of system resources (memory and CPU utilization). To disable configuration partitioning, perform the following task, which assumes you are starting in user EXEC mode.
DETAILED STEPS
Command or Action | Purpose | |
---|---|---|
|
Example: Router> enable |
Enables privileged EXEC mode.
|
|
Example: Router# configure terminal |
Enters global configuration mode. |
|
Example: Router(config)# no parser config partition Example: Disabling config partitioning Example: Router(config)# |
Disables the configuration partitioning feature. |
What to Do Next
To reenable the feature after it has been disabled, use the parserconfigpartition command in global configuration mode.
Note |
As this feature is enabled by default, only the no form will appear in the running configuration file, or will be written to the startup configuration file when you issue the copyrunning-configstartup-configcommand. |
Configuration Examples for Configuration Partitioning
This section provides examples of displaying configuration partitions with the show running-config partition command:
Displaying Configuration Partitions Example
In this example, the showrunning-configpartitioncommand is used with related commands in a series of steps an administrator might take to check the status of a specific interface and the current configuration of some of the system's other components. Comparable filtered output from the standard showrunning-configcommand (for example, showrunning-config|includeaccess-list) is included for demonstration purposes.
Note |
The part argument can consist of multiple partition name keywords, as in showrunning-configpartroutereigrp1. |
gt3-7200-3# show running-config partition ? access-list All access-list configurations boot All boot configurations class-map All class-map configurations global-cdp All global cdp configurations interface All Interface specific Configurations ip-as-path All IP as-path configurations ip-community All IP community list configurations ip-domain-list All ip domain list configurations ip-static-routes All IP static configurations line All line mode configurations policy-map All policy-map configurations route-map All route-map configurations router All routing configurations service All service configurations snmp All SNMP configurations gt3-7200-3# show running-config partition access-list Building configuration... Current configuration : 87 bytes ! ! ! ! access-list 90 permit 0.0.0.0 1.2.3.5 access-list 100 permit 10 any any ! end gt3-7200-3# show running-config | include access-list access-list 90 permit 0.0.0.0 1.2.3.5 access-list 100 permit 10 any any gt3-7200-3# gt3-7200-3# show running-config partition boot Building configuration... Current configuration : 51 bytes ! boot network tftp:/service_config.txt ! ! ! end gt3-7200-3# show running-config partition class-map Building configuration... Current configuration : 78 bytes ! ! ! class-map match-all abc match any class-map match-all xyz ! ! ! end gt3-7200-3# show running-config | begin class-map class-map match-all abc match any class-map match-all xyz ! ! gt3-7200-3# show running-config partition global-cdp Building configuration... Current configuration : 43 bytes ! ! ! cdp timer 20 cdp holdtime 100 ! end gt3-7200-3# show running-config | include global-cdp cdp timer 20 cdp holdtime 100 gt3-7200-3# gt3-7200-3# show ip interface brief Interface IP-Address OK? Method Status Protocol FastEthernet0/0 unassigned YES NVRAM administratively down down Ethernet2/0 10.4.2.32 YES NVRAM up up Ethernet2/1 unassigned YES NVRAM administratively down down Ethernet2/2 unassigned YES NVRAM administratively down down Ethernet2/3 unassigned YES NVRAM administratively down down Serial3/0 unassigned YES NVRAM administratively down down Serial3/1 unassigned YES NVRAM administratively down down Serial3/2 unassigned YES NVRAM administratively down down Serial3/3 unassigned YES NVRAM administratively down down Loopback0 unassigned YES NVRAM administratively down down Loopback234 unassigned YES NVRAM administratively down down gt3-7200-3# show running-config partition interface fastethernet0/0 Building configuration... Current configuration : 98 bytes ! ! ! interface FastEthernet0/0 no ip address no ip route-cache shutdown duplex half ! ! end gt3-7200-3# show running-config partition interface ethernet2/0 Building configuration... Current configuration : 122 bytes ! ! ! interface Ethernet2/0 ip address 10.4.2.32 255.255.255.0 no ip proxy-arp no ip route-cache duplex half ! ! end gt3-7200-3# show running-config partition interface ethernet2/1 Building configuration... Current configuration : 94 bytes ! ! ! interface Ethernet2/1 no ip address no ip route-cache shutdown duplex half ! ! end gt3-7200-3# show running-config partition interface ethernet2/2 Building configuration... Current configuration : 94 bytes ! ! ! interface Ethernet2/2 no ip address no ip route-cache shutdown duplex half ! ! end gt3-7200-3# show running-config partition interface ethernet2/3 Building configuration... Current configuration : 94 bytes ! ! ! interface Ethernet2/3 no ip address no ip route-cache shutdown duplex half ! ! end gt3-7200-3# show running-config partition interface serial3/0 Building configuration... Current configuration : 103 bytes ! ! ! interface Serial3/0 no ip address no ip route-cache shutdown serial restart-delay 0 ! ! end gt3-7200-3# show running-config partition interface serial3/1 Building configuration... Current configuration : 103 bytes ! ! ! interface Serial3/1 no ip address no ip route-cache shutdown serial restart-delay 0 ! ! end gt3-7200-3# show running-config partition interface serial3/2 Building configuration... Current configuration : 103 bytes ! ! ! interface Serial3/2 no ip address no ip route-cache shutdown serial restart-delay 0 ! ! end gt3-7200-3# show running-config partition interface serial3/3 Building configuration... Current configuration : 103 bytes ! ! ! interface Serial3/3 no ip address no ip route-cache shutdown serial restart-delay 0 ! ! end gt3-7200-3# show running-config partition interface loopback0 Building configuration... Current configuration : 79 bytes ! ! ! interface Loopback0 no ip address no ip route-cache shutdown ! ! end gt3-7200-3# show running-config partition interface loopback1 ^ % Invalid input detected at '^' marker. gt3-7200-3# show running-config partition interface loopback234 Building configuration... Current configuration : 81 bytes ! ! ! interface Loopback234 no ip address no ip route-cache shutdown ! ! end gt3-7200-3# configure terminal Enter configuration commands, one per line. End with CNTL/Z. gt3-7200-3(config)# interface ethernet 2/0.1 gt3-7200-3(config-subif)# exit gt3-7200-3(config)# exit gt3-7200-3# 00:13:05: %SYS-5-CONFIG_I: Configured from console by console gt3-7200-3# show running-config partition interface ethernet2/0.1 Building configuration... Current configuration : 58 bytes ! ! ! interface Ethernet2/0.1 no ip route-cache ! ! end gt3-7200-3# show run partition ip? ip-as-path ip-community ip-domain-list ip-static-routes gt3-7200-3#sh run part ip-as gt3-7200-3#sh run part ip-as-path Building configuration... Current configuration : 125 bytes ! ! ! ip as-path access-list 2 permit $ABC ip as-path access-list 2 permit $xyz* ip as-path access-list 2 permit qwe* ! end gt3-7200-3# show running-config partition ip-community Building configuration... Current configuration : 92 bytes ! ! ! ip community-list standard asd permit ip community-list expanded qwe deny uio* ! end gt3-7200-3# show running-config | include ip community ip community-list standard asd permit ip community-list expanded qwe deny uio* gt3-7200-3# gt3-7200-3# show running-config partition ip-domain-list Building configuration... Current configuration : 70 bytes ! ip domain-list iop ip domain-list tyu ip domain-list jkl ! ! ! end gt3-7200-3# show running-config partition ip-static-routes Building configuration... Current configuration : 98 bytes ! ! ! ip route 0.0.0.0 0.0.0.0 Ethernet2/0 ip route 171.69.1.129 255.255.255.255 10.4.29.1 ! end gt3-7200-3# show running-config partition line Building configuration... Current configuration : 489 bytes ! ! ! ! line con 0 exec-timeout 0 0 transport output lat pad v120 mop telnet rlogin udptn nasi stopbits 1 line aux 0 transport output lat pad v120 mop telnet rlogin udptn nasi stopbits 1 line vty 0 password lab login transport input lat pad v120 mop telnet rlogin udptn nasi transport output lat pad v120 mop telnet rlogin udptn nasi line vty 1 4 login transport input lat pad v120 mop telnet rlogin udptn nasi transport output lat pad v120 mop telnet rlogin udptn nasi ! end gt3-7200-3# show running-config partition policy-map Building configuration... Current configuration : 162 bytes ! ! ! policy-map qwer description policy-map qwer. class xyz shape peak 8000 32 32 policy-map p1 policy-map sdf class abc set precedence 4 ! ! ! end gt3-7200-3# show running-config partition route-map Building configuration... Current configuration : 65 bytes ! ! ! route-map iop permit 10 ! route-map rty permit 10 ! ! end gt3-7200-3#sh run part router bgp 1 Building configuration... Current configuration : 111 bytes ! ! ! router bgp 1 no synchronization bgp log-neighbor-changes distance bgp 2 2 2 no auto-summary ! ! end gt3-7200-3#sh run part router egp ? <0-65535> Remote autonomous system number gt3-7200-3#sh run part router egp 1 Building configuration... Current configuration : 46 bytes ! ! ! router egp 1 timers egp 20 20 ! ! end gt3-7200-3# show running-config partition router ? bgp Border Gateway Protocol (BGP) egp Exterior Gateway Protocol (EGP) eigrp Enhanced Interior Gateway Routing Protocol (EIGRP) isis ISO IS-IS iso-igrp IGRP for OSI networks mobile Mobile routes odr On Demand stub Routes ospf Open Shortest Path First (OSPF) rip Routing Information Protocol (RIP) gt3-7200-3# show running-config partition router eigrp ? <1-65535> Autonomous system number gt3-7200-3# show running-config partition router eigrp 1 Building configuration... Current configuration : 13 bytes ! ! ! ! end gt3-7200-3# gt3-7200-3# sh run part router eigrp 2 Building configuration... Current configuration : 57 bytes ! ! ! router eigrp 2 variance 10 auto-summary ! ! end gt3-7200-3# show running-config partition router ? bgp Border Gateway Protocol (BGP) egp Exterior Gateway Protocol (EGP) eigrp Enhanced Interior Gateway Routing Protocol (EIGRP) isis ISO IS-IS iso-igrp IGRP for OSI networks mobile Mobile routes odr On Demand stub Routes ospf Open Shortest Path First (OSPF) rip Routing Information Protocol (RIP) gt3-7200-3# show running-config partition router isis ? WORD ISO routing area tag | Output modifiers <cr> gt3-7200-3# show running-config partition router isis qwe Building configuration... Current configuration : 86 bytes ! ! ! router isis qwe set-attached-bit route-map qwer use external-metrics ! ! end gt3-7200-3# show running-config partition router isis ? WORD ISO routing area tag | Output modifiers <cr> gt3-7200-3# show running-config partition router iso gt3-7200-3# show running-config partition router iso-igrp ? WORD ISO routing area tag | Output modifiers <cr> gt3-7200-3# show running-config partition router iso-igrp Building configuration... Current configuration : 31 bytes ! ! ! router iso-igrp ! ! end gt3-7200-3# show running-config | begin iso router iso-igrp ! router isis qwe set-attached-bit route-map qwer use external-metrics ! router egp 1 timers egp 20 20 ! router bgp 1 no synchronization bgp log-neighbor-changes distance bgp 2 2 2 no auto-summary ! gt3-7200-3# show running-config partition router ? bgp Border Gateway Protocol (BGP) egp Exterior Gateway Protocol (EGP) eigrp Enhanced Interior Gateway Routing Protocol (EIGRP) isis ISO IS-IS iso-igrp IGRP for OSI networks mobile Mobile routes odr On Demand stub Routes ospf Open Shortest Path First (OSPF) rip Routing Information Protocol (RIP) gt3-7200-3# show running-config partition router mobile ? | Output modifiers <cr> gt3-7200-3# show running-config partition router mobile Building configuration... Current configuration : 42 bytes ! ! ! router mobile distance 20 ! ! end gt3-7200-3# sh run | include router router mobile router odr router eigrp 2 router ospf 4 router iso-igrp router isis qwe router egp 1 router bgp 1 gt3-7200-3# show running-config partition router ? bgp Border Gateway Protocol (BGP) egp Exterior Gateway Protocol (EGP) eigrp Enhanced Interior Gateway Routing Protocol (EIGRP) isis ISO IS-IS iso-igrp IGRP for OSI networks mobile Mobile routes odr On Demand stub Routes ospf Open Shortest Path First (OSPF) rip Routing Information Protocol (RIP) gt3-7200-3# show running-config partition router ospf ? <1-65535> Process ID gt3-7200-3# show running-config partition router ospf 4 Building configuration... Current configuration : 64 bytes ! ! ! router ospf 4 log-adjacency-changes distance 4 ! ! end gt3-7200-3# sh run part service Building configuration... Current configuration : 190 bytes ! no service pad service timestamps debug uptime service timestamps log uptime no service password-encryption service internal service udp-small-servers service tcp-small-servers ! ! ! end gt3-7200-3# sh run part snmp Building configuration... Current configuration : 84 bytes ! ! ! snmp-server community user101 RW snmp mib target list qwe host 0.0.0.0 ! end
Additional References
The following sections provide references related to the Configuration Partitioning feature.
Related Documents
Related Topic |
Document Title |
---|---|
Running configuration performance enhancement--parserconfigcache for interfaces. |
Configuration Generation Performance Enhancement |
Provisioning of customer services, Config Rollback, Config Locking, and configuration access control |
Contextual Configuration Diff Utility |
Configuration management--Config change logging. |
Configuration Change Notification and Logging |
Configuration management --Quick-save for config change logging1. |
Configuration Logger Persistency |
Cisco IOS software configuration access control and config session locking ("Config Lock"). |
Exclusive Configuration Change Access and Access Session Locking |
Standards
Standard |
Title |
---|---|
No standards are associated with this feature. |
-- |
MIBs
MIB |
MIBs Link |
---|---|
No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature. |
-- |
RFCs
RFC |
Title |
---|---|
No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature. |
-- |
Technical Assistance
Description |
Link |
---|---|
The Cisco Support website provides extensive online resources, including documentation and tools for troubleshooting and resolving technical issues with Cisco products and technologies. To receive security and technical information about your products, you can subscribe to various services, such as the Product Alert Tool (accessed from Field Notices), the Cisco Technical Services Newsletter, and Really Simple Syndication (RSS) Feeds. Access to most tools on the Cisco Support website requires a Cisco.com user ID and password.. |
Feature Information for Configuration Partitioning
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1 | Feature Information for Configuration Partitioning |
Feature Name |
Releases |
Feature Information |
---|---|---|
Configuration Partitioning |
12.2(33)SRB 12.2(33)SB 12.2(33)SXI |
The Configuration Partitioning feature provides modularization ("partitioning") of the running configuration state to provide granular access to the running configuration in Cisco IOS software. This feature is enabled by default in Cisco IOS software images that include this feature. In 12.2(33)SB, this feature was implemented on the Cisco 10000 series. The following sections provide information about this feature:
|
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.