If you use MySQL Release 5.7 as the database for Ceilometer, the deployment fails. The deployment error may looks similar to:
TASK: [ceilometer | Waiting for bootstrap container to exit] ****************** failed: [server1] => {"changed": true, "cmd": ["docker", "wait", "bootstrap_ceilometer"], "delta": "0:00:19.831865", "end": "2016-04-24 19:42:39.136083", "failed": true, "failed_when_result": true, "rc": 0, "start": "2016-04-24 19:42:19.304218", "stdout_lines": ["1"], "warnings": []} stdout: 1 FATAL: all hosts have already failed -- aborting
The log for the bootsrap_ceilometer container shows:
$ docker logs bootstrap_ceilometer ... TRACE ceilometer DBError: (ProgrammingError) (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'generated FLOAT, \n\tunique_name_id INTEGER, \n\tPRIMARY KEY (id), \n\tFOREIGN KEY(uni' at line 3") '\nCREATE TABLE event (\n\tid INTEGER NOT NULL AUTO_INCREMENT, \n\tgenerated FLOAT, \n\tunique_name_id INTEGER, \n\tPRIMARY KEY (id), \n\tFOREIGN KEY(unique_name_id) REFERENCES unique_name (id)\n)ENGINE=InnoDB CHARSET=utf8\n\n' ()
MySQL Release 5.7 cannot be used as the Ceilometer database.
Workaround: Use MySQL Release 5.5 or 5.6.