| Age | Commit message (Collapse) | Author | Files | Lines |
|
If mariadb-clustercheck starts before mariadb, the directory may not
exist, and the command fails.
This is necessary for the refactored MariaDB restart in
I5a12670d07077d24047aaff57ce8d33ccf7156ff.
Change-Id: Ie1b36eb9a403611c2f86aa4c1d500d324e5291f3
(cherry picked from commit 9035251443ed6cbb110e9dc5efdbc9d4be797ef5)
|
|
Change-Id: I99bda6801995727dbeaa07219f336e22c8346ada
|
|
OpenStack 'zed' requires Python 3.8+ so RHEL 8 family has to go.
This changeset moves to CentOS Stream 9 while move to RockyLinux 9 is
planned as final solution.
CI moved to CentOS Stream 9 nodes.
Depends-on: https://review.opendev.org/c/openstack/kolla-ansible/+/839715
Change-Id: I113b9984294cf8663d3fc0c8840320e1d40ea731
|
|
|
|
There is no need to install it in other images.
Change-Id: I9fdb987533662ee532141b06fc23b64c92788429
|
|
Change-Id: I1396131c3e33e5f139339a203ebfb48841a358d7
|
|
We moved to socat on kolla-ansible side.
Change-Id: Icce201677dceaab8ca6f045158bbf565eef3a324
|
|
As we have one type of images now some RUN calls could be merged so we
will have less layers in resulting images.
Change-Id: I5178c58fbd8c65efe825dc249c0f1368ef0fe8e0
|
|
Explicitly set the permissions on the kolla-toolbox kolla_extend_start
file. Also, since all extend_start files are sourced rather than
executed, the executable bits are now cleared throughout the project.
Change-Id: I5c2deb4a2e33575d57c852089f856a9acc6818d0
|
|
We have one install_type only now so that infra stuff is not needed
anymore.
Change-Id: I60d50ba7699d46d001eaef365fb84b0ce8e9b262
|
|
This change adds and unifies an ability to override hardcoded URLs for
air-gapped environments via the usual blocks mechanism. Also, this
change replaces ENV with ARG instruction for the variables used only
in building images, and uses bash variable expansion where it possible.
This change is a continuation of the I46b77978926fc2b578a68d1aaa944b2198af0685
Change-Id: I1fbad333b1bc95484e6f4c5145d5936a0e2db84f
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
|
|
Per meeting's agreement [1].
[1] https://meetings.opendev.org/meetings/kolla/2021/kolla.2021-09-22-15.01.log.html#l-71
Change-Id: If24c53b3b89eddfaf2cad39fb9e70cea0f770c96
|
|
This patch moves clustercheck script to
mariadb-base image, so it can be used for
mariadb's docker healthcheck.
Change-Id: I4abcbf67a84b7e96f42cd5e1324ff79e47eb1cb5
|
|
|
|
Bullseye is now in hard freeze cycle and goes for release.
https://release.debian.org/bullseye/freeze_policy.html
Co-Authored-By: Michal Nasiadka <mnasiadka@gmail.com>
Change-Id: I543965a2741cebfa759576a4c75669a7bacd4208
|
|
Use the healthcheck_mariadb script to check the status of mariadb
Related patch of kolla-ansible:
https://review.opendev.org/c/openstack/kolla-ansible/+/780404
Change-Id: I9e8fb8fab1adba03aba4ed9ce42e4d4666bc764b
|
|
It has been deprecated in [1].
[1]: https://review.opendev.org/c/openstack/kolla/+/752430
Change-Id: Iee69d8480960562a3d19752661c0556db65ade45
|
|
|
|
|
|
Currently we use couple of curl options throughout Dockerfiles, this change
adds all common options to curlrc (-sSLf) and removes usage of those in
Dockerfiles.
Change-Id: I46b77978926fc2b578a68d1aaa944b2198af0685
|
|
Only the final image in a hierarchy should have the footer block.
neutron-infoblox-ipam-agent image still has two footers because it
inherits from the neutron-server image. We set the user to root at the
beginning of that Dockerfile, so that headers and footers have the right
context.
Change-Id: I95e5bb5583be2a76e289749e8adfc303a4e7197a
|
|
backup_full() saves the history name in $BACKUP_DIR/last_full_date.
backup_incremental() attempts to read from $BACKUP_DIR/last_full_date
into $LAST_FULL_DATE. After the read attempt; if $LAST_FULL_DATE is zero
length then $(date +%d-%m-%Y) is used.
Change-Id: I4172b814d5d95ae3debbc1cf3feaeee2e2bec9bd
Closes-bug: 1897948
|
|
Defaults to 'image_prefix' for now but shows which images gets their
names changed soon.
Change-Id: I0608e8f62f28d6667b4c8753c47553e4cbf75503
|
|
Add mariadb_clustercheck image with xinetd and clustercheck binary for haproxy
checking of galera status.
Reorganise existing mariadb images by creating mariadb-base and mariadb-server.
Existing mariadb image will be deprecated (in a separate change).
Change-Id: Ib601f64e1514521154beeaac40f0c058a7119408
|
|
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
|
|
The disable_extra_repos macro accepts a list as its only argument. We
were calling it like this to disable EPEL:
disable_extra_repos('epel')
The macro interpreted this as a request to disable three repos, e, p, l.
Thanks Python! Type validation to be improved separately.
Additionally, on CentOS 8 the EPEL repository was not included in the
repository mapping file, repos.yaml. There is also another EPEL
repository on CentOS 8, epel-modular, which is enabled by default after
installing epel-release.
This change adds mappings for epel and epel-modular repos to repos.yaml,
and fixes the disabling of epel in the base image, as well as disabling
epel-modular.
There are some cases where EPEL is still used (it seemed a bit too
easy...), and the repository has been enabled for these images:
* bifrost-base (nginx)
* ironic-conductor (C7 only, shellinabox)
* freezer-base (C7 only, trickle)
* gnocchi-base (C8 binary only, python3-boto3)
* mariadb (pv)
* mongodb (C7 only, mongodb)
* nova-spicehtml5proxy (C7 only, spice-html5)
* telegraf (C7 only, python2-pip)
A few other things were changed:
* ironic-conductor does not require the ceph repo
* python3-pika is no longer installed in the openstack-base image
Related: blueprint remove-epel
Change-Id: I3761825239dfc462072383cde6276c4fb3e1bf12
|
|
blueprint container-health-check
Now docker supports healthcheck directive[0] in Dockerfile,
which is helpful for checking container aliveness.
Base for this patch were healthcheck scripts from tripleo[1].
[0] https://docs.docker.com/engine/reference/builder/#healthcheck
[1] https://github.com/openstack/tripleo-common/tree/master/healthcheck
Change-Id: Ifc32713cd4d6b45c74855c0ebf5bb65784701d44
|
|
Disable external repositories by default and enable only when needed.
Depends-on: https://review.opendev.org/696480
Implements: blueprint repos-off-by-default
Change-Id: Icf2a8397a8349e0fe849d88d160409fd234480a9
|
|
Without this, a failure in mariabackup would be ignored due to the pipe
to gzip.
Change-Id: I84536b302991e8fb04d5fa67ea266bc428437ce1
Related-Bug: #1843043
|
|
After switching from innobackupex to mariabackup [1] for database
backups, the kolla_mariadb_backup.sh script was not modified to account
for the difference in arguments between innobackupex and mariabackup.
There is a compatibility mode, the documentation [2] for which covers
some of the differences.
The following have been changed:
- Add explicit --backup argument, now required
- Remove './' positional argument - not required with --stream
- Remove --no-timestamp argument - only supported in innobackupex
compatibility mode
- Remove --incremental argument - implied by --incremental-history-name
- Remove deprecated --compress argument, which requires qpress to be
installed (it is not). The stream is now passed through gzip instead
[3]
[1] https://mariadb.com/kb/en/library/mariabackup-overview/
[2] https://mariadb.com/kb/en/library/mariabackup-options/#-innobackupex
[3] https://mariadb.com/kb/en/library/using-encryption-and-compression-tools-with-mariabackup/
Change-Id: I67cff47cbf56570b8eaeb66092dd87c2769fc8a6
Closes-Bug: #1843043
|
|
XtraBackup started failing to install on Ubuntu and does not support
MariaDB 10.3 version.
Related-Bug: #1843043
Change-Id: I9cf62c8e03a02574d85e5349df1d23a51d4c99be
|
|
MariaDB in Ubuntu packages is backlevel (10.1).
Devstack gates are tested on MySQL 5.7 which is not compatible
with MariaDB 10.1.
Neutron recently introduced a db migration
that breaks on MariaDB 10.1, but works on MariaDB 10.3 [0].
Bumping up version to 10.3 on Ubuntu to match CentOS (RDO) version.
[0]: https://review.opendev.org/#/c/677221/
Closes-Bug: #1841907
Change-Id: I16e4c40208912691e3015bfe2065ea0ce2358edb
|
|
This retains the default, but allows the directory to be customised
if required. This is useful, for example, when using Kolla Ansible
to deploy multiple instances of MariaDB.
Partially Implements: blueprint support-nova-cells
Change-Id: I042fbe140ee84f2ed72e27635be247cb145aac5f
|
|
Usage of dumb-init can also be disabled from cli with
`--nouse-dumb-init` when building images.
Also moves ENTRYPOINT outside of dumb_init_installation
block.
Change-Id: Id32d54fc9913b83cf121ede5a5e265e0772062ae
Related-Bug: #1821970
|
|
While mysql_upgrade seems to work on CentOS images without specifying a
host and port, it fails on Ubuntu without these.
Change-Id: Ie140de57c4fe2f2e4db6a90c18e3535d9cc71ff2
Related-Bug: #1820325
|
|
There are a couple of issues with the mariadb image currently.
1. it doesn't include mysql_upgrade on CentOS/RHEL. It is necessary to
run this after an upgrade of MariaDB. This is fixed by installing
mariadb-server-utils.
2. it inherits the standard dumb-init entrypoint from the base image,
which includes a --single-child argument. That causes signals to be
forwarded only to the process executed by dumb-init, which in the
case of kolla-ansible is mysqld_safe, however mysqld_safe ignores
SIGTERM. After a timeout, Docker then forcibly kills the container.
Executing dumb-init without --single-child ensures the TERM signal is
sent to mysqld, allowing it to shutdown gracefully.
Change-Id: I1a450736721863b91be1ea3d3c8948990de9fdeb
Closes-Bug: #1820325
|
|
This change updates the docker files to use base_package_type instead
of doing specific distro checks for the rhel/deb generic cases. The
base_distro is still available and is used when a specific distro needs
a customization but if the differences are purely rpm vs deb, then the
base_package_type can be used.
Change-Id: I8d720bb185df65a0178061ccf20b1ab2265da2c5
|
|
Mysql-python is a deprecated package and fails to build currently.
Make use of mysqlclient as is a fork of mysql-python with many bug
fixes a python3 support.
percona xtrabackup doenst work with mariadb 10.3,
replaces to use mariadb-backup tool.
https://jira.mariadb.org/browse/MDEV-15774
Change-Id: Icefe3a77fb12d57c869521000d458e3f58435374
|
|
Under heavy load, when the security_reset script is being run to set
up root password, it might happen that the mysql server doesn't get a
change to evaluate the SQL statement sent by security_reset.expect
before the hardcoded 10 seconds timeout is reached.
Allow the timeout to be overriden via env variable DB_MAX_TIMEOUT,
which is already used as a timeout variable in extend_start.sh
Change-Id: If82c6daca82a48d899605829dc99cf4a352cddcd
Closes-Bug: #1775864
|
|
Ubuntu 18.04 has been released. We need upgrade to it this cycle.
Changes made in this patch
- Bump ubuntu repo from xenial to bionic. Some repos do not have bionic
packages, so still using xenial repos.
- Drop mariadb, percona and nfs-ganesha repo, because these packages are
already provided by Ubuntu official repo.
- Since qdrouterd does not have bionic repo and xenial packages does not
work on Ubuntu bionic, just add it into ignore image list.
- Use python-rtslib-fb and targetcli-fb rather than python-rtslib
and targetcli
- use xen-utils package name rather than with package version one.
- Seems unsigned repo won't work on Ubuntu bionic, stop using infra
mirrored unsigned repo in gate building job.
Needed-By: https://review.openstack.org/568728
Implement blueprint: ubuntu-bionic
Change-Id: I4e3b0ca669cfbf6316bf591f2d8428fa1a0d6182
|
|
Change-Id: I4fdab197e18b25f6af7275da6ecbdb9c516ba0a5
|
|
We would need socat tool to perform healthchecks on the various containers.
Closes-Bug: #1749227
Change-Id: Ibda77a8d041d894f5efac6578e52b11651bca97f
|
|
|
|
Ia2acb09e877a586243fc1acb49d8d140cf27d7b5 removed the
"--wsrep-new-cluster" option and left "--wsrep-on=OFF".
But it seems "--wsrep-on=OFF" won't work with mariadb 10.0. and In
Ubuntu, we are still using mariadb 10.0.
Try to add --wsrep-new-cluster back
Change-Id: I4d382d1b9c83def62dc85a773580c8c6b2500f68
|
|
RDO packaged mariadb recieves far more testing and qualification
than any other mariadb package on CentOS. Lets use that instead
of a hard-pinned old version of mariadb from mariadb.org.
This patch also upgrade MariaDB from 10.0 to 10.1.20 for
RHEL/CentOS/Oracle Linux.
Depends-On: I8374ac2219ad7880970cd789727d01af7cac1077
Depends-On: Ia2acb09e877a586243fc1acb49d8d140cf27d7b5
Co-Authored-By: Xinliang Liu <xinliang.liu@linaro.org>
Change-Id: I071362fc1b8d60199a77e2fe0475d2b4c3b5341b
|
|
Option "wsrep_on" behaves differently between 10.0 and 10.1 [1]:
"Before MariaDB 10.1, even though this variable is ON by default,
its value get automatically adjusted based on whether mandatory
configurations to turn on Galera replication have been specified.
Since MariaDB 10.1, it is set to OFF by default and must be turned
on to enable Galera replication."
So on MariaDB 10.0 although wsrep_on set to OFF, its value will
automatically adjusted to ON because wsrep mandatory configurations
are set. Whereas on MariaDB 10.1, it will failed at galera provider
'wsrep_ready' checking because wsrep_on is set to OFF.
We can set wsrep_on to ON to handle both 10.0 and 10.1.
But, the point is that the cluster bits, which are creating a cluster
and wsrep_ready checking, are no need at bootstrap stage.
At bootstrap stage it mainly do two things:
Creating required system DBs (by mysql_install_db)
and securing the mariadb (by bootstrap_db).
After the bootstrap stage, it will create a cluster when starting the
first node.
[1] https://mariadb.com/kb/en/library/galera-cluster-status-variables/#wsrep_ready
Partial-Bug: 1740060
Co-Authored-By: Steven Dake <stdake@cisco.com>
Change-Id: Ia2acb09e877a586243fc1acb49d8d140cf27d7b5
|
|
Closes-bug: #1733262
Change-Id: I2d0a3422ba6a077a309c1fe967a2a62ef5ce6a36
Signed-off-by: Kevin Zhao <kevin.zhao@arm.com>
|
|
With latest master, mariadb is failing to bootstrap in kolla-kubernetes
cluster. The issue is with the name of mysql pid file. When it is not forced
in the command line, in kolla kubernetes it gets created in the form of
mariadb-init-element-xqg4b.pid where mariadb-init-element-xqg3b is pod name,
but bootstrap scripts explicitely checks for mysql.pid.
Change-Id: Ic0ee577d73d196ef40354efa51ca3ba60bf4e125
Closes-Bug: #1704671
|
|
set_configs.py has logic to handle chown of directories. Simplify
the codebase by removing these unnessary chowns. Further the chowns
cause some forms of NFS backed storage to not work properly.
Change-Id: I8df95d06b1010778deb3e2a3065aaab26ed2eb6a
Closes-Bug: #1693973
|
|
|