cf-mysql/23
You can find the source of this version on GitHub at cloudfoundry/cf-mysql-release. It was created based on the commit c1e834fb
.
Release Notes¶
Updated MariaDB
- Operator should be able to verify that cf-mysql-release includes MariaDB 10.0.21 and Galera library 25.3.9 [#99853996]
Bug Fixes
- CVE-2015-3900: MITM rubygems vulnerability [#101620234]
- An Operator should be able to deploy cf-mysql on vSphere using the provided sample stub [#100774212]
- cloudfoundry/cf-mysql-release #80: bosh deploy error : no implicit conversion of Fixnum into String [#102881976]
Switchboard:
- Switchboard fails to find recreated mysql node when ARP cache locked by hanging SYN_SENT [#101784830]
- Every instance of Switchboard registrars the route proxy-0.p-mysql.
rather than changing based on AZ index [#101778816]
- Regression: switchboard returns 500 error when fetching list of backends [#103439908]
Startup:
We’ve done some work to ensure smooth startup for databases that have very large data sets. To understand these changes, please read the bosh documentation covering the canary_watch_time
and update_watch_time
properties.
- As an Operator, I want to configure how long the startup script waits for the database to come online [#100442046]
- During long SSTs, BOSH reports job as failing forever, mysqld is not properly managed by its control script. [#100600470]
- As an Operator, I’d like configure an overall timeout which will break down into individual timeouts for each of the MySQL job’s startup phases, so that large SST’s can succeed [#100598304]
Compiling and Testing
- cf-mysql acceptance tests should use https only [#101143514]
- cf-mysql-broker compilation fails if workstation has mysql installed rather than mariadb [#101706476]
- mysql-broker fails because of mysql2 gem packaging issue [#98972188]
- Native extensions for mysql2 gem should be build during compilation stage [#101784138]
- cloudfoundry/cf-mysql-release #79: allow configureable smoke test password [#102174066]
Users that have built older dev releases of cf-mysql prior to updating to v23 may encounter the following error when running
./update
:error: The following untracked working tree files would be overwritten by checkout: packages/ruby/packaging packages/ruby/spec Please move or remove them before you can switch branches.
This can be fixed by running rm -r ./packages/ruby && ./update
.
Documentation Updates
- New document: Known Issues
- Clarify that additional cf security groups are not required to run cf-mysql since cf v211 [#100047222]
- As an Operator, I’d like the sample stubs to follow the convention of using REPLACE for every place a stub should be modified [#99473360]
- Add [#100600470] as a known issue in cf-mysql-release [#100598530]
- All templates should have the same comment/description about meta:environment property [#99474804]
Standalone
We’ve done some work to allow cf-mysql-release to start up without relying on a running cf-release. This work is still in progress, but here are the stories that have been completed: [#84945758], [#84945466]], and [#99638360]
Manifest Changes
Note: Due to changes in our manifests, cf-mysql-release v23
requires spiff v1.0.7 or higher.
- MySQL job
- Added property database_startup_timeout
Defines how long the startup scripts wiat for the database to come online (in seconds)
- Proxy job
- Added property proxy.proxy_ips
- Added property standalone
- Acceptance-tests job
- Added property proxy.proxy_count
(defaults to 2)
- Added property smoke_test_password
and gave it a somewhat complex default
In response to GH Issue #79, which validates a password minimum complexity feature now available in Cloud Foundry.
Special Note for bosh-lite Only
If you encounter an error when deploying:
Error 400007: `cf-mysql-broker_z1/0’ is not running after update
Check to see that your error output matches the example below. If they match, then you’ll need to update your cf-release
to v219 or more recent. In order to improve stability, cf-release
switched the system domain from 10.244.0.34.xip.io
to bosh-lite.com
. In #104772322, we’ve updated the manifest system domain to point to bosh-lite.com
as well. The settings in both cf-release
and cf-mysql-release
must match.
Jobs
proxy_z1
properties
± external_host:
- p-mysql.10.244.0.34.xip.io
+ p-mysql.bosh-lite.com
proxy_z2
properties
± external_host:
- p-mysql.10.244.0.34.xip.io
+ p-mysql.bosh-lite.com
cf-mysql-broker_z1
properties
± cc_api_uri:
- https://api.10.244.0.34.xip.io
+ https://api.bosh-lite.com
± external_host:
- p-mysql.10.244.0.34.xip.io
+ p-mysql.bosh-lite.com
cf-mysql-broker_z2
properties
± cc_api_uri:
- https://api.10.244.0.34.xip.io
+ https://api.bosh-lite.com
± external_host:
- p-mysql.10.244.0.34.xip.io
+ p-mysql.bosh-lite.com
broker-registrar
properties
broker
± host:
- p-mysql.10.244.0.34.xip.io
+ p-mysql.bosh-lite.com
cf
± api_url:
- https://api.10.244.0.34.xip.io
+ https://api.bosh-lite.com
± apps_domain:
- 10.244.0.34.xip.io
+ bosh-lite.com
broker-deregistrar
properties
cf
± api_url:
- https://api.10.244.0.34.xip.io
+ https://api.bosh-lite.com
± apps_domain:
- 10.244.0.34.xip.io
+ bosh-lite.com
acceptance-tests
properties
broker
± host:
- p-mysql.10.244.0.34.xip.io
+ p-mysql.bosh-lite.com
cf
± api_url:
- https://api.10.244.0.34.xip.io
+ https://api.bosh-lite.com
± apps_domain:
- 10.244.0.34.xip.io
+ bosh-lite.com
proxy
± external_host:
- p-mysql.10.244.0.34.xip.io
+ p-mysql.bosh-lite.com
Properties
± app_domains:
- 10.244.0.34.xip.io
+ bosh-lite.com
cf
± api_url:
- https://api.10.244.0.34.xip.io
+ https://api.bosh-lite.com
± apps_domain:
- 10.244.0.34.xip.io
+ bosh-lite.com
± domain:
- 10.244.0.34.xip.io
+ bosh-lite.com
Meta
No changes
Deploying
---------
Director task 293
Started preparing deployment
Started preparing deployment > Binding deployment. Done (00:00:00)
Started preparing deployment > Binding releases. Done (00:00:00)
Started preparing deployment > Binding existing deployment. Done (00:00:00)
Started preparing deployment > Binding resource pools. Done (00:00:00)
Started preparing deployment > Binding stemcells. Done (00:00:00)
Started preparing deployment > Binding templates. Done (00:00:00)
Started preparing deployment > Binding properties. Done (00:00:00)
Started preparing deployment > Binding unallocated VMs. Done (00:00:00)
Started preparing deployment > Binding instance networks. Done (00:00:00)
Done preparing deployment (00:00:00)
Started preparing package compilation > Finding packages to compile. Done (00:00:00)
Started preparing dns > Binding DNS. Done (00:00:00)
Started preparing configuration > Binding configuration. Done (00:00:01)
Started updating job proxy_z1 > proxy_z1/0 (canary). Done (00:00:41)
Started updating job proxy_z2 > proxy_z2/0 (canary). Done (00:00:42)
Started updating job cf-mysql-broker_z1 > cf-mysql-broker_z1/0 (canary). Failed: `cf-mysql-broker_z1/0' is not running after update (00:05:14)
Error 400007: `cf-mysql-broker_z1/0' is not running after update
Usage¶
You can reference this release in your deployment manifest from the releases
section:
- name: "cf-mysql" version: "23" url: "https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=23" sha1: "fa2e903141170f915c3658d44488e99cc234bca2"
Or upload it to your director with the upload-release
command:
bosh upload-release --sha1 fa2e903141170f915c3658d44488e99cc234bca2 \ "https://bosh.io/d/github.com/cloudfoundry/cf-mysql-release?v=23"