trovestack
in integration/scripts
folder is a shell script that
contains lots of useful functionalities via sub-commands including install
(trove development environment installation), unit-tests
, gate-tests
(functional test), build-image
, etc. This guide introduces some of them.
Before running trovestack
command, go to the scripts folder:
git clone https://github.com/openstack/trove
cd trove/integration/scripts
The trove guest agent image could be created by running the following command:
$ CONTROLLER_IP=10.0.17.132 \
./trovestack build-image \
${datastore_type} \
${guest_os} \
${guest_os_release} \
${dev_mode}
guest_os=ubuntu
and guest_os_release=xenial
are fully
tested.dev_mode=true
is mainly for testing purpose for trove developers. When
dev_mode=true
, CONTROLLER_IP
could be ignored. You need to build the
image on the trove controller service host, because the host and the guest VM
need to ssh into each other without password. In this mode, when the trove
guest agent code is changed, the image doesn’t need to be rebuilt which is
convenient for debugging. Trove guest agent will ssh into the host and
download trove code when the service is initialized.dev_mode=false
, the trove code for guest agent is injected into the
image at the building time. Now dev_mode=false
is still in experimental
and not considered production ready yet.dev_mode=false
and set CONTROLLER_IP
as the
IP address of trove controller service host. As the cloud administrator, you
also need to create a Nova keypair and set nova_keypair
option in Trove
config file in order to ssh into the guest agent.For example, build a MySQL image for Ubuntu Xenial operating system:
$ ./trovestack build-image mysql ubuntu xenial true
Once the image build is finished, the cloud administrator needs to register the
image in Glance and register a new datastore or version in Trove using
trove-manage
command, e.g. you’ve built an image for MySQL 5.7.1:
$ openstack image create ubuntu-mysql-5.7.1-dev \
--public \
--disk-format qcow2 \
--container-format bare \
--file ~/images/ubuntu_mysql.qcow2
$ trove-manage datastore_version_update mysql 5.7.1 mysql $image_id "" 1
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.