Downloading and installing the BIG-IP Declarative Onboarding package

The BIG-IP Declarative Onboarding package is an RPM file you download, and then upload to the BIG-IP system using the iControl/iApp LX framework. Remember that your BIG-IP must have a management IP address and an admin user.

Downloading the RPM file

The first task is to download the latest RPM file. Go to the F5 BIG-IP Declarative Onboarding site on GitHub, and download the latest (highest numbered) RPM file.

Important

Beginning with BIG-IP DO 1.8.0, the BIG-IP DO RPM, Postman collection, and checksum files will no longer be located in the /dist directory in the BIG-IP Declarative Onboarding repository on GitHub. These files can be found on the GitHub Release, as Assets. You can find historical files on GitHub by using the Branch drop-down, clicking the Tags tab, and then selecting the appropriate release.

Tip

Once you have downloaded the RPM, we recommend Verifying the integrity of the RPM package.

Uploading and installing the BIG-IP Declarative Onboarding RPM file on the BIG-IP

After you download the RPM, you must upload and then install it on your BIG-IP system. In this section, we show how to upload the RPM using cURL or SCP. Use only one of the following procedures.

If using BIG-IP 14.0 or later

If you are using BIG-IP 14.0 or later, the BIG-IP Secure Password Policy is enforced. As mentioned in the Prerequisites, you must change your admin password before attempting to upload or install BIG-IP Declarative Onboarding.

  • To change your admin password using the Configuration utility, simply go to the BIG-IP Configuration utility https://(IP address of BIG-IP) and login using admin as the Username and Password. You are forced to change your password.
  • To change your admin password using the CLI, SSH into the BIG-IP. Log on as root with the password of default. You are forced to change your root password. After changing your root password, you receive a message saying the admin password was also changed but marked as expired. Type the following command to change the admin password: tmsh modify auth user admin prompt-for-password, and then type a new admin password.

Uploading BIG-IP Declarative Onboarding using SCP

You can use SCP to upload the RPM file to the BIG-IP system. Even if you use SCP to upload the RPM file, you still have to use cURL command to install the package.

  1. Open your SCP client, and use the management IP address of your BIG-IP system.
  2. Use the root account to authenticate to the BIG-IP. The initial root password is default. We strongly recommend you change this password after you install BIG-IP Declarative Onboarding (you can change this password using a BIG-IP Declarative Onboarding declaration as shown in Example Declarations). If using 14.0 or later, you may be forced to change the password.
  3. Upload the RPM file to the directory /var/config/rest/downloads.
  4. Continue with Installing BIG-IP Declarative Onboarding using cURL from the Linux shell

Uploading BIG-IP Declarative Onboarding using cURL

If you want to use cURL to install BIG-IP Declarative Onboarding, use the following command syntax. First, set the file name and the BIG-IP credentials, making sure you use the appropriate RPM and build number, and BIG-IP credentials.

If you are using a single NIC BIG-IP system, you must include port 8443 after the IP address of the BIG-IP (so the last line in the following would be: IP=IP address of the BIG-IP:8443)

FN=f5-declarative-onboarding-1.0.0-1.noarch.rpm

CREDS=admin:admin

IP=IP address of BIG-IP

Copy the following commands to upload the package (if using Mac, use the second code box for the first command). Note you must be in the same directory where you downloaded the RPM package. If you uploaded the RPM by another method, you can skip these commands.

LEN=$(wc -c $FN | cut -f 1 -d ' ')

curl -kvu $CREDS https://$IP/mgmt/shared/file-transfer/uploads/$FN -H 'Content-Type: application/octet-stream' -H "Content-Range: 0-$((LEN - 1))/$LEN" -H "Content-Length: $LEN" -H 'Connection: keep-alive' --data-binary @$FN

If you are using a Mac, for the first command, use

LEN=$(wc -c $FN | cut -f 2 -d ' ')

Installing BIG-IP Declarative Onboarding using cURL from the Linux shell

No matter which method you used to upload the RPM onto the BIG-IP, you must use the following cURL commands. Copy the following commands to install the package.

If you used SCP to upload the package, first set the BIG-IP IP address and credentials as described in Uploading BIG-IP Declarative Onboarding using cURL.

DATA="{\"operation\":\"INSTALL\",\"packageFilePath\":\"/var/config/rest/downloads/$FN\"}"


curl -kvu $CREDS "https://$IP/mgmt/shared/iapp/package-management-tasks" -H "Origin: https://$IP" -H 'Content-Type: application/json;charset=UTF-8' --data $DATA

For information on how you can view the status of installation, see Working with iControl LX packages.


Checking for a successful installation

After you have uploaded and installed BIG-IP Declarative Onboarding, you can test for a successful installation by using the following methods:

  • From your RESTful client, after entering your credentials, use GET to send https://(IP address of BIG-IP)/mgmt/shared/declarative-onboarding/info
  • Run the following cURL command: curl -sku $CREDS https://(IP address of BIG-IP)/mgmt/shared/declarative-onboarding/info

In either case, if installation was successful, you should see something similar to the following returned:

[
     {
         "id": 0,
         "selfLink": "https://localhost/mgmt/shared/declarative-onboarding/info",
         "result": {
             "class": "Result",
             "code": 200,
             "status": "OK",
             "message": "",
             "errors": []
         },
         "version": "1.4.0",
         "release": "beta.7",
         "schemaCurrent": "1.3.0",
         "schemaMinimum": "1.0.0"
     }
]

You can also GET to send https://(IP address of BIG-IP)/mgmt/shared/declarative-onboarding/example to retrieve an example declaration.

Updating BIG-IP Declarative Onboarding

When F5 releases a new version of BIG-IP Declarative Onboarding, use the same procedure you used to initially install the RPM.

Note

Installing or uninstalling BIG-IP Declarative Onboarding does not affect the BIG-IP configuration created by BIG-IP Declarative Onboarding.

Reverting to a previous version

If for any reason you want to revert to a previous version of BIG-IP Declarative Onboarding, you must first remove the version on your BIG-IP system (iApps > Package Management LX > f5-declarative-onboarding > Uninstall). After you uninstall, you can import the RPM for the version of BIG-IP Declarative Onboarding you want to use.

Viewing the BIG-IP Declarative Onboarding package in the BIG-IP Configuration utility

If you are using BIG-IP v13.x and want to see the BIG-IP Declarative Onboarding package in the BIG-IP Configuration utility (GUI), from the BIG-IP CLI, you must type the following command: touch /var/config/rest/iapps/enable. You only need to run this command once (per BIG-IP system). This is not necessary with 14.0 and later.

After running that command, you can log into the Configuration utility, and then click iApps > Package Management LX and you see the BIG-IP Declarative Onboarding package. If you already had the Configuration utility open, you may need to refresh the page.


Verifying the integrity of the RPM package

F5 Networks provides a checksum for each of our BIG-IP Declarative Onboarding releases so you can confirm the integrity of the RPM package.

You can get a checksum for a particular template by running one of the following commands, depending on your operating system:

Linux: sha256sum <path_to_template>

Windows using CertUtil: CertUtil –hashfile <path_to_template> SHA256

You can compare the checksum produced by that command against the .sha256 file in the dist directory.