78 Commits

Author SHA1 Message Date
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
fecac47b5a Cleanup: fix neutron db-job manifest and rally pod permissions.
This PS removes the duplicate command key in the Neutron DB-Job
manifest and corrects the rally pod permisions.

Change-Id: I97b9a9ab54609696ac763f3a319f6df78fe5d73c
2017-07-06 14:56:09 -05:00
Pete Birley
ac06f49849 Unify and normalise K8s Resources and Upgrade Strategy
This PS unifies and normalises Kubernetes resource allocation and
update strategy across all OpenStack-Helm elements.

Change-Id: Ia41fc453cb5191fa447ca6e1aa0f5b431c939dc8
2017-07-06 17:48:16 +00:00
Pete Birley
c221fa5248 Secret and endpoint standardisation.
This PS moves keystone credentials to the endpoints section within
the values.yaml, and also adds a 'secrets' key, allowing standardiation
of secrets and credential management across OpenStack-Helm.

Change-Id: I86a21e625afd822379ac11351603b2c606a3769f
2017-07-05 12:22:04 -05:00
Jenkins
2d7fe938c0 Merge "Fix MultiOpt options in gen-oslo-openstack-helm" 2017-07-05 13:46:14 +00:00
Michał Dulko
9eaa08678c Fix MultiOpt options in gen-oslo-openstack-helm
gen-oslo-openstack-helm generated configuration file templates in
incorrect form, causing setting mulitple values in Values.yaml to
produce something like:

  foo=barfoo=baz

This commit fixes this in the generator and updates config file
templates to generate configs correctly:

  foo=bar
  foo=baz

Change-Id: Iea661dcf1710987b2e111d7141ba888f01c44a50
Closes-Bug: 1699581
2017-07-04 17:26:06 +02:00
Michał Dulko
ef62e93608 Remove /var/cache/cinder emptyDir volume
This patch removes unused `/var/cache/cinder` volume that is mounted for
each of Cinder services. I suppose it was added to serve as value of
`signing_dir` option from keystonemiddleware and is used to cache PKI
tokens. We're however never setting the option to that value and the
option was deprecated in Ocata, so we should be fine to remove it.

In case someone still wanted to use `signing_dir` config option, he can
easily confiure it back using config and volumes overrides.

Related-Bug: 1702072

Change-Id: I03460151e01293b19a864528561c80cab1a72114
2017-07-04 14:58:28 +02:00
Jenkins
d901a9d12b Merge "Soft pod anti-affinity for all pods" 2017-07-03 20:12:58 +00: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
Pete Birley
27c99560db Cinder: Bring backup service inline with others for entrypoints
This PS brings the launch style of Cinder-Backup inline with other
OpenStack-Helm pods.

Change-Id: I6a1889037c1b57d370ea00d1044942164fffe5fc
2017-07-03 07:32:58 -05:00
Pete Birley
22da29c2be Logging: Disable debug logging by default
This PS disables debug logging for all services that had it on, and
removes the key from the default values.yaml. It does however ensure
that the mvp values has the appropriate key to make turning debugging
on simple.

Change-Id: I8ed84d531971cbd7984f029abbebb373af4c7311
2017-06-29 07:10:20 -05:00
Jenkins
e1874a7b1a Merge "Ingress controller for public endpoints" 2017-06-29 05:03:19 +00:00
Pete Birley
c0cf2337a2 Ingress controller for public endpoints
This PS provides the framework for Ingress controller based access to
public APIs.

Services covered:
 * Barbican
 * Cinder
 * Glance
 * Heat
 * Horizon
 * Keystone
 * Magnum
 * Mistral
 * Neutron
 * Nova
 * Senlin

Change-Id: I82d55f6ca41859ebed3312ec7d95b353df09e772
Implements: blueprint api-ingress
External-Tracking-Id: OSH-58, OSH-62
2017-06-28 17:37:10 -05:00
Jaesang Lee
55c1625a4f Helm Test: Cinder
Add rally tests in cinder helm chart.
It only test create a volume because volume driver is fake_driver.

Change-Id: Iba5df74df427a414c70dda6baf9bc7e775b1716d
Partial-Implements: blueprint implement-helm-test-for-charts
2017-06-28 04:45:46 +00:00
Pete Birley
8ef5d94674 Refactor Ceph secret generation
This PS refactors the ceph chart and secret generation process.
The updated chart replaces the existing "bootstrap" chart.
Additionally, Ceph manifests and deployment guides were modified
accordingly.

Change-Id: I6f5bb88fc0f40cfee8865d9dab83859d765e7537
Co-Authored-By: Larry Rensing <lr699s@att.com>
2017-06-27 13:42:03 -05:00
Pete Birley
a7503a7d3f Kubernetes Entrypoint: Lookup service names for dependency checks
The existing entrypoint logic used static names to reolve dependencies.
This prevented the service names, and thus the hostnames of services
being altered. This PS resolves that issue by looking up the service name
from the endpoints specified in the values for a chart.

Partial-Implements: blueprint enhance-entrypoint-dependency-checking
External-Tracking-Id: OSH-21
Change-Id: Ib49490f332f8cd88e98c50d9335dfd314a170936
2017-06-20 08:51:36 -05:00
Pete Birley
f1fa268867 Cinder: Fix dependencies values typo.
The dependencies for cinder had a typo, so volume was specified twice
while backup was missed. This PS fixes that.

Change-Id: I97b94fe7cb2ceacdfc3e961c7c1eb8f5ddda26ad
2017-06-17 08:51:33 -05:00
Pete Birley
170ad26a60 Cinder: Fix indentation of init containers.
Change-Id: Id677c80a25eb52fecb213f473e42ffa56332d2da
2017-06-13 15:54:20 -05:00
Pete Birley
81aef1ecea Configmaps: set default mode of files in *-bin configmaps to +x
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
2017-06-12 00:22:30 -05:00
Jenkins
2ae4147dc8 Merge "[Cinder] Fix Ceph backend" 2017-06-10 15:30:38 +00:00
Jenkins
d73f81c9fa Merge "Move init containers from annotation to official object" 2017-06-09 22:09:54 +00: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
Chris Wedgwood
fbaf3fd196 [Cinder] Fix Ceph backend
Fix for corrupt (malformed) configMap and missing files.

Change-Id: I94ed8af6d37c47d14b3642d7fbc43bed1fc59cb3
2017-06-09 20:43:28 +00:00
Pete Birley
0dc8031549 Cinder: Fix helm-toolkit references
This PS fixes the references to helm-toolkit in Cinder

Change-Id: Ia2d7672059035eecaf9176666aad2dfc4e9ca0f5
2017-06-07 12:50:09 -05:00
Jenkins
fa0bfeb0b5 Merge "Refactor start scripts, to support graceful termination" 2017-06-06 16:26:26 +00:00
Pete Birley
0df7427dc4 Refactor start scripts, to support graceful termination
This PS add Barbican support, and moves all potentially container
specific logic into the service start script from the api manifests.

Also fixes a permissions issue with the nova-api, which incorrectly
had the NET_ADMIN capability.

Change-Id: I18fc1ea5d7aa70ea7dabb829361a3da57e905100
2017-06-05 17:37:22 -05:00
Jeff Augustine
d95d9990de Cinder Bootstrap
This commit adds the bootstrap framework to Cinder.

- If volume type already exists do not recreate
- Create volume types as defined in Values.conf.backends
- Create additional volume types defined in Values.bootstrap,
    available backends must be defined in Values.conf.backends

Change-Id: I577df7bf50d66c8ef70e74466a0bf1c4c221ca68
Partially implements: https://blueprints.launchpad.net/openstack-helm/+spec/service-bootstrap
2017-06-05 15:25:10 -05:00
Darla Ahlert
c394d22112 Add Graceful Termination to all existing charts
This commit adds graceful termination to all existing charts.
It also adds a setting in the values.yaml file for clarity and
the ability to override if wished.

Change-Id: I42025e4be86d248be467c1d2f0980f864c4d440e
2017-06-05 12:38:26 -05:00
Michał Dulko
74df9d19cb Add cinder-backup service
cinder-backup binary is responsible for backing up volumes and snapshots
as well as restoring them. Without this service being deployed, we
cannot use those features.

This commit introduces the service into OpenStack-Helm.

Change-Id: I4ff5a56a77e5e10471a653ee1fbc3837de48ad38
2017-06-05 12:41:54 +02:00
Michał Dulko
f0b92663d5 Configuration Management Overrides for Cinder
This commit is based on how Nova got its configuration overrides
implemented.

An important thing here is support for setting multiple Cinder backends
(e.g. Ceph cluster + NFS) in the values.yaml. This was required as Cinder
accepts backend configurations only in [<backend_id>] sections in the
cinder.conf.

Please note that autogeneration of ceph.conf and
ceph.client.<rbd_user>.keyring works only for a backend named "rbd1".
In case you want to add another RBD backend, you need to mount those
files by yourself. Commit ehancing this is planned to follow shortly.

Change-Id: Ifb58a85300bbfbb9e63d6b3bfc2ad19a99d2c9d4
2017-06-05 12:41:38 +02:00
Jenkins
592692fdf8 Merge "Update deployment for kubernetes 1.6" 2017-06-02 15:35:15 +00: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
Pete Birley
5f3bb7674e Consistency: Move Cinder container start commands to scripts
This PS moves the container start commands to scripts. This brings
the service into alignment with other ones in OpenStack-Helm, and enables
easier debugging and modifcation of the launch commands for services.

Change-Id: Iff08c9fdaf34efeee3dea2c4b859b0a4e77bc9a9
2017-06-01 10:34:25 -05:00
Jenkins
a5420f4290 Merge "Helm-Toolkit: Update naming to be explict and remove old functions." 2017-06-01 14:49:54 +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
Pete Birley
5e193580ed Pod Disruption Budget: Set default to 0
With pod disruption budget set it is not possible to drain nodes
and perform other expected operations. This PS changes the default
value to 0, restoring the typically expected operation of pods.

Change-Id: I43ef35638c98caee2cf567487173399157000ada
2017-05-31 06:11:58 -05:00
Mark Burnett
de20cbb15d Use the standard Dockerhub MariaDB image
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
2017-05-25 08:56:35 -05:00
Larry Rensing
a1e76e9b3c Add pod disruption budget for cinder
This PS adds a default pod disruption budget for cinder-api to
ensure at least one replica is running.

Change-Id: I8f1fc41dc527d16cf1099de51e36d8b7f7ae9ba8
2017-05-18 15:59:53 +00:00
Larry Rensing
fea453ba72 Consolidate volumes across charts
This PS standardizes configmap mounts across all charts to be named
<project>-etc or <project>-bin.  This reduces the amount of volumes
listed in each file.

Change-Id: Idbaf495fa243bb9ea0f6ad755ca4f899d5fc0d6f
2017-05-16 15:49:51 +00:00
Michał Dulko
d95bad0b5c Add project mascots as charts icons
OpenStack Foundation started serving project mascots files on
openstack.org. This commit adds URLs to those files as chart icons for
OpenStack projects.

Change-Id: I2482174cd1d9a0f32df91d7d81974a0dc37f5c4d
2017-05-09 14:28:11 +02:00
Pete Birley
04506c3b7a chart.yaml enhancement: cinder
Change-Id: I598971e5099f809475aefab60eeb4db2774cfe8b
2017-04-18 09:28:17 -05:00
Pete Birley
b6aed791fb Update chart.yaml to be consistent across repo
This PS updates the chart.yaml to be consistent across the repo, and
changes the description to make clear that they are the OpenStack-Helm
derived versions of the charts while using `helm search`.

Change-Id: Iac3cfd2cddba7130b28a65c3d353712c8a3aa02b
2017-04-16 11:21:07 -05:00
Brandon B. Jozsa
411602d450 Update Cinder image values
These changes pick a standard image for use with OSH.

Change-Id: I192a38c09972567551c656205aa8e37733142b5f
2017-04-14 10:37:02 -04:00
Jenkins
fc24782f9c Merge "Changed project names in values" 2017-04-12 16:18:45 +00:00
Steve Wilkerson
e177e7a27b Changed project names in values
Some projects had the wrong project name in values. This updates
the projects names accordingly

Change-Id: I88b49d9fe4cc155c401c65b8bd16d970008f780f
2017-04-12 10:41:58 -05:00
Steve Wilkerson
9e4ada022c Add cinder rootwrap
Currently cinder doesn't include the template for adding
rootwrap. As we look to include additional backends, we'll require
rootwrap.conf to be present for cinder function properly

Change-Id: Id8af3637edca12bc54edc9e25f5f88b2ef0cc410
2017-04-12 08:07:06 -05:00
wilkers-steve
d0a9bd2202 Merge pull request #289 from portdirect/0.3.0/db-management-job-scripts
feat: replace ansible with PyMySQL for DB Creation
2017-04-06 08:39:05 -05:00
Pete Birley
90c4496bb2 Update Cinder DB Jobs 2017-04-04 11:33:42 -05:00
Pete Birley
105349a95b Update Cinder DB Jobs 2017-04-04 11:33:42 -05:00