This PS moves static dependencies under a 'static' key to allow
expansion to cover dynamic dependencies.
Change-Id: I38990b93aa79fa1f70af6f2c78e5e5c61c63f32c
This PS moves the default image in OSH for most services to use LOCI
and also provides a Kolla gate for newton openstack.
Change-Id: Ice6cb9f89bc3ce6e8280e580d215aedda9e71904
* Changed podManagementPolicy to parallel in order to allow recovery
from secondary or third master
After rebooting the whole cluster on purpose or after a power failure
a primary node the cluster can synchronize with is required. This is
usually done automatically by selecting the node with the highest
transaction id. The current implementation of the stateful set starts
the nodes in sequence, preventing the start of further nodes if the
process terminates with error state. Because of this, the cluster may
not come up if the first or second node are not in primary state.
* Elects first node started in primary state as bootstrap source.
* Display warnings and runs mysqld with wsrep-recover on crashed nodes
* Introduces FORCE_RECOVERY argument for crash recovery
In case the primary selection failed, the cluster bootstrap process
must be manually initiated from the most advanced node (highest
committed transaction id). This information is available from the
grastate.dat file in case of a clean shutdown. On crashed nodes an
InnoDB recovery is required to get the last committed transaction id.
start.sh will handle both cases and gives instructions on how to
recover the cluster on a hard failure. If FORCE_RECOVERY was set to
the name of a POD (mariadb-0, mariadb-1, ...), the bootstrap process
will be initiated from the specified node.
DocImpact
Closes-Bug: #1716461
Change-Id: I96a8cb52124f64920a7d9cf21a8924ede78ebf7b
kubernetes does clustering for us and with persistent robust PVs
clustering of mariadb isn't useful for most people by default
Change-Id: I460c00c141ffe7d93af5ec09d1599cb8eaa9dcf7
Remove 'connect_timeout' which defined in the '[client]' section which
surprisingly affects mysqldump by causing it to fail as it doesn't
understand this; we're not doing anything that depends on having this
value so this is safe.
This now means mysqldump works (as expected) and we can use the
packaged/pod version of mysqldump for backup purposes.
Change-Id: I9142969e4b8576b19353c063586dd11f91875f0b
LocalWords: mysqldump
This moves the prometheus exporters for services into a directory
in the chart themselves. This keeps the monitoring services
coupled to the services theyre meant to monitor. This changes the
chart directory structure to include a monitoring/ directory to
host any monitoring requirements (not just prometheus exporters)
Change-Id: Ic5f46a7e9a2a773a837ff399b8730782cf89f1de
This PS enables storage ownership management on pod start, which
is required for some PVC providers/provisioners.
Change-Id: Idb4bd20104815efb241ed163daddf27f8bd2b559
This PS simplifys the db start and init script, increasing
robustness of the mariadb chart on low end hardware. It also
removes some unrequired annotations and moves to more explicit
qualification of the clustering variables.
Change-Id: I6cff5fb6ccfdcc6c82203b0e5eff445ee98bc298
This ps brings mariadb inline with the other charts in openstack
helm. It organizes the values trees, removes an unused duplicate
resource tree, and adds the keys for enabling specific manifests
Change-Id: I6f331d51802968620da18b687dc2f9dfa58cdd79
This PS updates the values file layout for images to allow simple
parsing of the images in use by charts, allowing them to be queried
and modified much more simply. By moving the image tags to a 'tags'
key, we can extend the options used simply to accomodate extra
options simply (eg prefixing the tag for use with an internal
registry) or pre-pulling the images to reduce chart deploy failure.
Change-Id: I9ec1dbb00d997ab6cb021bf0b698f7aae740e95d
Give mariadb time to start up and probe only as much as needed. This
avoids premature health warnings.
Change-Id: I5427cb26dc6a788123bdfac925e6d94321aabb1f
Kubernetes 1.8 is stricter about the feilds in a secrets manifest,
this PS updates OpenStack-Helm to be compliant.
Change-Id: I9e19d07060d8517e0f4fd3056013191b1b4ba2da
This PS adds namespace and fqdn support to endpoint lookup functions,
it also permits over-riding of the puplic endpoint for ingress.
Change-Id: Ib61c5c00a214d75fe85fbffe9080c2ae88bd8cb9
Correct some spelling errors in files :
mariadb/templates/etc/_00-base.cnf.tpl,tools/gate/funcs/kube.sh
Change-Id: Ie6d7f2b90a8d569663452d00565af2789bbb377e
This PS removes the licence header from rendered output from tiller,
significantly reducing the configmap size of charts deployed to the
cluster.
Change-Id: I5d1b246f2068f3b83bf59ba79fe8b88bbc9a6161
This PS updates the MariaDB start script remove templated values
from being directly inserted into the script. It also moves the
root connection params to a secret to prevent the root password
being exposed in logs.
Change-Id: I10977ef267877a5913bf265280ff5439c7bf268c
Fixes the reference to mariadb replicas used when adding pods to
the mariadb cluster. This was causing nodes to not be added to
the cluster properly
Change-Id: I9df586c8939e241ea58d933652c767542fd364ff
This PS updates the pod affinity function to allow customisation by
operators at the point of deployment.
Change-Id: I8b7b2f584e990e068051d9a6d5cc7b1e1adb5aa5
This enhances the stability and recovery of ceph by leveraging
hostNetworking for monitors as well as OSDs, and enables the
K8S_HOST_NETWORK variable within ceph-docker. This enhancement should
allow recovery of monitors from a complete downed cluster.
Additionally, ceph's generic "ceph-storage" node label has been
split out for mon, mds, and osd.
Co-Authored-By: Larry Rensing <lr699s@att.com>
Change-Id: I27efe5c41d04ab044dccb5f38db897cb041d4723
This PS move s the replicas key to be under the pod key in the values.
It brings further consolation of related configuration params to be
nested under common keys across all charts.
Change-Id: I420b06debd0a62ba5d83497be43ff6c49c49d339
This patchset enforces stricter file permission on *-etc configmap and
sets readOnly flag to true in a number of charts.
Change-Id: I233689a5d56dd1352e0d81997a94b4cdd6bed5d2
Signed-off-by: Tin Lam <tin@irrational.io>
This PS unifies and normalises Kubernetes resource allocation and
update strategy across all OpenStack-Helm elements.
Change-Id: Ia41fc453cb5191fa447ca6e1aa0f5b431c939dc8
This PS adds soft anti-affinity to all pods in OS-H. By doing so
resiliancy is improved by attempting to ensure that pods are created
on seperate nodes.
Change-Id: I0c1092498f7a1e44218ef785ca3f73fa9f49819c
This PS adjusts the MariaDB chart to use the same endpoint values
layout as used in other openstack-helm components. It also removes
credentials and params from the configmaps and moves them to secrets
and env vars as appropriate.
Change-Id: I9116be7c46cdd16c743ca2784878f3de65665f8c
K8s 1.6 has affinity/antiaffinity funtionalities as a beta feature. This
means we don't need to declare them using annotations. This commit
switches usages of affinity to 1.6 syntax.
Change-Id: Ia68f4ab28a018617bd44b1295fea58cd30eb4a39
This PS fixes some image references, to bring them inline with the
style and location with other services.
Change-Id: I1c42748875170a5a33bed7566382f3e31438dc7d
This PS sets the default modetype of mounts from *-bin configmaps
to 0555, and removes the then unnecessary commands from the manifests.
Change-Id: I93ce0facb06affdf362a58f8520e69ba94ea3034
This PS updates the way helm-toolkit functions are named to
reference the full path they are loacted at. This should make
development and debugging easier. Addtionally unused functions
have been pruned as well.
Change-Id: I03c553f1d01bccc70c86768b416b147c90d9b2f0
Addresses consistency issues that appear with autoincrement fields in
the existing chart, as demonstrated in [1]. It should allow automatic
recovery of 2 out of the 3 (default) cluster members.
It does not address automatic recovery of a complete shutdown of all
cluster nodes.
[1] https://review.openstack.org/#/c/465977/
Change-Id: I84c86e1862f03a6d381bf219b821ea3636049f0b
This patch sets put in whitespace check against all files except .tgz,
files in hidden directory or things in the doc/build folder. Enforcing
the cleanup work in [0]. Also fixed two readmes' trailing blank spaces.
[0] https://review.openstack.org/#/c/466409/
Change-Id: I21ee232e4d502ca2db9dbf012624d6552d0f7ad2