release: github.com/cloudfoundry/cf-mysql-release / 16

Github source: 245cedc0 or master branch

Highlights

  • Default stemcell includes shellshock patch: 2719.3 (ubuntu trusty go_agent)
  • Use Xtrabackup plugin to allow writes during SST
  • Service supports upgrade/downgrade service plan by declaring plan_updateable:true in catalog
  • HAProxy can be scaled horizontally (default number of instances: 2)
  • Fixed HAProxy compilation issue on Openstack https://github.com/cloudfoundry/cf-mysql-release/issues/34
  • Fixed incorrect calculation of storage utilization for the purposes of quota enforcement when multiple apps are bound
  • Logging and monitoring of route-registration process is now independent of the broker process
  • Resource pool sizes are now dynamic by default
  • plan_updateable: true by default
  • haproxy job has been renamed to proxy to support replacing HAProxy with another proxy technology in the future. Manual steps are required when upgrading from a previous release; see notes below.
  • Format of jdbcUrl connection string corrected (found in VCAP_SERVICES on bind)
  • Upgraded ruby to 2.1.5
  • Quota Enforcer tolerates an unavailable Mysql database, tries to reconnect for 60 seconds before job starts to fail

Upgrading from previous final releases

In v16 we have renamed the HAProxy job to, simply, proxy. This enables us to replace HAProxy with another proxy software package in the future, without additional manual steps or impact to service.

This change requires operators to follow these manual steps before deploying v16. 1. Confirm what version of the release is currently deployed

   $ bosh deployments
  1. Confirm that there is a job called haproxy associated with this deployment
   $ bosh vms
  1. Download the current manifest
   $ bosh download manifest <deployment-name> /tmp/cf-mysql.yml
  1. Rename the haproxy job to proxy in the manifest. On OSX, this can be accomplished with:
   $ sed -i '' 's/name: haproxy/name: proxy/' /tmp/cf-mysql.yml
  1. Set the deployment manifest
   $ bosh deployment /tmp/cf-mysql.yml
  1. Deploy the renamed job
   $ bosh rename job haproxy proxy
  1. Confirm that the job has been renamed correctly
   $ bosh vms
  1. Now follow normal steps to generate a new manifest for v16 and deploy

Upload this release version to the Director:

$ bosh upload-release https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=16 --sha1 290939aa6497e8f89084925ef096e9819644528b

Modify deployment manifest to use this release in addition to any other used releases:

releases:
- name: cf-mysql
  version: "16"

Finally add needed deployment jobs and specify values for required properties.

Optionally download sha1: 290939aa6497e8f89084925ef096e9819644528b release tarball locally:

# ...or download it directly using curl
$ curl -L -J -O https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=16

# or with wget...
$ wget --content-disposition https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=16