Forum Discussion

Rich_125959's avatar
Rich_125959
Icon for Nimbostratus rankNimbostratus
Jan 05, 2013

Merge Files

I am a trying to find a way to pars the config files to create merge files. This would allow me to edit the Dev files with sed (changeing the names, IPs and such) and then execute them in QA. It would also allow me to put these merge scripts in source control, ensuring all changes are tracked.

 

9 Replies

  • I guess I have a three part question.

     

    1. where are the different config files located?

     

    2. are you aware of a parser that will generate merge files from the config files?

     

    3. what is the format the merge files need to be in?

     

     

    Rich
  • 1. where are the different config files located?

    2. are you aware of a parser that will generate merge files from the config files?

    3. what is the format the merge files need to be in? i tested merging configuration using scf format and tmsh list format and both seem to be fine.

    sol13408: Overview of single configuration files (11.x)

    http://support.f5.com/kb/en-us/solutions/public/13000/400/sol13408.html

    BIG-IP and Merge File Configuration Changes by Michael

    https://devcentral.f5.com/tech-tips/articles/big-ip-and-merge-file-configuration-changes

     scf format (tmsh save sys config file ... to create template format and use part of them when merging)
    
    root@(ve11a)(cfg-sync Changes Pending)(Active)(/Common)(tmos) load sys config from-terminal merge
    Enter configuration. Press CTRL-D to submit or CTRL-C to cancel.
    ltm virtual /Common/bar16 {
        destination /Common/172.28.20.16:80
        ip-protocol tcp
        mask 255.255.255.255
        pool /Common/foo101
        profiles {
            /Common/http { }
            /Common/tcp { }
        }
        source 0.0.0.0/0
        source-address-translation {
            type automap
        }
        translate-address enabled
        translate-port enabled
        vlans-disabled
    }
    Loading configuration...
    root@(ve11a)(cfg-sync Changes Pending)(Active)(/Common)(tmos)
    
     tmsh list format (tmsh list ltm to create template format and use part of them wheh merging)
    
    root@(ve11a)(cfg-sync Changes Pending)(Active)(/Common)(tmos) load sys config from-terminal merge
    Enter configuration. Press CTRL-D to submit or CTRL-C to cancel.
    ltm virtual bar17 {
        destination 172.28.20.17:80
        ip-protocol tcp
        mask 255.255.255.255
        pool foo101
        profiles {
            http { }
            tcp { }
        }
        source 0.0.0.0/0
        source-address-translation {
            type automap
        }
        vlans-disabled
    }
    Loading configuration...
    root@(ve11a)(cfg-sync Changes Pending)(Active)(/Common)(tmos)
    
  • nitass, excellent information. This is exactly what i am looking for.

     

    One last question, using the scf format, can i remove all objects (nodes, virtual servers, nodes or irules) that i am not modifying from the backup file, edit that file to make the changes that i need and load that, subset of the original config file, with merge?

     

     

    Rich
  • One last question, using the scf format, can i remove all objects (nodes, virtual servers, nodes or irules) that i am not modifying from the backup file, edit that file to make the changes that i need and load that, subset of the original config file, with merge? yes, of course.
  • Can I remove or modify object via scf-file/from-terminal? I want remove Vlan444 and modify Vlan555 How to rename object? Remove+Add?

    =====Existing config
    net vlan Vlan444 {
        interfaces {
            1.4 { }
        }
        tag 444
    }
    net vlan Vlan555 {
        interfaces {
            1.5 { }
        }
        tag 555
    }
    ======New config
    net vlan Vlan666 {
        interfaces {
            1.4 { }
        }
        tag 666
    }
    net vlan Vlan555 {
        interfaces {
            1.5 { }
        }
        tag 777
    }
    
  • same query as above.. in v10/v11 can we use the tmsh merge option to remove objects ?

     

    like , i have a virtual in file A and i dont want that virtual after running tmsh merge. is this possible

     

  • in v10/v11 can we use the tmsh merge option to remove objects ?

     

    i do not think we can delete object with merge option.