Commit Graph

93 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
Jenkins
d94804571e Merge "Nova: novnc proxy cleanup" 2017-07-10 13:15:58 +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
4f3c48a089 Nova: novnc proxy cleanup
This PS updates the novnc proxy manifest to use the labels and
anti-affinity functions introduced to OS-H while it was in review.
It also drops some unrequired privs from the pod.

Change-Id: I24dce2079ac8aed2e05ce03832cefe0e8ca7f595
2017-07-06 15:01:28 -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
Jawon Choo
478dae3943 add novncproxy deployment on nova chart
This PS adds a novncproxy deployment on nova chart and fixes a bug
about keystone memcached configration.

Change-Id: I44a8571e7da2dc4a431631e6e3a96b16e7242fd3
Closes-Bug: #1698033
Implements: blueprint add-novncproxy
2017-07-05 18:03:30 +09:00
Jenkins
6231dde5c1 Merge "Introduce rolling updates for daemonsets" 2017-07-04 22:17:06 +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
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
Steve Wilkerson
d58059aa7a Introduce rolling updates for daemonsets
Kubernetes 1.6 introduced the ability to declare an update
strategy for daemonsets. As weve made >1.6 a requirement, we
should adopt the ability to update our daemonsets just as we do
with deployments. This brings the daemonset templates in our
charts in line with other patterns developed.

Change-Id: I317560b24d65274b69bec2df4f6225f1255b7ae6
2017-06-29 15:52:52 -05: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
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
d69f021e32 Nova: Helm test functionaility using Rally
This PS adds 'helm test' functionality using Rally to Nova

Change-Id: Ie53c42636b58e36c22a9260c67a7981183d741d3
Partial-Implements: blueprint implement-helm-test-for-charts
External-Tracking-Id: OSH-89
2017-06-22 19:00:41 -05:00
Jenkins
e983684c53 Merge "[Nova] Use helm values to set libvirt logging/debugging" 2017-06-22 01:10:45 +00: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
Chris Wedgwood
c8c1a818b4 [Nova] Use helm values to set libvirt logging/debugging
Use chart values to set control logging.  Reduce the default logging
to warnings and errors.

Change-Id: I52b3c65513a0f3b9de02eff2b1c76ffcb7c1fba2
2017-06-20 05:30:52 +00:00
Pete Birley
c5100307a6 Nova: Add policy.yaml to pods and correct values.yaml
The policy.yaml was not mounted into pods in Nova, or its location
specified correctly in the default values, this PS resolves that.

Change-Id: Ie4d1b8414f626ac4b5fdc232644d5e8a3a99d8bb
2017-06-18 21:57:36 -05:00
Jenkins
7a87aded1d Merge "Nova: remove requirement for NET_ADMIN capability for Nova Metadata" 2017-06-12 17:05:36 +00: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
Pete Birley
d8e4890772 Nova: remove requirement for NET_ADMIN capability for Nova Metadata
This PS removes the requirement for the Nova Metadata API to run with
NET_ADMIN capabilities, and also enables lightwight images without
iptables present to be used.

This has no effect on operation if Neutron is used for networking.

Change-Id: Ie69c74240ca7fd054e3c897c2bf8ebc8ec5c1377
2017-06-12 04:49:13 +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
Dae Seong Kim
3f98813b1e libvirtd pod is not starting when Ceph is enabled
When trying to install nova chart with Ceph enabled, libvirtd pod isn't
starting. It's because container is executing virsh commands before
libvirtd process is up. _libvirt.sh.tpl script needs to be fixed to
start the process first and then execute the commands.

Closes-Bug: #1691384
Change-Id: Icd5f31a5fbeb5985ed19213aeb236a25f600b18c
2017-06-09 19:00:07 +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
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
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
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
rwellum
ee3a370948 Rearranging Nova values to the same order as heat or glance.
The correct order is: 1. Replicas, 2. Lables 3. Images

Change-Id: Ib76dcfc9ad14890f42ad6624817ddb16f1ed16c7
2017-05-24 09:43:52 -04:00
Jenkins
80cd608f3d Merge "Nova: Disable virtlogd for Libvirt >1.3" 2017-05-24 13:06:09 +00:00
Pete Birley
5c9d0f9562 Nova: Disable virtlogd for Libvirt >1.3
This PS disables virtlogd for running libvirt >1.3

See: https://bugzilla.redhat.com/show_bug.cgi?id=1290357

Closes-Bug: 1686069

Change-Id: I27ab690ef41e99e23a57f42b0695b1becb101e69
2017-05-24 02:03:34 +00:00
Chris Wedgwood
afb3ba1caa Fix internalURL used by Cinder
Change-Id: I2b2b28bb253206e58e3440f08b0cfe401c714627
2017-05-24 00:21:33 +00:00
Larry Rensing
60aedd9748 Adding pod disruption budget for nova
This PS adds a default pod disruption budget for nova-api-osapi
and nova-api-metadata to ensure at least one replica of each pod
is running.

Change-Id: I5ab626f24b899ed34240731bfe075be1df7228c5
2017-05-18 17:28:39 +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
67d80770e6 Gate: Refactor and setup for integration gating
This PS tidies up the gate and introduces the intial framework
for integration gating.

Change-Id: I0bbdfa2088e9ebbe86640c79df4d8b716d9a9705
2017-05-05 11:33:56 -05:00
Jenkins
079613bf5b Merge "Nova: fix metadata service label" 2017-05-03 00:24:46 +00:00
Pete Birley
3d7b289719 Nova: Implement MVP config
This PS brings in an MVP config for Nova.

The changes to the Libvirt also permit operation on
RHEL family distros.

Closes-Bug: 1683195

Change-Id: I4ce8c9bd53164f1be719271e095edc31e2f3ae4b
2017-05-02 03:23:05 -05:00
Pete Birley
0b6f41e3f3 Nova: fix metadata service label
Change-Id: I5076d4d07dec68ee34e47ddf1dcd53be17cb5bbf
2017-05-01 16:29:59 -05:00
Pete Birley
60d01e54cc Nova: move to startup scripts.
This PS moves the container start commands to scripts, which makes
debugging and overriding of container launch params easier.

Change-Id: Ibf5cda2218111360183b8a5eb993c717be84076c
2017-05-01 11:50:39 -05:00
Pete Birley
1ba6ec05b6 Nova: Update volume mount params
This commit update the volume mounts in pods to ensure:
 * Config files and scripts are mounted readonly
 * volume mounts added for bootstrap job

Co-Authored-By: Larry Rensing <lr699s@att.com>

Change-Id: I1e89419858c0f72b705ad9b7968ec01bfaab5740
2017-04-28 19:06:19 +00:00
Artur Korzeniewski
0e25aa5719 Nova chart: libvirt connection uri typo
Correction of libvirt uri, since it contained "connecton" not "connection".

Change-Id: I57d7c3f6b9fd43562cfb7fa9a5cc59e1bdfa8a29
2017-04-24 15:52:21 +02:00
Artur Korzeniewski
1a62ad8bc7 Nova chart: fix nova->neutron API communication
Removing domain_name from nova.conf in neutron section. domain_name and
project_name cannot be declared in the same section in the same time
for keystone auth.
Otherwise the exception is raised:
AuthorizationFailure: Authentication cannot be scoped to multiple targets.
Pick one of: project, domain, trust or unscoped

Change-Id: I55072d3662a9bfeb76725e5f0b4612b68e980605
2017-04-21 15:39:46 +02:00
Pete Birley
abc916cb6e chart.yaml enhancement: nova
Change-Id: Ifb002c0eb29f73e4ed58f841bcdb334797ef4e1f
2017-04-18 09:30:44 -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
Pete Birley
72b906882f Move Nova images to Kolla
This PS moves Nova to Kolla produced and published images:
 * This is part of a larger effort to move to a single image source
 * Stackenetes Newton images do not run with the systemd cgroup driver
   in my testing.

Change-Id: I10fff6e9f2977104726c8a2f34090a86e524b661
2017-04-12 18:07:45 -05:00