48 Commits

Author SHA1 Message Date
portdirect
235325ba45 Ceph: Dont create volume pool by default
The Cinder chart can now manage its storage init itself. This PS
now removes the unrequired pool creation in the Ceph bootstrap job.
It also updates the `ensure_pool` to better support luminious.

Change-Id: I4a71df9a6d3a0e45c6ef6812926d66455055ae9f
2017-12-29 11:04:26 -05:00
portdirect
0f107f1b81 Ceph: update dependency logic to be more strict
This PS updates the dependency tree in ceph to take into account
the keyring jobs and also the tollerance for unready endpoints
introduced in the k8s 1.6 era.

Change-Id: If76efeafdbcbe88ee699e7553f0effd5da7ce624
2017-12-28 00:51:42 +00:00
portdirect
fa2620d54b RBAC for OSH
This PS applys RBAC rules to OSH, based off the work
done in https://review.openstack.org/#/c/526464/

Change-Id: I541b0ac1a3972566ef2b66571ae32744dab70c17
2017-12-26 10:24:19 -05:00
Huamin Chen
eed43b8524 Ceph: luminous fixes
init osd: Ceph luminous release init osd differently. This fix detects
ceph releases and use the right process to init osd directory
mgr: Set mgr daemonset that is in Luminous

Change-Id: I99a102f24c4a8ba18a0bba873e9f752368bea594
Signed-off-by: Huamin Chen <hchen@redhat.com>
Depends-On: I17359df62a720cbd0b3ff79b1d642f99b3e81b3f
2017-12-13 15:52:36 -05:00
rong.zhang
8c6d2c8543 Add imageFormat and imageFeature support
Add imageFormat and imageFeature support

Change-Id: I441bbf82031c70da8ac49730b8dc4e5ea08a6b7e
2017-12-08 16:55:36 +08:00
portdirect
6325ebd72e Images: Ceph service specific explicit image names
This PS makes the service-specific images for Ceph have
explicit names, allowing simple over-riding of images for an
entire site.

Change-Id: I735c5fdc08c2a83893f25e6f6f9824089916507f
2017-11-29 04:06:15 +00:00
intlabs
fe6107cf76 Images: Update values to allow simple parse of images being used
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
2017-10-23 10:05:20 -05:00
Grzegorz Grasza (xek)
1fe3ca34c9 Change entrypoint version
New kubernetes-entrypoint version was released. K8s-entrypoint
authors maintain images at Quay. The image uses CoreOS, which
is more lightweight than the current Ubuntu image, so it
should lessen the burden on the infrastructure.

Change-Id: Id8c2a4d065550ffbd64476377247cccf213b58e1
Partial-Implements: blueprint entrypoint-namespaces
2017-10-10 15:59:08 +02:00
Mateusz Blaszkowski
06edf20328 Fix for missing init container in rbd-provisioner
Change-Id: Iadf05b6b233448f233866048d64d7167d8857438
Signed-off-by: Mateusz Blaszkowski <mateusz.blaszkowski@intel.com>
2017-09-20 02:08:06 -04:00
Pete Birley
010955fbef Kubernetes: move to Kubernetes v1.7.5 gate
This PS moves to use Kubernetes v1.7.5 as the reference deployment
version.

Change-Id: Ie2060dc5271decf1b9298fc8fc8f23ead6501fbd
2017-09-14 20:34:45 +00:00
Pete Birley
b3f8b812ca Glance: Backend support and auth improvements
This PS enables the following backends for glance:
 * PVC
 * RBD
 * RadosGW (direct)
 * Swift

It also moves the creation of the RBD pool when required to a storage
init job. This job also creates credentials as required for glance to
use when accessing the required backend, rather than using the admin
keyring.

Change-Id: I90fead961ff73a9263826acc794128fa73ead2e1
2017-09-09 02:13:01 +00:00
Pete Birley
7c37157fb1 Ceph: RadosGW
This PS implements the ceph radosgw and also provides keystone
intergration, allowing ceph to provide a swift like service if
desired for object storage.

In addtion it updates the endpoint lookups to use valid yaml when
dealing with keystone services with a '-' in their name.

Change-Id: I9162ad657df2f77c1bc1afa93a8b999894b1b470
2017-09-06 23:35:47 -05:00
Pete Birley
b120667031 Endpoint lookups: fix typo in overrides
This PS fixes a typo in the endpoint lookup function and input.

Change-Id: I6ff6d68bf82e1e1f70438a7017f4e1a6df7f59a7
2017-09-06 11:15:54 -05:00
Pete Birley
f398d73c53 Ceph: Cleanup entrypoint scripts
This PS cleans up the entrypoint scripts to remove unrequired functions.

Change-Id: Ibc445e422c1ebad972de59b47955511d14dd6d3c
2017-09-05 16:34:02 -04:00
Pete Birley
bede94c835 Endpoint lookup namespace and fqdn support
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
2017-08-31 19:06:33 +00:00
Huamin Chen
da9539bb87 Use RBD external provisioner
Currently RBD storageclass uses in-tree provisioner
kubernetes.io/rbd. Since containerized kubernetes controller image
doesn't include rbd binary, in-tree provisioner errors out.

This fix uses external provisioner ceph.com/rbd.

Closes-Bug: #1707937

Change-Id: Iad443a54c0229c0356beb6d872365298248c40c9
2017-08-09 11:24:59 -05:00
Huamin Chen
e30c1cf414 set DNS policy for osd daemonset
Use ClusterFirstWithHostNet DNS policy so osd pods can resolve mon address
through host network

Change-Id: I7aaeee1fc26cc1812c210bfe2c0f5b131c4cbd81
Closes-Bug: #1709439
2017-08-08 15:25:28 -04:00
Pete Birley
054ac68e92 KubeADM-AIO: update to K8s 1.6.8
This PS udpates the Kubernetes version to v1.6.8

Change-Id: I2170fbaf901e761cb732469dab5ad7bc946ddea5
2017-08-03 23:37:00 -05:00
Jenkins
a51ac55fbd Merge "Update pod affinity to allow customisation" 2017-07-28 16:21:24 +00:00
Pete Birley
f30cbcf108 Update pod affinity to allow customisation
This PS updates the pod affinity function to allow customisation by
operators at the point of deployment.

Change-Id: I8b7b2f584e990e068051d9a6d5cc7b1e1adb5aa5
2017-07-28 15:02:47 +00:00
Pete Birley
a02d22a284 Ceph: Change default image pull policy
This PS changes the default image pull policy to match other OS-H
charts.

Change-Id: Ia73ff415c065edae9890cb78ced532a16ad9ce97
2017-07-26 14:52:04 -05:00
Larry Rensing
394a336c35 Remove unnecessary ceph mon pdb
Ceph mon has been changed from a statefulset to a daemonset,
so the PodDisruptionBudget is no longer needed.

Change-Id: I86d46ed2e6377177eff9251d5e4f3bb433eaf250
2017-07-18 04:13:22 +00:00
Larry Rensing
bc8da1a89d Fix ceph single node gate health
Ceph's health when running in the single node gate currently
is 'HEALTH_WARN'.  This PS adds an extra config option such that
the ceph cluster will not attempt to perform replication when deployed
on a single node, as well as introduces a mvp yaml file for ceph
deployments in the gate.

Change-Id: Ib2ec3345140f541c94da044ff9d77723ea3ee2bd
2017-07-17 16:30:09 +00:00
Alan Meadows
ccea6b4df5 Convert ceph to utilize hostNetworking
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
2017-07-14 19:06:57 +00:00
Pete Birley
e99a3f29c5 Ceph: add bootstrap job to create pools.
This PS adds a bootstrap job to create the default pools for
OpenStack Services to consume.

Change-Id: I139d7f095c600821ef5ee3b4d2c70a00b971f32b
2017-07-12 11:27:52 -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
Pete Birley
7421dcb36f Kubernetes: bump version to K8s v1.6.7
This PS moves the K8s Version to 1.6.7.

Change-Id: I5a2b871119429ac90a5a284ecc79ebca00dea1ff
2017-07-09 17:11:29 -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
Jenkins
0a6e378387 Merge "Add pod disruption budget for ceph" 2017-05-31 21:28:57 +00:00
Larry Rensing
96e827e6b7 Add pod disruption budget for ceph
This adds default pod disruption budgets for ceph mons

Change-Id: I4a85140aea2a532bc073d97c7b985c7f61205a6d
2017-05-31 16:39:31 +00:00
Chris Wedgwood
f8260e9cd7 Lower Ceph requirements
Change-Id: Ie6698d4da7c911d70a1331b14dc46b3bd56af9ba
2017-05-23 23:30:35 +00:00
Larry Rensing
1dd9ef153f Ceph RGW cleanup
Fixes incorrect variable reference in deployment-rgw and removes
a duplicate value in values.yaml

Change-Id: I8b922cbb9d6f9b6153d4ccfcfa991bd7a51ef185
2017-04-21 16:02:47 +00:00
Brandon B. Jozsa
bdc5564542 adding apache-lic header for ceph 2017-02-03 09:48:17 -05:00
Greg Althaus
43fee7bfed CEPH Mons autodetection doesn't work reliably across all (#156)
We should use known parameters for the custer POD ips and the MON_IP to make MON IP discovery more consistent.
2017-01-30 15:16:36 -08:00
Greg Althaus
c020362465 Lock version down to a tagged version. 2017-01-30 10:14:09 -06:00
root
0eeb1fbf9c Change the ceph images from the custom ATT to the ceph-docker upstream.
It seems work.
2017-01-27 14:17:24 -06:00
Alan Meadows
db0db427ee Critical fixes required for 0.1.0 tagging
* Add imagePullPolicy to ceph with default

* Add imagePullPolicy to mariadb with default

* Add missing imagePullPolicies to nova with defaults

* Remove malfunctioning daemonset dependency from nova

* Add missing neutron endpoint definition to nova values

* Force v4 networking in ceph.  Repeated bootstrapping
  is unreliable without this.

* Update cinder dependencies based on testing

* Optonal Horizon NodePort

* Revert iptables stub for nova-api-osapi because
  we lack permississions to overwrite /sbin/iptables. We
  will continue to run in a privileged security context
  until we have a working solution.
2017-01-12 14:51:36 -08:00
Alan Meadows
b366dc252a Refactor ceph to allow monitors to leverage a stateful set.
The IPs of ceph monitors cannot (or should not) change.

This refactor allows the ceph monitors to act as statefulsets.
It also persists their on disk data to nodeDirs, to allow cluster
wide restarts (in parallel), where previously this would lose
data.  This is accompanied by some docker images changes that
ensure that auth for the OSDs is restored/reinserted as auth
data is somehow not persisted to disk at this time.
2017-01-03 12:23:25 -08:00
Brandon B. Jozsa
60908c237a remove last aic reference in values 2016-12-24 10:32:30 -05:00
Brandon B. Jozsa
91c59e1fd2 bug fix for rgw crashloops 2016-12-23 17:11:33 -05:00
Brandon B. Jozsa
c6dd9b617f fixes bugs in deployment 2016-12-23 15:31:10 -05:00
Alan Meadows
77401c1142 Allow more control over ceph chart
* A new boolean value controls whether secrets and
the ceph.conf secret ConfigMaps are installed allowing
you to bring-your-own ceph configs. This should
remove the dependency on having to generate secrets
using the common chart if you have installed your own.

* A new boolean value controls whether we install
a storage class as part of the ceph chart install allowing
you to externally manage this

* More of the ceph values have been converted to values
variables, paving the way for a master yaml to provide input
and overrides to many independent "sub" charts without a parent chart
2016-12-12 16:34:21 -08:00
Alan Meadows
1aa1aa70e4 ensure ceph storage is persistent 2016-11-30 14:13:11 -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
Alan Meadows
5cefd39a72 update instructions; add note on values knobs 2016-11-17 13:25:44 -08:00
Alan Meadows
d4292d0c8a initial commit of ceph helm chart 2016-11-17 12:40:28 -08:00