35 Commits

Author SHA1 Message Date
Jenkins
d5436cc978 Merge "Add management port to RabbitMQ service" 2017-08-18 05:23:46 +00:00
Grzegorz Grasza
a3dcbe91b5 Add management port to RabbitMQ service
Management port exposes a HTTP REST API which can be used to
add virtual hosts and users, gather statistics and other data
about the running cluster. This also turns on the web interface
available on the management port.

Change-Id: I5e4c902d780d99e96fdd160c58227676d4676e87
Partial-Implements: blueprint service-rabbitmq-registration
2017-08-08 12:52:35 +00:00
Pete Birley
ff8744a9b9 Licence: Remove licence header from rendered files
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
2017-08-07 17:16:13 -05:00
Pete Birley
4d066332a7 Values: Move replicas to pod key
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
2017-07-13 23:08:08 -05:00
Pete Birley
20527cb57c Move k8s pod params under common key
This PS moves K8s pod params under a common key.

Change-Id: Ib4e72e82a4f1540fa800c39d0dcc91b286d96c93
2017-07-11 23:28:47 +00:00
Tin Lam
670a78bcbe Fix file permission and readOnly flag
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>
2017-07-08 13:24:14 -05:00
Pete Birley
c5bbc97ab7 Soft pod anti-affinity for all pods
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
2017-07-03 14:15:40 -05:00
Michał Dulko
a6cd9bac16 Use k8s 1.6 syntax of declaring affinity
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
2017-06-20 16:51:07 +02:00
Steve Wilkerson
161170bf96 Move init containers from annotation to official object
With 1.6, init containers are officially part of the kubernetes
API.  This changes the format of the helm template for the
entrypoint container from json to yaml, and updates the
charts accordingly.

Co-Authored-By: Pete Birley <pete@port.direct>

Change-Id: I569566ce4b031d107af2d38483040a26210bec45
2017-06-09 16:31:53 -05:00
Darla Ahlert
78dd37efc2 Update deployment for kubernetes 1.6
In Kubernetes 1.6, the deployment API version was changed
from extensions/v1beta1 to apps/v1beta1

Change-Id: I14ee465de381d25866224b9eae3512f0b42588d3
2017-06-02 08:45:08 -05:00
Jenkins
efc68f4347 Merge "Make remaining volumeMounts readOnly" 2017-06-01 21:40:26 +00:00
Pete Birley
8c29949c0d Helm-Toolkit: Update naming to be explict and remove old functions.
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
2017-05-31 19:52:02 +00:00
Larry Rensing
ed2b82977b Make remaining volumeMounts readOnly
This cleanup adds a readOnly tag for the remaining volumeMounts
across the project.

Change-Id: I1035c075c2e0c6f2b1b76a14e45094ed4e90a879
2017-05-26 13:46:30 +00:00
Gage Hugo
dc1ae977a5 Remove all trailing whitespaces
This change removes any trailing whitespaces found while
running:

find . -type f -exec egrep -l " +$" {} \;

Change-Id: Ic1dc8765a0971a32da4c3116871e9450a55b357f
2017-05-19 18:07:06 -05:00
Jawon Choo
1ba7c271df add node type option to rabbitmq clustering
Currently, rabbitmq clustering is using the autocluster plugin,
and NODE_TYPE is set to disc in default. so every nodes join cluster as disc node.
However, since there is a need for disc + ram clustering for the performance.
if change node_type from disc to ram, clustering configured as [disc + ram + ram].

Change-Id: Ie83689b0554f0f993bdffac666f0f56db8082992
2017-05-12 10:59:20 +09:00
Pete Birley
c6ff0dd075 Revert "RabbitMQ: use DNS for cluster discovery, not etcd"
This reverts commit 0982a823e139560fd97ecc9390f0cd249cc7982e.

Change-Id: I59fe221e7ecea54fbfde1b3fee72d59a7b1a1cc2
2017-05-05 21:47:37 +00:00
Mark Burnett
0982a823e1 RabbitMQ: use DNS for cluster discovery, not etcd
Implements: blueprint rabbitmq-dns-discovery

Some useful things to note:

1. This uses a StatefulSet instead of a Deployment.  The reason for this
   is that when RabbitMQ uses DNS for peer discovery, the first thing it
   does when trying to join a node is attempt a reverse-dns lookup.
   This reverse lookup works when using a StatefulSet, but not a
   Deployment.
2. The RabbitMQ configuration was updated to use the new sysctl-style
   format.  It seems that the new format is required to configure the
   new autoclustering features.  Additionally, I found that this
   generate much clearer error messages than the straight erlang format.
3. I removed the `is-node-properly-clustered` test in the liveness and
   readiness probes.  This probe isn't directly supported in 3.7.0,
   and it wasn't clear that a clustering check was appropriate for each
   node.

Change-Id: Ieefbb2205bd77fbac04abcd051fb06fce62e8d97
2017-05-05 09:48:18 -05:00
Wil Reichert
7321ded7d5 case replicas to int for comparison, thanks @larryrensing 2017-04-08 06:09:16 +09:00
Wil Reichert
844173049c Don't execute the rabbit cluster readiness check if is there is only 1 replica 2017-04-08 06:04:29 +09:00
Alan Meadows
3886ba09e9 update other entrypoint macrros correctly this time 2017-03-22 12:31:37 -07:00
Alan Meadows
0537f138ac update other entrypoint macrros with empty mounts parameter until they are refactored 2017-03-22 12:30:21 -07:00
mattmceuen
7462949643 Fixed copyright headers for rabbitmq erlang templates 2017-02-25 11:46:23 -06:00
Brandon B. Jozsa
1ff7bcac7b add license headers to rabbitmq (#226) 2017-02-20 07:10:35 -08:00
Tomasz Paszkowski
e3f1389f60 Add rabbitmq deployment with HA. (#123)
This works is based on http://github.com/openstack-fuel-ccp-rabbitmq and it mostly adjusts this solution
to a helm based deployment.
2017-02-17 10:49:32 -08:00
Pete Birley
116931bb51 Rename common chart, and update all references to functions within it. (#167)
* Rename common chart to helm-toolkit

* Update useage of helpers to include reference to chart they come from.

* Update helm-toolkit function naming

Also catches several functions missed in previous PS

* Update remaining requirements.yaml to use helm-toolbox

* Dep Check container fix for common -> helm-toolbox renaming
2017-02-14 16:52:38 -08:00
Marcellin Tchassem
fc21a2e924 Add resources limits and requests for some charts (#163)
* Add resources limits and requests for each chart

* Refactor the resources limits and requests to follow a patern

* Fix some coding issues

* fix issues resulting from feedback on the resources PR

* Reset some variables to a static value in the neutron chart.

* Substituting variable entrypoint by dependency_check in the concerned files

* Few adjustments

* Update deploy-region.yaml

* Update deployment.yaml

* Add resources limits and requests for each chart

Squah all commits in one.

* Add resources limits and requests for some charts

* cleaning

* Fix indendation issue

* Update deployment.yaml

* Update daemonset-ovs-vswitchd.yaml
2017-02-01 19:47:59 -08:00
Alan Meadows
0a481a8ef2 Consistent config map hashing across all existing charts
* These annotations ensure that if configmaps change, the pods
are redeployed according to their upgrade strategy.

* This change excludes glance which has a pull request in progress
to refactor it.
2017-01-09 15:18:58 -08:00
Alan Meadows
c9d27bac4d Add rolling update parameters to all current charts
This ensures that all charts have a consistent and overridable
approach to their pod replacement strategies, along with sane
defaults.
2017-01-09 15:08:46 -08:00
Alan Meadows
0dd7bd45dd bugfix rabbitmq configmap name (further) 2016-11-30 17:01:36 -08:00
Alan Meadows
cded42e315 add environments necessary to memcache; bugfix rabbitmq configmap name 2016-11-30 16:58:39 -08:00
Alan Meadows
877e0cd46f aic-helm normalization
* As of helm 2.0.0, it no longer seems necessary to
copy a "globals.tpl" into each child chart, defines in
child charts now seem to be reliably rendered in the
parent.  This was not working correctly in 2.0.0rc2
and so after a lot of testing, the globals define
insertion has been removed from the Makefiles. Also,
includes piped to b64encode are working now, meaning
we no longer have to do Makefile magic to base64
encode successfully.  That has been removed.  Once
.Files.Get works properly in a child chart context
we can remove all Make help.

* The openstack-base chart has been renamed to common
to better reflect that it is common to everything in
aic-helm, even non-openstack projects like ceph.  All
charts now include it as a requirement.

* A first pass at a "cleaner" template directory approach
has been applied to rabbitmq as a test chart.  This allows
files such as _start_rabbit to live in their raw form
and organizes files by config vs script in 'etc' or 'bin'
directories.  If accepted, will apply to all other charts
for consistency.
2016-11-29 16:20:06 -08:00
Alan Meadows
9d26ecec33 incorporate cleanup feedback from PR#11 2016-11-28 09:28:42 -08:00
Alan Meadows
7929c94c21 General consistency cleanup
* Made values.yaml consistent throughout charts.  Removed any globals
references in subcharts as these are difficult to override.  Only
ports should be in globals to build URLs which can come as part
of a future commit. The hostname endpoint aspect of a service
will come from openstack-base/_hosts.tpl and the port
would come from the chart itself as a global so other charts
can reference the port to build a complete URL.  Putting the
hostnames themselves as globals in individual charts makes it
difficult to make a sweeping top level FQDN change.

* Cleaned up yaml requirements and incorporated a new _common.tpl
that is distributed to all charts to allow common endpoint naming
while still retaining the ability to install individual charts.

* Fixed keystone URL generation during bootstrap as a correct
URL is critical given keystone uses this to construct all
subsequent URLs in the request. Also allow controlling the
default endpoint version and scheme.

* Added missing NAMESPACE declaration to keystone deployment
as this is required for entrypoint to discover resources
not in the 'default' namespace.

* Refactored all nodeSelector values to be consistent throughout
all charts
2016-11-25 16:27:18 -08:00
pprokop
b7d9644e71 Fixing labels 2016-11-21 14:20:28 +01:00
DTadrzak
5b8b476efb Basic version of rabbitmq.
Signed-off-by: DTadrzak <daniel.tadrzak@intel.com>
2016-11-18 16:54:35 +01:00