LATEST VERSION: 2.5 - RELEASE NOTES

MySQL for PCF Errands

Page last updated:

This topic describes how to use the BOSH CLI to run service broker errands. Errands can manage service brokers and run mass operations on service instances created by brokers.

Run the Errand

Locate the BOSH deployment name for your MySQL service broker by entering the following command:

bosh deployments

To run an errand, enter the following command:

bosh -d pivotal-mysql-GUID run-errand ERRAND-NAME

Where:

  • pivotal-mysql-GUID is the BOSH deployment name for your MySQL service broker.
  • ERRAND-NAME is the name of the errand you want to run.

For example:

$ bosh -d pivotal-mysql-e3ddd36247fe5b923caf run-errand deregister-broker

find-deprecated-bindings

The find-deprecated-bindings errand searches for and outputs a list of apps and service keys that:

  • Use IP addresses instead of DNS
  • Do not use TLS

The errand exits whether or not a deprecated binding is found. You run this errand before upgrading to MySQL for PCF v2.5. You cannot have bindings that use IP address in v2.5. As an operator, you can configure bindings to require TLS.

Consult the table below to see whether or not an app or service key appears in the output of the find-deprecated-bindings errand:

Does the app or service key have…
The app or service key appears in table?

BOSH DNS TLS
True True No
True False Yes
False True Yes
False False Yes

See below an example of the errand output:

$ bosh -d pivotal-mysql-e3ddd36247fe5b923caf run-errand find-deprecated-bindings
Using environment '10.0.0.5' as client 'ops_manager'

Using deployment 'pivotal-mysql-e3ddd36247fe5b923caf'

Task 148

Task 148 | 02:42:08 | Preparing deployment: Preparing deployment (00:00:01)
Task 148 | 02:42:09 | Running errand: dedicated-mysql-broker/63f9ad1e-998e-451e-8c6e-f6211958f6fb (0) (00:00:03)
Task 148 | 02:42:12 | Fetching logs for dedicated-mysql-broker/63f9ad1e-998e-451e-8c6e-f6211958f6fb (0): Finding and packing log files (00:00:01)

Task 148 Started Tue Dec 18 02:42:08 UTC 2018
Task 148 Finished Tue Dec 18 02:42:13 UTC 2018
Task 148 Duration 00:00:05
Task 148 done

Instance   dedicated-mysql-broker/63f9ad1e-998e-451e-8c6e-f6211958f6fb
Exit Code  0
Stdout     +---------------------------+--------------------------------------+------------------------+--------------------------+--------------------+-------------------+-----------------------------+
           |          SERVICE          |             SERVICE GUI             |          ORG           |          SPACE           | APP OR SERVICE KEY |       TYPE        |           REASON            |
           +---------------------------+--------------------------------------+------------------------+--------------------------+--------------------+-------------------+-----------------------------+
           | tlsDB                     | a999db0b-176e-4ac8-8342-d72b338d1f0c | MYSQL-ORG-upgrade-test | MYSQL-SPACE-upgrade-test | user-cli           | ServiceKeyBinding | no tls                      |
           | tlsDB                     | a999db0b-176e-4ac8-8342-d72b338d1f0c | MYSQL-ORG-upgrade-test | MYSQL-SPACE-upgrade-test | user-cli           | ServiceKeyBinding | no dns: hostname="10.0.8.6" |
           | upgrade-outdated-instance | 34f26746-fb46-4f14-87bc-e1ddce26f340 | MYSQL-ORG-upgrade-test | MYSQL-SPACE-upgrade-test | cs-accept          | AppBinding        | no dns: hostname="10.0.8.5" |
           | tlsDB                     | a999db0b-176e-4ac8-8342-d72b338d1f0c | MYSQL-ORG-upgrade-test | MYSQL-SPACE-upgrade-test | cs-accept-tls      | AppBinding        | no dns: hostname="10.0.8.6" |
           +---------------------------+--------------------------------------+------------------------+--------------------------+--------------------+-------------------+-----------------------------+

smoke-tests

This errand performs a test to validate that the service broker has been installed and configured correctly and can perform the basic functions of creating and removing service instances. If this errand runs successfully, MySQL for PCF is installed successfully. If it fails, see Deprecated Service Bindings Found to debug installation.

upgrade-all-service-instances

If you have made changes to the plan definition or uploaded a new tile into Ops Manager, you might want to upgrade all the MySQL for PCF service instances to the latest software or plan definition.


The upgrade-all-service-instances errand does the following:

  • Collects all of the service instances the on-demand broker has registered
  • For each instance the errand does the following serially
    • Issues an upgrade command to the on-demand broker
    • Regenerates the service instance manifest based on its latest configuration from the tile
    • Deploys the new manifest for the service instance
    • Waits for this operation to complete, then proceeds to the next instance
  • Adds to a retry list any instances that have ongoing BOSH tasks at the time of upgrade
  • Retries any instances in the retry list until all are upgraded

If any instance fails to upgrade, the errand fails immediately. This prevents systemic problems from spreading to the rest of your service instances.


To run the errand, do one of the following:

  • Select the errand through the Ops Manager UI and have it run when you click Apply Changes.

  • Run the following command.

    bosh -d DEPLOYMENT-NAME run-errand upgrade-all-service-instances
    

For more information, see Upgrading MySQL for PCF.

Deprecated Errands

register-broker

Do not use.

delete-all-service-instances-and-deregister-broker

Do not use.

Create a pull request or raise an issue on the source for this page in GitHub