Backing up the Developer Portal subsystem

After you have configured backup settings, you can use apicup to create a manual backup of the Developer Portal.

About this task

You can make on-demand backups of your Developer Portal system, sites, and complete service, by running the following apicup commands in your API Connect installation project directory.

The default Developer Portal backup schedule is once every 24 hours, but the schedule can be changed in the backup settings. The Developer Portal saves all system and site backups locally, and also saves them remotely based on the configured SFTP and s3 settings.

The local backups are automatically maintained so that the latest three backups of each site and of the system are kept, and older backups are removed. This maintenance means that the Developer Portal retains the latest three backups for each site and for the system however old they are, but there is no deletion of the old backups on the remote server. If a site is deleted, then all of the local backups for that site are also deleted, as otherwise the backup volume might become full of old site backups. For remote backups, you can configure a retention policy on your remote server to remove the old backup files as required.

Tip: If you are using remote backups, and there are a large number of rows in your portalbackup list that have a CR TYPE of record, there might be a slow down in system performance, including during Developer Portal upgrades. Although there is no upper limit to how many portal backups you can have, it is recommended that you prune your remote backups so that the number of rows does not become excessively large. One portalbackup row of type record, corresponds to one backup file on the configured remote backup server. For more information, see Overview of the Developer Portal backup resources.

Procedure

  1. Ensure your system is healthy:
    apicup subsys health-check [subsystem_name] 

    When successful, the command returns silently with an exit code of 0.

  2. Create a backup:
    apicup subsys backup [subsystem_name] [flags]
    • To backup the Portal system configuration (and not the sites), run the following command:
      apicup subsys backup ptl --type system
    • To backup a specific Portal site or all sites, run the following command:
      apicup subsys backup ptl --type site --site-name arg
      where arg is a specific site UUID or URL, or to backup all sites use the argument installed.
    • To backup the entire Portal service (the system and all installed sites), run the following command:
      apicup subsys backup ptl 
      Where ptl is the name that you assigned to your Portal service.
      Note: To restore a Developer Portal service, you need backups of both the Portal system and the installed sites.

    To view additional flags, use -h:

    apicup subsys backup portal -h
    Backup portal subsystem
    
    Usage:
      backup SUBSYS [flags]
    
    Flags:
          --comment string          Comment to add to the backup CR before creation
          --debug                   Enable debug logging
      -h, --help                    help for backup
          --site-name string        Site to restore to the remote server if TYPE=site. Accepts site uuid/url or 'installed' to backup all installed sites.
          --type string             Type of backup to take ['system' (backup Portal System), 'site' (backup Portal Site), 'all' (complete backup)] (default "all")
          --wait                    Wait for the operation to complete or fail.
          --wait-timeout duration   Command timeout in seconds. (default 40s)
  3. To view the available backups and their status:
    apicup subsys list-backups [subsystem_name] [flags]

    Optional flags:

    ./apicup subsys list-backups -h
    List backups of the subsystem
    Usage:
      apicup subsys list-backups SUBSYS [flags]
    Flags:
      -h, --help               help for list-backups
          --timeout duration   Command timeout in seconds. (default 40s)
    Global Flags:
          --accept-license   Accept the license for API Connect
          --debug            Enable debug logging