187 Commits

Author SHA1 Message Date
Lingxian Kong
fb70c2e257 Add doc for how to run functional test
Change-Id: Ia916d15fd587f9a2dee6e6a2cf9ee2c8ba386919
2020-05-29 22:35:13 +12:00
Lingxian Kong
e2b26fdd7d Trove doc and CI
Change-Id: I49bd6c824b837d22d9f3945a3e8c2343c831b352
2020-05-28 22:53:17 +12:00
Zuul
91a6e5fa8a Merge "Update docs upgrade datastore" 2020-05-27 05:06:03 +00:00
Nguyen Thanh Cong
3822057043 Update docs upgrade datastore
Change-Id: I5cf9fe522f042ba1f4acd887d91cc60d1ad7b0b3
2020-05-27 01:31:09 +00:00
Lingxian Kong
aa1d4d2246 Datastore containerization
Significant changes:

* Using docker image to install datastore.
* Datastore image is common to different datastores.
* Using backup docker image to do backup and restore.
* Support MariaDB replication
* Set most of the functional jobs as non-voting as nested
  virtualization is not supported in CI.

Change-Id: Ia9c97a63a961eebc336b70d28dc77638144c1834
2020-05-27 10:31:50 +12:00
Lingxian Kong
ae4d1a5ebf Add command example for preparing datastore
Change-Id: Ibcd33d6d549f47e4a4b27c7be2224c5e91184528
2020-05-07 23:19:17 +12:00
Zuul
fa1843be0a Merge "Remove flavor API" 2020-04-28 03:52:57 +00:00
Lingxian Kong
d444982627 Add troubleshooting guide
Change-Id: I0f5cb910e0cff70e664a1f65029db0aa25cdf916
2020-04-27 07:43:57 +12:00
Lingxian Kong
910519127d Remove flavor API
Uses should get flavor from Nova.

Change-Id: Id26d71811f94cdcf4ff188c021d4ed5613eeb8cd
2020-04-27 07:04:05 +12:00
Lingxian Kong
429c39890e Support ip address type for instances
Include address type in getting instance response.

* Deprecate confip option network_label_regex as we don't reply on Nova
  to get addresses, network names don't make any sense.
* Add 'addresses' in instance API response, keep 'ip' as is but mark
  it deprecated in API doc, python-troveclient shouldn't break.

Story: 2007562
Task: 39445

Change-Id: Ia0458b5ddae8959ce29c17e444e1a51a026283cd
2020-04-26 09:56:50 +12:00
Hirotaka Wakabayashi
b11e8187d4 Devstack should install the trove-dashboad module by default
Devstack should install both the trove module and the
trove-dashboard module by default. Because the trove-dashboard
is an important package for Trove development. For example,
developers confirm Trove behaviors after they test code change.

trove-dashboard should be explicitly installed by Devstack. Currently
trove dashboard plugin installs trove-dashboard when horizon service
is enabled in local.conf. That’s facing the wrong way. Horizon should
be installed as a required package of trove-dashboard. Because
trove-dashboard is a independent python package of horizon and
trove-dashboard package requires horizon package.

Story: 2007462
Task: 39142
Signed-off-by: Hirotaka Wakabayashi <hiwkby@yahoo.com>
Change-Id: I5a8996d70517b95036b6c95080f2f1e8400cc8f4
2020-03-26 06:40:29 +00:00
Hirotaka Wakabayashi
9e588c04aa Fixes "a2ensite" command arg and adds mod_wsgi package installation
Fixes "a2ensite" command arg
-----------------------------
"sudo a2ensite trove" in this file should be "sudo a2ensite trove-api"
because the following error will occur while following this manual's
instructions::

  $ sudo a2ensite trove
  ERROR: Site trove does not exist!
  $ sudo a2ensite trove-api
  Enabling site trove-api.
  To activate the new configuration, you need to run:
    systemctl reload apache2

Here are steps to reproduce the error::

  $ sudo apt-get install apache2 libapache2-mod-wsgi-py3
  $ git clone https://opendev.org/openstack/trove.git; cd trove
  $ sudo cp etc/apache2/trove /etc/apache2/sites-available/trove-api.conf
  $ sudo a2ensite trove
  ERROR: Site trove does not exist!

I have tested on Ubuntu 18.04.4 LTS::

  $ uname -a
  Linux bionic 4.15.0-91-generic #92-Ubuntu SMP Fri Feb 28 11:09:48 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
  $ cat /etc/os-release
  NAME="Ubuntu"
  VERSION="18.04.4 LTS (Bionic Beaver)"
  ID=ubuntu
  ID_LIKE=debian
  PRETTY_NAME="Ubuntu 18.04.4 LTS"
  VERSION_ID="18.04"
  HOME_URL="https://www.ubuntu.com/"
  SUPPORT_URL="https://help.ubuntu.com/"
  BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
  PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
  VERSION_CODENAME=bionic
  UBUNTU_CODENAME=bionic

Adds mod_wsgi package installation
-----------------------------------
I adds mod_wsgi package installation next to apache package installation
because I don't find its installation through the docs in spite of
mod_wsgi's importance for trove-api.

I also updates description about following parts:
  * RHEL8 and CentOS8 lines are added.
  * Fedora21 and Fedora22, which are not supported by Fedora Project,
    lines are merged to "Fedora".

Change-Id: I3dfc894cc001529d60048d53e206251a41d546c0
Task:  39116
Story: 2007446
Signed-off-by: Hirotaka Wakabayashi <hiwkby@yahoo.com>
2020-03-22 11:03:57 +00:00
Lingxian Kong
94af833739 Fix devstack installation guide
Story: 2007447
Task: 39117
Change-Id: I4856fc493f46e04b6c74e042f80c896e0cac997b
2020-03-22 17:40:47 +13:00
Lingxian Kong
dc0bfe1d39 Improve the doc
Change-Id: I41bf34cd482dcf880cd66c8bd123898f77c10056
2020-03-20 09:50:01 +13:00
Zuul
9846188dcc Merge "Cleanup docs building" 2020-03-09 10:03:25 +00:00
Lingxian Kong
6f1a351f04 [Community goal] Add contributor and PTL guide
Change-Id: Ib52e091417eeb37607c600ac7389cfe41be4e23c
Story: #2007236
Task: #38568
2020-02-26 16:22:58 +13:00
Andreas Jaeger
cc1ccae629 Cleanup docs building
Remove build_sphinx from setup.cfg, it's not used anymore since this
repo uses sphinx-build directly.

Require newer openstackdocstheme version and remove settings in conf.py
that are now default.

Remove doc/source/install/conf.py, it is not used anymore.

Change-Id: Id89c664384c3ad443d701f5d4135a9f3f9f744d7
2020-02-22 19:11:19 +01:00
Zuul
2d301d0a21 Merge "Improve the function tests" 2020-02-02 22:45:40 +00:00
Lingxian Kong
602c4d42de Improve the function tests
- Execute test groups in serial to make sure no more than 2 database
  instance are created at the same time.
- Remove some unneccesary tests
- Remove unneeded datastore, e.g. 'Test_Datastore_1'
- Remove unsupported trovestack subcommands
- Move unsupported DIB elements to the 'deprecated-elements' folder
- Decrease default value of 'agent_call_high_timeout' to 5min
- Add initial_deplay for pooling task
- Use socket file to connect with database instead of using localhost
  IP

Change-Id: Ie5030a671fbeb453eafa6cbe04e08da7b52e33c9
2020-01-28 14:27:52 +13:00
Lingxian Kong
af5eea5c6c Add 'Quota Management' in production guide
Change-Id: I76b16d8e5eec38e4f0dd255158c0b50c278dab53
2020-01-23 23:41:29 +13:00
Lingxian Kong
d57354942e Add running trove in production guide
Change-Id: I18654091cc39a0a5de17ff9822f14d6c41facf42
2020-01-15 11:31:56 +13:00
Lingxian Kong
35f989a870 Fix unmount path for instance upgrade
Change-Id: Ifee8620a41e439b028e0a4d65164a75a100ce4d9
2019-12-27 00:50:47 +13:00
Lingxian Kong
e0a2d8cc2f About Trove datastore image
Change-Id: I3606540f8d22999c3832acf42bcf73033e44a62a
2019-12-18 15:05:51 +13:00
Lingxian Kong
a0a10f0b94 Support HEALTHY status for db instance
- 'HEALTHY' means the db service is responsive, 'ACTIVE' means the db
  service is alive.
- Remove the CI job fakemodetests, but will add similar testing task in
  the future.
- Fix the periodic CI job
- Remove MongoDB and  related jobs

Change-Id: I5abe9091ba203297dc87db5fba139179166321f7
2019-12-14 12:55:56 +13:00
Lingxian Kong
fc0c4fff4c Rename devstack variable TROVE_DISABLE_IMAGE_SETUP
Rename TROVE_DISABLE_IMAGE_SETUP to TROVE_ENABLE_IMAGE_BUILD to avoid
double negative definition.

Change-Id: Iede80c39bb2a7aaf3c0453bd67f85375fa5ee76c
2019-10-11 14:35:12 +13:00
Zuul
71c4137987 Merge "Improve image building doc" 2019-10-11 01:13:59 +00:00
Zuul
a643c5ecff Merge "Use dedicated service credential config" 2019-10-10 23:41:47 +00:00
Lingxian Kong
619967e093 Improve image building doc
Change-Id: Icf86fd2a7d2692707449cfb11edbd936b0b79aa6
2019-10-11 11:58:55 +13:00
Lingxian Kong
d244c9d666 Support to specify branch when building the image
- Explicity specify branch name for building non-dev image
- Use branch name for building dev image in devstack
- Update the doc

Candidate backport for stable/train

Change-Id: I4d2fe38fac34c75b42234fa7a20aba51e6dc1c4e
2019-10-10 21:55:53 +13:00
Lingxian Kong
f3bb46542b Use dedicated service credential config
The current admin credential config options are confusing

Change-Id: I92c15c065edf364b955f2243b3599e0b8cae8b4f
2019-10-10 11:49:04 +13:00
Lingxian Kong
73211dd519 Doc: Add public trove guest images info
Story: 2006553
Task: 36638
Change-Id: I31ebc1dacbcfe7a032a5e80bf2957ad1c7b90d9b
2019-09-25 21:00:23 +12:00
Lingxian Kong
86f0ace357 Fix Trove periodic job
Change-Id: Iaa6b7e04ab3882d426b8943591fc9189243d69c0
2019-09-23 22:23:13 +12:00
Lingxian Kong
0cdf8b20b6 Add image build experimental CI job
Story: 2006553
Task: 36637
Change-Id: I3d909082fb887b24ed25c93e11792031d5053b1e
2019-09-17 22:23:43 +12:00
Lingxian Kong
b43248be79 [doc] Create instance in user guide
Add parameters to create public trove instance.

Change-Id: Ib69d7a3c0389f6419eff81879a17d150c8f056e9
Story: 2006500
Task: 36472
2019-09-11 22:35:56 +12:00
Lingxian Kong
3c09e6178a Improve guest image creation in devstack
Change-Id: I0ef8cbc4babc5c6b9f2936923ffe2837ecc3da74
2019-09-07 14:12:58 +12:00
Zuul
86228d9b88 Merge "fix bug report url" 2019-09-03 03:25:47 +00:00
yangyong
1d3db54fbf fix bug report url
since we don't use launchpad to report bugs anymore,replace it with
storyboard.openstack.org

Change-Id: Ifa456c62c4fed197954cb7f7b2aaf0328a00d6a3
2019-09-03 03:03:27 +00:00
Lingxian Kong
a1aa15282e Support management security group
Allow the cloud admin to control the security groups on the management
port of Trove instance, a new config option `management_security_groups`
is introduced for that purpose.

Change-Id: I4b22b87d37792be700d4ec7f78a7ea479ddb5814
Story: 2006466
Task: 36395
2019-09-02 10:06:49 +12:00
Lingxian Kong
e739ef6e93 Minor change to image build guide
Change-Id: I1658617ebe5b75b3f051d491243f3cf36f829dd5
2019-08-30 14:08:55 +12:00
Lingxian Kong
0ef474a70c Support keypair in devstack
Since Trove already supports to specify a Nova keypair when creating
instance for management convenience, devstack needs to be changed to
create the management keypair and add to Trove config file.

One extra change in this patch is to use a single config file for Trove
API, task-manager and conductor.

Change-Id: I1e6c4f4305104815bdf89b31776a4955de61bc89
Story: 2005429
Task: 30463
2019-08-29 15:41:58 +12:00
Lingxian Kong
dfa5ce93d5 Improve devmode=flase when building the image
During debugging, the following changes are also included:

- Support to specify an image ID to run the integration test.
- Fix the reboot function bug.
- Remove the unsuccessful restart test.

How to run integration test with dev_mode=false:

    ADMIN_PASSWORD=password \
    SERVICE_PASSWORD=password \
    DEV_MODE=false \
    /opt/stack/trove/integration/scripts/trovestack gate-tests mysql mysql

Change-Id: I31d4ee579a554f4c98f9facb9fd4b7779665a3dd
2019-08-25 23:11:54 +12:00
Andreas Jaeger
5ca55e487a Update api-ref location
The api documentation is now published on docs.openstack.org instead
of developer.openstack.org. Update all links that are changed to the
new location.

Note that redirects will be set up as well but let's point now to the
new location.

For details, see:
http://lists.openstack.org/pipermail/openstack-discuss/2019-July/007828.html

Change-Id: I8adf15cf87ed517c8b71d86c23732b804f44aaff
2019-08-14 22:08:50 +00:00
Zuul
f72015179e Merge "Update the outdated content" 2019-06-24 09:16:15 +00:00
chenxing
4bcb8a026c Update the outdated content
Change-Id: I7743b848e69a81e4aefb2191779a4cd9d4c7b666
Closes-Bug: #1729211
2019-06-14 12:10:01 +00:00
Lingxian Kong
49a11dd9c7 trovestack guide
Also fixed the migration script issue after upgrading SQLAlchemy
version from 1.2.19 to 1.3.4

Change-Id: Ia0d954237dd3c9c2b2ebedf440fa3c656da30777
2019-06-11 00:09:42 +12:00
Zuul
a038b356fd Merge "Add Redis datastore upgrade" 2019-05-20 09:20:56 +00:00
Przemysław Godek
2fd324357b Add Redis datastore upgrade
This patch adds support for upgrading Redis datastore - both single
instance and cluster.

It is achievied in a similar way to MySQL/Mariadb. Steps are:
    + For each node do:
        + stop database
        + preserve configuration files,
        + unmount data volume,
        + create new instance with new datastore,
        + enter restarting mode
        + mount data volume,
        + restore configuration files,
        + reload datastore

Note that due to the Redis Cluster design and Trove approach (all
nodes are master nodes) we do not perform real rolling upgrade - some
Redis slots may be unavailable while upgrading node associated with
them.

This patch adds also a user documentation about upgrading datastores
using Redis as an example.

Story: #2005421
Task: #30443
Co-Authored-By: Kasper Hasior <k.hasior@samsung.com>
Change-Id: I60cddb3a41d2cc7024cbec3d2fd2038d79446507
Signed-off-by: Kasper Hasior <k.hasior@samsung.com>
2019-05-16 13:07:00 +00:00
Minmin Ren
27cf32564e Instead of deprecated keystone cli in docs
The keystone CLI is deprecated in favor of
python-openstackclient, update docs using
openstack CLI instead of keystone CLI.

Change-Id: Ifddb5d0d38e4353e17e14ecd65a0d086a6886763
2019-05-06 09:29:35 +00:00
ZhongShengping
6a5afea40a Move to opendev
1.Use opendev.org instead of git.openstack.org.
2.Use review.opendev.org instead of review.openstack.org.

Change-Id: I8e9da8fbb04bdec42a0b2f012f6a38b8ee413b27
2019-04-24 16:08:08 +08:00
Lingxian Kong
eafd303e0a Use opendev.org instead of git.openstack.org
After moving to opendev.org, the following command fails when building
the Trove guest image:

curl -o /opt/stack/devstack/upper-constraints.txt \
  'https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt?h=master'

https://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt
should be used instead.

Other places using git.openstack.org are also changed.

Change-Id: Id357dd61e229e3336219723c1c1ae6b50e983f26
2019-04-22 00:05:41 +12:00