Write MongoDB init scripts in the elements
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack DBaaS (Trove) |
Fix Released
|
Low
|
Matthew Van Dijk |
Bug Description
Write MongoDB init scripts in the elements
The Issue:
MongoDB currently writes some of its init scripts ('mongos')
in the guest-agent (MongoDB does not package the 'mongos' script).
The init scripts hardcode paths to the PID-file and the configuration
file.
This solution is not very portable as different platforms store these
files at various places and make different assumptions about how these
would be initialized. Some platforms (Ubuntu) store the files in
root '/var' and '/etc' directories which is rather than sub-directories
which leads to a less clean file structure.
The above problem is made even worse by variations across different
MongoDB versions.
Proposed Fix:
The (inherently platform-specific) init scripts should be written in the
elements rather than (mostly platform-agnostic) guest-agent.
The elements ca write both 'mongod' and 'mongos' init scripts. Trove
will always pick the correct one to use based on the type of the
provisioned instance.
Changed in trove: | |
assignee: | nobody → Petr Malik (pmalik) |
milestone: | none → liberty-rc1 |
status: | New → Triaged |
Changed in trove: | |
milestone: | liberty-rc1 → mitaka-1 |
Changed in trove: | |
assignee: | Petr Malik (pmalik) → Matthew Van Dijk (mvandijk) |
This puts a dependency on the image having the 'correct' init scripts (i.e. it's out of our control in a production environment, so we'd have to document it properly or the customer's guest images won't work as expected).