Applies To:

Show Versions Show Versions

Manual Chapter: Data Groups
Manual Chapter
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

About data groups

Data groups are useful when writing iRules. A data group is simply a group of related elements, such as a set of IP addresses for AOL clients. When you specify a data group along with the class match command or the contains operator, you eliminate the need to list multiple values as arguments in an iRule expression.

You can define three types of data groups: address, integer, and string.

The BIG-IP system includes three pre-configured data groups: private_net, images, and aol.

To understand the usefulness of data groups, it is helpful to first understand the class match command and the contains operator.

Note: You can manage only those data groups that you have permission to manage, based on your user role and partition access assignment.
Warning: Do not attempt to modify or delete any of the three pre-configured data groups (private_net, images, and aol). Doing so can produce adverse results.

About the class match command

The BIG-IP system includes an iRule command called class, with a match option, which you can use to select a pool based on whether the command being used in the iRule represents a member of a specific data group. When you use the class command, the BIG-IP system knows that the string following the identifier is the name of a data group.

For example, using the class command, you can cause the BIG-IP system to load balance all incoming AOL connections to the pool aol_pool, if the value of the IP::remote_addr command is a member of the data group AOL. In this case, the class match command simply indicates that the object named aol is a collection of values (that is, a data group).

when CLIENT_ACCEPTED { if { [class match [IP::remote_addr] equals aol] } { pool aol_pool } else { pool all_pool } }

Storage options

With Local Traffic Manager, you can store data groups in two ways, either in-line or externally.

In-line storage

When you create data groups, Local Traffic Manager automatically saves them in their entirety in the bigip.conf file. This type of storage is known as in-line storage.

In general, in-line storage uses additional system resources due to extensive searching requirements on large data groups. For this reason, Local Traffic Manager offers you the ability to store your data groups externally, that is, outside of the bigip.conf file file.

External storage

You have the option to store data groups in another location on the BIG-IP system, that is, outside of the bigip.conf file. Such data groups are called external data groups. Because the data group is stored externally in another location, the bigip.conf file itself contains only the filename and meta-data for the data group. The data in an externally-stored data group file is stored as a comma-separated list of values (CSV format).

Important: If you attempt to load a bigip.conf file that contains external data group meta-data, and the file was created prior to BIG-IP system version 9.4, the system generates an error. The meta-data for the external data group contains the keyword extern, which generates an error during the load process. On BIG-IP systems running version 9.4 or later, the extern keyword is no longer needed in the bigip.conf file.

To create an external data group, you first import a file from another location, using the System options of the BIG-IP Configuration utility. You then use the Local Traffic iRules screens to create an external data group that is based on the imported file.

External data groups can scale to greater than 10,000,000 entries, depending on platform hardware and available memory (8 GB, or more, memory is recommended). Data groups with larger data items can be supported with fewer entries. Additionally, updates to external data groups are completely atomic: for example, the system updates a data group only after the new data successfully completes loading. You can use the command [class exists xyz] to check whether a data group has finished loading.

About file import for data groups

Using the BIG-IP Configuration utility, you can import an external file that contains content that you want to use in a data group. When you import an existing file to the BIG-IP system, the BIG-IP system then creates a data group that contains the specified type of file content (address, string, or integer).

Importing a file for a data group

Using the BIG-IP Configuration utility, you can import a file from an external system and use the file to create a data group.

  1. On the Main tab, click System > File Management > Data Group File List > Import.
  2. For the File Name setting, click Browse. The system opens a browse window so that you can locate the file that you want to import to the BIG-IP system.
  3. In the Name field, type a new name for the imported file. The new name appears in the list of imported files.
  4. From the File Contents list, select the type of content for the data group.
  5. In the Key/Value Pair Separator field, retain the default value or delete the value and specify a new separator.
  6. In the Data Group Name field, type a name for the data group.
  7. Click the Import button.

Viewing a list of imported data group files

Using the BIG-IP Configuration utility, you can view a list of data group files that you have imported onto the BIG-IP system.

  1. On the Main tab, click System > File Management > Data Group File List.
  2. In the Name column, view the list of files.
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

Was this resource helpful in solving your issue?

NOTE: Please do not provide personal information.

Additional Comments (optional)